دانلود کتاب High Performance JavaScript (Build Faster Web Application Interfaces) (به فارسی: جاوا اسکریپت با کارایی بالا (ساخت رابط های برنامه وب سریعتر)) نوشته شده توسط «Nicholas C. Zakas»
اطلاعات کتاب جاوا اسکریپت با کارایی بالا (ساخت رابط های برنامه وب سریعتر)
موضوع اصلی: شبکه: اینترنت
نوع: کتاب الکترونیکی
ناشر: Yahoo Press
نویسنده: Nicholas C. Zakas
زبان: English
فرمت کتاب: pdf (قابل تبدیل به سایر فرمت ها)
سال انتشار: 2010
تعداد صفحه: 231
حجم کتاب: 5 مگابایت
کد کتاب: 059680279X , 9780596802790
نوبت چاپ: 1
توضیحات کتاب جاوا اسکریپت با کارایی بالا (ساخت رابط های برنامه وب سریعتر)
از آنجایی که وبلاگ نیکلاس زکاس را به عنوان یک منبع عالی در مورد بینش جاوا اسکریپت یافتم، بسیار مشتاقانه منتظر این کتاب بودم. این واقعیت که او همچنین گروهی کامل از ستارههای راک راک را برای مشارکت در فصلها استخدام کرده بود، چندان هیجان من را کاهش نداد، بنابراین وقتی کتاب بالاخره در خانهام را زد، کودکانه خوشحال شدم!
عنوان کتاب البته بازگشتی است به وبسایتهای با کارایی بالا استیو سادرز: دانش ضروری برای مهندسان فرانتاند که چند سال پیش توسط همین ناشر منتشر شد. تقریباً به همان روشی که تمام جنبه های عملکرد در قلمرو انتخابی خود را پوشش می دهد. آن کتاب برای آگاه ساختن جامعه توسعهدهندگان وب از مسائل مختلف عملکرد مرتبط با فرانتاند، و اینکه چگونه و چرا زمان بهینهسازی در آنجا بهتر از پشتیبانی که قبلاً هدف اصلی چنین تلاشهایی بود، سپری میشد، مورد تحسین سادرز قرار گرفت. سال گذشته، سودرز با انتشار دنبالهای تحت عنوان وبسایتهای حتی سریعتر: بهترین عملکرد برای توسعهدهندگان وب (EFWS) از این ارزیابی حمایت کرد، جایی که او – به همراه گروهی از نویسندگان مشترک، از جمله Zakas – حتی عمیقتر به عملکرد ظاهری پرداخت.
اولین کتاب سادرز اینجا و آنجا جاوا اسکریپت را لمس کرد، اما در EFWS نقش بسیار مسلط تری ایفا می کند و تمرکز نیمی از فصل ها است. حتی اگر زمینه هنوز هم وبسایتها باشد، بینشهایی که ارائه میدهد میتواند به راحتی در هر حوزهای که عملکرد جاوا اسکریپت در آن نگرانکننده است اعمال شود. به همین دلیل است که ما از آن به عنوان ادبیات درسی برای دوره دانشگاهی خود در زمینه توسعه برنامههای جاوا اسکریپت RIA استفاده کردیم، جایی که دانشجویان از آن استقبال زیادی کردند، حتی اگر وبسایتهایی به این شکل ایجاد نمیکردیم. من خودم این کتاب را دوست دارم و یکی از برجستهترین کتابهای موجود در قفسه من است.
اینکه من عضوی از هواداران EFWS بودم دلیل اصلی ترس من در مورد HPJS نیز بود – همپوشانی بین این دو چقدر بزرگ خواهد بود؟ پس از همه، ایده های پشت آنها تقریباً یکسان به نظر می رسد (منهای بیت های وب سایت). یک تیم از نینجاهای عملکرد جاوا اسکریپت را بخواهید که هر کدام یک قطعه در مورد تخصص فردی خود بنویسند. آیا واقعاً وجود این دو کتاب در یک قفسه قابل توجیه است؟ آیا این شهر به اندازه کافی برای این دو نفر بزرگ است؟
قطعا بله. اگرچه یک نمودار ون همپوشانی بسیار کمی را نشان می دهد …
* فصل 1 HPJS (بارگیری و اجرا) تا حد زیادی از همان محتوای فصل 4 EFWS (بارگیری اسکریپت ها بدون مسدود کردن) تشکیل شده است.
* EFWS فصل 7 (نوشتن جاوا اسکریپت کارآمد) شامل خلاصه فصل های HPJS 4 (الگوریتم ها و کنترل جریان)، 6 (واسط های پاسخگو) و 8 (روش های برنامه نویسی) است.
* بیشتر قسمتهای HPJS فصل 9 (ساخت و استقرار برنامههای کاربردی جاوا اسکریپت با کارایی بالا) را میتوان در فصلهای مختلف EFWS یافت.
… کتاب ها به اندازه کافی محتوای متنوع، تفاوت در لحن صدا و تمرکز اصلی دارند تا دو مطالعه کاملاً متفاوت داشته باشند.
به نظر من، مسئله محتوای منحصر به فرد به هر حال تا حد زیادی بحث برانگیز است، زیرا به ندرت می توان کتابی حاوی دانش را یافت که در جای دیگری یافت نمی شود. این چیز بدی نیست، فقط روش وب است. هنگام خرید یک کتاب برنامه نویسی، برای راحتی جمع آوری بسیاری از مطالب مرتبط در یک مکان هزینه می کنید. به عنوان مثال، تحقیقات پشت HPJS فصل 2 (دسترسی به داده ها) در وبلاگ Zakas به تفصیل شرح داده شده است، همانطور که Stoyan قبلاً بسیاری از آنچه را که در فصل 3 به پایان رسید (DOM Scripting) در وبلاگ قرار داده است.
بنابراین، کماهمیت دانستن کتاب بهعنوان «تألیف» بودن، همانطور که یکی از معدود منتقدان نه چندان مثبت دیگر در اینجا انجام میدهد، نسبتاً ناعادلانه و غیرعادی است. در عوض، HPJS را باید بر اساس این که چگونه همه آن ها را با هم ترکیب می کند و البته با کیفیت هر فصل قضاوت کرد. در کتاب من، در هر دوی این دستهها نمرات برتر را دریافت میکند.
برخی از کتابهای مشترک در حالی که به ناچار احساس میکنند تا حدودی پراکنده هستند. لحظاتی در EFWS وجود دارد که سبک های نوشتاری (بسیار) متفاوت نویسندگان مشارکت کننده مانع از دیدن کل تصویر می شود. لحظات مشابهی برای من هنگام خواندن کتاب آشپزی نیمه اخیر jQuery بوجود آمد که – اگرچه عالی – گاهی اوقات بسیار اسکیزوفرنی به نظر می رسد. البته به نویسندگان همکار باید در مورد نحوه بیان خود آزادی هنری داده شود، اما زمانی که به نظر می رسد برداشت های متفاوتی از ایده های اصلی کتاب دارند، مشکل ساز می شود.
این هرگز در HPJS اتفاق نمی افتد، که بدیهی است که هدف ویرایش بسیار دوست داشتنی بوده است. حتی اگر جنبههای اجرایی مختلف، مانند نوشتههای نویسندگان مشارکت کننده، طعم کاملاً متفاوتی دارند، هرگز حس زمینه را از دست نمیدهید. این واقعیت که کتاب به انجیل خود – عملکرد – وفادار می ماند یکی از بزرگترین نقاط قوت آن است.
باید وسوسههای بیشماری برای ذکر موارد مرتبط با عملکرد غیرقابل اجرا وجود داشته باشد که میتوان آنها را برای مرتبسازی در حوزه فصل ایجاد کرد، اما در کل کتاب جای نمیگرفت. به عنوان مثال، مطمئن هستم که استیون لویتان زبان خود را در حین نوشتن فصل (خوب!) در مورد regexها گاز گرفت و خود را مجبور کرد که بخشهایی از دانش گستردهاش را که مستقیماً به عملکرد مربوط نمیشود به اشتراک نگذارد. بکا
The title of the book is of course a throwback to Steve Souders’ epitomous High Performance Web Sites: Essential Knowledge for Front-End Engineers, released a few years back by the same publisher. In much the same way it covers all aspects of performance in its chosen realm. That book gained Souders much appraise for making the web developer community at large aware of the various performance issues connected to the frontend, and how & why optimizing time was better spent there than on the backend which had previously been the prime target for such efforts. Last year Souders piggybacked on that appraise by releasing a sequel titled Even Faster Web Sites: Performance Best Practices for Web Developers (EFWS), where he – along with a group of co-authors, including Zakas – delved even deeper into frontend performance.
Souders’ first book touched on JavaScript here and there, but in EFWS it plays a much more dominant role, being the focus of half of the chapters. Even though the context is still websites, the insights it offers can easily be applied to any realm in which JavaScript performance is a concern. This is why we used it as course literature for our university course on developing JavaScript RIA applications where it was much appreciated by the students, even though we weren’t making websites as such. I myself love the book, and it is one of the most thumb-through tomes on my shelf.
My being a part of EFWS fandom was also the reason behind my prime fear regarding HPJS – just how big would the overlap between the two turn out to be? After all, the ideas behind them seem almost identical (minus the website bits); have a team of JavaScript performance ninjas each write a piece on their individual expertise. Would it really be justified to have these two books in the same shelf? Is this town big enough for the two of them?
Definitely yes. Although a Venn diagram would show quite a bit of overlap…
* HPJS chapter 1 (Loading and Execution) is largely made up of the same content as EFWS chapter 4 (Loading Scripts without blocking)
* EFWS chapter 7 (Writing Efficient JavaScript) contains the gist of HPJS chapters 4 (Algorithms and Flow Control), 6 (Responsive Interfaces) and 8 (Programming Practices)
* Most of HPJS chapter 9 (Building and Deploying High-Performance JavaScript Applications) can be found sprinkled across various EFWS chapters
…the books have enough diverse content, difference in tone of voice and primary focus, to make for two quite different reads.
The question of unique content, I feel, is largely moot anyway, as it is very rare to find a book containing knowledge that cannot be found elsewhere. That’s not a bad thing, it’s just the way of the web. When buying a programming book, you’re paying for the convenience of having lots of related material collected in one place. The research behind HPJS chapter 2 (Data Access), for instance, has been detailed on Zakas’ blog, just as Stoyan has already blogged a lot of what ended up in chapter 3 (DOM Scripting).
So downrating the book for being a “compilation”, as one of the few not-so-positive other reviewers here does, is rather unfair and beside the point. HPJS should be judged, instead, by how well it weaves it all together, and of course by the quality of the individual chapters. In my book, it receives top scores in both of these categories.
Some co-authored books while inevitably feel rather fragmented. There are moments in EFWS when the (very) different writing styles of contributing authors gets in the way of seeing the whole picture. Similar moments arose for me while reading the semi-recent jQuery CookBook, which – while excellent – at times feels very schizophrenic. Of course co-authors need to be given some artistic leeway as to how they express themselves, but when they seem to have different takes on the main ideas behind the book, it becomes a problem.
This never happens in HPJS, which obviously has been the target of some very loving editing. Even though the different performance aspects have quite a different flavour, as does the writing of the contributing authors, you never lose the sense of context. The fact that the book stays true to its gospel – performance – is one of its biggest strengths.
There must have been innumerable temptations to mention non-performance related things that could be made to sort under a chapter’s domain, but not fit inside the book as a whole. I’m sure, for example, that Steven Levithan bit his tongue while writing the (brilliant!) chapter on regexes, forcing himself not to share parts of his vast regexp knowledge that doesn’t relate directly to performance. Because he and his peers withstood that temptation, HPJS is a better book.
Also worth mentioning is how succinct the book is. It is not very thick, but the information density is very high. While maybe not everyone’s cup of tea, this is something I very much appreciate. Much like how Crockford’s renowned JavaScript – The Good Parts delivers the message in few but well-chosen words without much air between them, HPJS is very clear and efficient in its teachings, with no filler content to increase page count.
Another merit is the “general knowledge level” of the content. Mostly, the teachings in the book are applicable to whatever JavaScript coding you’re doing, today and in five years from now. We recently sang the praise of Jonathan Stark’s new book on iPhone web apps, making that same point – it gives you ideas, which won’t be made obsolete when the involved API:s inevitably change a few steps down the path.
So, to finally bottom-line this; both books have their place. EFWS and HPJS are partly speaking about the same things, but in different voices under different headlines to different people. Also, HPJS is a bloody brilliant book, and not owning it should be reason enough for ostracication from the frontend community.
دانلود کتاب «جاوا اسکریپت با کارایی بالا (ساخت رابط های برنامه وب سریعتر)»
برای دریافت کد تخفیف ۲۰ درصدی این کتاب، ابتدا صفحه اینستاگرام کازرون آنلاین (@kazerun.online ) را دنبال کنید. سپس، کلمه «بلیان» را در دایرکت ارسال کنید تا کد تخفیف به شما ارسال شود.