کتاب Code like a Pro in C# (مانند یک حرفه ای در سی شارپ کدنویسی کنید) یک راهنمای جامع برای توسعهدهندگانی است که میخواهند مهارتهای برنامهنویسی خود در سیشارپ را ارتقا دهند.
این کتاب با فرض داشتن دانش قبلی از یک زبان برنامهنویسی شیءگرا، شما را به دنیای حرفهای سیشارپ میبرد. به جای شروع از پایه و آموزش مفاهیم ابتدایی، این کتاب بر روی بازسازی یک کدبیس قدیمی تمرکز دارد و با استفاده از تکنیکها، ابزارها و بهترین شیوههای مدرن، آن را به استانداردهای امروزی سیشارپ میرساند.
در ادامه مقدمهای از کتاب Code like a Pro in C# را از زبان نویسنده شرح خواهیم داد.
مقدمهای بر کتاب Code like a Pro in C#:
اولین برخورد من با سیشارپ زمانی بود که در سال ۲۰۱۶ به Fujifilm Medical Systems پیوستم. پیش از آن، تجربه کار با جاوا و پایتون را داشتم، اما وقتی سیشارپ وارد صحنه شد، دیگر به عقب نگاه نکردم.
من عاشق سادگی یادگیری آن و (در ابتدا بسیار آزاردهنده) تمرکز آن بر تایپ صریح بودم. در طول زمان حضورم در شرکت، همکارانم را با سوالاتم در مورد سیشارپ و بهترین روشهای استفاده از آن آزار میدادم.
شروع کار آسان بود، اما حرفهای شدن موضوع دیگری بود. هر کسی میتواند در عرض ۱۰ دقیقه یک برنامهی “Hello, World” بنویسد، صرف نظر از پیشینهی او، اما استفاده کامل از یک زبان در عین دانستن دلیل پیادهسازی برخی چیزها به شیوهی خاص، زمان میبرد. پس از مدتی، احساس کردم که در دانش سیشارپ به یک نقطه ثابت رسیدهام و به دنبال منابعی برای رسیدن به سطح بعدی بودم.
به سرعت متوجه شدم که سه نوع اصلی کتاب در مورد .NET و سیشارپ وجود دارد: کتابهایی در مورد موضوعات فراتر از زبان (کد تمیز، معماری، زیرساخت و موارد مشابه) که اتفاقاً از سیشارپ استفاده میکنند، کتابهایی در مورد نحوهی شروع برنامهنویسی با سیشارپ و کتابهایی که بسیار پیشرفته هستند و ممکن است پس از خواندن آنها برای مدیر فنی مایکروسافت واجد شرایط شوید.
من میخواستم کتابی وجود داشته باشد که بین این سه قرار گیرد: کتابی که با کد تمیز سروکار داشته باشد و شکاف بین موضوعات مبتدی و پیشرفته را پر کند. چنین کتابی وجود نداشت، بنابراین آن را نوشتم. این همان کتاب است.
اگر شما یک مهندس نرمافزار (یا توسعهدهنده، یا کدر، یا هر عنوان دیگری که ممکن است داشته باشید) با تجربهی قبلی در یک زبان برنامهنویسی (ترجیحاً شیءگرا) هستید و میخواهید به سیشارپ بپردازید، این کتاب برای شماست. شما نیازی نخواهید داشت که یاد بگیرید چگونه یک عبارت if بنویسید، و من به شما توضیح نخواهم داد که یک شیء چیست.
آنچه در کتاب Code like a Pro in C# خواهید یافت، مهارتها و موضوعاتی است که شما را برای مطالعهی عمیقتر زبان و پلتفرم آماده میکند. البته، نمیتوانم قول بدهم که همه چیزهایی را که یک منبع دشوارتر فرض میکند که شما میدانید را پوشش دهم، اما در محدودهی تعداد صفحات این کتاب، من واقعاً تلاش کردم. امیدوارم از این کتاب لذت ببرید و یک یا دو چیز یاد بگیرید. و اگر نه، خب، مرور چیزهایی که میدانید هرگز ضرر ندارد.
درباره کتاب Code like a Pro in C#
این کتاب بر اساس مهارتهای برنامهنویسی موجود شما ساخته شده است تا به شما کمک کند به راحتی مهارتهای کدنویسی خود را ارتقا دهید یا از جاوا یا سایر زبانهای شیءگرا به سیشارپ مهاجرت کنید. شما یاد خواهید گرفت که چگونه کد سیشارپ اصیل و ضروری برای توسعهی سازمانی بنویسید.
کتاب Code like a Pro in C# مهارتهای ضروری بکاند را مورد بحث قرار میدهد و آنها را با یک چالش شغلی رایج به کار میگیرد: بازسازی یک کدبیس قدیمی برای ایمن، تمیز و قابل خواندن شدن. تا زمانی که کارتان تمام شود، درک حرفهای از سیشارپ خواهید داشت و آماده خواهید بود تا با منابع سطح پیشرفته شروع به تخصص کنید.
هیچ “Hello, World” یا مبانی علوم کامپیوتر ۱۰۱ وجود ندارد – شما با بازسازی یک کدبیس قدیمی و منسوخ، با استفاده از تکنیکها، ابزارها و بهترین شیوههای جدید برای ارتقای آن به استانداردهای مدرن سیشارپ، یاد خواهید گرفت. در طول این کتاب، ما یک کدبیس موجود (نوشته شده در .NET Framework) را بازسازی میکنیم، با یک API سادهتر، به .NET 5.
چه کسانی باید کتاب Code like a Pro in C# را بخوانند؟
اگر شما یک توسعهدهنده ماهر در یک زبان برنامهنویسی شیءگرا هستید، چه جاوا، دارت، سی++ یا هر چیز دیگری، این کتاب میتواند به شما کمک کند تا بدون شروع کامل از ابتدا، در سیشارپ و .NET سرعت بگیرید. بسیاری از دانش شما منتقل میشود، بنابراین چرا بار دیگر یاد بگیرید که چگونه یک عبارت if بنویسید؟
به طور مشابه، اگر شما در یک زبان برنامهنویسی مانند Go، C، جاوا اسکریپت، پایتون یا هر زبان اصلی دیگری مهارت دارید، پس از خواندن کتاب Code like a Pro in C# میتوانید سیشارپ تمیز و اصیل بنویسید.
ممکن است بخواهید اصول طراحی شیءگرا را مطالعه کنید، اما این نباید مانع بزرگی برای ورود باشد (اگر از Go میآیید، مطمئن شوید که هر زمان از رابطها استفاده میکنیم توجه بیشتری داشته باشید؛ آنها به همان شکل کار نمیکنند).
در نهایت، اگر شما یک توسعهدهنده هستید که مدتی است از سیشارپ استفاده میکنید و در حال تعجب هستید که چگونه دانش خود را “سطح بالا” ببرید: این کتاب برای شماست. بسیاری از منابع پیشرفته سیشارپ دانشهایی را فرض میکنند که در منابع مقدماتی یا مبتدی پوشش داده نشده است. این کتاب با هدف پر کردن این شکاف است.
نحوه سازماندهی کتاب Code like a Pro in C#: یک نقشه راه
این کتاب در مقایسه با یک کتاب فنی معمولی، رویکردی تا حدودی غیرمتعارف به ساختار خود دارد. اکثر کتابهای فنی کتابهای مرجع هستند یا میتوانند به هر ترتیبی خوانده شوند.
کتاب Code like a Pro in C# یک کتاب مرجع نیست و برای استفادهی حداکثری از آن، باید فصلها را به ترتیب بخوانید. این کتاب به شش بخش زیر تقسیم شده است، همانطور که در شکل ۱ نشان داده شده است:
“استفاده از سیشارپ و .NET” – در فصل ۱ کتاب Code like a Pro in C#، ما در مورد اینکه این کتاب چیست، چه چیزی را آموزش میدهد و چه چیزی را آموزش نمیدهد، بحث میکنیم. فصل ۲ یک تور کوتاه از زبان سیشارپ و اکوسیستم .NET است، با تمرکز بر آنچه .NET را از سایر پلتفرمها متمایز میکند و داستان کامپایل سیشارپ.
“کدبیس موجود” – در این بخش، من شما را در کاوش کدبیسی که به ارث میبریم، راهنمایی میکنم. این بخش یک راهپیمایی دقیق از کدبیس موجود است، با بحث در مورد بهبودهای بالقوه و نقصهای طراحی.
“لایهی دسترسی به پایگاه داده” – پس از بخش ۲ کتاب Code like a Pro in C#، ما شروع به بازنویسی کل سرویس میکنیم.
در بخش ۳، ما بر ایجاد یک پروژه جدید .NET Core تمرکز میکنیم و یاد میگیریم که چگونه میتوانیم از Entity Framework Core برای اتصال به یک پایگاه دادهی ابری (یا محلی) استفاده کنیم. سایر موضوعات مورد بحث شامل الگوی مخزن/سرویس، متدها و خصوصیات مجازی، و کلاسهای مهر و موم شده است.
“لایهی دسترسی به پایگاه داده” – بعد از بخش ۲، ما شروع به بازنویسی کل سرویس میکنیم. در بخش ۳، روی ایجاد یک پروژهی جدید .NET Core تمرکز میکنیم و یاد میگیریم که چگونه میتوانیم از Entity Framework Core برای اتصال به یک پایگاه دادهی ابری (یا محلی) استفاده کنیم. سایر موضوعات مورد بحث شامل الگوی مخزن/سرویس، متدها و خصوصیات مجازی، و کلاسهای مهر و موم شده است.
“لایهی مخزن” – در بخش ۴ کتاب Code like a Pro in C#، به دنیای الگوی مخزن/سرویس قدم میگذاریم و پنج کلاس مخزن پیادهسازی میکنیم. همچنین در مورد تزریق وابستگی، چندرشتهای (شامل قفل کردن، میوتکسها و سِمِفورها)، مقایسههای سفارشی برابری، توسعهی هدایتشده با تست، ژنریکها، متدهای توسعه و LINQ یاد میگیرید.
“لایهی سرویس” – گام بعدی پیادهسازی کلاسهای لایهی سرویس است. در بخش ۵، چهار لایهی سرویس را از ابتدا مینویسیم و دربارهی بازتاب، مسخره کردن (mocking)، وابستگی، قاطعیتهای زمان اجرا و بررسیهای نوع، مدیریت خطا، ساختارها (structs) و yield return صحبت میکنیم.
“لایهی کنترلر” – بخش ۶ آخرین مرحلهی بازنویسی سرویسی است که در ابتدا در بخش ۲ به ارث بردیم. در این بخش، دو کلاس کنترلر مینویسیم و تستهای پذیرش (acceptance testing) را انجام میدهیم.
علاوه بر این موضوعات، همچنین به میانافزار (middleware) ASP.NET Core، مسیریابی HTTP، اتصال دادهی سفارشی، سریالسازی و غیرسریالسازی داده، و تولید مشخصات OpenAPI در زمان اجرا میپردازیم.
بسیاری از فصلهای کتاب Code like a Pro in C# (و برخی از بخشهای درون فصلها) شامل تمرینهایی برای سنجش دانش شما از مطالب هستند.
میتوانید این تمرینها را به سرعت تکمیل کنید. توصیه میکنم هنگام برخورد با آنها، این تمرینها را کامل کنید و به بخشهایی که ممکن است به طور سرسری خوانده باشید یا اشتباه متوجه شده باشید، دوباره رجوع کنید.
سرفصلهای کتاب Code like a Pro in C#:
- Code Like a Pro in C#
- contents
- preface
- acknowledgments
- about this book
- about the author
- about the cover illustration
- Part 1 Using C# and .NET
- 1 Introducing C# and .NET
- 2.NET and how it compiles
- Part 2 The existing codebase
- 3 How bad is this code?
- 4 Manage your unmanaged resources!
- Part 3 The database access layer
- 5 Setting up a project and database with Entity Framework Core
- Part 4 The repository layer
- 6 Test-driven development and dependency injection
- 7 Comparing objects
- 8 Stubbing, generics, and coupling
- 9 Extension methods, streams, and abstract classes
- Part 5 The service layer
- 10 Reflection and mocks
- 11 Runtime type checking revisited and error handling
- 12 Using IAsyncEnumerable<T> and yield return
- Part 6 The controller layer
- 13 Middleware, HTTP routing, and HTTP responses
- 14 JSON serialization/ deserialization and custom model binding
- Appendix A-Exercise answers
- Appendix B-Clean code checklist
Appendix C-Installation guides - Appendix D—OpenAPI FlyTomorrow
- Appendix E—Reading list
- index
جهت دانلود کتاب Code like a Pro in C# میتوانید پس از پرداخت، دریافت کنید.
دیدگاهها
هیچ دیدگاهی برای این محصول نوشته نشده است.