Software Philosophy – Telegram
Software Philosophy
3.45K subscribers
160 photos
41 videos
1.54K links
چکیده‌ای از مفاهیم به روز مهندسی نرم افزار برای مهندسین نرم‌افزار.
معماری نوین نرم‌افزار، تکنولوژی‌های برنامه نویسی جدید
Download Telegram
#پست_مجدد این پست تا به حال بیش از ۴۱۰۰ بار مشاهده شده و به نظر می‌رسد برای خوانندگان جدید کانال جذاب باشد
Forwarded from Software Philosophy
و بالاخره Blazor از نسخه آزمایشی خارج شد!

پروژه Blazor داستان جذابی دارد. حدود دو سال پیش Steve Sanderson یک پروژه تفریحی به نام Blazor در گیت‌هاب خود درست کرد و شروع به آزمایش ایده خود کرد.
اگر مدت زیادی است که در دنیای JavaScript هستید حتما نام فریم‌ورک محبوب knockout.js را شنیده‌اید. این فریم‌ورک یکی از فریم‌ورک‌های کوچک و سبک بایندینگ است که هنوز هم در خیلی از محصولات استفاده می‌شود. خالق این پروژه نیز Steve Sanderson بود!

ایده Steve این بود: اجرای کدهای C# روی مرورگر با استفاده از WebAssembly و استفاده از Razor و اجرای آن روی مرورگر. بنابراین ترکیب Razor و Browser شد نام پروژه: Blazor. با زبان خیلی ساده می‌توان گفت Blazor قرار است یک فریم‌ورک مانند Angular یا React باشد ولی با زبان C#!
تنها پس از چند ماه این پروژه شخصی او توجه بسیاری را به خود جلب کرد تا حدی که مایکروسافت تصمیم گرفت این پروژه را به عنوان یک پروژه آزمایشی به ASP.NET GitHub Organization اضافه کند. در زمان نوشتن این مطلب این ریپو ۷۹۰۰ استار دارد.

امروز همزمان با ریلیز ASP.NET Core 3.0 Preview 4 این پروژه از حالت آزمایشی درآمد و رسما به دات‌نت کور اضافه شد. یک تصمیم مهم تغییر نام Razor Component به Server-side Blazor بود. بنابراین از این به بعد Blazor یک مدل واحد نوشتن برنامه‌های سمت کلاینت است با چندین مدل هاست شدن:
- Server-side Blazor: runs on the server via SignalR
- Client-side Blazor: runs client-side on WebAssembly

جالب است بدانید که شرکت‌های DevExpress، Telerik و Syncfusion شروع به ساختن کامپوننت‌های Blazor کرده‌اند و همین الان محصولاتی روی آن ساخته‌اند.

لینک زیر حاوی اطلاعات جزئی‌تری از برنامه ریلیز و امکانات این محصول است.

https://devblogs.microsoft.com/aspnet/blazor-now-in-official-preview/

⁉️ برای بحث و تبادل نظر فنی در مورد این پست، بر روی لینک زیر کلیک کنید:

http://ow.ly/Pnh030ouEX5


#مهران_داودی (http://ow.ly/GwIl309lFEm)

کانال تلگرام:
@SoftwarePhilosophy


___
“طراحی پایگاه داده تکاملی” عنوان مقاله ایست که مارتین فاولر و پرمید سادلچ با بررسی این رویکرد که "معماری سیستم باید از طریق تکرارهای مختلف نرم افزار تکامل یابد" نوشته شده است .
نحوه تعامل بین DBA ها و برنامه نویسان، استفاده از ورژن کنترل‌ها، Database refactoring و .... همگی در این مقاله مورد بررسی قرار گرفته‌اند :

https://www.martinfowler.com/articles/evodb.html

#شهریار_انتظام (http://ow.ly/qDN430nPiCg)

کانال تلگرام:
@SoftwarePhilosophy

___
Forwarded from DotNetZoom (محمد جواد ابراهیمی)
🔰 #آیا_میدانستید
توی کنسول مروگر میتونین با دستور console.table، آرایه ها و لیست ها تون رو به صورت جدولی نشون بدین؟

var exampleArray = [
"First item in the array",
"I'm the second item in this array",
"Obviously i'm the last item"
];
console.table(exampleArray);

مثال های بیشتر:
https://www.telerik.com/blogs/better-visualization-of-console-data-with-tables
__________
@IranAspMvc
#پست_مجدد این پست تا به حال بیش از ۴۳۰۰ بار مشاهده شده و به نظر می‌رسد برای خوانندگان جدید کانال جذاب باشد
Forwarded from Software Philosophy
چطور برنامه‌نویسی موازی را برای مادربزرگتان توضیح دهید!؟

برنامه نویسی موازی (Parallel Programming) و برنامه نویسی ناهمگام (Asynchronous Programming) مفاهیم نسبتا جدیدی در دنیای برنامه‌نویسی هستند که برای اغلب برنامه‌نویسان جدید است. همه در مورد آن شنیده‌انم ولی اغلب واضح نیست که دقیقا چیست و چرا سخت است. یک مفهوم پایه برای درک این مفاهیم پایه Thread یا نخ است. نخ‌ها مفاهیمی هستند که وظیفه انجام کارها روی CPU را دارند. در دنیای ما انسان‌ها کسانی هستند که کار انجام می‌دهند. مقاله زیر مفهوم «نخ» را به «انسان» شبیه دیده‌است و سعی کرده‌است مفاهیم پیچیده دنیای برنامه‌نویسی را با مفاهیم ساده‌ دنیای ما انسان‌ها توضیح دهد.

http://mehrandvd.me/2016/04/18/parallel-programming-grandmother/


#مهران_داودی
لینکدین:
https://ir.linkedin.com/in/mehrandvd

کانال تلگرام:
@SoftwarePhilisophy



___
Forwarded from فلسفه دیزاین
«پراگرسیو وب‌اپ» یا PWA چیست؟

تکنولوژی PWA یا Progressive Web Apps یکی از پرطرفدارترین تغییرات تکنولوژی در وب است که در دنیای تکنولوژی وب برای خود امپراتوری بی‌نظیری بوجود آورده است. این موضوع تعجب آور نیست زیرا پراگرسیو وب اپ‌ها توانسته‌اند رویای نصب تعداد زیادی برنامه بر روی گوشی کاربران را متصور سازند.

عبارت PWA اصطلاحی است که برای نشان دادن یک روش جدید توسعه نرم‌افزارها استفاده می‌شود. در این روش تلاش توسعه دهندگان در جهت ترکیب ویژگی‌های مرورگرهای مدرن با مزایای استفاده از تلفن همراه می‌باشد. پراگرسیو وب اپ‌ها بر خلاف برنامه‌های سنتی، ترکیبی از صفحات وب و یک برنامه تلفن همراه می‌باشند.

از یک پراگرسیو وب اپ می‌توان به‌عنوان یک صفحه وب معمولی در یک مرورگر استفاده نمود و یا اگر کاربر تمایل داشته باشد می‌تواند با اضافه کردن کلید میانبر آن پراگرسیو وب‌اپ به صفحه اصلی گوشی خود از آن استفاده نماید. در این حالت حتی می‌توان کنترل‌‌های UI مرورگر را پنهان کرده و برای کاربر حس تجربه کار با یک برنامه مستقل را ایجاد نمود.
از زمان معرفی PWAها، شرکت‌های زیادی در استفاده از آنها پیش قدم شده‌اند. مثلا توییتر PWA را بکار برد تا بتواند با بهره گیری از امکانات آن نسخه پیش‌فرض دسکتاپ خود را بازطراحی کند.

پراگرسیو وب‌ اپ‌ها به دو دسته کلی ذیل تقسیم می‌شوند:
۱- وب سایت‌هایی که مانند اپلیکیشن‌ها رفتار می‌کنند.
۲- اپلیکیشن‌هایی که تحت فضای وب هستند.

بر اساس توضیحات گوگل، انواع پراگرسیو وب اپ‌ها دارای ویژگی‌های مشترکی نظیر قابل‌اطمینان‌بودن (Reliable)، سرعت عمل‌داشتن (Fast) و ترغیب‌کنندگی (Engaging) هستند. بطور‌ کلی تمرکز همه پراگرسیو وب‌اپ‌ها بر کاربرد آسانتر برنامه و حذف هرگونه اصطکاکی است که جلوی سریعتر رسیدن کاربران به آنچه از برنامه می‌خواهند را می‌گیرد. ایده PWA موفق به پرکردن شکاف میان فضای وب و اپلیکیشن‌ها شده‌است. با توجه به روشن‌بودن آینده پیش‌روی PWA و مزیت‌های کاربردی آن، بنظر می‌رسد تمرکز بر این‌نوع از برنامه‌ها یکی از مباحث جذاب مورد توجه طراحان و توسعه دهنده‌گان دنیای وب می‌باشد.

نویسنده مقاله امروز که مطالعه آن را به شما پیشنهاد می‌کنم، به توضیح مفهوم Progressive Web App پرداخته و ویژگی‌های آن را بررسی می‌کند.

مقاله امروز را از دست ندهید:

https://www.invisionapp.com/inside-design/whats-a-pwa/

(زمان حدودی مطالعه، ۱۱ دقیقه)

نویسنده: نیما حکیم رابط

#معرفی_مفاهیم #تکنولوژی #PWA
@Dexign فلسفه دیزاین

ـــــــــ
#پست_مجدد این پست تا به حال بیش از ۵۴۰۰ بار مشاهده شده و به نظر می‌رسد برای خوانندگان جدید کانال جذاب باشد.
Forwarded from Software Philosophy
تجربه کاربری یا UX یکی از مفاهیمی است که تاثیر زیادی در محبوب شدن یک محصول دارد. مفهوم DX یا Developer Experience نیز مفهوم جدیدی است که تجربه یک برنامه‌نویس هنگام استفاده از یک پلتفرم یا فریم‌ورک را بررسی می‌کند. چرا یک پلتفرم یا فریم‌ورک محبوب می‌شود و دیگری نه؟ این سوالی‌ است که عوامل زیادی در پاسخ دادن به آن موثر هستند. اینکه یک برنامه نویس هنگام کار با آن پلتفرم چه تجربه‌ای احساس می‌کند یکی از عوامل مهم موفقیت یک پلتفرم است. در مقاله زیر مفهوم جدیدی به نام Dotability‌ معرفی شده که می‌توان به وسیله آن کتابخانه‌ها و فریم‌ورک‌های مختلف را از لحاظ DX بررسی کرد.

http://mehrandvd.me/2016/05/31/developer-experience-dotability/
http://mehrandvd.me/2016/05/31/developer-experience-dotability/

#مهران_داودی
لینکدین:
https://ir.linkedin.com/in/mehrandvd

کانال تلگرام:
@SoftwarePhilosophy


___
این روزها بحث انتخاب بین ری‌اکت و انگولار داغ است هر کدام از آن‌ها امکاناتی دارند که دیگری فاقد آن‌ها است.
ری‌اکت یک کتابخانه است که توسط فیسبوک معرفی شده است ولی انگولار مجموعه‌ای از کتابخانه‌هاست که با هم کار می‌کنند.

در این مقاله نحوه انتخاب بین این دو و موجی که اخیرا در جهت استفاده از ری‌اکت ایجاد شده است بررسی شده است.

https://itnext.io/is-angular-dying-because-of-react-a8e885f09421


#مریم_کمالی (http://ow.ly/9Wa430mFGeK)

کانال تلگرام:
@SoftwarePhilosophy

___
Forwarded from Software Philosophy
توسعه دهندگان در ارتباط با APIها همیشه با چالش‌هایی رودرو بوده‌اند مانند:
-Multiple Endpoints
- Over-fetching/Under-fetching Data
- API Versioning
این مشکلات باعث شد تا برخی متخصصین به دنبال روش‌هایی برای کاهش این چالش‌ها باشند . GraphQL یکی از این راهکارهاست که در سال 2012 توسط facebook ارائه شد.
از نکات مهم این است که یک پرس و جو را به API خود ارسال کنید و دقیقا همان چیزی که نیاز دارید را دریافت کنید ، نه اطلاعات اضافه را که هر API ممکن است در خروجی خود ارسال کند. لینک زیر یک فیلم با عنوان: "Moving Existing "API From REST To GraphQL است که نگاه جالبی نسبت به موضوع دارد:

https://www.youtube.com/watch?v=broQmxQAMjM


#شهریار_انتظام (http://ow.ly/qDN430nPiCg)

کانال تلگرام:
@SoftwarePhilosophy

___
Forwarded from DotNetZoom (محمد جواد ابراهیمی)
معرفی Windows Terminal

مایکروسافت در روز اول کنفرانس Build 2019 از برنامه ای به نام Windows Terminal پرده برداری کرد.
این برنامه، یک ترمینال مرکزی برای دسترسی به PowerShell و Cmd و WSL (کرنل Linux در Windows) است.

این برنامه گرافیک بهتری دارد و دارای قابلیت Multiple Tab - Theming and Styling - Emoji and GPU text-rendering - Syntax Highlight می باشد.

ویدیوی دموی برنامه (حتما ببینین) :
https://aka.ms/terminal-video

اطلاعات بیشتر :
https://devblogs.microsoft.com/commandline/introducing-windows-terminal/
مخزن پروژه در گیتهاب :
https://github.com/Microsoft/Terminal
_______________
@IranAspMvc
Forwarded from فلسفه دیزاین
دیزاین اسپرینت، منظومه ۵ فرمان

دیزاین اسپرینت یکی از متدهای تجربه کاربری بود که گوگل از آن رونمایی کرده و هدف اصلیش، حداقل کردن زمان تست و ارزیابی یک ایده و امکان پیاده‌سازی همزمان است. این متد توسط تیم Google Ventures ساخته و ارائه شد و به دلیل کارآیی و بازده زیاد، خیلی سریع بین طراحان UX فراگیر شد.
دیزاین اسپرینت فرایندی است که در پنج روز کاری اتفاق می‌افتد و به تیم طراحان کمک می‌کند که یک مشکل را به شکلی کاربردی (و با زمان کوتاه با کمک دیگر اعضای شرکتی که دارند برایش طراحی می‌کنند)، حل کنند. در صورتی که این اتفاق رخ ندهد و مشکل بعد از پنج روز حل نشود نیز زمان زیادی از دست نرفته و امکان تست و ارزیابی دوباره وجود دارد.
دیزاین اسپرینت به این دلیل که اولین بار بصورت تخصصی برای طراحی UX استفاده شد، باعث به وجود امدن برخی افسانه ها شد که به پنج مورد از بزرگترین آن‌ها اشاره می‌کنیم:

۱- دیزاین اسپرینت‌ها فقط برای تیم‌های کوچک هستند.

۲- در دیزاین اسپرینت‌ها فقط طراحان باید حضور داشته باشند.

۳- دیزاین اسپرینت‌ها برای هر مشکلی می‌توانند استفاده شوند.

۴- تنها تیم‌های دیزاین می‌توانند از دیزاین اسپرینت استفاده کنند.

۵- بعد از یکبار استفاده از متد اسپرینت دیگر نیازی به استفاده دوباره از این فرآیند نیست.

برای خواندن ادامه مطلب برروی لینک زیر ضربه بزنید:

http://bit.ly/dxgn494

(زمان حدودی مطالعه، ۸ دقیقه)

نویسنده: رضا دانشیان

#تجربه_کاربری #دیزاین_اسپرینت #متد
@Dexign فلسفه دیزاین

ـــــــ
اگر شما دولوپرید و درون تیمی مشغول به کارید که همکار دیتا ساینتیست دارید، به احتمال زیاد در هنگام ریفکتور کد یا کد ریویو، با نام گذاری متغیرها توسط همکار دیتا ساینتیست خودتان به مشکل برخورده اید و یا شاید به ستوه آمده باشید!

مقاله زیر به صورت مفصل، راهنمایی‌هایی جامع در مورد نام گذاری Variableها و Constantها در زبان پایتون به شما ارائه می‌دهد که با اشتراک گذاری آن‌ها با هم تیمی‌هایتان به عنوان یک قرارداد، می‌توانید در زمان و انرژی مورد استفاده برای توسعه نرم افزارها صرفه جویی بسیاری داشته باشید.

https://bit.ly/2G31PZ3

#محمدرضا_حاج_بابایی (https://bit.ly/2ThD3YO)

کانال تلگرام:
@SoftwarePhilosophy

ـــــــــ
#پست_مجدد این پست تا به حال بیش از ۷۹۰۰ بار مشاهده شده و به نظر می‌رسد برای خوانندگان جدید کانال جذاب باشد.
Forwarded from Software Philosophy
محصولی مانند BMW واقعا چگونه در ذهن ما به عنوان یک محصول با کیفیت شکل گرفته است؟ آیا ما تخصص بررسی عملکرد موتور و گیربکس آن را داریم؟ آیا مقایسه‌ای فنی روی آن انجام داده‌ایم تا بفهمیم ماشین BMW یک محصول با کیفیت است؟
در حقیقت یک محصول را مفهومی به نام «نقاط تماس» یا Touch Points تعریف می‌کند. نقاط تماس مجموعه لحظاتی است که مشتری محصول را تجربه می‌کند. یک نقطه تماس می‌تواند لحظاتی باشد که مشتری با آن کار می‌کند، یا لحظاتی که مشتری پوستر محصول را می‌بیند و یا زمانی که صدای تیم پشتیبانی شما را از پشت تلفن می‌شوند.

ما برنامه نویس‌ها عادت کردیم برنامه بنویسیم! و البته دوست داریم مشتریان برای این عادت ما ارزش قائل شوند و برای آن پول پرداخت کنند. اما حقیقت این است که مشتریان چیزی از زیبایی معماری نرم‌افزار ما نمی‌بینند همانطور که چیزی از جزئیات گیربکس یک BMW نمی‌دانند.
در حقیقت بهترین معماری و برنامه‌نویسی زمانی اتفاق می‌افتد که آنقدر همه چیز درست کار کند که مشتری اصلا نفهمد برنامه نویسی انجام شده، همانطور که یک گیربکس عالی گیربکسی است که مشتری هیچ‌وقت متوجه وجودش نشود و فقط مطمئن باشد که دنده به درستی عمل می‌کند.
بنابر این در اکثر مواقع توضیح اینکه برنامه چقدر خوب نوشته شده ارزشی برای مشتریان ندارد.
مقاله زیر به طور خلاصه مفهوم Touch Point و نقش آن در تعریف محصولات نرم‌افزاری را شرح داده‌است.

http://mehrandvd.me/2016/10/02/touch-point-real-percepction-product/

#مهران_داودی
لینکدین:
https://ir.linkedin.com/in/mehrandvd

کانال تلگرام:
@SoftwarePhilosophy

___
کانال‌های فارسی خود را دوطرفه کنید!

مدتی قبل به عنوان یک پروژه دست‌گرمی! یک کار جالب کردیم.
چند تا از برنامه‌نویسان حرفه‌ای کانال «فلسفه نرم‌افزار» و طراحان حرفه‌ای کانال «فلسفه دیزاین» طی یک هفته دست به کار شدیم و یک بات تلگرام درست کردیم که امکان «کامنت‌گذاری فارسی» زیر پست‌ها را به کانال تلگرام اضافه کنیم.
پروژه بسیار جذابی بود و تصمیم گرفتیم که با شما هم به اشتراک بگذاریم.

از جذابیت‌های فنی این بات:
۱. کل تیمی که یک هفته روی این بات کار کردند کاملا ریموت بوده و همدیگر را ندیده‌اند!

۲. همه این سیستم روی Azure ریلیز شده و به شدت آماده گسترش (Scale شدن) است. اگر کانال‌های زیادی شروع به استفاده از این بات کنند، گزارش‌هایی را از روش گسترش این سرویس روی Azure، همینجا با شما به اشتراک می‌گذاریم.

۳. این بات از ویژگی جدید LoginURL که جدیدا به تلگرام اضافه شده استفاده می‌کند. این ویژگی به کاربران این امکان را می‌دهد که وقتی از طریق تلگرام یک لینک را باز می‌کنند، بصورت اتوماتیک Login شوند.


ناگفته نماند خود تلگرام هم یک بات برای کامنت‌گذاری اضافه کرده که برای زبان فارسی اصلا خوب کار نمی‌کند. همین موضوع انگیزه‌ای برای ما شد که این بات را ساخته و تجربه خوش‌آیندی را از کامنت گذاشتن به زبان فارسی به کانال‌های تلگرام بیاوریم.

برای اضافه شدن این امکان، کافی‌ست بات @CommentFarsiBot را به کانال خود اضافه کنید (به عنوان ادمین).

حالا دیگه ما هم صدای شما را می‌شنویم!

کانال فلسفه نرم‌افزار: @SoftwarePhilosophy
کانال فلسفه دیزاین:‌ @Dexign


ــــــــ
Forwarded from اِسکیلی Skilly (مهدی کرامتی)
معرفی ورژن 2 Windows Subsystem for Linux (به اختصار WSL 2)

ماکروسافت در یک اقدام جالب، کرنل لینوکس (ورژن 4.19 - آخرین ورژن پایدار و LTS) رو به طور کامل به ویندوز منتقل کرد.

در نتیجه امکان اجرای کانتینر های Docker به صورت Native در آن وجود دارد و دیگر نیازی به VM برای اجرای کانتینر ها بر روی Windows نیست!

همچنین ماکروسافت ادعا کرده در این روش، زمان boot time لینوکس و میزان رم مصرفی کاهش پیدا کرده و نیز عملیات I/O filesystem افزایش پرفرمنس داشته است.

این یه حرکت بزرگ است و اولین باری هست که کرنل لینوکس به عنوان بخشی از ویندوز قرار می گیرد.

این قابلیت، اواخر امسال همراه با اپدیت ویندوز 10 به نام (Codename 19H2) عرضه خواهد شد.
اطلاعات بیشتر :
https://devblogs.microsoft.com/commandline/shipping-a-linux-kernel-with-windows

@barnamenevis_org
Forwarded from فلسفه دیزاین
ماجرای یک دست و دو هندوانه

مدت‌ها به دنبال روشی بودم که بتوانم وظایف و دیزاین‌‌هایی که در یک روز به من محوّل شده‌اند را تا انتهای همان روز تمام و کمال تحویل بدهم.

گاهی هم در ضرورت‌های عجله‌ای، که زمان کم است و فشار کارفرما ایجاب می‌کند که دیزاین زودتر تحویل داده شود؛ پیش می‌آید که در حین دیزاین، باید کامنت‌های زپلین را بررسی کنم، پیام‌های واتس‌اپ، تلگرام و ایمیل را چک بکنم. صحبت‌های مدیر را خوب گوش دهم. و همه‌ی این‌ها زمانی رخ می‌دهد که درحال دیزاین طرح فعلی هستم. طرحی که باید تا انتهای روز تحویل بدهم و برنامه‌ام را نیز طبق همان چیده‌ام. حال باید به سرعت روی دیزاین جدید کار کرده و درعرض یکساعت آن را تحویل بدهم. شغل ما دیزاینرها مثل خلبان‌ها، پیش‌خدمت‌ها و... عملکرد چندوظیفه‌ای را نیاز دارد.

اما به چه قیمت؟ به قیمت از دست دادن چند امتیازی سطح IQ ما؟ آن هم زمانی که ما به بیشترین سطح خلاقیت خود در دیزاین نیاز داریم؟

طبق تحقیقات و آزمایش‌‌هایی که تحت نظر دکتر ارل میلر عصب شناس دانشگاه ام‌آی‌تی انجام شده به این نتیجه رسیده‌اند که ذهن ما برای عملکرد چندوظیفه‌ای ساخته نشده و بهترین عملکرد آن زمانیست که روی یک موضوع تمرکز دارد. در واقع ذهن ما بین وظایف مختلف به طور خیلی سریع جابجا می‌شود و این طور نیست که بتواند به صورت همزمان روی چندین موضوع تمرکز کند. این جابجایی‌های پی‌در‌پی و سریع باعث ایجاد یک عادت بد در رفتار ما می‌شود.
وقتی یک عملکرد کوچک را به پایان می‌رسانیم در واقع باعث ترشح هورمون دوپامین که به هورمون پاداش نیز معروف است، می‌شویم. ذهن ما این هورمون را دوست دارد و ما را تشویق به ترشح هرچه بیشتر آن می‌کند. ما را وادار به به جابجایی سریع بین وظایف می‌کند تا به ما خوشی لحظه‌ای بدهد.
این ترشحات پی‌درپی ما را وارد چرخه‌ی خطرناکی می‌کند. به ما این احساس را می‌دهد که عملکرد‌های زیادی را به اتمام رسانده‌ایم که درواقع چیز خاصی نبوده‌اند. ( چک کردن‌های اعتیادآور شبکه‌ها و پیام‌رسان‌های مجازی)

آقای دیوید استب مؤسس و مربی استارلینگ‌تیم می‌گوید: " مدیران زمانی‌که بین عملکردشان و روابط اعضای تیمشان به صورت چندوظیفه‌ای عمل می‌کنند، در انتها با این مواجه خواهند شد که افرادشان یک شئ هستند! "

این شئ‌نگری به افراد گروه نتایج غیرقابل جبرانی دارد که در ادامه شما را با یک داستان واقعی ازین مدیر که باعث متحمل شدن هزینه‌های زیادی به او و تیمش شده، آشنا می‌کنم. بلایی که multitasking (عملکرد چندوظیفه‌ای) سر یک سیستم و افراد آن می‌آورد گاهی اوقات غیرقابل جبران است.

http://bit.ly/dxgn495-1

جزئیات و نتایج بیشتر آزمایشات با محتوای multitasking را می توانید در لینک زیر ببینید:

http://bit.ly/dxgn495-2

(زمان حدودی مطالعه، ۱۰دقیقه)

نویسنده: حسین میرزاده

#عملکردچندوظیفه‌ای #مدیریت #محیط‌کار
@Dexign فلسفه دیزاین


ـــــ
#پست_مجدد این پست تا به حال بیش از ۷۱۰۰ بار مشاهده شده و به نظر می‌رسد برای خوانندگان جدید کانال جذاب باشد.
Forwarded from Software Philosophy
معماری نرم‌افزار مانند معماری ساختمان یک هنر است آیا تا به حال به فرق یک معمار و یک مهندس عمران فکر کرده‌اید؟ تمرکز مهندسان عمران معمولا بر ساخت سازه‌ها است. آنها فکر می‌کنند چطور سازه‌هایی مانند دیوار، در، پنجره و سایر اجزا را به طور صحیح بسازند. از طرف دیگر معمارها معمولا به اینها فکر نمی‌کنند! تمرکز اصلی آنها روی ساخت و معماری فضاهایی است که بین این اجزا به وجود می‌آید. در حقیقت مهندسین عمران به دیوارها فکر می‌کنند و معمارها به فضای بین دیوارها.
نکته جالب این است که انسان‌ها یا مشتریان در نهایت از فضا‌ها استفاده می‌کنند نه دیوارها! آنها پول خرج می‌کنند تا فضای زیبایی بخرند و به ندرت دیوارها را می‌بینند.
در مهندسی نرم‌افزار، ساخت دیوار مانند کد نویسی است. برنامه‌نویسان با کد نویسی در حقیقت در حال ساخت دیوارهایی هستند که این دیوارها مستقیما برای مشتری معنی ندارد. مشتریان امکاناتی را می‌بینند که توسط این کدها برای آنها خلق شده‌است. یکی از وظایف یک مهندس نرم‌افزار تمرکز بر فضاهای ایجاد شده برای مشتری است. اینکه این فضاها چقدر کارا و مفید طراحی شده‌اند.
توضیحات کامل مفهوم فضا و تاثیر آن بر مشتری را می‌توانید در لینک زیر بخوانید.


http://mehrandvd.me/2015/10/26/spaces-shape-your-software-architecture/

#مهران_داودی
لینکداین:
https://ir.linkedin.com/in/mehrandvd


کانال تلگرام:
@SoftwarePhilosophy


___