گزیده ۶ مرداد ۱۴۰۰
Code vs. Good Code

Writing code is about making your computer do what you need. Writing good code is about enabling teams of strangers 5 years from now to make their computers do what they need. François Chollet

مهندسی نرم‌افزار ۴ مرداد ۱۴۰۰
الگوی ایجاد نرم‌افزار: عقد قرارداد

پیش‌گفتار: مدتی است که با خود می‌اندیشم تجربیات‌م را در حوزه‌ی نرم‌افزار در اینجا بنویسم، هم ماندگار خواهد شد و هم شاید به دوستی کمک کند. نمی‌دانم “الگوی ایجاد نرم‌افزار” عبارت مناسبی هست یا نه، ولی تا یافتن عبارت مناسب‌تر از آن استفاده خواهم کرد. قرارداد: قرارداد یا عقد یا پیمان یا کنترات یک توافق […]

مهندسی نرم‌افزار ۳۰ تیر ۱۴۰۰
برگردیم به طراحی!

پیش‌گفتار: مانند هر انسان دیگری، از دیرباز یک سری پرسش‌ در ذهن‌ام نقش بسته است، و از آنجا که پاسخ‌های یافته‌شده قانع‌ام نکرده، هر از گاهی دوباره فرصتی پیدا می‌کنند و خودشان به سر صف می‌رسانند و فرصتی پیدا می‌کنند تا بخشی از ظرفیت مغزم را به خود اختصاص دهند. من هم به مانند بسیاری […]

Beautiful Design and Code ۲۰ تیر ۱۴۰۰
نمونه آموزنده‌ای از بازسازی کد

مقدمه: بازسازی کد بازسازی کد یا refactoring، یک واژه‌ی تخصصی است که معنی آن، بهبود کیفیت کد یک سیستم است بدون آن که تغییری در رفتار خارجی آن ایجاد شود. مشابه غیرافزاری بازسازی کد، بازسازی داخلی یک خانه است که بدون آن نمای خارجی خانه دچار تغییر شود، اجزای داخلی آن مانند تاسیسات و چیدمان […]

مهندسی نرم‌افزار ۱۷ تیر ۱۴۰۰
الگوی ایجاد نرم‌افزار: تجزیه – ترکیب!

پیش‌گفتار: مدتی است که با خود می‌اندیشم تجربیات‌م را در حوزه‌ی نرم‌افزار در اینجا بنویسم، هم ماندگار خواهد شد و هم شاید به دوستی کمک کند. نمی‌دانم “الگوی ایجاد نرم‌افزار” عبارت مناسبی هست یا نه، ولی تا یافتن عبارت مناسب‌تر از آن استفاده خواهم کرد. داستانی از عبید زاکانی: گویند؛ روزی “مطربی” نزد “مرحوم کرباسی” […]

مهندسی نرم‌افزار ۱ تیر ۱۴۰۰
الگوی ایجاد نرم‌افزار: هزار توی نرم‌افزاری!

پیش‌گفتار: مدتی است که با خود می‌اندیشم تجربیات‌م را در حوزه‌ی نرم‌افزار در اینجا بنویسم، هم ماندگار خواهد شد و هم شاید به دوستی کمک کند. نمی‌دانم “الگوی ایجاد نرم‌افزار” عبارت مناسبی هست یا نه، ولی تا یافتن عبارت مناسب‌تر از آن استفاده خواهم کرد. بازی هزار تو هزار تو یا به انگلیسی maze یکی […]

فرایند ۱ تیر ۱۴۰۰
The SPACE of Developer Productivity

The SPACE of Developer Productivity (Link) Nicole Forsgren, Margaret-Anne Storey, Chandra Maddila, Thomas Zimmermann, Brian Houck, Jenna Butler, ACM Queue, 28 February 2021 Abstract: Developer productivity is about more than an individual’s activity levels or the efficiency of the engineering systems relied on to ship software, and it cannot be measured by a single metric […]