کتاب برنامهنویس عملگرا: نخستین گام به سوی اندیشه حرفهای
اندرو هانت و دیوید توماس در کتاب برنامهنویس عملگرا: نخستین گام به سوی اندیشه حرفهای، به بررسی رفتار و طرز تفکر برنامهنویسها پرداختهاند.
کتاب برنامهنویس عملگرا (The Pragmatic Programmer: From Journeyman to Master) ذهنیت و زیرساخت فکری ما را به چالش میکشد. ما را با بنیاد تفکر «عملگرا» آشنا میکند: به ما میگوید، چگونه فکر کنیم تا از کارمان لذت ببریم و سرنوشت زندگی حرفهایمان را به دست خودمان رقم بزنیم و پلهپله تعالی پیدا کنیم. این کتاب در فضای مجازی در فهرست «کتابهایی که هر مهندس نرمافزار باید بخواند» The must read books for SE قرار دارد.
اندرو هانت (Andrew Hunt) و دیوید توماس (David Thomas) در این کتاب، نه به تعریفهای کلیشهای مهندسی پرداختهاند و نه سعی دارند که آن را به شکلی جدید تعریف کنند. آنچه در این کتاب میخوانیم، مهمترین اصول و قواعد تولید نرمافزار است.
وجه تمایز کتاب برنامهنویس عملگرا با دیگر کتابها، مثالهای واقعی است که تجربهٔ عملی نویسندگان را به ما منتقل میکند. برنامهنویسها باید مسیری طولانی را طی کنند تا چنین تجربهای را به چنگ آورند. در این کتاب، نویسندهها از واقعیتهایی حرف میزنند که خودشان در دل توسعۀ نرمافزار تجربه کردهاند.
در بخشی از کتاب برنامهنویس عملگرا میخوانیم:
چگونه بازسازی میکنید؟
در اصل، بازسازی همان باز طراحی است. هر چیزی را که شما یا همکارانتان طراحی کردهاید، میتوان از منظری دیگر، با درک عمیقتر، تغییر نیازمندیها و... باز طراحی کرد. اگر با عجله و بدون تأمل بخشهایی از کد را تغییر دهید، خواهید دید که در پایان، کد وضعیت بدتری پیدا کرده است.
بازسازی، فعالیتی است که نیاز دارد با دقت، از روی آگاهی و به آهستگی انجام شود. مارتین فاولر نکات زیر را پیشنهاد میدهد تا از وارد شدن آسیبهای بیشتر به کد جلوگیری شود:
1. سعی نکنید که بازسازی و اضافه کردن توانایی و کارکردهای جدید را همزمان انجام دهید.
2. پیش از شروع، مطمئن شوید که آزمونهای مناسبی در اختیار دارید. تا جایی که امکان دارد آنها را انجام دهید. به این شیوه به محض اینکه چیزی را خراب کنید از آن مطلع میشوید.
3. گامهای کوتاهِ آگاهانه بردارید؛ فیلدی از یک کلاس را به کلاس دیگر انتقال دهید، دو تابع مشابه در دو کلاس را در کلاس والد درهم ادغام کنید. بازسازی اغلب اوقات، شامل تغییرها محدود محلی است که نهایتاً، منجر به تغییر در مقیاس بزرگتر میشود. اگر گامهایتان را کوچک بردارید و پس از هر گام، کد را بیازمایید، دیگر لازم نخواهد بود که اشکالزداییهای طولانی مدتی انجام دهید.
فهرست مطالب
مقدمه
مقدمۀ مؤلف
چه چیزی یک برنامهنویس را عملگرا میکند؟
عملگرایی تکی در مقابل کار تیمی
برنامهنویسی عملگرا یک فرایند ادامهدار است
ساختار کتاب
چه معنایی در یک اسم نهفته است
فصل اول: یک فلسفه کاربردی
گربه کدهایم را خورده
آشفتگی نرمافزاری
سوپ سنگ و قورباغه و آب جوش
نرمافزارِ به اندازۀ کافی خوب
سبد سهام دانش
با دیگران ارتباط داشته باشید!
فصل دوم: یک رویکرد کاربردی
زیانهای تکرار
خاصیت تعامد
برگشتپذیری
تیرهای ردیاب
نمونهها و یادداشتهای چسبان
زبانهای دامنه
برآورد
فصل سوم: ابزارهای پایه
قدرت متن خوانا
بازی با شِل
امکانات ویرایشگر
مدیریت کد منبع
اشکالزدایی
دستکاری متن
تولیدکنندههای کد
فصل چهارم: جنون عملگرایی
طراحی براساس قرارداد
برنامههای مرده دروغ نمیگویند
برنامهنویسی ادعایی
کِی از استثنا استفاده کنیم
چگونه میان منابع سیستم تعادل برقرار کنیم
شیءها و استثنا
متعادلسازی و استثناها
چههنگام نمیتوانید منابع سامانه را متعادل کنید
بررسی تعادل منابع
فصل پنجم: یا انعطاف داشته باشید یا بشکنید
کاهش وابستگی و قانون دِمیتر
برنامهنویسی خودآرا
جفتسازی زمانی
شکل ارتباط
تختهسیاهها
فصل ششم: هنگام کدنویسی
برنامهنویسی اتفاقی
سرعت الگوریتم
بازسازی نرمافزار
کدی که آزمودن آن آسان است
چوبهای جادوی مخرب
فصل هفتم: پیش از شروع پروژه
چاه نیازمندیها
حل معماهای غیرممکن
نه تا زمانیکه آماده هستید
تلۀ توصیف خصوصیات
دایرهها و فلشها
فصل هشتم: پروژههای عملگرا
تیمهای عملگرا
خودکارسازی فراگیر
آزمودن بیرحمانه
نوشتن را سخت نگیرید
انتظارهای بزرگ
غرور و تعصب
فهرست واژگان فارسی به انگلیسی
مطالب مرتبط
تگها
مطالب پربیننده
- دانشمندان و کشف کلید واقعی خوشبختی
- کتاب مجموعه شعر وطنی در وطنی دیگر
- کتاب شاعران معاصر ما با محوریت اشعار فارسی دکتر علی الفتی
- مهلت ارسال آثار به چهلوچهارمین جایزه کتاب سال
- کتاب غول خمره و موتورگازی
- سئوالات و کلید دکترای رشته حقوق سال ۱۴۰۵
- سئوالات و پاسخنامه دکترای مدیریت سال ۱۴۰۵
- سئوالات و پاسخنامه دکترای علوم جغرافیایی سال ۱۴۰۵
- سئوالات و پاسخنامه دکترای علوم تاریخی سال ۱۴۰۵
- سئوالات و پاسخنامه دکترای زبان و ادبیات عربی سال ۱۴۰۵
- سئوالات و پاسخنامه دکترای الهیات و معارف اسلامی سال ۱۴۰۵
- در اختلافات زناشویی کودکان را واسطه طرفداری یا آشتی نکنید
- جملاتی که حال افراد مضطرب را بدتر میکند
- رژیم غذایی کتوژنیک و ویژگی های آن
- در باره مشکلات گوارشی نوزادان
- راهنمای والدین برای روزهای پرالتهاب پس از آزمون سراسری
- ورزش و تاثیر آن بر حافظه
- پیامبر اکرم(ص)؛ الگوی نیکوی انسان و جامعه
- درباره تنهایی و انزوای اجتماعی
- اضطراب کودک و تفاوت آن با لجبازی و حساسیت
- درباره معلم دگرگونساز و نقش هایش
- نشانههای زودهنگام افسردگی فرزندان
- ۵ باور اشتباه درباره موفقیت
- درباره چربی ها و مصرف آن
- پنج نکته آموزشی از دنیای حشرهها
- درباره آنتی بیوتیک های طبیعی
- توصیه هایی برای تیروئید سالم تر
- دفترچه سوالات و کلید گروه آزمایشی زبان غیر انگلیسی کنکور ۱۴۰۵
- سوالات گروه آزمایشی هنر و پذیرش دانشجو معلم آزمون سراسری سال ۱۴۰۵
- دفترچه سوالات و پاسخ گروه آزمایشی زبان انگلیسی و پذیرش دانشجو معلم آزمون سراسری سال ۱۴۰۵
- قوانین کلاس و مدرسه
- قالب آماده و زیبای پاورپوینت(15)
- ۵ فیلم که همه زنان ایرانی باید تماشا کنند
- شعار سال ۱۴۰۱ «سال تولید، دانشبنیان و اشتغالآفرین»
- رنگ چشم هایتان درباره شما و اجدادتان چه می گوید؟
- پورنوگرافی چیست و چه اثری بر مغز و رابطه جنسی دارد؟
- متن کامل دعای جوشن کبیر با ترجمه
- قالب زیبای پاورپوینت برای ارائه پروپوزال و دفاع رساله دکترا
- قالب پاورپوینت کادر دار زیبا
- قالب پاورپوینت گرافیکی و طرح دار زیبا
- قالب پاورپوینت گرافیکی زیبا
- نمونه تدریس درس اول هدیه آسمان پنجم
- قیافه و ظاهر واسه متولدین کدوم ماه، خیلی مهمه؟
- چشم رنگی ها چه شخصیتی دارند؟ روانشناسی رنگ چشم ها
- قالب پاورپوینت گرافیکی جالب
- اندکی درباره درسپژوهی
- قالب پاورپوینت
- همه زائران سلطان
- کتاب پسری که جادویی شد
- معرفی کتاب
- دوستی با کتاب
- درباره محسن رضایی
- قالب پاورپوینت گرافیکی
- تکنولوژی و اهمیت آن در زندگی امروزی
- معرفی کتاب
- درباره فخرالدین عراقی
- خلاصه کتاب سواد بصری
- درباره امیر کبیر
- کتاب پیوند زخم خورده
- کتاب راهنمای کامل Interaction access