نقدی بر کتاب Ultra-Fast ASP.NET
  نقدی بر کتاب Ultra-Fast ASP.NET: Building Ultra-Fast and Ultra-Scalable Websites Using ASP.NET and SQL Server
   ASP.NET
   ۱۷۳۶۳
   این مقاله حاوی فایل ضمیمه نمی باشد
   مرتضی صحراگرد
   ۱۳۸۹/۱۰/۱۹
ارسال لینک صفحه برای دوستان ارسال لینک صفحه برای دوستان  اضافه کردن به علاقه مندیها اضافه کردن به علاقه مندیها   نسخه قابل چاپ نسخه قابل چاپ

 

تذکر:

مطالب ذکر شده در این پست، صرفا نظر شخصی اینجانب پس از مطالعه کتاب می باشد.

مشخصات کتاب:

Paperback: 496 pages
Author: Richard Kiessig
Publisher: Apress; 1 edition (November 10, 2009)
Language: English
ISBN-10: 1430223839
ISBN-13: 978-1430223832

سرفصل های کتاب:

Chapter 1:  Principles and Method

Chapter 2:  Client Performance

Chapter 3:  Caching

Chapter 4:  IIS 7

Chapter 5:  ASP.NET Threads and Sessions

Chapter 6:  Using ASP.NET to Implement and Manage Optimization Techniques

Chapter 7:  Managing ASP.NET Application Policies

Chapter 8:  SQL Server Relational Database

Chapter 9:  SQL Server Analysis Services

Chapter 10: Infrastructure and Operations

Chapter 11: Chapter Putting it All Together

همه ما روزانه از سایت های زیادی دیدن می کنیم که عملکرد صحیحی دارند و خدمات خود را به خوبی ارائه می دهند. بسیاری از این سایت ها از نوع شرکتی، شخصی و گروهی و غیره می باشند. اما حقیقتی که در مورد بیشتر این سایت ها صادق است این است که اگر چند هزار نفر و یا حتی در بسیاری موارد چند صد نفر به طور همزمان وارد سایت شوند، اگر سایت هابه طور کامل از کار نیفتند به طور قطع در ارائه بسیاری از خدمات آن ها اختلال به وجود می آید.

اما به دو دلیل شاید نتوان این موضوع را به عنوان نقطعه ضعفی برای توسعه دهنگان این سایت ها دانست:

  1. دلیل اول این است که آن چه که در دنیای کسب و کار حرف اول را می زند تولید محصول با کمترین هزینه و کمترین زمان و کسب حداکثر درآمد می باشد. به هر حال برای یک وب سایت شخصی یا شرکتی معمولی این موضوع بسیار دور از دهن به نظر می رسد که چندین هزار نفر به طور هم زمان وارد سایت شوند. بنابراین اگر واقع بینانه به این موضوع نگاه کنیم نیازی برای ایجاد یک بستر برای اداره نمودن ده ها هزار کاربر به طور همزمان نمی باشد.

  2. دلیل دوم بر می گردد به مباحث سخت افزاری که معمولا خارج از عهده ی توسعه دهندگان سایت می باشد.

ولی سوال اصلی اینجا این است که چه تفاوتی میان توسعه وب سایتی که چند صد نفر کاربر را به طور همزمان اداره می کند و وب سایتی که چندین میلیون نفر کاربر را به طور همزمان اداره می کند وجود دارد؟ و به عبارت دیگر چه تفاوتی میان معماری، طراحی و برنامه نویسی برای این دو نوع وب سایت موجود است؟ چگونه سایت های شبکه اجتماعی مانند MySpace و Facebookو Twitter میلیون ها کاربر را به طور همزمان و به بهترین شکل ممکن اداره می کنند و هیچ خللی هم در سرویس دهی آن ها ایجاد نمی شود؟

اگر به دنبال جواب این گونه سوالات می باشید می توانید به کتاب Ultra-Fast ASP.NET یا به عبارت کامل تر Ultra-Fast ASP.NET: Building Ultra-Fast and Ultra-Scalable Websites Using ASP.NET and SQL Server مراجعه کنید.

دنیای سایت های Ultra-Fast بسیار جذاب می باشد. جایی که با کم کردن حتی 1 کیلوبایت از بار صفحه می توان صدها مگابایت در پهنای باند صرفه جویی نمود.

نویسنده یعنی آقای Richard Kiessig دارای سابقه شغلی بسیار جالبی می باشد. در کارنامه ایشان از نوشتن سیستم عامل برای یک فضاپیما برای ارتش امریکا گرفته تا چندین سال اشتغال در یکی از قسمت های حساس شرکت مایکروسافت به عنوان مدیر پروژه و توسعه گر موجود می باشد. به گفته نویسنده یکی از مهمترین ملاحظاتی که همیشه در زندگی شغلی ایشان وجود داشته است بالا بردن راندمان بوده است. و براستی که آقای Richard Kiessig صلاحیت نوشتن چنین کتابی را دارد و ایشان تسلط کاملی را بر روی مباحث کتاب دارند.

اگر به سرفصل های کتاب که در ابتدای این مقاله قرار دارد با دقت نگاه کنید، ممکن است به این نتیجه برسید که تاکنون صفحات زیادی را درباره این مباحث مطالعه نموده اید. اما با مطالعه این کتاب متوجه خواهید شد که چه مقدار نکات ریز و مهمی  وجود دارند که از آن ها بی خبرید! (و شاید هم در مرور زمان فراموش کرده اید)

کتاب با رویکرد Ultra-Fast به همه موارد نگاه می کند. خوشبختانه آقای Richard Kiessig مخاطب کتاب را درگیر مباحث سطح پایین (Low Level) زبان ASP.NET نمی کند و تمرکز اصلی او بر روی معماری وب سایت می باشد.  توصیه های مؤلف از تعیین استراتژی و معماری تا نحوه طراحی و برنامه نویسی در قالب ترفند ها و نکات مطرح می شوند.

مؤلف ابتدا به معرفی مشکل موجود پرداخته و سپس راه حل های مختلف مشکل را بررسی می نماید و از بین راه حل ها، راه حل ارجح خود را معرفی می کند. یکی از جالب ترین  ویژگی های این کتاب این است که تمامی توصیه ها و نکات در یک جا و به شکلی منسجم به مخاطب ارائه می شود و بنابراین کتاب مانند یک مرجع عمل می کند. به طور مثال خواننده هر آن چه را که نیاز دارد در مورد کوکی ها در طراحی یک سایت Ultra-Fast بداند می تواند در فصل  مربوط به آن به شکل یکجا پیدا کند.

توجه داشته باشید که اغلب مطالب به شکل توصیه ها، نکات و ترفند ها ارائه می شوند و نباید انتظار یک رویکرد کامل و گام به گام در همه موارد را داشته باشید.

این کتاب نیز جزو آن دسته از کتاب هایی می باشد که خط به خط آن دارای مطلب و نکته می باشد و بنابراین مطالعه ی آن کمی زمانبر می باشد. البته خوشبختانه با توجه به تسلطی که نویسنده بر روی مطالب دارد، متن کتاب بسیار سلیس بوده و اطلاعات به بهترین شکل ممکن ارائه می گردند. بنابراین در صورتی که مخاطب بر روی سرفصل ها تسلط کافی داشته باشد، مطالعه کتاب بسیار سریع پیش رفته و لذت فراوانی را نیز همراه خواهد داشت.

در این کتاب هیچ موضوعی به طور کامل از ابتدا آموزش داده نمی شود و بنابراین مطالعه کتاب به افراد مبتدی سفارش نمی شود. مخاطبین اصلی این کتاب برنامه نویسان باتجربه زبان ASP.NET می باشند که بیشترین استفاده از مطالب را خواهند برد اما برنامه نویسانی که به طور متوسط و نسبی با این مباحث آشنایی دارند نیز با مطالعه این کتاب موارد ارزشمند بسیار زیادی خواهند آموخت.

سرفصل مطالب نسبتا گویا می باشد ولی در اینجا برخی از موارد برجسته ای که در مورد آن ها بحث می شود را ملاحظه می کنید.

  • فصل اول: بحث در مورد قواعد اساسی و مشکلات متداول
  • فصل دوم: مباحث مرتبط به سایت در سمت کلاینت از جمله اسکریپت ها، HTML، CSS، Compression، مرورگرهاو ...
  • فصل سوم : Caching، ViewState، Cookies، Silverlight، SQL Server Caching و ...
  • فصل چهارم: امکانات IIS 7
  • فصل پنجم: Session State، Threads، Application Pool، Asynchronous Pagesو ...
  • فصل ششم: Master Pages، User Controls، Themes، Image Resizing
  • فصل هفتم: HttpModules، HttpHandlers، Page Adaptersو ...
  • فصل هشتم: Stored Procedures، Command Batching، Transactions، Precaching، DataPaging، XML Columns، Data Partitioning، Full-Text Search، Service Broker، High Availabilityو ...
  • فصل نهم: Multi Dimensional Database، ADOMD.NET، MDXو ...
  • فصل دهم: بحث در مورد مباحث سخت افزاری، Disk Subsystems، Firewalls & Routers، DNSو ...
  • فصل یازدهم: توصیه هایی در مورد فرآیند تولید نرم افزار و چکیده ای از کلیه مباحث کتاب

امیدوارم از مطالعه این کتاب ارزشمند نهایت لذت را ببرید.