کتاب Five Lines of Code در واقع تجربیات نویسندهای به نام Christian Clausen در زمینه برنامهنویسی و نکات مربوط به آن میباشد. فرقی نمیکند شما به کدام زبان برنامهنویسی مسلط هستید! این کتاب نکات ریز و طریفی را برای شما شرح خواهد داد که قطعاً در حین برنامهنویسی برای شما مفید واقع خواهد شد.
در ادامه مقدمهای از کتاب Five Lines of Code را از زبان نویسنده شرح خواهیم داد.
مقدمهای بر کتاب Five Lines of Code:
پدرم در سن بسیار پایین به من کدنویسی را یاد داد، بنابراین از زمانی که یادم میآید به ساختارها فکر میکردم. من همیشه با کمک به مردم انگیزه داشتم. برای همین صبح بیدار شدم بنابراین، تدریس طبیعتاً برای من جالب بود. بنابراین وقتی به من پیشنهاد دستیاری تدریس در دانشگاه شد، بلافاصله پذیرفتم. من یک مشت از این کنسرتها داشتم، اما متأسفانه شانس من تمام شد و یک ترم چیزی نتوانستم تدریس کنم.
از آنجایی که کارآفرین بودم، تصمیم گرفتم یک سازمان دانشجویی راهاندازی کنم که در آن دانشجویان به یکدیگر آموزش دهند. از هرکسی برای شرکت یا سخنرانی استقبال میشد، و موضوعات از درسهای آموختهشده از پروژههای جانبی گرفته تا موضوعات پیشرفتهای که در برنامه درسی پوشش داده نمیشوند، متغیر بود.
من معتقد بودم که این به من امکان تدریس می دهد و اشتباه نمی کردم. همانطور که معلوم است، دانشمندان کامپیوتر ترسو هستند، بنابراین من مجبور شدم تقریباً 60 هفته متوالی میزبانی کنم تا توپ را به دست بیاورم. در این دوره چیزهای زیادی یاد گرفتم، هم در مورد موضوعاتی که تدریس میکردم و هم در مورد تدریس. این گفتگوها همچنین باعث ایجاد جامعهای از افراد کنجکاو شد که در آن بهترین دوستانم را ملاقات کردم.
مدتی بعد از اینکه دانشگاه را ترک کردم، با یکی از آن دوستان معاشرت میکردم. حوصلهمان سر رفته بود، بنابراین او از من پرسید که آیا میتوانم یک سخنرانی بداهه بنویسم، زیرا تعداد زیادی از آنها را انجام دادهام. من پاسخ دادم: “بیا بفهمیم.” ما یک لپتاپ را باز کردیم و بدون اینکه نفس بکشم، آنچه را که اساساً نمونهای از بخش 1 کتاب Five Lines of Code است تایپ کردم.
وقتی انگشتانم را از روی کیبورد برداشتم، او متحیر شد. او فکر میکرد که این تظاهرات بود، اما من نظر دیگری داشتم. میخواستم به او refactoring یاد بدهم. هدف من این بود که بعد از یک ساعت، او بتواند به گونهای برنامهنویسی کند که انگار یک بازسازیکننده اصلی است.
از آنجایی که refactoring و کیفیت کد موضوعات پیچیدهای هستند، واضح بود که باید آن را جعل میکردیم. بنابراین، من به کد نگاه کردم و سعی کردم قوانینی را به وجود بیاورم که او را وادار کند کار درست را انجام دهد و در عین حال به راحتی به خاطر بسپارد.
در طول تمرین، با وجود اینکه ما آن را جعل میکردیم، او پیشرفتهای واقعی در کد ایجاد کرد. نتایج آنقدر امیدوارکننده بود و بهبود او آنقدر سریع بود که وقتی عصر همان روز به خانه رسیدم، همه چیزهایی را که پوشش داده بودیم یادداشت کردم. زمانی که نوجوانان را در محل کار استخدام میکردیم تمرین را تکرار کردم و به آرامی قوانین و الگوهای بازسازی را در کتاب Five Lines of Code جمعآوری، ساختم و اصلاح کردم.
هدف: قوانین انتخاب شده و الگوهای بازآفرینی
کمال به دست میآید، نه زمانی که چیزی برای اضافه کردن وجود نداشته باشد، بلکه زمانی که چیزی برای حذف باقی نمانده باشد.
صدها الگوی بازسازی در جهان وجود دارد. من فقط 13 مورد را انتخاب کردم. این کار را انجام دادم زیرا معتقدم درک عمیق از آشنایی گسترده ارزشمندتر است. من همچنین میخواستم یک داستان کامل و منسجم بسازم، زیرا به افزودن دیدگاه کمک میکند و سازماندهی ذهنی موضوع را آسانتر میکند. همین استدلالها در مورد قوانین نیز صدق میکند.
زیر آفتاب چیز جدیدی نیست
– کتاب جامعه
من ادعا نمیکنم که چیزهای بدیع زیادی در کتاب Five Lines of Code آوردهام، اما فکر میکنم چیزها را به گونهای ترکیب کردهام که هم جالب باشد و هم سودمند. بسیاری از قوانین از کد پاک رابرت سی مارتین (پیرسون، 2008) مشتق شدهاند، اما برای درک و کاربرد آسانتر اصلاح شدهاند. بسیاری از الگوهای بازسازی در Refactoring مارتین فاولر (Addison-Wesley Professional، 1999) منشأ گرفتهاند، اما به جای تکیه بر مجموعههای آزمایشی قوی، برای استفاده از کامپایلر سازگار شدهاند.
مخاطب و نقشه راه
کتاب Five Lines of Code از دو بخش با سبکهای بسیار متفاوت تشکیل شده است. اولی پایه محکمی برای بازسازی مجدد ایجاد میکند و افراد را هدف قرار میدهد. به جای جامعیت، روی سهولت یادگیری تمرکز میکنم. این بخش برای افرادی است که هنوز پایه محکمی برای بازسازی مجدد ایجاد نکردهاند، مانند دانشآموزان و توسعهدهندگان جوان یا خودآموخته. اگر به کد منبع کتاب نگاه کنید و فکر کنید، “به نظر میرسد بهبود این موضوع آسان است”، قسمت 1 برای شما مناسب نیست.
در قسمت 2، من بیشتر روی زمینه و تیم تمرکز میکنم. من آنچه را که معتقدم ارزشمندترین درس در مورد توسعه نرمافزار در دنیای واقعی است انتخاب کردهام. برخی از موضوعات عمدتاً تئوری هستند، مانند “همکاری با کامپایلر” و “دنبال کردن ساختار در کد”. و برخی از آنها در درجه اول کاربردی هستند، مانند “عاشق حذف کد” و “بدنناب به کد بد.” بنابراین این بخش بیشتر کاربرد دارد و حتی توسعهدهندگان باتجربه باید از این فصلها بیاموزند.
از آنجایی که فصلهای قسمت 1 همگی از یک مثال کلی استفاده میکنند، آنها کاملاً به هم مرتبط هستند و باید یکی پس از دیگری خوانده شوند. اما در بخش 2، فصلها عمدتاً مستقل هستند، به جز چند اشاره به یکدیگر. اگر وقت ندارید کل کتاب Five Lines of Code را بخوانید، میتوانید به راحتی هیجانانگیزترین موضوعات را در قسمت دوم انتخاب کنید و آنها را جدا بخوانید.
همچنین شما میتوانید علاوه بر کتاب Five Lines of Code، از کتاب Docs for Developers نیز برای آموزش یادداشتبرداری و تنظیم اسناد در برنامهنویسی استفاده کنید.
سرفصلهای کتاب Five Lines of Code:
- 1 Refactoring refactoring
- 2 Looking under the hood of refactoring
- Part 1 Learn By Refactoring A Computer Game
- 3 Shatter long functions
- 4 Make type codes work
- 5 Fuse similar code together
- 6 Defend the data
- Part 2 Taking What You Have Learned Into The Real World
- 7 Collaborate with the compiler
- 8 Stay away from comments
- 9 Love deleting code
- 10 Never be afraid to add code
- 11 Follow the structure in the code
- 12 Avoid optimizations and generality
- 13 Make bad code look bad
- 14 Wrapping up
- appendix Installing the tools for part 1
- index
فایل کتاب Five Lines of Code را میتوانید پس از پرداخت، دریافت کنید.
دیدگاهها
هیچ دیدگاهی برای این محصول نوشته نشده است.