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