معرفی کتاب: برنامه‌نویسی پیشرفته در پی‌اچ‌پی

February 28, 2009 at 01:02 am

هرچند این روزها فرصتی نیست که مانند گذشته کتاب بخوانم اما در عوض فرصت مناسبی است تا کتاب‌هایی که در گذشته خوانده‌ام را معرفی کنم و از کمبود سوژه مناسب برای نوشتن در این وبلاگ بکاهم. در این پست‌ و پست‌های آتی بدنبال لینک دانلود کتاب نباشید. تنها آنچه می‌خوانید برداشت شخصی من از کتاب‌ها است.

Advanced PHP Programming Book Review

کتابی که برای این پست در نظر گرفته‌‌ام کتاب برنامه‌نویسی پیشرفته در پی‌اچ‌پی نوشته جورج شلاس‌نیگل است (مشخصات دقیق لاتین و ترجمه کتاب در انتهای پست آمده است). اولین چاپ کتاب فوریه سال 2004 بوده و در اسفندماه 1385 توسط مهندس محسن مسگر هروی تحت نام برنامه‌نویسی پیشرفته در PHP 5 به زبان فارسی ترجمه شده است.

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

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

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

کتاب اصلی (لاتین) 5 بخش (23 فصل) دارد اما در ترجمه فارسی تنها 3 بخش (16 فصل) آورده شده است و دو بخش آخر حذف شده است. بخش چهارم در مورد کارایی و بخش پنجم در مورد توسعه پذیری (توسعه PHP و Zend Engine) بحث می‌کند که هر دو جزء مهمترین مباحث این کتاب هستند اما نمی‌دانم چرا مترجم آن‌ها را حذف کرده است؟! فهرست کتاب لاتین به صورت زیر است:

  • I-Implementation and Development Methodologies
    1-Coding Styles
    2-Object-Oriented Programming Through Design Patterns
    3-Error Handling
    4-Implementing with PHP: Templates and the Web
    5-Implementing with PHP: Standalone Scripts
    6-Unit Testing
    7-Managing the Development Environment
    8-Designing a Good API

    II-Caching
    9-External Performance Tunings
    10-Data Component Caching
    11-Computational Reuse

    III-Distributed Applications
    12-Interacting with Databases
    13-User Authentication and Session Security
    14-Session Handling
    15-Building a Distributed Environment
    16-RPC: Interacting with Remote Services

    IV-Performance
    17-Application Benchmarks: Testing an Entire Application
    18-Profiling
    19-Synthetic Benchmarks: Evaluating Code Blocks and Functions

    V-Extensibility
    20-PHP and Zend Engine Internals
    21-Extending PHP: Part I
    22-Extending PHP: Part II
    23-Writing SAPIs and Extending the Zend Engine

ترجمه فارسی کتاب خوب است اما توصیه می‌کنم دو فصل آخر را هم بخوانید (خوشبختانه کتاب جدید نیست و با یک جستجوی کوچک می‌توانید فرمت PDF لاتین آن را دانلود کنید)

لازم به ذکر است که تمام مثال‌های این کتاب روی سیستم‌عامل لینوکس نوشته شده است هرچند بسیاری از کدها با تغییراتی اندک روی ویندوز نیز اجرا می‌شوند اما بعضی از مثال‌ها غیر قابل انتقال هستند. همچنین در پایان هر فصل لیستی از منابع آنلاین برای مطالعه بیشتر عنوان شده است.

  • + مشخصات لاتین کتاب:
    عنوان: Advanced PHP Programming
    مولف: George Schlossnagle
    ناشر: Sams

    + مسخصات ترجمه کتاب:
    عنوان: برنامه‌نویسی پیشرفته در PHP 5

    مترجم: محسن مسگر هروی
    ناشر: موسسه فرهنگی هنری دیباگران تهران

دسته: پی اچ پی, کتاب | نویسنده: مرتضی الوانی
  1. 8 نظر برای این مطلب ارسال شده است. نظر خود را ارسال کنيد »

  1. 1

    مهدی


    سلام
    کار خوبی می‌کنید. تا قبل از اینها هم بطور غیر مستقیم کتاب مرجع طراحی وب را معرفی کرده بودین که وجداناْ کتاب بسیار مفیدی بود.
    راستی میخواستم نظرتون رو در رابطه با فریمورک symfony بگید!!!
    چون کاملاْ با موضوع این پست بی ربط هست، ممنون می‌شم از طریق ایمیل باشه.
    موفق باشید…

    February 28, 2009 at 3:20 pm

  2. 2

    كليد


    قيمتش چنده

    March 1, 2009 at 11:29 am

  3. 3

    مرتضی الوانی


    @ کلید:
    در حال حاضر 63500 ریال

    March 2, 2009 at 2:12 pm

  4. 4

    فرید


    حرکت بسیار جالبی رو شروع کردید! من فکر نمیکردم تو زبون خودمون بتونم کتابی بالاتر از سطح مبتدی برای پی اچ پی پیدا کنم!
    به امید ادامه این حرکت
    ;-)

    March 9, 2009 at 10:19 am

  5. 5

    محسن مسگر هروی


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

    September 13, 2010 at 9:25 pm

  6. 6

    مرتضی الوانی


    سلام آقای هروی عزیز
    بابت درج نظرتان بسیار ممنونم. در مورد محاوره ایی بودن متن و نوع ترجمه شما کاملا با نظرتان موافقم. امیدوارم در پناه حق موفق و موید باشید.

    September 13, 2010 at 10:08 pm

  7. 7

    عبداله


    ممنون بابت معرفی این کتاب
    همیشه پست های معرفی کتاب رو دوست دارم و متاسفانه کمتر چنین پست هایی رو در وب فارسی می بینیم.
    موفق باشید

    October 27, 2010 at 9:28 pm

  8. 8

    ونداد


    سلام
    این کتاب فوق العاده است.
    ترجمه ی این کتاب هم واقعا عالست.
    اما برای داشتن 2 فصل آخر باید چه کرد؟
    حتی به انگلیسی.

    April 11, 2013 at 10:38 pm