
آموزش بهترین روش های برنامه نویسی در سی شارپ 10
آموزش بهترین روش های برنامه نویسی در سی شارپ 10 یکی دیگر از آموزش های گروه آموزشی پرووید می باشد که در این قسمت آن را به شما معرفی می کنیم. این بسته آموزشی نیز یکی از دوره های آموزشی دیگر که در حوزه فارسی سازی آموزش های انگلیسی تنظیم شده است می باشد. عنوان این بسته آموزشی، Best Practice های برنامه نویسی در سی شارپ 10 است که با نام اصلی C# 10 Best Practices از شرکت Pluralsight منتشر شده است.
زبان برنامه نویسی سی شارپ چیست؟
زبان برنامه نویسی سی شارپ یک زبان شی گرا و مدرن و اصطلاحاً type-safe میباشد. این زبان برنامه نویسی بسیار محبوب به برنامه نویسان اجازه میدهد تا بتوانند انواع مختلفی از اپلیکیشن های ایمن و قوی را به صورت مبتنی بر دات نت ایجاد کنند. زبان برنامه نویسی سی شارپ از خانواده زبانهای مبتنی بر سی است و به زبانهای سی، سی پلاس پلاس، و جاوا و جاوا اسکریپت بسیار شبیه می باشد. زبان برنامه نویسی سی شارپ کامل شی گرا می باشد و به صورت مبتنی بر کامپوننت و یا اصطلاحاً component-oriented طراحی شده است.

این زبان برنامه نویسی اجزای تشکیل دهنده و یا language construct هایی را در اختیار قرار می دهد تا امکان پیاده سازی مفاهیم مختلف شی گرایی فراهم بگردد. همین موضوع باعث شده است که امروزه زبان سی شارپ به یک زبان بسیار محبوب برای ساخت نرم افزارها تبدیل بگردد. برخی ویژگی های این زبان برنامه نویسی که باعث میشود برنامه نویسان بتوانند نرم افزار های بسیار ایمن و قوی ایجاد کند مواردی از قبیل Garbage collection و Nullable type ها و Exception handling و Lambda expression ها و Language Integrated Query (LINQ) و asynchronous operation ها و unified type system هستند که باعث محبوبیت چشمگیر سی شارپ شدهاند.
بهترین روش ها (Best Practice) چه هستند؟
بهترین روش ها و یا اصطلاحاً Best Practice ها جزء مواردی هستند که اگر آنها را در برنامه نویسی خود لحاظ کنید می توانید کدهای را ایجاد نمایید که قابلیت خوانایی و قابلیت نگهداری بالاتری داشته باشند. هرچند که استفاده نکردن از این موارد در کامپایل شدن برنامه مشکلی را ایجاد نمی کند، اما استفاده کردن از آنها باعث افزایش کیفیت کد نوشته شده از جهات مختلف می گردد.

استفاده کردن از مواردی از قبیل نامگذاری مناسب متغیرها، نامگذاری مناسب توابع و کلاس ها، استفاده کردن از کامنت ها به روشی تمیز و کم حجم، حاشیه گذاری مناسب برای کد، افزایش قابلیت حمل پذیری، افزایش قابلیت استفاده مجدد و مقیاس پذیری و نهایتاً افزایش قابلیت تست پذیری جز مواردی هستند که باعث میشوند یک نرمافزار نسبت به نرم افزار های دیگر قدرتمند تر و موفق تر بگردد. استفاده کردن از این اصول در کد نویسی باعث می شود تا شما نیز به یک برنامه نویس قوی تر تبدیل شوید.
اصول Clean Code در طراحی کلاسها و متدهای C# 10
آموزش C# 10 Best Practices به بررسی شیوههایی میپردازد که خوانایی و نگهداری کد را در پروژههای C# بهبود میدهند. مباحثی مانند اصل DRY، اصل Liskov Substitution Principle و Separation of Concerns نشان میدهند که کیفیت کد فقط به درست اجرا شدن آن محدود نیست؛ ساختار مسئولیتها و میزان تکرار نیز اهمیت دارند. برای مثال، اگر چند کلاس منطق مشابهی را به شکل تکراری پیادهسازی کنند، اصلاح یک رفتار ممکن است به تغییرات متعدد نیاز پیدا کند. شناخت این اصول به شما کمک میکند چنین مشکلاتی را هنگام طراحی یا بازبینی کد تشخیص دهید.
در ادامه، آموزش به Conventionها و Guidelineهای کدنویسی، نامگذاری و ساختار کلاسها و متدها میپردازد. موضوعاتی مانند camelCase، تعریف کلاس و اصول نامگذاری متدها در ظاهر سادهاند، اما رعایت یک الگوی روشن باعث میشود اعضای تیم سریعتر منظور کد را بفهمند. همچنین بررسی Object Initializerها و کاربرد StringBuilder در کنار سایر موضوعات، به انتخاب روش مناسب برای سناریوهای مشخص کمک میکند. این آموزش به جای تمرکز صرف بر قابلیتهای زبان، تصمیمهای روزمره برنامهنویسی را از منظر خوانایی، انسجام و قابلیت نگهداری بررسی میکند.
ریفکتور کردن کد و آمادهسازی آن برای Unit Testing
با بزرگتر شدن یک پروژه، ممکن است متدهایی ایجاد شوند که مسئولیتهای زیادی دارند یا برای انجام یک تغییر کوچک به اصلاح بخشهای مختلف نیاز پیدا میکنند. در این آموزش، Refactoring برای ایجاد کد تمیز و انتقال قابلیتها بین آبجکتها بررسی میشود. سادهسازی فراخوانی متدها نیز یکی از موضوعات آموزشی است و به کاهش پیچیدگی در نحوه استفاده از APIهای داخلی کمک میکند. هدف از این تغییرات، حفظ رفتار مورد انتظار برنامه در کنار بهبود ساختار کد است؛ رویکردی که برای نگهداری پروژههای در حال توسعه اهمیت دارد.
قابل تست بودن کد نیز بخشی از اصول مطرحشده در آموزش است. وقتی مسئولیتها به شکل مناسبی از هم جدا شده باشند، بررسی رفتار هر بخش معمولاً سادهتر میشود و وابستگیهای غیرضروری کمتر در تستها دخالت میکنند. آموزش به این موضوع میپردازد که چرا باید از Unit Test استفاده کرد و چگونه طراحی کد با امکان آزمودن آن ارتباط پیدا میکند. با ترکیب اصول Clean Code، Separation of Concerns و Refactoring، میتوانید هنگام توسعه ویژگیهای جدید، کدی بسازید که هم فهم آن آسانتر باشد و هم تغییرات بعدی را با اطمینان بیشتری بپذیرد.
سرفصل مطالب آموزش ویدئویی بهترین روش های برنامه نویسی در سی شارپ 10
فصل اول: مقدمه دوره آموزشی- مقدمه دوره آموزشی
- بررسی کد تمیز و یا Clean Code واصول و توصیه های مربوط به آن
- نوشتن کد های خود مستند
- بررسی اصل KISS
- بررسی اصل DRY
- بررسی اصل YAGNI
- بررسی اصل Single Responsibility Principle از اصول SOLID
- بررسی اصل Open-closed Principle از اصول SOLID
- بررسی اصل Liskov Substitution Principle از اصول SOLID
- بررسی اصل Interface Segregation Principle از اصول SOLID
- بررسی اصل Dependency Inversion Principle از اصول SOLID
- استفاده از Composition بجای Inheritance
- بررسی Separation of Concerns
- جمع بندی
- بررسی Convention ها و Guideline های مربوط به کد نویسی
- بررسی Convention های مربوط به نام گذاری
- بررسی PascalCase
- بررسی camelCase
- بررسی Convention های مربوط به چیدمان کد
- بررسی Convention های Comment گذاری
- بررسی String Interpolation
- بررسی StringBuilder
- بررسی Implicitly Typed Variable ها و UInt و آرایه ها
- بررسی Func ها و Action ها
- بررسی new Operator ها و using
- بررسی ObjectInitializer ها و Static
- بررسی LINQ
- جمع بندی
- کلاس ها و متد های تمیز
- توجه به قابلیت خوانایی و یا Readability
- تعریف کردن یک کلاس
- نامگذاری و مرتب سازی عناصر کلاس
- بررسی کلاس های Static
- متد ها و Function ها
- مهمترین اصول نامگذاری متد ها
- بررسی Namespace ها و Reference ها
- جمع بندی
- ریفکتورکردن برای ایجاد کد های تمیز
- ایجاد کردن متد ها
- انتقال قابلیت ها بین آبجکت های مختلف
- سازماندهی کردن داده ها
- آموزش عملی: سازماندهی کردن داده ها
- ساده سازی دستورات شرطی
- ساده سازی فراخوان های متدها
- بررسی Generalization
- قابلیت Rename کردن
- جمع بندی
- ایجاد کردم کد های قابل تست
- چرا باید از Unit Test استفاده کنیم؟
- بررسی آناتومی یک Unit Test
- آموزش عملی: آناتومی یک Unit Test
- بهترین روش ها و یا Best Practice های مربوط به Unit Test ها
- جمع بندی
- خلاصه و جمع بندی
- بررسی Convention ها و Guideline های مربوط به کد نویسی
- کلاس ها و متد های تمیز
- ریفکتور کردن با رفتن به سمت کد های تمیز تر
- انجام Unit Testing و جمع بندی نهایی







