کتاب های برچسب refactoring
تاریخ: ۱۷:۱۹:۲۸ ۱۳۹۷/۱/۵ یکشنبه
توسط: MotoMan
امتیاز: ۵

حتی کد بد هم می‌تواند کار کند، اما اگر تمیز ننوشته شده باشد می‌تواند سازمان دهی پروژه را به زانو در آورد. هر ساله ساعت‌های بی شماری و منابع قابل توجهی به خاطر کیفیت پایین کد‌ها از بین رفته اند؛ اما نباید این گونه باشد.

متخصص مشهور نرم افزار Robert C. Martin، الگویی انقلابی در کتاب Clean Code: A Handbook of Agile Software Craftsmanship ارائه داده است. مارتین با همکاری همکارانش در شرکت Object Mentor، بهترین شیوه‌های چابک تمیز سازی کد را استخراج کرد و آن‌ها را  تبدیل به کتابی کرد که در آن ارزش‌های یک متخصص را به شما یاد می‌دهد و شما را تبدیل به برنامه نویسی بهتر می‌کند؛ البته فقط وقتی که بر روی آن‌ها کار کنید.

چه نوع کاری شما انجام خواهید داد؟ شما کد خواهید خواند، خیلی خیلی زیاد. شما به چالش کشیده خواهید شد تا در مورد موارد صحیح آن کد و اشکالاتش فکر کنید. از همه مهمتر شما به چالش کشیده خواهید شد تا ارزش‌های حرفه ای و تعهد خودتان را به حرفه خود را مورد ارزیابی مجدد قرار دهید.

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

مواردی که در این کتاب خواهید فهمید عبارتند از:

  • چگونه می‌توان تفاوت بین کد خوب و بد را بیان کرد
  • چگونه می‌توان کد خوب نوشت و کد بد را به کد خوب تبدیل کرد
  • چگونه خوب نام گذاری کنیم، توابع خوب، اشیا خوب و کلاس‌های خوب ایجاد کنیم
  • چگونه به کد فرمت بدهیم تا به حداکثر خوانایی ممکن برسیم
  • چگونه مدیریت خطای کاملی بدون مبهم کردن منطق کد را پیاده سازی کرد
  • چگونه آزمون واحد انجام داد و توسعه آزمون محور را تمرین کرد
تعداد بازدید: ۱۴۸۱
دیدگاه ها: ۰
تاریخ: ۱۴:۱۸:۱۴ ۱۳۹۷/۱/۴ شنبه
توسط: MotoMan
امتیاز: ۴
برچسب ها: Coding | Refactoring |

کتاب 101 شیوه‌ی بد برنامه نویسی با بر عکس کردن رویکرد معمول، لحنی طنز آمیز در آموزش شیوه‌های برنامه نویسی در پیش گرفته است. این کتاب با تظاهر کردن به آموزش این که شما چگونه به بدترین برنامه نویس جهان که معمولا باعث آشوب می‌شود تبدیل شوید به شما یاد خواهد داد که چگونه از این گونه عادت‌های بد برنامه نویسی که سبب ایجاد باگ‌ها یا رد شدن کد‌های به اشتراک گذاشت شده می‌شوند دوری کنید.

چرا وقتی می‌توانید میمونی آشوب گر (chaos monkey) باشید بخواهید یک code monkey باشید؟ خیلی خوب؛ شما می‌خواهید که برنامه نویسی افتضاح باشید. شما می‌خواهید کدی بنویسید که به شدت در بازبینی‌ها رد شود. شما دنبال خواندن بازخورد هایی هستید که پر شده از کامنتهایی مثل "چه افتضاحی؟" (?WTF). بهتر از این حتی شما درباره‌ی تغییرات پر از باگتان که دزدکی وارد کد‌ها کرده اید خیال بافی می‌کنید و باعث ایجاد فاجعه‌های بی حد و حساب می‌شوید. شما می‌خواهید که برای خود به عنوان کسی که کد‌های آشغال خنده دار، کثیف و مستعد خطا می‌نویسد و باعث وحشت همکارانتان می‌شود اعتباری دست و پا کنید. کتاب 101 شیوه‌ی بد برنامه نویسی به شما کمک می‌کند تا با یاد گرفتن آرایه ای از عادت‌های بد برنامه نویسی که به شما امکان ایجاد آشوب را می‌دهند، شما زودتر به هدفتان برسید.

به جای این کار شما می‌توانید از این کتاب استفاده کنید تا آن عادت‌های بد را شناسایی کرده و یاد بگیرید که از آن‌ها دوری کنید. این شیوه‌های بد برنامه نویسی بر اساس اصول برنامه نویسی ( layout، متغیر ها، حلقه ها، ماژول‌ها و ...) به سرفصل‌ها دسته بندی شده اند. این را باید اظهار کرد که برای برنامه نویس خوبی شدن، شما ابتدا باید 10000 خط، کد بد بنویسید تا همه‌ی آن‌ها را از ذهنتان بیرون کنید. با یادگیری در مورد عادت‌های بد برنامه نویسی، شما شیوه‌های خوب برنامه نویسی را یاد خواهید گرفت. علاوه بر این شما انگیزه ای که در پشت هر شیوه ای که بیان شده است را درک خواهید کرد؛ بنابر این شما یاد خواهید گرفت که چرا این شیوه خوب است و فقط یک لیست ساده از قوانین را نخواهید دید.

تعداد بازدید: ۶۱۲
دیدگاه ها: ۱
تاریخ: ۲۳:۲۷:۳۴ ۱۳۹۵/۱۰/۲۲ چهارشنبه
توسط: MotoMan
امتیاز: ۴
برچسب ها: Design Patterns | Refactoring |

Refactoring، فرآیند تغییر یک سیستم نرم افزاری است به گونه ای که رفتار خارجی کد عوض نشود در حالی که ساختار داخلی آن بهبود پیدا کند. این یک راه اصولی برای تمیز سازی کد است که شانس پدید آمدن باگ را به حداقل می‌رساند. در اصل زمانی که شما refactor می‌کنید دارید طراحی کد را بهبود می‌بخشید پس از آن که کد را نوشتید.
"بهبود طراحی کد پس از نوشتن آن". این عبارت به نوبه‌ی خود، عجیب و غریب است. در درکی که از توسعه‌ی نرم افزار داریم، ما معتقدیم که ابتدا طراحی می‌کنیم و پس از آن شروع به کد نویسی می‌کنیم. ابتدا یک طراحی خوب انجام می‌شود، و به دنبال آن کد نویسی صورت می‌گیرد. در طول مدت زمانی که کد و یکپارچگی سیستم تغییر خواهد کرد، ساختار آن با توجه به طراحی اش، به تدریج محو می‌شود.
با Refactoring می‌توانید یک طراحی بد و حتی شلخته را بردارید و آن را به یک کد به خوبی طراحی شده تغییر دهید و هر گامی ار آن ساده است. یک فیلد را از کلاسی به کلاسی دیگر انتقال می‌دهید، قسمتی از کد را از یک متد برداشته و برای آن متدی مجزا می‌نویسید و کدی را به پایین یا بالا انتقال می‌دهید. مجموع تاثیرات این تغییرات کوچک می‌تواند طراحی را به طور اساسی بهبود بخشد. این دقیقا برعکس مفهوم معمول پوسیدگی نرم افزار است.
با فاکتور گیری مجدد، پی می‌برید که تعادل کارها تغییر می‌کند. شما در می‌یابید که طراحی بیش از اینکه یک بار رخ دهد، به طور مداوم در طول توسعه طراحی  مجددا انجام می‌شود. شما از ساخت یک سیستم یاد میگیرید که چگونه طراحی را بهبود بخشید. نتیجه‌ی این تعامل منجر به برنامه ای می‌شود که طراحی آن در طول توسعه نیز خوب باقی می‌ماند.
این کتاب راهنمایی برای انجام refactoring است که برای برنامه نویس‌های حرفه ای نوشته شده است. هدف من نشان دادن این است که چگونه فاکتور گیری مجدد را به شیوه ای کنترل شده و کارآمد انجام دهید. شما یاد خواهید گرفت که به گونه ای refactor انجام دهید که باگی در کد باقی نگذارید.

 

تعداد بازدید: ۲۰۰۰
دیدگاه ها: ۱
تاریخ: ۱:۳۲:۰ ۱۳۹۳/۶/۱۶ یکشنبه
توسط: MotoMan
امتیاز: ۲
برچسب ها: Design Patterns | Refactoring |

الگوها سنگ بنای طراحی شی گرا هستند، حال آنکه برنامه نویسی test-first و refactoring‌های بی رحمانه، اساس طراحی تکامل یافته را تشکیل می‌دهند. برای مانع شدن از over-engineering، لازم است که یاد بگیریم که چگونه  الگوها خودشان را با روش‌های توسعه نرم افزار امروزی تطبیق می‌دهند.
در این کتاب به صورت تئوری و هم عملی، refactoring مبتنی بر الگو‌ها آموزش داده می‌شود. سلسه مراتبی از refactoring‌های سطح پایین به طراحان اجازه می‌دهد تا به راحتی طراحی را به سمت طراحی هدایت و یا از پیاده سازی آن دور کنند.

 

تعداد بازدید: ۲۲۳۳
دیدگاه ها: ۰
تاریخ: ۷:۲۲:۳۴ ۱۳۹۲/۱۰/۸ یکشنبه
توسط: MotoMan
امتیاز: ۱۱

Test-driven, test-first, and test-early development practices are helping thousands of software development organizations improve their software. Now, in Quality Code: Software Testing Principles, Practices, and Patterns, Stephen Vance builds on all that’s been learned about test-driven development, helping you achieve unprecedented levels of first-time quality. Using real-world code examples, this guide introduces patterns, principles, and more than two dozen detailed techniques for testing any software system more fully, effectively, and painlessly. Vance presents a conceptual framework to help you focus your efforts and design recommendations for improving testability across the software lifecycle, and also provides hands-on guidance to simplify testing of the full spectrum of code constructs. You’ll learn how to choose the best testing techniques for every situation, from the most common scenarios to threading. Two complete case studies put it all together, walking you through testing a brand-new Java application and an untested “legacy” JavaScript jQuery plugin. Whether you’re developing cutting-edge code for a new start-up, or maintaining an unruly old system, this guide will help you deliver exactly what you need: quality code.

تعداد بازدید: ۲۸۳۸
دیدگاه ها: ۰
loading...

لطفا منتظر بمانید...