آکادمی برنامه نویسان

لوگو

توضیحات دوره

ASP .Net MVC (Model View Controller) یک تکنولوژی با ویژگی های همچون سبک بودن، تست پذیر بودن که این امکان را برای برنامه نویسان بوجود می آورد که برنامه های تحت وب خود را با آن پیاده سازی کنند. در این دوره شما با مقدمات Asp .Net MVC  آشنا خواهید شد و در ادامه آن سایتی همانند سایت تاپ لرن  با امکاناتی نظیر ثبت نام کاربران، فراموشی کلمه عبور، تعریف دوره ها به همراه بخش های دوره، دسته بندی دوره ها، کیف پول کاربر، درگاه پرداخت آنلاین، پنل اس ام اس را از صفر تا صد پیاده سازی خواهیم کرد. پروژه پایانی این دوره در این لینک قابل رویت است . مباحث مهمی که در این دوره آموزش داده خواهد شد، عبارتند از Web Api, Ajax, Repository, Routing, Caching و ...

پیش نیازها

  • آشنایی با زبان ) C#دوره آموزش سی شارپ)
  • آشنایی با  HTML
  • آشنایی با jQuery
  • آشنایی با Bootstrap (آموزش بوت استرپ)
  • آشنایی با مفاهیم وب
  • آشنایی با مفاهیم SQL Server از جمله طراحی و ایجاد جداول، دستورات  Insert,Update,Delete,Select

مخاطبان این دوره

علاقمندان به  برنامه نویسی وب

افرادی که علاقمند به شروع برنامه نویسی با تکنولوژی MVC می باشند

علاقمندان به طراحی سایت آموزشگاه آنلاین

سرفصل دوره

  • مقدمه
  • تاریخچه MVC و شروع کار با MVC
    • تاریخچه MVC
    • مشکلات Asp.Net WebForm
    • استاندارد های وب
    • الگوی MVC چیست ؟
    • مفهوم الگوی MVC
    • Domain Model چیست ؟
    • آشنایی با Design Patern ها
    • Model-View
    • Model-View-ViewModel
    • Model-View-Presenter
    • معماری MVC
    • چرا باید از MVC استفاده کنیم ؟
    • مهاجرت از WebForms به MVC
    • امکانات MVC
    • آشنایی با  Visual Studio 2017
    • قالب پروژه ها
      • Empty
      • WebForms
      • MVC
      • WebApi
      • Single Page Application
      • FaceBook
  • کار با Controller ها
    • معرفی کنترل ها
    • ایجاد یک کنترلر ساده
    • ایجاد کنترل با ارث بری از Controller
    • بررسی انواع کنترل
      • Empty
      • Read/Write Actions
      • With Views Using Entity Framework
      • API 2 - Empty
      • API 2 With Read/Write
      • API 2 With Actions - Using Entity Framework
  • Action ها
    • آشنایی با Action Method ها
    • ایجاد یه  Action Method
    • بررسی انواع Action Method ها
      • View Result
      • Partial View Result
      • RedirectToRoutResult
      • RedirectResult
      • ContentResult
      • FileResult
      • JsonResult
      • HttpNotFountResult
      • EmptyResult
      • ورودی Action Method ها
      • Query String
      • Post
      • RoutData
    • تعیین مقدار پیش فرض برای پارامترها
  • View ها
    • آشنایی با View ها
    • ساخت یک View سفارشی
    • View Engin ASPX
    • View Engin cshtml
    • View Engin vbhtml
    • ساخت View Engin اختصاصی
    • آشنایی با Razor
    • Razor چگونه کار میکند ؟
    • Html Encoding
    • پردازش یک View
    • انتقال داده از Action Method ها به View ها
      • ViewBag
      • ViewData
      • TempData
    • استفاده از دستور Using در View ها
    • معرفی فضاهای نام در Web.Config
    • View ها Strongly Typed
    • دایرکتوری Shared
    • Layout ها
  • Partial View ها
    • آشنایی با Partial View ها
    • ساخت Partial های Public
    • نمایش Partial بر اساس شرط
    • ساخت Partial های تودرتو
  • Html Helper ها
    • آشنایی Html Helper ها
    • استفاده از Helper های موجود
    • CheckBox
    • HiddenField
    • RadioButton
    • Password
    • TextArea
    • TextBox
    • استفاده از GridView موجود در MVC
    • استفاده از Chart موجود در MVC
    • ساخت یک Html Helper اختصاصی
  • Model ها
    • آشنایی با Model ها
    • ساخت یک Model
    • Model Metadata
    • استفاده از MetaData ها
    • ساخت View های StronglyType
    • آشنایی با Scaffolding
    • Scaffolding چگونه کار میکند؟
    • آشنایی با T4 ها
    • ساخت T4 سفارشی
    • آشنایی با روش Code First
    • استفاده از Model جهت ساخت جداول بانک اطلاعاتی
    • ایجاد رابطه بین Model ها
    • در قوانین برای Model ها
  • Area ها
    • آشنایی با Area ها
    • کار با Area ها
    • ایجاد یک Area
    • حل مشکل تداخل در Area ها
  • Caching
    • آشنایی با Caching
    • Cach کردن یک کنترلر
    • Chach کردن یک Partial View
    • استفاده از Cach سفارشی
    • تعیین زمان Cach شدن اطلاعات
    • Cach کردن یک View خاص
  • آموزش Jquery Ajax
    • آموزش نحوه بارگذاری Jquery در View ها
    • آموزش Even ها در JQuery
    • آموزش امکانات قدرتمند Jquery در استفاده از Ajax
    • بررسی توابع Ajax
    • بررسی توابع get
    • بررسی توابع Post
    • نحوه Serialize اطلاعات فرم با Jquery
    • ساخت فرمهای Full Ajax با استفاده از Jquey
  • WebApi
    • WebApi چیست ؟
    • استفاده از کنترل های Api 2
    • ایجاد یک مثال برای استفاده از Web Api 2
    • استفاده از Jquery Ajax جهت برقراری ارتباط با WebApi
  • آموزش کاربردی Ajax در MVC.NET
    • ساخت فرم های ناهمزمان
    • آماده سازی پروژه برای استفاده از unobtrusive Ajax
    • ساخت فرم های Ajax
    • توضیح عملکرد unobtrusive Ajax
    • نمایش پیغام Writing مناسب در زمان اجرای در خواست Ajax
  • آموزش Web API
    • ساخت کنترلرهای مختص API ها
    • فهم ساخت عملکرد API کنترلر
    • نگاشت و MAP کردن متدهای HTTP بر متدهای Action
    • آموزش نوشتن جاوا اسکریپت برای استفاده از Web API
  • برقراری امنیت در برنامه
    • استفاده از صفت Authorize جهت مجبور کردن به Login
      • امن کردن Action های Controller
      • AuthorizeAttribute چگونه با Forms Authentication و AccountController کار می کند؟
      • Windows Authentication و قالب پروژه Intranet Application
      • امن کردن کل یک Controller
    • استفاده از صفت Authorize برای مجبور کردن به عضویت در یک Role خاص
  • شروع پروژه تاپ لرن
    • پیاده سازی قالب آماده پروژه
    • ایجاد جداول مورد نیاز برای مدیریت کاربران و سطوح دسترسی آنها
    • ایجاد مدل Entity و اعمال تغییرات مورد نیاز روی مدل جهت درج صفت ها
    • ساخت T4 های اختصاصی جهت سرعت بخشیدن به برنامه نویسی و ساخت صفحات
    • ایجاد فرم ثبت نام و ورود کاربران و بازیابی کلمه عبور با حفظ امنیت کلمه عبور (رمز نگاری کلمه عبور ، استفاده از Captcha جهت جلوگیری از ورود ربات ها(
    • ارسال ایمیل فعال سازی حساب کاربری جهت اطمینان از صحت ایمیل
    • برقراری امنیت و پیاده سازی سطوح دسترسی کاربران
    • ساخت پنل مدیریت کاربران (افزودن ، ویرایش ، حذف ، تعیین سطح دسترسی)
    • ساخت جداول مربوط به دوره ها
    • ساخت پنل مدیریت و نمایش دوره ها به همراه شمارنده بازدید
    • ساخت قسمت نمایش آخرین دوره ها و 8 دوره پربازدید
    • ساخت جداول مربوط به اسلایدر و نمایش اسلایدر داینامیک در سایت
    • ساخت جداول مربوط به گروه دوره ها
    • ساخت پنل مدیریت گروه ها به صورت Full Ajax به همراه Modal
    • ایجاد بخش نمایش گروه ها و تعداد دوره های موجود در این گروه
    • ایجاد بخش نمایش دوره موجود در یک گروه
    • صفحه بندی اختصاصی نمایش دوره
    • ساخت جداول مربوط به دوره (بخش های دوره، نظرات، کلمات کلیدی ، مدرس دوره)
    • ساخت پنل مدیریت دوره ها، درج کلمات کلیدی، اطلاعات تکمیلی و مدرس در یک جا (View Model Class)
    • ذخیره تصاویر در دو سایز (اندازه واقعی و اندازی بند انگشتی )
    • نمایش دوره ها در سایت
    • ایجاد صفحات مجازی جهت بهینه سازی سایت برای موتورهای جستجو
    • ساخت جستجو پیشرفته و جستجو کلمات کلیدی مطالب
    • ساخت جداول مربوط به ثبت نظر تو در تو برای دوره
    • ایجاد بخش نظردهی تودرتو به صورت Full Ajax برای دوره
    • ساخت بخش خرید دوره
    • ایجاد بخش کیف پول کاربران و اتصال به درگاه بانک
    • ثبت نهایی خرید در بانک اطلاعاتی و کسر هزینه از کیف پول
    • ارسال پیامک و ایمیل پس از خرید در سایت
    • استفاده از قالب آماده پنل مدیریت
    • جمع بندی نهایی پروژه و رفع خطاهای احتمالی
    • نصب سیستم خطایابی پیشرفته جهت اطلاع از خطاهای احتمالی پروژه بعد از پابلیش
    • پابلیش پروژه و قرار دادن روی هاست

اهداف این آموزش

آماده شدن برای دوره آموزش Asp.Net Core 2 از مقدماتی تا پیشرفته (پیش نیاز)

پیاده سازی یک فروشگاه  اینترنتی با تکنولوژی Asp .Net MVC

استفاده از CodeFirst در EntityFrameWork

نحوه پابلیش پروژه عملی بروی هاست

پروژه پایانی این دوره در این لینک قابل رویت است .