Software Philosophy – Telegram
Software Philosophy
3.45K subscribers
160 photos
41 videos
1.54K links
چکیده‌ای از مفاهیم به روز مهندسی نرم افزار برای مهندسین نرم‌افزار.
معماری نوین نرم‌افزار، تکنولوژی‌های برنامه نویسی جدید
Download Telegram
Forwarded from فلسفه دیزاین
معرفی ابزاری بی‌نظیر برای دیزاینرها:
Launchpad

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

اخیرا اپلیکیشن Sketch، در نسخه ۴۴ خودش، ابزاری به اسم Auto-Layout رو معرفی کرده که در راستای طراحی Responsive، اجازه میده شما نحوه جای‌گیری المان‌ها رو در سایز‌های مختلف به شکلی Dynamic مشخص کنید. این موضوع خیلی هیجان‌انگیزه و کمک میکنه دیزاین، به نسخه پیاده‌سازی شده‌ش، نزدیک و نزدیکتر بشه.
از طرف دیگه، تیم Anima App ابزاری به اسم Launchpad رو به شکل یک افزونه (Plugin) برای اپلیکیشن Sketch معرفی کردن که بهتون کمک میکنه صفحات وبی که با استفاده از Auto-Layout بصورت Responsive دیزاین کردید، با چندتا کلیک بیارین‌ش بالا و روی دامنه دلخواه‌تون قرارش بدین.
با این توضیحات، دیگه تو خود حدیث مفصل بخوان از این مجمل…

وقتی داشتم ویژگی‌های این ابزار رو می‌خوندم و راحتی کار باهاشون رو می‌دیدم، خیلی خیل هیجان‌زده بودم و نمی‌تونم برای استفاده ازش صبر کنم.
چندتا از ویژگی‌های شاخص Launchpad، طراحی Formهایی مثل «تماس با ما» هست که کاملا کار می‌کنه و نیازی به کدنویسی نداره. یا حتی تنظیمات Analytics و SEO که بعضا استفاده ازشون برای دیزاینرها سخت هست.
به این فکر می‌کردم که حتی میشه پروتوتایپ‌های خوبی با این ابزار درست کرد. ایده‌های شما برای استفاده از این ابزار چیه؟

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

https://medium.com/sketch-app-sources/introducing-launchpad-for-sketch-648b775f73dc

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

#معرفی #افزونه #اسکچ #ابزار #وب
@Dexign دیزاین

___
#خلاصه_مطالب «فلسفه نرم‌افزار» در هفته گذشته:

۱. اصول Coding Style در زبان SQL

https://news.1rj.ru/str/SoftwarePhilosophy/815

۲. فیدبک موثر برای رفتار دیگران (Iran Agile)

https://news.1rj.ru/str/SoftwarePhilosophy/816

۳. ابزار اوپن سورس JustAssembly برای مقایسه نسخه‌های مختلف یک اسمبلی

https://news.1rj.ru/str/SoftwarePhilosophy/817

۴. ارزیابی عملکرد تیم (Iran Agile)

https://news.1rj.ru/str/SoftwarePhilosophy/818

۵. امنیت در سیستم‌های large scale با راهکار تیم امنیت بهسازان بانک ملت

https://news.1rj.ru/str/SoftwarePhilosophy/819

۶. Launchpad ابزاری بی‌نظیر برای دیزاینرها (دیزاین)

https://news.1rj.ru/str/SoftwarePhilosophy/820

ـــــــــــ

@SoftwarePhilosophy
مفهوم FaaS یا Function as a Service اخیرا در معماری‌های Serverless بسیار محبوب شده‌اند. این مفهوم به برنامه‌نویسان اجازه می‌دهد تا منطق یک function را بدون وابستگی به سرور و یا تکنولوژی خاصی deploy کنند. برنامه‌نویس می‌تواند یک تابع را بدون وابستگی به هیچ‌چیزی روی بستر cloud بالا بیاورند. در حال حاضر AWS, Microsoft Azure و Google Cloud این امکان را برای برنامه‌نویسان فراهم کرده‌اند.

https://stackify.com/function-as-a-service-serverless-architecture/

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

http://ow.ly/hYO930chI1x


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

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


___
#پست_مجدد این پست تا به حال بیش از ۱۱۰۰ بار مشاهده شده و به نظر می‌رسد برای خوانندگان جدید کانال جذاب باشد.
Forwarded from Software Philosophy
فرایند آموزش در تکنولوژی‌های جدید بسیار موضوع مهمی است. از آنجایی که تکنولوژی‌ها و زبان‌های جدید به شدت در حال رشد و تغییر هستند وجود فرایندها و محیطهای آموزشی مناسب یکی از دغدغه‌های خالقان این تکنولوژی‌ها است.
یکی از روش‌های مرسوم ساخت ابزارهایی به نام Play Ground برای آزمایش زبان‌ها و تکنولوژی‌ها است. پروژه Xamarin Workbooks و یا بهتر است بگوییم .Net Workbook یکی از پروژه‌های جذابی است که یک Play Ground فوق‌العاده برای آزمایش و یادگیری C#, iOS, Android, Azure, Kinect و ... مهیا کرده است.
در این پروژه می‌توان ترکیبی از مستند و کد را ایجاد کرد که قدرت آموزشی بالایی دارد. این پروژه آنقدر جذاب است که Scott Hanselman تصمیم گرفته که در جلسات آموزشی از آن برای آموزش مفاهیم استفاده کند.

اسکات هانسلمن در بلاگ خود کمی در مورد آن توضیح داده‌است. پیشنهاد می‌کنم حتما Xamarin Workbooks را دانلود کنید و turotial آن را دنبال کنید.

https://www.hanselman.com/blog/XamarinNETWorkbooksInteractiveComputingIsAStellarLearningTool.aspx

⁉️ برای بحث و تبادل نظر فنی در مورد این پست، بر روی لینک زیر کلیک کنید:
http://ow.ly/qJR1309lG26

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

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


___
Forwarded from فلسفه دیزاین
یک سال تغییر در نقشه‌های گوگل و اپل

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

امروز میخوایم یه مقاله جالب و هیجان‌انگیز از آقای Justin O'Beirne، درباره نقشه‌های گوگل و اپل معرفی کنم.
آقای Justin قبلتر مقاله‌ای درباره طراحی نقشه یا Cartography در نقشه‌های گوگل و اپل منتشر کرد و بعد از اون با دیدن تغییراتی کوچیک در نقشه گوگل، کنجکاو شد که بدونه این تغییرات چه روندی رو طی می‌کنند.
به این منظور یه Script نوشت که بصورت ماهیانه یک اسکرین‌شات از نقشه‌ پارک Patricia's Green در نقشه‌های گوگل و اپل بگیره. این پارک در شهر سان‌فرانسیسکو، یا به قول خود نویسنده مقاله «حیاط خلوت اپل و گوگل»، قرار داره. Justin فکر می‌کرد اگر قرار باشه تغییری در نقشه‌ها ایجاد بشه، احتمالا بیشترین این تغییرات در همین شهر که مقر اصلی این دو غول تکنولوژی هست، اتفاق می‌افته.
حالا، بعد یکسال از گرفته شدن این تصمیم و عکاسی ماهیانه از نقشه‌های گوگل و اپل، Justin نتایج‌ش رو در قالب یک مقاله روی وب‌سایتش منتشر کرده.

این نتایج بسیار جالب و هیجان‌انگیز هستن، پیشنهاد می‌کنم مطالعه و مشاهده‌شون رو از دست ندید.

پ. ن.
گیف زیر داره تغییرات نقشه اپل و گوگل رو طی این یک سال نشون میده.

https://www.justinobeirne.com/a-year-of-google-maps-and-apple-maps

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

#بررسی #نقشه #گوگل #اپل
@Dexign دیزاین

___
استفاده از LINQ در PowerShell در موقعیت‌هایی که به Performance بالا نیاز است می‌تواند بسیار کارا باشد. در ابتدا به نظر عجیب می‌رسد که چطور می‌توان از LINQ در PowerShell استفاده کرد و یا اصولا چرا باید این کار را کرد. در مقاله جذاب زیر به هر دو این سوال‌ها پاسخ داده شده‌‌است. در این مقاله ابتدا به طور خلاصه مفاهیم LINQ شرح داده‌شده‌اند. سپس کاربرد هر کدام از متدهای LINQ با ذکر مثال در اسکریپت‌های PowerShell آموزش داده شده‌است.

https://www.simple-talk.com/dotnet/net-framework/high-performance-powershell-linq/

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

http://ow.ly/bgOq30cm0iu


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

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


___
#خلاصه_مطالب «فلسفه نرم‌افزار» در هفته گذشته:

۱. مفهوم FaaS یا Function as a Service در معماری‌های Serverless
#cloud #faas #architecture

https://news.1rj.ru/str/SoftwarePhilosophy/822

۲. آشنایی با Xamarin Workbooks
#xamarin #dotnet

https://news.1rj.ru/str/SoftwarePhilosophy/824

۳. یک سال تغییر در نقشه‌های گوگل و اپل (دیزاین)
#design #uiux #ux #map
https://news.1rj.ru/str/SoftwarePhilosophy/825
https://news.1rj.ru/str/SoftwarePhilosophy/826

۴. استفاده از LINQ در PowerShell
#powershell #linq
https://news.1rj.ru/str/SoftwarePhilosophy/827

ـــــــــــ

@SoftwarePhilosophy
Forwarded from Iran Agile
🔴 آینده در دستان مدیران محصول

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

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

 https://goo.gl/mR7AQ8

@iranagile
مقایسه تکنولوژی‌های React Native و Xamarin Forms برای پروژه‌های Cross Platform یکی از بحث‌های داغ این روز‌های برنامه‌نویسان موبایل است. مقاله زیر این دو فریم‌ورک را از ابعاد مختلف مقایسه کرده و نظر خود را در هر مورد شرح داده. نکته جالب این مقاله این است که قبل از توضیح کامل، در یک پاراگراف که آن را Short Version یا نسخه کوتاه نام‌گذاری کرده خیلی خلاصه نتیجه را توضیح داده‌است.
به نظر این برنامه‌نویس، اگر برنامه نویس JavaScript هستید React Native را انتخاب خواهید کرد، اگر برنامه‌نویس C# باشید Xamarin Forms را انتخاب خواهید کرد. اگر به هر دو مسلط باشید (که معمولا کم پیش می‌آید) برای پروژه‌های واقعی و بیزنسی Xamarin Forms را انتخاب می‌کنید و React Native را برای پروژه‌های شخصی انتخاب خواهید کرد.

https://shellmonger.com/2017/05/25/which-is-better-react-native-or-xamarin-forms/


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

http://ow.ly/9ZTM30cuKFN


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

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


___
Forwarded from فلسفه دیزاین
پیش از دیزاین، داستان بنویسید

چند روز پیش، در شرکت برای دیزاین صفحه Landing وبِ دو سرویس اخیرمون با بچه‌های تیم گپ می‌زدیم. بچه‌ها می‌دونستن که سرویس‌ها دقیقا چی هستن، جز به جزش رو خودشون دیزاین کرده بودند ولی برای نهایی کردن صفحه Landing مشکل داشتند و نمی‌تونستند به یک ایده خوب، جامع و منسجم برای دیزاینش برسن.
بهشون پیشنهاد کردم از اول شروع کنند، ولی این‌بار قبل از نشستن پشت کامپیوتر، لحظاتی رو به نوشتن چیزی که دقیقا می‌خوان بگن اختصاص بدن. در چند جمله بگن که این سرویس چی هست، ویژگی‌هایی که به نظرشون مهم هست چیا هستند و …

برام جالب بود که بعد از این گپی که داشتیم، به مقاله‌ای برخوردم که این روش رو به شکلی منسجم‌تر توضیح داده بود. آقای Fabricio Teixeira، نویسنده مقاله امروز توضیح میده که سال‌ها این روش رو استفاده می‌کرده ولی هیچوقت به شکل یک «تکنیک» بهش نگاه نکرده بود. اتفاقی که دقیقا برای خود من هم طی این سال‌ها افتاده بود.
ایشون اسم این روش رو Storyframing گذاشته، اون رو مشابه نوشتن فیلمنامه در نظر گرفته و توضیح میده که هر رابط کاربری داره داستانی رو نقل می‌کنه. پس بهتره پیش از ساختن هر رابط کاربری، برای دوری از شلوغی‌های رنگ‌ها، المان‌های و یا هر نوع تصمیم دیزاینی که بعضا حتی در wireframing و اسکچ زدن هم اتفاق می‌افته، اول عصاره اون صفحه رو که داستانی هست که نقل می‌کنه، بنویسیم.
سپس مرحله به مرحله داستان‌مون رو به المان‌های دیزاین مثل متن‌ها، انیمیشن‌ها، تصویرسازی‌ها و … تبدیل کنیم.

نوشته امروز این روش رو بصورت یک روند ۴ مرحله‌ای توضیح میده و برای فهم بهتر موضوع، مثال‌های از سرویس‌های Dropbox، Airbnb و NY Times میاره.

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

https://uxdesign.cc/storyframes-before-wireframes-starting-designs-in-the-text-editor-ec69db78e6e4

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

#تکنیک #رابط_کاربری #داستان_نویسی #وب
@Dexign دیزاین

___
مدیریت خطا یا Exception Handling صحیح یکی از نکات مهم در کدهای با کیفیت است. در یک کد با کیفیت باید به خطاها فکر کرد و برای آنها در هنگام توسعه تصمیم گرفت. اینکه کجا یک exception را catch کنید و کجا به آن اجازه دهید به لایه‌های بالاتر رود، اینکه چگونه exception‌ ها را در هم wrap کنید و موارد بسیار دیگر مستقیما روی کیفیت کد شما تاثیر می‌گذارد.
مقاله زیر در مورد نحوه انجام این کار در Large .NET Projects را شرح داده‌است و مطالعه آن می‌تواند کمک زیادی به بالا رفتن کد برنامه نویسان کند.

http://www.dotnetcurry.com/patterns-practices/1364/error-handling-dotnet-projects

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

http://ow.ly/SWJZ30cAalk


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

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


___
Forwarded from Software Philosophy
اگر دوستانی دارید که نه تنها برنامه نویس هستند، بلکه اعتقاد دارید «مهندس نرم‌افزار» هم هستند، آنها را به کانال @SoftwarePhilosophy دعوت کنید.
این پیغام را برای آنها Forward کنید.
#پست_مجدد این پست تا به حال بیش از ۱۵۰۰ بار مشاهده شده و به نظر می‌رسد برای خوانندگان جدید کانال جذاب باشد.
Forwarded from Software Philosophy
نسخه ۴.۰ فریم‌ورک Angular!؟ مدتها بود برنامه‌نویسان منتظر نسخه ۲.۰ این فریم‌ورک محبوب بودند که ناگهان صحبت از نسخه ۴.۰ این فریم‌ورک شده‌است.
علت این تغییر نسخه سریع و عجیب در حقیقت هماهنگ شدن این محصول با Semantic Versioning است. تیم Angular برای هماهنگی با استاندارد Semantic Versioning و اطلاع‌رسانی بهتر در مورد محتوای هر ریلیز، این استاندارد را پیاده‌سازی کرده‌است. در این روش از هر نسخه می‌توان موارد زیر را فهمید:
- Signaling content of releases
- Time-based release cycles
- Deprecation Policy
- Distinction between stable and experimental releases

برای توضیحات بیشتر می‌توانید پست زیر از Igor Minar را در بلاگ رسمی تیم Angular بخوانید.

http://angularjs.blogspot.com/2016/10/versioning-and-releasing-angular.html

⁉️ برای بحث و تبادل نظر فنی در مورد این پست، بر روی لینک زیر کلیک کنید:
http://ow.ly/tiQx30avyhr

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

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


___
#خلاصه_مطالب «فلسفه نرم‌افزار» در هفته گذشته:

۱. آینده در دستان مدیران محصول (Iran Agile)

https://news.1rj.ru/str/SoftwarePhilosophy/829

۲. مقایسه تکنولوژی‌های React Native و Xamarin Forms برای پروژه‌های Cross Platform

https://news.1rj.ru/str/SoftwarePhilosophy/830

۳. پیش از دیزاین، داستان بنویسید (دیزاین)

https://news.1rj.ru/str/SoftwarePhilosophy/831

۴. مدیریت خطا یا Exception Handling

https://news.1rj.ru/str/SoftwarePhilosophy/832

۵. نسخه ۴.۰ فریم‌ورک Angular

https://news.1rj.ru/str/SoftwarePhilosophy/835

ـــــــــــ

@SoftwarePhilosophy
Forwarded from Iran Agile
🔴 بومیان جزیره مدرن می‌شوند

در دوران جنگ جهانی دوم نیروهای آمریکایی برای نزدیکی به دشمن مجبور شده بودند که در جزیره های کوچک و بومی نشین فرودگاههایی ایجاد کنند. نیروهای آمریکایی با تجهیزاتی مدرن و بروز برای بومیان بسیار جذاب بودند، مثلا هدست های پیشرفته که با آن با خلبان هواپیما صحبت می کردند.

نیروهایی که هدست های پیشرفته داشتند در کنار باند بودند و کمک می کردند که هواپیما سالم بر روی زمین بنشیند. پس از فرود هر هواپیما، مقداری مواد غذایی و … به بومیان داده می شد که آنها را بسیار خوشحال میکرد و فکر می کردند این پرندگان از بهشت می آیند و به نوعی این یک مراسم مذهبی و آیینی است.

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

این پدیده بعدا با عنوان Cargo Cult شناخته شد و عملا تبدیل به یک ضرب المثل یا اصطلاح زبان انگلیسی شد. (البته نوشته بالا یک تفسیر از این داستان بوده و تفاسیر دیگری نیز وجود دارد)

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

این اتفاق در مورد خیلی از پدیده ها افتاده است، معماری سرویس گرا، RUP – Agile و UX و … .

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

https://goo.gl/A5wF9s

@iranagile
#پست_مجدد این پست تا به حال بیش از ۱۳۰۰ بار مشاهده شده و به نظر می‌رسد برای خوانندگان جدید کانال جذاب باشد.
Forwarded from Software Philosophy
امکانات اضافه شده در C# 7.0 در نسخه Visual Studio 2017 قابل استفاده شدند. از جمله این امکانات می‌توان به موارد زیر اشاره کرد.
- Pattern Matching
- Out Variables
- Locals and Ref Returns
- Generalized Async Return Types

بیشتر این مفاهیم قبلا هم معرفی شده‌بودند ولی در این میان مفهوم Generalized Async Return Types از بقیه جدیدتر به نظر می‌رسد. در لینک زیر با استفاده از این مفهوم به جای Task<T> از یک تایپ جدید با نام ValueTask<T> استفاده شده که کاربردهای بسیار زیادی می‌تواند داشته باشد. همچنین برنامه‌نویسان می‌توانند خودشان تایپ‌های جدیدی را به این منظور طراحی کنند.

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

https://docs.microsoft.com/en-us/dotnet/articles/csharp/csharp-7

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

http://ow.ly/3bpp30ay2f3

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

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


___
مفهوم box model در css یکی مهمترین مفاهیمی است که برنامه‌نویسان را قادر می‌سازد چینش‌های مختلف مورد نیاز را پیاده‌سازی کنند. همیشه تنظیم مقدار position با absolute یا relative یا مقادیر دیگر، و یا تنظیم مقدار display با inline یا block برای رسیدن به چینش مورد نظر دردسر دارد، در صورتیکه ندانید آنها چطور کار می‌کنند. چون نمی‌دانیم این دو متغییر ساده چطور کار می‌کنند معمولا شروع به تنظیم شانسی این مقادیر می‌کنیم تا به چینش مناسب برسیم، اگر برسیم!!
مطلب زیر، مستندی بسیار دقیق در مورد نحوه کار box model در css است و مطالعه آن به تمام کسانی که با css کار می‌کنند پیشنهاد می‌شود. این مستند در واقع استانداردی است که توسط کنسرسیوم وب تنظیم شده و تمام مرورگر‌ها موظفند طوری کار کنند که مطابق با این استاندارد باشد.

https://www.w3.org/TR/CSS2/visuren.html

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

http://ow.ly/VgEs30cHTKm

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

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


___