SE Analytics ۲۶ شهریور ۱۴۰۱
کدام دسته از توسعه‌دهنگان هستید؟

به نظر شما، بر اساس روز کاری ایده‌آل‌تان، شما در کدام دسته‌ از توسعه‌دهندگان زیر قرار می‌گیرید؟ ویژگی‌های کاری و شخصی شما به کدام گروه از توسعه‌دهندگان شامل توسعه‌دهندگان اجتماعی (Social)، تنها (Lone)، متمرکز(Focused)، متعادل (Balanced)، هدف‌گرا (Goal-oriented) یا رهبر (Leading) شباهت دارد؟ گزیده: ۲۰۱۱: نرم‌افزار داره دنیا رو می‌خوره. مارک اندریسون (Marc Andreessen) ۲۰۲۲: […]

Beautiful Design and Code ۱۹ شهریور ۱۴۰۱
نخست مرتب‌ کنید (tidy first) (۳ و پایانی)

خُب، مرتب‌سازی (tidying) چیست؟ بک با شوخ طبعی همیشگی‌اش توضیح می‌دهد: «هر مرتب‌سازی (tidying) یک بازسازی (refactoring) کوچولو موچولوی نازنازی نادقیق است. هر مرتب‌سازی یک تغییر در ساختار سیستم است که تغییر در رفتار سیستم را آسان‌تر می‌کند. هر کار از نوع «نخست‌ مرتب‌‌ کنید» (tidy-first) تلاش می‌کند ساختارِ کد را بدون ایجاد ترس و […]

Beautiful Design and Code ۱۰ شهریور ۱۴۰۱
نخست مرتب‌ کنید (tidy first) (۲)

در مورد مرتب‌سازی (tidying) سوال اصلی این است: “من می خواهم کدی را تغییر بدهم ولی ساختار کد به گونه‌ای است که تغییر آن دشوار است. آیا ابتدا باید کد را مرتب کنم؟” بِک ادامه می‌دهد “من در مورد بازسازی‌ (refactor) کدهای بزرگ صحبت نمی‌کنم. من در مورد تقسیم کدهای بزرگ و یک‌تکه به مایکروسرویس‌ها(microservice) […]

Tidy First ۲۹ مرداد ۱۴۰۱
نخست مرتب‌ کنید (tidy first) (۱)

پیش‌گفتار: مدت‌هاست که می‌خواستم درباره‌ی Tidy First (با تلفظ تایدی) مطلبی بنویسم و این نگرش زیبا و جالب‌توجه را به دوستان عزیزم و خوانندگان وبلاگ معرفی کنم. با این‌که مدت‌هاست آن را دنبال می‌کنم ولی بخت و اقبال در راه ترجمه‌ی آن با من یار نبود. خوش اقبال بودم که حمید آقای عزیزم کمک کرد […]

مهندسی نرم‌افزار ۱۴ مرداد ۱۴۰۱
برنامه ۱۲ عاملی (۹)- عامل هشتم: همروندی

عامل ۸- همروندی (Concurrency) برنامه را از طریق مدل پردازش (process model) مقیاس‌پذیر و بزرگ کنید هر برنامه کامپیوتری پس از اجرا با یک یا چند پردازش (process) در سیستم عامل نمایش داده می‌شود. برنامه‌های وب شکل‌های مختلفی برای اجرای پردازش پیدا کرده‌اند. به عنوان مثال پردازش‌ها یا برنامه‌های PHP می‌توانند به عنوان فرزندی از […]

مهندسی نرم‌افزار ۶ تیر ۱۴۰۱
برنامه ۱۲ عاملی (۸)- عامل هفتم: اتصال به پورت

عامل ۷-سرویس‌ها را از طریق اتصال به پورت (port binding) در اختیار استفاده‌کنندگان بیرونی‌ قرار دهید [ مترجم؛ برگردان Port به فارسی درگاه است ولی در این متن همان واژ‌ه‌ی پورت استفاده شده است.] گاهی برنامه‌های وب در داخل یک کانتینر سرویس‌دهنده‌ وب (web-server container) اجرا می‌شوند. برای مثال، برنامه‌های PHP می‌توانند به عنوان یک […]

مهندسی نرم‌افزار ۲۱ خرداد ۱۴۰۱
برنامه ۱۲ عاملی (۷)- عامل ششم: پردازش

عامل ۶: پردازش‌ها (process) برنامه را به صورت یک یا چند پردازش بدون حالت (stateless processes) اجرا کنید. برنامه‌ها در محیط اجرا به صورت یک یا چند پردازش اجرا می‌شود. در ساده‌ترین حالت، کد برنامه شامل چندین خط است که با یک زبان برنامه‌نویسی نوشته شد و به تنهایی و بدون نیاز به اجزای خارجی […]