در پست قبل به عنوان مقدمه به این پرداختیم که چرا نیاز به یک زبان برنامه نویسی داریم. بسیاری از ما قواعد یکی از زبانهای برنامه نویسی را بلد هستیم و برنامه هایی با اون نوشتیم، اما چرا نیازه که برنامه نویسی پیشرفته رو داشته باشیم؟! اساسا برنامه نویسی پیشرفته برای افزایش کیفیت (quality) کد در سه حوزه زیر تمرکز می کند: [1]
- Correctness: کد واقعا اون کاری که بهش محول شده رو به درستی انجام بده برای این منظور نیاز هست تا با مفاهیم و تکنیک های Testing و Debugging آشنا بشیم.
- Maintainable: یعنی کدمون این قابلیت رو داشته باشه که در آینده ویژگیهای جدیدی رو بهش اضافه کنیم یا ایرادات احتمالی رو برطرف کنیم. این ویژگی یک نیاز حیاتی هست و هر چقدر در این زمینه وقت بذاریم ضرر نمیکنیم، خصوصا در برنامه های بزرگ.
- Reusability: در یک کلام یعنی بلد باشیم از کتابخانه های آماده استفاده کنیم و خودمون هم طوری کد بزنیم که بشه جاهای مختلف ازش استفاده کرد. متدولوژی شی گیرایی (object oreiented) این کمک رو به ما میکنه که کدی بنویسیم که بشه جاهای مختلف ازش استفاده کرد.