نام کتاب: مرجع کامل ASP.NET MVC 4
ترجمه و تالیف: بهروز راد
ناشر: پندار پارس
تعداد صفحات: 576
قیمت روی جلد: 22500 تومان
مطالعه ی قسمتی از کتاب...
 
در این کتاب می خوانید:
  
بخش اول: معرفی ASP.NET MVC
   
  فصل 1: ایده ی اصلی
  
تاریخچهی مختصری از توسعهی برنامههای مبتنی بر وب
  
- ·         ASP.NET Web Forms
 - ·         مشکلات ASP.NET Web Forms چیست؟
 
    جایگاه توسعهی وب در زمان حال
  
- ·         استانداردهای وب و REST
 - ·         Agile و توسعهی تست محور
 - ·         Ruby on Rails
 - ·         Sinatra
 - ·         Node.js
 
          مزایای اصلی ASP.NET MVC
  
- ·         معماری MVC
 - ·         توسعه پذیری
 - ·         کنترل کامل بر HTML و HTTP
 - ·         تست پذیری
 - ·         سیستم مسیریابی قدرمند
 - ·         ساخته شده بر مبنای بهترین قسمتهای ASP.NET
 - ·         API پیشرفته
 - ·         ASP.NET MVC، متن باز است
 
                چه کسی باید از ASP.NET MVC استفاده کند؟
          
- ·         مقایسه با ASP.NET Web Forms
 - ·         مهاجرت از ASP.NET Web Forms به ASP.NET MVC
 - ·         مقایسه با Ruby on Rails
 - ·         مقایسه با MonoRail
 -   قابلیتهای جدید در ASP.NET MVC 3 & 4
 
  نتیجه گیری
      
  فصل 2: آمادگی برای شروع
آماده سازی سیستم توسعه
- ·         نصب Visual Studio 2010
 - ·         نصب ASP.NET MVC
 - ·         نصب ابزارهای اختیاری
 
      آماده سازی Server
  
- ·         نصب IIS
 - ·         نصب ابزارهای اضافه
 - ·         پیکربندی Web Deployment
 
      منابع بیشتر برای یادگیری
  نتیجه گیری
  
  فصل 3: اولین پروژهی ASP.NET MVC
  
ایجاد یک پروژهی جدید ASP.NET MVC
  
- ·         اضافه کردن اولین Controller
 - ·         آشنایی با Routeها
 
    پردازش در صفحات وب
  
- ·         ایجاد یک View
 - ·         اضافه کردن خروجی پویا
 
    ایجاد یک پروژهی ساده برای کار با دادهها
  
- ·         آماده سازی
 - ·         طراحی مدل دادهها
 - ·         ارتباط بین متدهای Action
 - ·         ایجاد یک View نوعدار
 - ·         مدیریت فرمها
 - ·         افزودن تعیین اعتبار
 - ·         تکمیل پروژه
 
              نتیجه گیری
  
  فصل 4: معماری MVC
  
تاریخچهی MVC
  
مفهوم الگوی MVC
  
- ·         آشنایی با Domain Model
 - ·         پیاده سازی معماری MVC در ASP.NET
 - ·         مقایسهی MVC با الگوهای دیگر
 - ·         آشنایی با الگوی Smart UI
 
        متدولوژی Domain Driven Design
  
- ·         مدل کردن یک Domain
 - ·         زبان یکپارچه
 - ·         Aggregate و Simplification
 - ·         ایجاد Repositoryها
 
        ایجاد بخشهای تفکیک شده
  
- ·         استفاده از تزریق وابستگی (Dependency Injection)
 - ·         مثالی از تزریق وابستگی در ASP.NET MVC
 - ·         استفاده از Dependency Injection Container
 
      شروعی برای آزمایش واحد خودکار
  
- ·آشنایی با Unit Testing
 - ·         آشنایی با Integration Testing
 
    نتیجه گیری
  
  فصل 5: قابلیتهای کلیدی زبان
  
قابلیتهای کلیدی C#
  
- ·         استفاده از Automatic Properties
 - ·         استفاده از Object Initializer و Collection Initializer
 - ·         استفاده از Extension Methods
 - ·         استفاده از عبارتهای Lambda
 - ·         استفاده از Type Inference
 - ·         استفاده از Anonymous Type
 - ·         استفاده از LINQ
 
              آشنایی با سینتکس موتور Razor
  
- ·         ایجاد پروژه
 - ·         بررسی یک View ساده در Razor
 
    نتیجه گیری
  
  فصل 6: ابزارهای مهم برای ASP.NET MVC
  
استفاده از Ninject
  
- ·         ایجاد پروژه
 - ·         شروع کار با Ninject
 - ·         ایجاد زنجیرهای از وابستگیها
 - ·         تعیین مقادیر Propertyها و پارامترها
 - ·         استفاده از Self-Binding
 - ·         برگشت نوع مشتق شده
 - ·         استفاده از شرط در معرفی کلاسها
 
              استفاده از Ninject در ASP.NET MVC
  
آزمایش واحد با Visual Studio
  
- ·         ایجاد پروژه
 - ·         ایجاد آزمایشهای واحد
 - ·         اجرای آزمایشهای واحد و مواجه شدن با خطا
 - ·         پیاده سازی قابلیت
 
        استفاده از Moq
  
- ·         افزودن Moq به پروژه
 - ·         ایجاد یک Mock با Moq!
 - ·         آزمایش واحد با Moq
 - ·         تایید با Moq
 
        نتیجه گیری
  
  بخش دوم: بررسی کامل ASP.NET MVC
     
فصل 7: نمای کلی پروژههای ASP.NET MVC
  
کار با پروژههای ASP.NET MVC
  
- ·         Controllerها در قالبهای Internet Application و Intranet Application
 - ·         آشنایی با مفهوم قراردادها در ASP.NET MVC
 
    دیباگ پروژههای ASP.NET MVC
  
- ·         ایجاد پروژه
 - ·         اجرای دیباگر Visual Studio
 - ·         توقف Debugger در Breakpoint
 - ·         استفاده از قابلیت Edit and Continue
 
        استفاده از تزریق وابستگی در کل پروژه
  
نتیجه گیری
  
  فصل 8: URLها، Routing و Areaها
  
معرفی سیستم مسیریابی
  
- ·         ایجاد پروژهی مسیریابی
 - ·         آشنایی با URL Patterns
 - ·         ایجاد و معرفی یک Route ساده
 - ·         تعریف مقادیر پیشفرض
 - ·         ایجاد URL Patternهای ثابت
 - ·         حق تقدم Routeها
 - ·         تعریف Segment Variableهای سفارشی
 - ·         تعریف Segment Variableهای اختیاری
 - ·         تعریف مسیرهای با طول متغیر
 - ·         اولویت بندی Controllerها به وسیلهی Namespaceها
 - ·         ایجاد قید برای Routeها
 - ·         رفتار Routeها با فایلهای موجود بر روی فایل سیستم
 - ·         دور زدن سیستم مسیریابی
 
                          ایجاد آدرسهای خروجی
  
- ·         آماده سازی پروژه
 - ·         ایجاد آدرسهای خروجی در Viewها
 - ·         ایجاد آدرسهای خروجی در متدهای Action
 - ·         ایجاد آدرس از یک Route مشخص
 
        سفارشی سازی سیستم مسیریابی
  
- ·         ایجاد رفتار تطبیقی سفارشی برای Routeها
 - ·         ایجاد یک مدیر Route سفارشی
 
    کار با Areaها
  
- ·         ایجاد یک Area
 - ·         کار با یک Area
 - ·         حل مشکل تداخل نام Controllerها
 - ·         ایجاد لینک برای متدهای Action در Areaها
 
        طراحی مناسب آدرسها
  
- ·         آدرسهایتان را ساده و کاربر پسند طراحی کنید
 - ·         GET و POST: انتخاب صحیح
 
    نتیجه گیری
  
  فصل 9: Controllerها و Actionها
  
معرفی Controller
  
- ·         آماده سازی پروژه
 - ·         ایجاد یک Controller با استفاده از اینترفیس IController
 - ·         ایجاد یک Controller با ارث بَری از کلاس Controller
 
      دریافت ورودی
  
- ·         استخراج دادهها از اشیای Context
 - ·         استفاده از پارامترها در متد Action
 
    تولید خروجی
  
- ·         آشنایی با نتایج Action
 - ·         برگشت نتیجه در قالب HTML با ارسال یک View
 - ·         انتقال دادهها از یک متد Action به یک View
 
      هدایت کاربر به آدرسی دیگر
  
- ·         برگشت دادههای متنی
 - ·         برگشت دادهها با فرمت XML
 - ·         برگشت دادهها با فرمت JSON
 - ·         ارسال فایلها و دادههای باینری
 - ·         برگشت خطاها و کدهای HTTP
 - ·         ایجاد یک نتیجهی Action سفارشی
 
            نتیجه گیری
فصل 10: فیلترها  استفاده از فیلترها
  
- ·         معرفی چهار نوع فیلتر
 - ·         اِعمال فیلترها به Controllerها و متدهای Action
 - ·         فیلترهای مرتبط با اِعطای مجوز دسترسی به منبع
 - ·         استفاده از فیلترهای مدیریت خطا
 - ·         استفاده از فیلترهای Action و Result
 - ·         استفاده از قابلیتهای دیگر فیلترها
 - ·         استفاده از فیلترهای موجود
 
              نتیجه گیری
فصل 11: سفارشی سازی Controllerها
اجزای دخیل در روند اجرای درخواست
  
ایجاد یک Controller Factory
  
- ·         ایجاد یک Controller Factory سفارشی
 - ·         ثبت یک Controller Factory سفارشی
 
    کار با Controller Factory موجود
  
- ·         ایجاد حق تقدم برای Namespaceها
 - ·         سفارشی سازی فرایند ایجاد Controller در DefaultControllerFactory
 
    ایجاد یک Action Invoker سفارشی
  
استفاده از Action Invoker موجود
  
- ·         استفاده از یک نام متد Action سفارشی
 - ·         استفاده از Action Method Selection
 - ·         استفاده از Action Method Selectorها برای پشتیبانی از سرویسهای REST
 
      افزایش کارایی با Controllerهای خاص
  
- ·         استفاده از Controllerهای Sessionless
 - ·         استفاده از Controllerهای نامتقارن
 
    نتیجه گیری
فصل 12: Viewها  ایجاد یک View Engine سفارشی
  
- ·         ایجاد یک IView سفارشی
 - ·         ایجاد یک پیاده سازی از اینترفیس IViewEngine
 - ·         معرفی یک View Engine سفارشی
 
      کار با موتور Razor
  
- ·         آشنایی با نحوهی پردازش View توسط موتور Razor
 - ·         استفاده از الگوی DI برای Viewهای Razor
 - ·         پیکربندی مکان های جستجوی Viewها
 
      افزودن محتویات پویا به Viewهای موتور Razor
  
  استفاده از HTML Helperها
  
- ·         ایجاد یک HTML helper Inline
 - ·         ایجاد یک HTML helper External
 - ·         استفاده از HTML Helperهای موجود
 
      استفاده از Sectionها
  
- ·         بررسی وجود Sectionها (روش اول)
 - ·         بررسی وجود Sectionها (روش دوم)
 
    استفاده از Partial Viewها
  
- ·         ایجاد یک Partial View
 - ·         استفاده از Partial Viewهای Strongly Typed
 
    استفاده از Child Actionها
  
- ·         ایجاد یک متد Child Action
 - ·         فراخوانی متد Child Action
 
    نتیجه گیری
  
  فصل 13: قالبهای Model
  
استفاده از Templated View Helpers
  
- ·         استفاده از CSS در HTML تولیدی
 - ·         استفاده از Model Metadata
 - ·         کار با Propertyهایی از نوع Complex
 
      سفارشی سازی سیستم تولید کدهای HTML
  
- ·         ایجاد یک قالب سفارشی برای حالت ویرایش
 - ·         ایجاد یک قالب سفارشی برای حالت نمایش
 - ·         ایجاد یک قالب عمومی
 - ·         جایگزینی قالبهای موجود
 - ·         استفاده از خصیصهی ViewData.TemplateInfo
 - ·         فراهم کردن اطلاعات اضافی برای یک قالب
 
            آشنایی با سیستم Metadata Provider
  
- ·         ایجاد یک Model Metadata Provider سفارشی
 - ·         سفارشی سازی Data Annotations Model Metadata Provider
 
    نتیجه گیری
  
  فصل 14: Model Binding
  
آشنایی با Model Binding
  
استفاده از Model Binder پیشفرض
  
- ·         Model Binding برای انواع دادههای ساده
 - ·         Model Binding برای نوعهای Complex
 - ·         Binding برای آرایهها و مجموعهها
 
      فراخوانی Model Binding با کدنویسی
  
- ·         محدود کردن فرایند Model Binding به منبعی مشخص
 - ·         مدیریت خطاها در فرایند Model Binding
 
    استفاده از Model Binding برای دریافت فایلهای آپلودی
  
سفارشی سازی سیستم Model Binding
  
- ·         ایجاد یک Value Provider سفارشی
 - ·         ایجاد یک Model Binder با الگوی DI
 - ·         ایجاد یک Model Binder سفارشی
 - ·         ایجاد Model Binder Providerها
 - ·         استفاده از صفت ModelBinder
 
          نتیجه گیری
  
  فصل 15: Model Validation
  
ایجاد پروژه
  
تعیین اعتبار یک مدل به شکل صریح
  
نمایش پیغامهای خطای مرتبط با تعیین اعتبار مقادیر
  
- ·         نمایش پیغامهای خطای در سطح Property
 
  تکنیکهای دیگر تعیین اعتبار مقادیر
  
- ·         تعیین اعتبار مقادیر از طریق Model Binder
 - ·         تعیین قوانین تعیین اعتبار دادهها از طریق Metadataها
 - ·         ایجاد مدلهایی که خود را تعیین اعتبار میکنند
 - ·         ایجاد یک Validation Provider سفارشی
 
        تعیین اعتبار در سمت Client
  
- ·         فعال سازی/غیر فعال سازی تعیین اعتبار در سمت Client
 - ·         استفاده از قابلیت تعیین اعتبار دادهها در سمت Client
 - ·         آشنایی با نحوهی عملکرد فرایند تعیین اعتبار در سمت Client
 - ·         سفارشی سازی فرایند تعیین اعتبار در سمت Client
 
        آشنایی با Remote Validation
  
نتیجه گیری
  
  فصل 16: AJAX
  
استفاده از قابلیت Unobtrusive AJAX در ASP.NET MVC
  
- ·         ایجاد پروژه
 - ·         فعال سازی/غیرفعال سازی Unobtrusive AJAX
 - ·         استفاده از فرمهای Unobtrusive AJAX
 - ·         آشنایی با نحوهی عملکرد قابلیت Unobtrusive AJAX
 
        تنظیمات AJAX
  
- ·         اصل «تنزل مطبوع» (Graceful Degradation)
 - ·         آگاه سازی کاربر در هنگام ایجاد یک درخواست AJAX
 - ·         تایید کاربر، پیش از ارسال درخواست AJAX
 
      ایجاد لینکهای AJAXیی
  
- ·         اصل «تنزل مطبوع» برای لینکهای AJAXیی
 
  کار با Callbackها در AJAX
  
کار با JSON
  
- ·         افزودن پشتیبانی از فرمت JSON به Controller
 - ·         پردازش دادههای JSON در مرورگر
 - ·         تشخیص درخواستهای AJAX در متد Action
 - ·         ارسال دادهها با فرمت JSON به Server
 
        نتیجه گیری
  
  فصل 17: jQuery
  
ایجاد پروژه
  
ارجاع به jQuery
  
نوشتن کدهای jQuery
  
- ·         اجرای jQuery در یک محیط ایزوله
 
  مبانی jQuery
  
- ·         آشنایی با Selectorهای jQuery
 - ·         استفاده از فیلترها در jQuery
 - ·         آشنایی با متدهای jQuery
 - ·         انتظار برای بارگذاری صفحه
 - ·         متدهای مرتبط با کار با CSS در jQuery
 - ·         کار با DOM
 
            استفاده از رویدادها در jQuery
  
استفاده از جلوههای بصری در jQuery
  
استفاده از jQuery UI
  
- ·         ارجاع به کتابخانهی jQuery UI
 - ·         ایجاد دکمههایی با ظاهری زیباتر
 - ·         استفاده از کامپوننت Slider
 
      نتیجه گیری
  
  بخش سوم: تکمیل تواناییهای مرتبط با پروژههای ASP.NET MVC 
     
فصل 18: امنیت و آسیب پذیری
  
تمامی ورودیهای برنامه میتوانند جعل شوند!
  
  Cross-Site Scripting و HTML Injection
  
- ·         آشنایی با حملات XSS
 - ·         کد گذاری HTML از طریق موتور Razor
 - ·         تعیین اعتبار درخواست
 - ·         کد گذاری مقادیر رشتهای برای JavaScript
 
        Session Hijacking
  
- ·         محافظت از طریق بررسی آدرس IP درخواست دهنده
 - ·         محافظت با تنظیم خصیصهی HttpOnly کوکی ها
 
    حملات Cross Site Request Forgery
  
- ·         حمله
 - ·         دفاع
 - ·         جلوگیری از حملات CSRF در ASP.NET MVC
 
      SQL Injection
  
- ·         حمله
 - ·         دفاع با استفاده از کوئری های پارامتردار
 - ·         دفاع با استفاده از ORMها
 
      استفادهی امن از ASP.NET MVC
  
- ·         متدهای Action را سهواً در معرض دسترسی قرار ندهید
 - ·         اجازه ندهید Model Binding، مقادیر Propertyهای حساس را تغییر دهد
 
    نتیجه گیری
فصل 19: تصدیق هویت و مجوز دسترسی به منابع
استفاده از تصدیق هویت Windows
استفاده از روش تصدیق هویت بر اساس فرمها  
- ·         تنظیمات Forms Authenticarion
 - ·         استفاده از Forms Authentication، بدون کوکی
 
استفاده از سیستم عضویت، نقشها و پروفایلها      
- ·         پیکربندی و استفاده از سیستم عضویت
 - ·         پیکربندی و استفاده از نقشها
 - ·         پیکربندی و استفاده از پروفایلها
 
چرا نباید مجوزهای دسترسی به منبع را بر اساس آدرس آن تعیین کنیم؟
محدود کردن دسترسی با استفاده از آدرسهای IP و دامنهها
نتیجه گیری
    
فصل 20: قرار دادن پروژه بر روی Server
  
آماده سازی پروژه برای انتشار
  
- ·         تشخیص خطا در Viewها، پیش از انتشار پروژه
 - ·         پیکربندی کامپایل پویا
 - ·         انتشار پروژه بر روی Server با استراتژی Bin Deployment
 - ·         تغییر Web.config، با توجه به حالت کامپایل
 - ·         قرار دادن پایگاه دادهی پروژه بر روی Server
 
          آشنایی با مبانی IIS
  
- ·         آشنایی با مفهوم «وب سایتها»
 - ·         آشنایی با مفهوم Virtual Directory
 - ·         آشنایی با مفهوم Application Pool
 - ·         تنظیمات Binding مختلف برای سایتها
 
        آماده سازی Server برای انتشار
  
انتشار یک پروژه
  
- ·         انتشار پروژه با کپی کردن فایلهای آن
 - ·         انتشار پروژه با قابلیت Deployment Package
 - ·         انتشار پروژه با قابلیت One-Click Publishing
 
      نتیجه گیری
  
  بخش چهارم: قابلیت های ASP.NET MVC 4
   
  فصل 21: ASP.NET MVC 4
  
تغییرات صورت گرفته در قالب پروژه ی پیش فرض
  
نمایش Viewها بر اساس نوع دستگاه درخواست کننده
  
- ·         استفاده از حالت Mobile قابلیت DisplayModes
 - ·         ایجاد DisplayModeهای سفارشی
 - ·         دادن اختیار به کاربر برای تغییر DisplayModeها
 
      Bundling و Minification
  
صفت جدید AllowAnonymous
  
انتقال تنظیمات اولیه به کلاس های مجزا
  
قرار دادن آسان Controllerها در پوشه ی دلخواه
  
کتابخانه ی Knockout
  
بهبودهای صورت گرفته در موتور Razor
  
- ·         تفسیر خودکار عبارت "~/" توسط موتور Razor
 - ·         صفتهای شرطی
 
    نتیجه گیری
   
  فصل 22: ASP.NET Web API
  
Web API چیست؟
  
- ·         چرا Web Api؟
 - ·         تفاوت Web API و WCF
 
    ایجاد یک پروژه ی Web API
  
- ·         اضافه کردن مدل
 - ·         اضافه کردن Controller
 - ·         فراخوانی Web API از طریق مرورگر
 - ·         فراخوانی Web API با استفاده از کتابخانه ی jQuery
 
        آشنایی با مفهوم مسیریابی در Web API
  
مشاهده ی درخواست ارسالی و پاسخ دریافتی
  
مدیریت کدهای وضعیت در Web API
  
- ·         بازیابی رکورد
 - ·         ایجاد رکورد
 - ·         آپدیت رکورد
 - ·         حذف یک رکورد
 
        نتیجه گیری
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
نحوه ی خرید:
با تشکر از استقبال بی نظیر دوستان. کتاب هایی که دست بنده بودند به اتمام رسیدند.
این کتاب را می توانید از طریق کتاب فروشی های معتبر شهرتان یا سایت انتشارات پندار پارس به آدرس http://www.pendarepars.com تهیه بفرمایید.
موفق باشید.