معرفی دوره آموزشی متخصص دات نت (Csharp)
در دوره رایگان متخصص دات نت شما میتوانید از صفر شروع به یادگیری برنامه نویسی کنید و در انتهای دوره به یک برنامه نویس فول استک تبدیل شوید. در این دوره ابتدا شما زبان برنامه نویسی سی شارپ (C#) را یاد خواهید گرفت و سپس با بانک اطلاعاتی SQL Server آشنا خواهید شد تا برنامههای سی شارپی خود را به آن متصل کنید. برای این کار از Ado.net و Entity Framework و ابزار های دیگری استفاده میشود که بطور کامل به شما آموزش داده خواهند شد. همچنین، کار با پلتفرم WPF را آموزش خواهید دید تا اپلیکیشنهای تحت ویندوز را پیاده سازی کنید.
لازم به ذکر است که تمام این موارد بصورت عملی و پروژه محور آموزش داده میشوند و چندین پروژه کوچک را در طول دوره پیاده سازی خواهید کرد تا به خوبی با این موارد آشنا شوید. در سرفصل سی شارپ پیشرفته شما موارد دیگری از جمله اصول Solid و Dependency Injection، چندین کتابخانه مهم .NET، معماری نرم افزار، تست نویسی مقدماتی، دیزاین پترن ها و… را آموزش خواهید دید.
بعد از اینکه به خوبی به این مباحث تسلط پیدا کردید به سراغ پروژه اصلی دوره خواهید رفت تا بطور واقعی یک برنامه بزرگ را برای اولین بار طراحی کنید. این موضوع باعث میشود تا به خوبی با چالشهای دنیای واقعی برنامه نویسی آشنا شوید و آماده ورود به بازار کار به عنوان یک برنامه نویس فول استک شوید!
سی شارپ چیست؟
C# یا سی شارپ، یک زبان برنامهنویسی شیءگرا، ساختاری، و چندمنظوره (multi-paradigm) است که توسط شرکت مایکروسافت در سال ۲۰۰۰ معرفی شد. این زبان برای توسعهی نرمافزارهای ویندوز، برنامههای تحت وب، برنامههای موبایل و بازیهای ویدیویی استفاده میشود.
C# از دیدگاه ساختاری، زبانی سیستماتیک است که باعث سهولت در توسعهی برنامه میشود. این زبان به صورت شیءگرا به کار میرود، یعنی بر اساس شیوهی برنامهنویسی که مفاهیم و قواعد آن بر پایهی اشیاء (Objects) میباشد، پایه ریزی شده است. C# همچنین از مفاهیم برنامهنویسی ساختاری نیز پشتیبانی میکند که این مفاهیم معمولاً برای نوشتن کدهای کوچک و سریع کاربرد دارند.
C# به همراه محیط توسعهی مایکروسافت ویژوال استودیو (Visual Studio) مورد استفاده قرار میگیرد که شامل ابزارهای متعددی برای توسعه، تست، و پیکربندی برنامهها میباشد.
چرا سی شارپ؟
-
پراکندگی گسترده: C# یکی از پراکندهترین زبانهای برنامهنویسی در جهان است و اکثر شرکتهای بزرگ از جمله مایکروسافت، اپل و گوگل از آن استفاده میکنند. این به معنی دسترسی آسان به کتابخانهها، منابع آموزشی و ابزارهای توسعهی مرتبط با C# است.
-
قابلیت استفاده برای برنامهنویسی چندپلتفرم: C# امکان توسعهی برنامههای متنوعی برای سیستمهای عامل ویندوز، لینوکس، مکاواس و دیگر پلتفرمها را فراهم میکند.
-
سادگی و خوانایی: C# دارای نحوهی نوشتاری سادهتری نسبت به دیگر زبانهای برنامهنویسی است و کدهای نوشته شده با این زبان به راحتی قابل فهم هستند. همچنین، C# از خصوصیات بسیاری از زبانهای دیگر به طور مثال، دارای بانک اطلاعاتی تعاملی مبتنی بر LINQ (Language Integrated Query) است.
-
کارآیی بالا: C# دارای کارایی بالایی است و با استفاده از این زبان میتوان برنامههایی با سرعت بالا تولید کرد.
-
امنیت: با استفاده از C# میتوان برنامههایی با امنیت بالا تولید کرد، زیرا این زبان از نوعی امضای دیجیتال استفاده میکند که به صورت پیشفرض هنگام کامپایل کردن برنامهها در قالب فایلهای اجرایی استفاده میشود.
مخاطبین دوره آموزشی متخصص دات نت چه کسانی هستند؟
اگر به برنامه نویسی علاقهمند هستید اما نمیدانید از کجا شروع کنید. یا اگر نمیخواهید چندین دوره آموزشی مختلف را تماشا کنید و وقت خود را هدر دهید تا مباحث مورد نیازتان را یاد بگیرید. حتی اگر نمیخواهید هیچ هزینهای برای یادگیری برنامه نویسی کنید، دوره متخصص دات نت دقیقا همان چیزی است که به دنبال آن میگردید! در این دوره رایگان هر آنچه برای تبدیل شدن به یک برنامه نویس فول استک نیاز دارید، از صفر و سطح مقدماتی به شما آموزش داده خواهد شد. اگر خوب به مباحث گفته شده مسلط شوید، این دوره اولین و آخرین پله شما برای کسب درآمد از دنیای برنامه نویسی خواهد بود!
پیش نیاز دوره رایگان متخصص دات نت چیست؟
همانطور که میدانید، این دوره از صفر تا صد تبدیل شدن به یک متخصص دات نت یا فول استک دولوپر، همراه شما خواهد بود. اینکه به هیچ پیش نیازی برای ثبت نام در این دوره نیاز ندارید، بعلاوه رایگان بودنش، همان چیزی است که آن را از سایر دورههای آموزشی متمایز کرده است. بله! برای ثبت نام در دوره متخصص دات نت (Csharp) فقط باید یک کامپیوتر یا لپ تاپ داشته باشید و باقی مراحل را تا رسیدن به درآمد از برنامه نویسی به ما بسپارید!
Entity Framework چیست؟
Entity Framework یک فریمورک شیگرا برای تعامل با پایگاه دادهها در برنامهنویسی .NET است. با استفاده از Entity Framework، میتوانید به صورت شیگرا با پایگاه دادهها ارتباط برقرار کنید و عملیات CRUD (ساخت، خواندن، بهروزرسانی و حذف) را انجام دهید.
Entity Framework به طور خاص برای تسهیل توسعه برنامههای داتنت و کاهش تکرار کد بسیار مفید است. با استفاده از Entity Framework، شما نیازی به نوشتن کد SQL خام برای ارتباط با پایگاه داده ندارید و به جای آن، میتوانید از کدهای مستقل از پایگاه دادهی Entity Framework استفاده کنید.
Entity Framework دارای قابلیتهای مفیدی مانند پیمایش شیگرایی، پیمایش دیرهنگام (lazy loading)، توابع خودکار پایگاه داده (automatic database functions) و قابلیتهای پیشرفتهتر مانند مدیریت تراکنشها و معاملات (transactions) است. همچنین، Entity Framework از پشتیبانی از پایگاه دادههای مختلفی مانند SQL Server، Oracle، MySQL و PostgreSQL پشتیبانی میکند.
Sql Server چیست؟
SQL Server یک سیستم مدیریت پایگاه داده رابطهای (RDBMS) از شرکت مایکروسافت است. SQL Server از زبان استاندارد SQL (Structured Query Language) استفاده میکند و برای ذخیرهسازی، جستجو، و مدیریت دادهها استفاده میشود. SQL Server میتواند بر روی سیستمهای عامل ویندوز نصب شده و از قابلیتهایی مانند شبکهبندی، بکآپگیری، بازیابی پایگاه داده، امنیت و سطوح دسترسی پشتیبانی کند.
SQL Server دارای انواع مختلفی از نسخههاست که هر کدام برای نیازهای خاصی مناسبند. نسخههای SQL Server شامل SQL Server Express، SQL Server Standard، SQL Server Enterprise و SQL Server Developer میشوند. SQL Server همچنین ابزارهای مفیدی مانند SQL Server Management Studio (SSMS) برای مدیریت دادهها و پایگاه داده و SQL Server Integration Services (SSIS) برای انتقال دادهها از منابع مختلف به پایگاه داده فراهم میکند.
SQL Server در بسیاری از سازمانها، برنامههای کاربردی و وبسایتها استفاده میشود و به عنوان یکی از قدرتمندترین و پرکاربردترین سیستمهای مدیریت پایگاه داده در دنیا شناخته میشود.
شی گرایی یعنی چه؟
شی گرایی (Object-Oriented Programming یا به اختصار OOP) یک روش برنامهنویسی است که در آن دادهها و عملیات مربوط به آنها به صورت شیهایی در نظر گرفته میشوند. در سی شارپ نیز، مفهوم شی گرایی به خوبی پیادهسازی شده است.
شی گرایی در سی شارپ بر اساس چهار اصل اساسی زیر استوار است:
- انتزاع (Abstraction): این اصل به معنای پنهان کردن جزئیات پیچیده و تنها نمایش ویژگیهای مهم و مورد نیاز یک شی است. در سی شارپ، این اصل با استفاده از مفهومهایی مانند کلاسها، اعضای کلاس، ویژگیها و توابع پیادهسازی میشود.
- ارثبری (Inheritance): این اصل به معنای ارثبری ویژگیها و عملیات از یک کلاس به کلاس دیگر است. در سی شارپ، میتوانید با استفاده از کلمهی کلیدی
:base
، یک کلاس را از یک کلاس پایه (base class) ارثبری کنید. - چندشکلی (Polymorphism): این اصل به معنای توانایی اجرای یک عملیات به چندین شکل است. در سی شارپ، میتوانید با استفاده از واژهی کلیدی
virtual
وoverride
، تابعها را در کلاسهای مختلف پیادهسازی کنید. - جداسازی مفاهیم (Encapsulation): این اصل به معنای جداسازی ویژگیهای دادهای و عملیاتی یک شی است. در سی شارپ، با استفاده از کلمهی کلیدی
private
وpublic
، میتوانید محدوده دسترسی به ویژگیها و توابع را مشخص کنید.
به طور کلی، شی گرایی در سی شارپ برای پیادهسازی برنامه می باشد.
Dependency Injection چیست؟
Dependency Injection (DI) یک الگوی طراحی (design pattern) است که در برنامهنویسی مورد استفاده قرار میگیرد و به صورت خلاصه به معنای تزریق وابستگیها است. با استفاده از DI، اشیاء برنامه از وابستگیهای خود به کلاسهای دیگر جدا شده و به عنوان پارامتر به آنها تزریق میشوند، به طوری که تغییر در یک کلاس، تغییراتی را در کلاسهای دیگر نیز به دنبال ندارد.
با استفاده از DI، تولید و مدیریت اشیاء به عهدهی یک سرویس (معمولاً یک کانتینر وابستگی) قرار میگیرد و به برنامهنویس اجازه میدهد تا به راحتی به اشیاء وابستهی خود دسترسی داشته باشد.
در سی شارپ، DI برای تزریق وابستگیها به سه صورت زیر پیادهسازی میشود:
- Constructor Injection: در این روش، وابستگیها به صورت پارامترهای سازنده کلاس تزریق میشوند.
- Property Injection: در این روش، وابستگیها به صورت ویژگیهای کلاس تزریق میشوند.
- Method Injection: در این روش، وابستگیها به صورت پارامترهای توابع کلاس تزریق میشوند.
استفاده از Dependency Injection در سی شارپ، به برنامهنویسان کمک میکند که کد قابلنگهداری، تست و گسترش پذیرتری بسازند و از تکرار وابستگیها و ساختار دهی برنامه جلوگیری کنند.
تعریف اصول Solid
اصول SOLID یک مجموعه اصول طراحی برای توسعهدهندگان نرمافزار هستند که توسط رابرت سی. مارتین (Robert C. Martin) معرفی شدهاند. این اصول برای طراحی نرمافزارهای قابلتوسعه، قابلتست و قابلنگهداری بسیار مهم هستند. اصول SOLID عبارتند از:
- Single Responsibility Principle (SRP) یا اصل مسئولیتپذیری تکیهگاه: هر کلاس باید تنها یک مسئولیت داشته باشد.
- Open/Closed Principle (OCP) یا اصل باز بودن بسته بودن: کلاسها باید برای توسعه باز باشند، اما برای تغییر بسته.
- Liskov Substitution Principle (LSP) یا اصل جایگزینپذیری لیسکف: زیرکلاسها باید بهجای کلاس پدر قابل استفاده باشند.
- Interface Segregation Principle (ISP) یا اصل جداسازی رابط: باید برای کلاسها تعدادی رابط کوچک و معنادار تعریف کرد، نه یک رابط عظیم و بیمعنی.
- Dependency Inversion Principle (DIP) یا اصل وابستگی برعکس: برای اتصال کلاسها بهجای وابستگی به کلاسهای خاص، بهجای آن باید به ابستگی به رابطها بپردازیم.
استفاده از اصول SOLID در سی شارپ، به برنامهنویسان کمک میکند که کد قابلنگهداری، تست و گسترشپذیرتری بسازند و به صورت کلی بهبود قابلیت خواندن، نگهداری و گسترش کد را بهدنبال داشته باشند.
Xaml چیست؟
XAML مخفف عبارت Extensible Application Markup Language است و یک زبان برنامهنویسی است که برای توسعه برنامههای مبتنی بر ویندوز و وب استفاده میشود. این زبان در واقع یک زبان برچسبی XML برای توصیف رابط کاربری (UI) و عناصر گرافیکی برنامههای ویندوز است. از XAML برای توصیف اشیاء مانند کنترلهای ورودی، دکمهها، منوها، فضاهای نمایشی و... استفاده میشود.
XAML در توسعه برنامههای مبتنی بر WPF (Windows Presentation Foundation) و UWP (Universal Windows Platform) و همچنین در توسعه برنامههای مبتنی بر Xamarin استفاده میشود. با استفاده از XAML، میتوانید رابط کاربری برنامهی خود را به صورت شیءگرا و قابل گسترش توصیف کنید و با استفاده از کتابخانهها و فریمورکهایی مانند WPF، این رابط کاربری را پیادهسازی کنید.
WPF یعنی چه؟
PF مخفف عبارت Windows Presentation Foundation است و یک فریمورک برنامهنویسی مبتنی بر .NET است که برای توسعه برنامههای کاربردی ویندوزی استفاده میشود. با استفاده از WPF، میتوانید رابط کاربری برنامهی خود را با استفاده از اشیاء گرافیکی مانند کنترلها، دکمهها، جداول، چارتها، تصاویر و... طراحی کنید و با استفاده از کدهای برنامهنویسی C# یا VB.NET این رابط کاربری را پیادهسازی کنید.
WPF از زبان XAML (Extensible Application Markup Language) برای توصیف رابط کاربری استفاده میکند که بسیاری از ویژگیهایی که در طراحی رابط کاربری نیاز است را فراهم میکند. با استفاده از WPF، میتوانید از انیمیشنها، پویشگرها، شیءهای 3 بعدی و... استفاده کنید و به آسانی از ویژگیهای مختلفی مانند قابلیت بررسی کردن و پویا کردن محتوا استفاده کنید. به کمک WPF میتوانید برنامههایی با رابط کاربری پویا و مدرن طراحی کنید.
نظرات دانشجویان
نظرات دانشجویان
سلام استاد فوق العاده ازتون بابت این دوره ی عالی ممنونم و همچنین از اینکه اینقد واضح و خوب درس میدید ممنونم استاد خواهشا و لطفا همینجورری ادامه بدید خیلی مچکر عالی هستید
Amir Mohammad Ghorbani
بلاخره یه دوره عالی در مورد سی شارپ و دات نت
عرض سلام و خسته نباشید خدمت استاد گرامی استاد ممنون بابت دوره فوق العادتون و تدریس عالیتون فقط 2 تا سوال داشتم اول اینکه با این دوره میشه اماده شد واسه بازار کار اگه اره در چه سمتی؟؟ من خودم عاشق حوزه امنیت هستم ولی نمیدونم چی باید یاد بگیرم و دوم اینکه شما گفتید در اینده با visual studio کار میکنید میخاسم بدونم امثال من که سیستم هاشون ضعیفه باید چیکار کنیم؟؟؟ میشه لطفا راهنمایی کنید؟؟؟
عااالی به شدت منتظر ویدیو های این دوره هستم دست مریزاد
سلام ,ممنون بابت آموزش های خوبتون خدا قوت انشالله همیشه موفق وپیروز باشید
aida hagh
سلام ،خسته نباشید ،ممنون بابت زحماتتون