بهزاد شعبانی

توسعه دهنده پی‌اچ‌پی و لاراول

برنامه نویسی آرشیو

چند دیدگاه در مورد مهندسی نرم‌افزار

Jul/26/2015

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

معیارهای برنامه‌نویس خوب

Jul/14/2015

تابستون سال ۸۳ بود که شروع کردم به یادگیری php، و چون قبلا یه مقداری با C و ++C آشنا بودم، یادگیریش برام ساده بود و توی حدود دو ماه تا حدی به php مسلط شدم و شروع کردم به نوشتن یه‌پروژه کوچیک (یه اکستنشن برای phpbb). پروژه‌م توی کامیونیتی phpbb مورد استقبال قرار گرفت و کلی دانلود شد. از اون روز تا یکی دو سال بعدش، باورم شده بود که من برنامه نویس خیلی خوبیم تا اینکه پروژه‌ای بهم پیشنهاد شد و من با اعتماد به نفس پروژه رو قبول کردم ولی از پسش بر نیومدم. اونجا بود که فهمیدم صرفا تسلط داشتن روی سینتکس و مفاهیم پایه یه زبان برنامه‌نویسی، من رو یه برنامه نویس خوب نمی‌کنه، و فاکتورهای زیادی درش تاثیر گذارن. اما این فاکتور‌ها چیا هستن؟ چه چیزی باعث میشه یه برنامه‌نویس، برنامه‌نویس خوبی تلقی بشه؟ برای اینکه برنامه‌نویس خوبی بشیم و خوب بمونیم چه کارهایی باید انجام بدیم؟ سال‌ها به دنبال جواب این سوال‌ها بودم. توی اینترنت گشتم، از اساتیدم توی دانشگاه پرسیدم و هر سال جواب‌های بیشتری میگرفتم. نتیجه‌ای که گرفتم این بود که معیارهای یک برنامه‌نویس خوب دائما در حال تغییره و برای اینکه برنامه‌نویس خوبی باقی بمونی باید به روز باشی. ولی معیارهایی هستن که همیشه ثابت بودن، اون معیارها چین؟