ممکن است بعضیها بگویند، اینترنت همیشه در دسترس شماست چرا از آن استفاه نمیکنید؟
در حالی که اینترنت یک منبع عالی به شمار میآید، مطالبی وجود دارد که در یک کتاب خوب و قابل اطمینان گفته شده است و میدانیم که با آن به پاسخ خود (و حتی گاهی بیشتر از آنچه میخواهیم) میرسیم. ما نمیگوییم تمام مطالب در اینترنت بد است، اما زمان میبرد تا موضوعی را جستجو کنیم. وقتی ما از این کتابهای برنامهنویسی استفاده کرده و به مطالب آن اعتماد میکنیم، احساس راحتی بیشتری نسبت به این کتابها و نویسندگان به دست میآوریم.
اولویت ما در رابطه با ناشران کتابها، به ترتیب، Wesley-Addison Signature Series، APress و O'Reilly است.
لیست کتابها:
1. Patterns of Enterprise Application Architecture، نویسنده: Martin Fowler
درست است که این کتاب کمی گران است، اما آقای فاولر تجربه و دانش خود را در توسعه نرمافزارهای سازمانی بیان کرده است و این کتابی استثنایی از تجربه برنامهنویسی او است.
در این کتاب لیستی از افکار برنامهنویسی فراهم شده و سپس الگویی برای اعمال این افکار ارائه میشود.
یک چهارم کتاب به لایهبندی، سازماندهی منطق برنامه، سشنها، همزمانسازی و نگاشت (mapping) به پایگاه داده میپردازد. در طول هر یک از این بخشها، آنها یک موضوع را مورد بحث قرار میدهند و از یک شماره برای رجوع به الگوهای موجود در کتاب استفاده میکنند. این شمارههای الگو در سه چهارم باقیمانده کتاب هستند و ما اکیدا در هنگام نیاز، از آنها به عنوان مرجع استفاده میکنیم.
بسیاری از مجموعه کتابهای Wesley-Addison Signature به این شکل هستند و ما این روند را بسیار دوست داریم. این مسألهای است که Wesley-Addison Signature Series را از دیگر ناشران متمایز کرده است. این کتاب، مقدمه، تعریفی از الگو و شماره مرجعی برای الگوهای کتاب را به شما ارائه میدهد. وقتی خواندن کتاب تمام شد، یک جدولبندی از کتاب تهیه کنید تا وقتی سؤالی در مورد الگوی خاصی داشتید از آن استفاده کنید.
امروزه بسیاری از این الگوها در شرکتهای جهانی مورد استفاده قرار میگیرند. پشت کتاب صفحهای وجود دارد که به شما کمک میکند تا الگوی صحیح برای رویکرد خاص خود را انتخاب کنید.
2. Refactoring: Improving the Design of Existing Code، نویسنده: Martin Fowler، Kent Beck، John Brant، Williams Opdyke و Don Roberts
قابلیت ReSharper بر اساس این کتاب است. برای کسانی که در مورد ReSharper چیزی نمیداند باید بگوییم، ReSharper افزونهای برای ویژوال استودیو است که به توسعه دهندگان پیشرفت قابل توجهی در زمینه کدنویسی میدهد و به آنها کمک میکند تا با اطمینان بازسازی کدها (Refactoring) را انجام دهند.
بخش اول کتاب، مباحثی در رابطه با "کد بد"، نحوه شناسایی کد بد و شیوههایی برای اصلاح آن را مطرح میکند. چنین بازسازیهایی شامل متدهای طولانی، کلاسهای وسیع، لیست پارامترهای طولانی، کدهای تکراری و تعویض بیانیهها برای بعضی نامها میباشد.
نمونه کدهای این کتاب برنامهنویسی، با Java یا NET. یا هر دو هستند و برای درک هر یک از مباحث بازسازی، بسیار روشن بیان شدهاند.
3. Refactoring to Patterns، نویسنده: Joshua Kerievsky
پس از خواندن دو کتاب فوق، مطمئن باشید که این کتاب را به لیست کتابهایتان اضافه میکنید. اگر فکر کردید که هر دو کتاب قبلی بسیار باارزش بودند، پس این کتاب را به شدت به شما توصیه میکنیم، زیرا این کتاب الگوهای سازمانی را با بازسازی ترکیب میکند.
مثلا، یک ریفکتورینگ Replace Conditional Logic را فراخوانی میکند و با الگوی if..then..else ،Strategy را میگیرد و کلاسهای خارج از آنها را میسازد درحالی که یک الگوی انتزاعی (abstract) را ایجاد کرده تا بار زیاد را مدیریت کند.
این فقط یکی از بهترین بازسازیها در این کتاب است.
4. (The Design of Sites: Patterns for Creating Winning Web Sites (2nd Edition، نویسنده: Douglas K. van Duyne، James A. Landay و Jason I. Hong
ممکن است تعجب کنید چرا ما این کتاب طراحی را به توسعهدهندگان پیشنهاد میدهیم. نگرش ما همیشه این بوده است که توسعهدهندگان، طراح هستند و طراحان، توسعهدهنده. شما همیشه نیاز دارید تا به خوبی CSS و JavaScript/jQuery/Angular که در ساخت وبسایت به کار میروند را درک کنید و همچنین بدانید که وقتی که کسی دکمه را کلیک میکند، چه اتفاقی در پشت صحنه میافتد.
این کتاب کاتالوگی از الگوهای طراحی برای ساخت وبسایت را فراهم میکند. اگر به دنبال سایت تجارت الکترونیک هستید، اینجا اجزایی وجود دارد که به آن نیاز دارید تا سایت خود را به صورت موفقیتآمیز برای بازدیدکنندگان خود بسازید.
این کاتالوگی از وبسایتهای استاندارد است که ما به عنوان چک لیست اولیه برای ساخت از ابتدا، استفاده میکنیم، همچنین از آن به عنوان مرجعی برای ارزیابی طراحی وبسایتهای موجود استفاده میکنیم.
5. Microsoft .NET - Architecting Applications for the Enterprise (2nd Edition) (Developer Reference)، نویسنده: Dino Esposito و Andrea Saltarello
ما در مورد الگوهای سازمانی با کتاب Patterns of Enterprise Application Architecture که در بالا معرفی شد، بحث کردیم. اما این کتاب بیشتر در زمینه NET. میباشد، به همین دلیل ما این کتاب را بهترین کتاب NET. برای توسعه دهندگان مایکروسافت معرفی میکنیم.
این کتاب به دستههای زیر تقسیم میشود:
الگوهای طراحی و اینکه الگوی طراحی چیست، لایههای کسب و کار، لایه خدمات، لایه دسترسی به داده و لایه ارائه و نمایش.
اگر مدتی در شرکت با NET. برنامهنویسی کردهاید، به شما پیشنهاد میکنیم تا حتما این کتاب را خریداری کنید.
6. Don't Make Me Think, Revisited: A Common Sense Approach to Web Usability ( (3rd Edition) (Voices That Matter، نویسنده: Steve Krug
این کتاب طراحی دیگری است که هر توسعهدهندهای باید آن را بخواند. این کتاب شامل تعدادی از روشهای مختلف برای نگاه به مسائلی است که میتوان از قابلیتهای آنها استفاده کرد. هر فصل دیدگاه متفاوتی از نحوه طراحی صفحات وب به شما میدهد تا صفحاتی مؤثر و کاراتر برای بازدیدکنندگان خود طراحی کنید.
با اینکه این کتاب یک کتاب برنامهنویسی نیست، همیشه خوب است که درک قویی از نحوه ساخت صفحات وب با استفاده از تکنیکهای طراحی عمومی داشته باشید.
همچنین عملکرد خوبی دارد، زیرا ویرایش سوم آن است و یک فصل وب به آن اضافه شده است.
7. Information Dashboard Design: The Effective Visual Communication of Data، نویسنده: Stephen Few
اگر تاکنون تجربه ساخت داشبوردها را داشتهاید، این کتاب برای شما بسیار مفید است. ما از آن در حرفه خود برای ساخت 3 داشبورد استفاده کردهایم و به نظر میآید که آنها کارها را آسانتر و آسانتر میکنند.
8. #Design Patterns in C، نویسنده: Steven John Metsker
همانطور که کتاب Design Patterns یک شاهکار بود، این کتاب نیز بر روی الگوهای طراحی از دیدگاه طراحان C# تمرکز دارد که آن را یکی از بهترین کتابهای NET. میسازد و خواندن آن بسیار توصیه میشود. 23 الگوی اصلی شامل Singleton، Strategy، Flyweight، Factory و بسیاری موارد دیگر را پوشش میدهد و از آن کتابهای اصلی است که باید در دانشگاهها تدریس شود.
9. Any O'Reilly Pocket References
کتابهای Any O'Reilly Pocket References اطلاعات ضروری بسیاری را در یک بسته کوچک ارائه میدهند. ما در حال حاضر از کتابهای مرجع جیبی زیر استفاده میکنیم: jQuery، JavaScript، SQL Pocket Guide و Regular Expression.
این کتابهای جیبی بسیار ارزشمند هستند.
10. The Clean Coder: A Code of Conduct for Professional Programmers (Robert C. (Martin Series، نویسنده: Robert C. Martin
همه "Uncle Bob" را میشناسند. تجربههای برنامهنویسی او در این کتاب موجود است. او مسائلی مثل حرفهای بودن، TDD، ابزارها، ساخت و موارد دیگر را پوشش میدهد.
این کتاب بیشتر ترکیبی از فلسفههای برنامهنویسی، نحوه مدیریت حرفه برنامهنویسی و نحوه نوشتن صحیح کدها میباشد.
نتیجه گیری
در حالی که این کتابهای برنامهنویسی به معنی پایان کتابهای خوب برنامهنویسی نیستند، آنها قطعا شامل بسیاری از تجربیات، ایدهها و طراحیهایی هستند که این کتابها را جزء کتابهای مناسب و کامل میسازند که هر توسعه دهندهای باید آنها را داشته باشد.
نظرات کاربران در رابطه با این دوره