معرفی منابع و روشن گری در موضوع فرایند توسعه نرم افزار

قبلا توی دانشگاه با عنوان درسی مهندسی نرم افزار درمورد روش های waterfall و agile تاحدودی آشنا شده بودم و دراین مورد که یکم جستوجو کردم به لیستی از کتاب هایی که معرفی کرده بودن رسیدم و مقداری دور از انتظارم بودن.

کتاب هایی مثل design pattern و الگوریتم و… معرفی شده بودن که سردرگم شدم که اینها چه ربطی به پروسه های مهندسی نرم افزار دارن(دراین مورد توضیح بدین لطفا)

بعد کتاب هایی بودند که من اونارو با عنوان اینکه بهتر کد بزنیم میدونستم و ربطی به پروسه مهندسی نرم افزار نمیدونستم مثلا کتابهای:

  • The Pragmatic Programmer
  • Clean Code
  • The Clean Coder

و در آخر کتاب هایی هم در لیست های معرفی بودند که دقیقا مورد انتظارم بودن یعنی درمورد فرایند های توسعه نرم افزار بودند مثلا:

  • Head First Software Development
  • Head First Agile
  • Essential Scrum
  • Release It!

بین موضوعات متفاوت سردگمم و ارتباط بینشان رو نمیفهمم و در همین جهت کتاب خوبی برای شروع نمیتونم انتخاب کنم

2 Likes

چند مورد باید از هم تفکیک کرد:
کسب مهارت در برنامه نویسی , architecture , مدیریت پرژه

کتاب هایی مثل clean code بیشتر در حوزه برنامه نویسی هستند
(البته خیلی هم من از uncle bob خوشم نمیاد)

architecture نگاه بزرگ تر به کل سیستم ها داره نه کد یک برنامه بلکه طراحی و انسجام چند سیستم کنار هم
کتاب های system design یا distributed از این گروه هستند

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

2 Likes

درمورد مدیریت پروژه کتاب برای شروع معرفی میکنین؟
البته توی لیست کتاب هاتون Release It! دیدم ولی نمیدونم برای شروع خوبه یا نه

Release It در مورد devops و CI هستش برای مدیریت پروژه کتاب

https://pragprog.com/titles/pad/practices-of-an-agile-developer/

برای شروع خوبه و

3 Likes

برای مدیریت پروژه نه، ولی برای هر برنامه نویسی، خوندن کتاب Pragmatic Programmer رو پیشنهاد میکنم.

2 Likes

بخاطر اینکه علاقه ای به کتاب های Clean Code و The Clean Coder ندارم همیشه The Pragmatic Programmer توی لیستم هست ولی همیشه زمان اختصاص میدم به یاد گرفتن یه فریمورک و لایبری جدید و غافل میشم :confounded:

Pragmatic Programmer درمورد کد زنی هست درسته؟

نه. اصلا. اگر بود، الآن واقعا به هیچ دردی نمیخورد چون ۱۹۹۹ نوشته شده.
توی این کتاب، تکنیکهایی رو نوشتن که هر برنامه نویسی باید بدونه. شاید یه سریهاشونو شنیده باشید مثلا Rubber duck debugging اولین بار اینجا گفته شد و بعد معروف شد.
توی کتاب، هر بخش با یه عنوان مشخص شده بعد یه داستان کوتاه و توضیح اینکه چرا دونستن و انجام این کار، برای برنامه‌نویسها میتونه ارزشمند باشه.
من پارسال خوندمش ولی دوباره میخوام بخونمش.

علوم کامپیوتر خیلی جوان هست. هنوز مثل ریاضیات، فیزیک، شیمی و پزشکی مسیر مشخصی برای یادگیریش وجود نداره. بیشتر شبیه «فیزیک آمار» داریم پیش میریم.
اگه مسیر علوم کامپیوتر، یه مسر دقیق و مشخص بود، قطعا این کتاب یکی از کتابهای دوره‌ی دبیرستان میشد. (مثلا همینطور که رشته‌ی ریاضی یا تجربی انتخاب میکنیم، اگه رشته‌ی کامپیوتر توی دبیرستان انتخاب میکردیم، اینا کتاب دوم دبیرستان بود)

3 Likes