PDA

View Full Version : گفتگو: تفاوت برنامه نویسی CLASS BASE با FUNCTIONAL



persian_bigboy
شنبه 25 دی 1389, 11:06 صبح
سلام دوستان
خوب ما همیشه تو کتاب ها خونده این که باید برای برنامه نویسی کلاس بسازیم بعد ارث بری کنیم و کارهامون رو انجام بدیم . ولی خوب یکی از دوستان من سوالی پرسید که من گیج شدم و نتونستم جوابش رو بدم:گیج::گیج::گیج::گیج: . برای همین موضوع اینجا یک تاپیک زدم تا تکلیف معلوم بشه و من هم جوابی به این دوست خوبم بدم .

تفاوت های اساسی برنامه نویسی CLASS BASE با برنامه نویسی به صورت FUNCTIONAL تو چه چیزی هست و مزایای این موضوع چیه !:چشمک:

Alireza_Salehi
شنبه 25 دی 1389, 12:01 عصر
با فرض این که یک برنامه شی گرا خوب طراحی شده باشه:
اگر از این که وراثت و چند ریختی چقدر فایده دارند بگذریم، مهمترین مزیت های برنامه نویسی شی گرا نسبت به رویه ای: مدیریت ساده تر، نگهداری آسان تر و توسعه سریع تر است.

مدیریت ساده تر: کارکرد هر بخشی از کد (کلاس ها) کاملا مشخصه هر کلاسی یک موجود مستقله ، ورودی و خروجی ها واضحه و ...
نگهداری آسان تر: هر بخشی از کد عملکرد مستقلی داره و برای اصلاح بخشی از کد نیاز نیست از اول تا آخر برنامه چک بشه فقط همون بخشی که اشکال داره اصلاح یا آپدیت میشه
توسعه سریع تر : برنامه به صورت قطه قطعه نوشته شده و با اضافه کردن یک بخش جدید نیازی به تغییر دادن دیگر بخش ها نیست.

در برنامه نویسی رویه ای تنها کاری که شما می تونید انجام بدید دسته بندی توابع در فایل های مختلف است.

persian_bigboy
شنبه 25 دی 1389, 18:08 عصر
دوست خوبم بسیار ممنون . راستی کسی درباره متولوژی های پیاده سازی پروژه از قدیم تا جدید چیزی داره ؟

مثل ، آبشاری و .... (راستش فقط شنیدم ، من خودم به شیوه خاصی مدیریت میکنم ولی میخوام که بدون چه نوع راه های اجرای پروژه وجود داره . ممنون میشم)

Behrouz1985
شنبه 25 دی 1389, 18:27 عصر
آبشاری، فازبندی شده، یکی دیگه هم هست که همین فازها رو داره، ولی از هر کدوم یه مقداری انجام میشه و میرن سراغ فاز بعد تا در نهایت یه محصولی تولید بشه و دوباره فازها تکرار می شه تا کار تموم شه، اسم این روش رو یادم نیست.

ShararehH
شنبه 25 دی 1389, 20:56 عصر
متد های جدید طراحی سیستم بیشتر به سمتی پیش میره که با شئ گرایی همگون باشه. واسه اطلاعات بیشتر می تونید متدهای Agile رو در ویکی پدیا مطالعه کنید. Scrum یا Kanban متد هایی هستند که در شرکت های بزرگ کاربرد زیادی دارند.

Mostafa_Dindar
شنبه 25 دی 1389, 21:49 عصر
دوست خوبم بسیار ممنون . راستی کسی درباره متولوژی های پیاده سازی پروژه از قدیم تا جدید چیزی داره ؟

مثل ، آبشاری و .... (راستش فقط شنیدم ، من خودم به شیوه خاصی مدیریت میکنم ولی میخوام که بدون چه نوع راه های اجرای پروژه وجود داره . ممنون میشم)

سلام ,

رویکرد سنتی فرایند تولید نرم افزار , رویکرد آبشاری یا Waterfall هست . در این رویکرد , یک حرکت خطی از نیازمندی ها به تحلیل , برنامه نویسی , تست اجزا , تست زیر سیستم ها و در نهایت به سوی تست و یکپارچه سازی کامل سیستم وجود دارد .

مهمترین ضعف رویکرد آبشاری , ریسک زیاد اون هست . بعلت اینکه بسیاری از ریسکها تنها با پیاده سازی و تست و یکپارچه سازی سیستم آشکار میشن و در این رویکرد این اعمال در انتهای پروژه انجام میگیرد .این رویکرد تنها برای پروژه های ریسکهای آنها به خوبی شناخته شده شده است مناسب است نه برای پروژه های نرم افزاری .

رویکردهای دیگری , برای جایگزینی رویکرد منسوخ آبشاری آمده اند , از جمله : SCRUM , RAD , DSDM و تولید پیش الگو .

دوست عزیز , لطفا این بحث رو اینجا ادامه ندید , اگر سوالی در این زمینه دارید در تالار تحلیل و طراحی نرم افزار (http://barnamenevis.org/forumdisplay.php?48-%D8%AA%D8%AD%D9%84%DB%8C%D9%84-%D9%88-%D8%B7%D8%B1%D8%A7%D8%AD%DB%8C-%D9%86%D8%B1%D9%85-%D8%A7%D9%81%D8%B2%D8%A7%D8%B1) مطرح بفرمائید .

سپاس

persian_bigboy
یک شنبه 26 دی 1389, 00:02 صبح
بسیار ممون از همه دوستان در تالار مربوطه ادامه میدهیم .