دانلود کتاب Dependency Injection

49,000 تومان

تزریق وابستگی


موضوع اصلی برنامه نویسی: زبان های برنامه نویسی
نوع کالا کتاب الکترونیکی
ناشر Manning Publications
تعداد صفحه 354
حجم فایل 2 مگابایت
کد کتاب 9781933988559,193398855X
نوبت چاپ 1
نویسنده
زبانانگلیسی
فرمتDJVU
سال انتشار2009
مطلب پیشنهادی: با پول کتاب در ایران چی میشه خرید؟
در صورت نیاز به تبدیل فایل به فرمت‌های PDF، EPUB، AZW3، MOBI و یا DJVU می‌توانید به پشتیبان اطلاع دهید تا در صورت امکان، فایل مورد نظر را تبدیل نمایند. سایت بَلیان دارای تخفیف پلکانی است، یعنی با افزودن کتاب بیشتر به سبدخرید، قیمت آن برای شما کاهش می‌یابد. جهت مشاهده درصد تخفیف‌ها بر روی «جدول تخفیف پلکانی» در پایین کلیک نمایید. جهت یافتن سایر کتاب‌های مشابه، از منو جستجو در بالای سایت استفاده نمایید.
شما می‌توانید با هر 1000 تومان خرید، ۱ شانس شرکت در قرعه‌کشی کتابخانه دیجیتال بلیان دریافت کنید و شانس خود را برای برنده شدن جوایز هیجان انگیز امتحان کنید. «شرایط شرکت در قرعه‌کشی»

جدول کد تخفیف

با افزودن چه تعداد کتاب به سبد‌خرید، چند‌ درصد تخفیف شامل آن خواهد شد؟ در این جدول پاسخ این سوال را خواهید یافت. برای مثال: اگر بین ۳ الی ۵ کتاب را در سبد خرید خود قرار دهید، ۲۵ درصد تخفیف شامل سبد‌خرید شما خواهد شد.
تعداد کتاب درصد تخفیف قیمت کتاب
1 بدون تخفیف 25,000 تومان
2 20 درصد 20,000 تومان
3 الی 5 25 درصد 18,750 تومان
6 الی 10 30 درصد 17,500 تومان
11 الی 20 35 درصد 16,250 تومان
21 الی 30 40 درصد 15,000 تومان
31 الی 40 45 درصد 13,750 تومان
41 الی 50 50 درصد 12,500 تومان
51 الی 70 55 درصد 11,250 تومان
71 الی 100 60 درصد 10,000 تومان
101 الی 150 65 درصد 8,750 تومان
151 الی 200 70 درصد 7,500 تومان
201 الی 300 75 درصد 6,250 تومان
301 الی 500 80 درصد 5,000 تومان
501 الی 1000 85 درصد 3,750 تومان
1001 الی 10000 90 درصد 2,500 تومان
توضیحات

ترجمه فارسی توضیحات (ترجمه ماشینی)

تزریق وابستگی

من واقعاً از خواندن کتابی لذت می برم که می تواند رویکرد جدیدی را نسبت به آنچه قبلاً به خوبی درک کرده ام و به سختی تعجب آور است به من نشان دهد. من در حال حاضر در حال یادگیری جاوا EE 6 هستم و سفر خود را به ناحیه Contexts and Dependency Injection برای پلتفرم Java EE و مشخصات Java EE 6 Managed Beans آغاز کرده ام. من واقعاً نمی توانم توضیح دهم که چرا این مشخصات را انتخاب کردم، اما آنها مرا در مورد وضعیت فعلی ظروف تزریق وابستگی متعجب کردند. به نظر من سرورهای برنامه JEE6 چندان مورد بررسی قرار نگرفته اند و اغلب با برنامه هایی بارگذاری می شوند که به نوبه خود توسط Spring Framework و نوع پشته سینک آشپزخانه آن مدیریت می شوند. بسیاری از توسعه دهندگان به Spring Framework ایمان دارند و به دنبال آن نیستند. به نظر می رسد که تنها یک سرور برنامه کاربردی Java EE اهمیت کمتری داشته باشد و تنها راه حل قابل اعتماد خود Spring Framework بود که در نهایت به سرور برنامه Java EE تبدیل شد. خیلی بد.

کتاب “تزریق وابستگی، الگوهای طراحی با استفاده از فنر و گایس” نوشته دانجی آر پراسانا از منینگ به من نشان داد که امیدی برای چنین تفکری وجود دارد و Guice به نجات ما می‌آید – آن دسته از توسعه‌دهندگان سازمانی پرشور جاوا که زمانی فکر می‌کردند Java EE هستند. سرور برنامه بار زیادی بر دوش آنها گذاشته است و ترکیب Spring Framework + Apache Tomcat کافی بوده است. برداشت من از آن این است که Spring Framework اکنون به زمان زیادی برای درک نحوه عملکرد آن نیاز دارد که به سختی می توان چند چرخه اضافی برای جستجو و ارزیابی جایگزین پیدا کرد. تلاش های اولیه Spring Framework برای کمک به ما و سهولت توسعه برنامه های کاربردی سازمانی جاوا مطمئناً به دست آمده بود، بدون شک در آن دوره، اما توسعه Spring Framework متوقف نشد که منجر به ایجاد 100 پوند دیگر شد. گوریل اکنون چیزی بزرگتر از یک کانتینر DI صرف است و به همان اندازه پیچیده است که منشاء آن زمانی بوده است. با آن احساسات درونی، یک روز متوجه شدم که این کتاب در حال التماس خواندن من است و بدون هیجان زیاد هنوز به این فکر می کنم که چه چیزی می توانم در مورد تزریق وابستگی یاد بگیرم، آن را گرفتم و شروع به خواندن کردم. قبل از آن من هیچ سرنخی در مورد Guice نداشتم و درست در لحظه ای که اولین جمله نقد را می نویسم متوجه زیرنویس آن شدم.

این کتاب توسط “مهندس نرم افزار گوگل که در Google Wave کار می کند و نماینده گوگل در چندین گروه متخصص جاوا است. او به Guice کمک می کند” (از بخش ABOUT THE AUTHOR صفحه اصلی کتاب در Manning) نوشته شده است. زمانی که خواندن کتاب را به پایان رساندم متوجه شدم و چند لحظه به این فکر کردم که آیا مکان‌هایی وجود دارد که می‌توانم پیش از این به ریشه نویسنده پی ببرم یا نه. صادقانه می توانم بگویم که اگر چنین چیزی وجود داشت نمی توانستم هیچ کدام را ببینم. مطمئن باشید، نویسنده موضوع تزریق وابستگی و الگوهای طراحی پشتیبانی کننده مانند آداپتور، ارائه‌دهنده و پروکسی را با دقت زیادی انجام داده و روشی را که Spring Framework کار DI را انجام می‌دهد به همان اندازه Guice پوشش داده است (با پوشش PicoContainer نیز). این کتاب بخش‌هایی از کد را ارائه می‌کرد که عمدتاً Guice محور بودند، که به نظر من بسیار آموزنده و ارزشمند بودند. به هدف کتاب توجه کنید – مفهوم تزریق وابستگی، و انجام آن با جزئیات کار آسانی نبود تا تعادل عادلانه بین Spring Framework و Guice را حفظ کنید (در غیر این صورت کتاب دو برابر طولانی بود). موضوع در 11 فصل شرح داده شد و نمونه ها اطمینان حاصل کردند که کتاب به هیچ وجه خسته کننده نیست و به خوبی به هدف خود عمل می کند. فکر می‌کنم حتی بهتر بود که خودش را کاملاً به Guice اختصاص می‌داد و Spring Framework را کنار می‌گذاشت که کتاب‌های زیادی برای آن موجود است.

همانطور که تا به حال حدس زده اید، برای من با ارزش ترین صفحات کتاب، صفحاتی بودند که با Guice پوشش داده شده بود. من آنها را با اشتیاق فراوان خواندم و شباهت های قابل توجهی با این دو ویژگی Java EE 6 پیدا کردم – CDI و Managed Beans. انگار دوباره داشتم مشخصات رو می خوندم. خواندن کتاب به درک بهتر آنها کمک کرد. اکنون که من به منشأ آنها و اینکه چه مسائل طراحی بر توسعه آنها تأثیر گذاشته است، هدف آنها بسیار واضح تر است. در فصل 2 بود. “زمان برای تزریق” که سرانجام پاسخ سوالی را که مدتی با آن درگیر بودم پیدا کردم – “آیا حاشیه نویسی ها راه درستی برای انتقال پیکربندی اضافی هستند؟” آنها قطعا هستند. پوشش JSR-303 Bean Validation در فصل 10. “ادغام با چارچوب های شخص ثالث” به عنوان مطالعه موردی یک چارچوب خوب طراحی شده با در نظر گرفتن DI چیز استثنایی در این کتاب نبود. جملات و مثالی در مورد CGLib وجود داشت (که می خواهم یاد بگیرم)، اما ای کاش بیشتر می شد. این کتاب با بسیاری از توضیحات خوب در مورد کل اکوسیستم تزریق وابستگی پر شده بود، و برای یافتن چیزی با ارزش بود. با بسیاری از زوایای با طراوت از نگاه کردن به تزریق وابستگی، به سختی می توان طعم بدی در دهان داشت.

نویسنده نه تنها دقت زیادی در توضیح مفاهیم پیرامون تزریق وابستگی به خرج داد، بلکه خود زبان نیز بسیار حرفه ای و با حس طنز عالی بود. من قطعاً چیزهای زیادی یاد گرفتم – تزریق وابستگی، الگوهای طراحی پیرامون آن، Spring Framework و در نهایت Guice و همچنین مجموعه ای از کلمات و عبارات جدید به زبان انگلیسی. خواندن ارزش وقت گذاشتن را داشت و من مطمئناً هر از چند گاهی به فصل های کتاب مراجعه خواهم کرد. در یک چشم به هم زدن، «تزریق وابستگی، الگوهای طراحی با استفاده از فنر و گیس» نوشته دانجی آر پراسانا از منینگ، مرا به یک گیس پرشور تبدیل کرد. معلوم نیست خود گویس است یا کتاب، اما

Dependency Injection

I really enjoy reading a book that can show me a new approach to what I have already considered well understood and barely surprising. I’m currently learning Java EE 6 and has begun my journey to the area of the Contexts and Dependency Injection for the Java EE platform and the Java EE 6 Managed Beans specifications. I can’t really explain why I picked up these specs, but they made me wonder about the current state of dependency injection containers. It looks to me that JEE6 application servers are not that much explored and quite often loaded with applications that are in turn managed by Spring Framework and its kind of kitchen-sink stack. Many developers put their faith in Spring Framework and look no further. It is as though a sole Java EE application server were less important and the only trusted solution were Spring Framework itself which eventually became the Java EE application server. Too bad.

The book “Dependency Injection, Design patterns using Spring and Guice” by Dhanji R. Prasanna from Manning has showed me that there’s a hope for such a thinking and Guice comes to our rescue – to those passionate enterprise Java developers who once thought a Java EE application server has been too much burden on their shoulders and Spring Framework + Apache Tomcat combo has been enough. My take on it is that Spring Framework requires now so much time to understand how it works that one can hardly find a few spare cycles to look for and afterwards evaluate alternatives. The initial attempts of Spring Framework to lend a helping hand to us and ease development of Java enterprise applications had certainly been achieved, no doubt about that, period, but the development of Spring Framework didn’t stop that led to create another 100-pound gorilla. It’s now something bigger than a mere DI container and as much complicated as its origins once were. With that gut feelings, one day I noticed this book begging for my reading and without much excitement yet wondering what I could learn about dependency injection I grabbed it and started the reading. Before it I had no clue whatsoever about Guice, and noticed the subtitle right at the moment I write the first sentence of the review.

The book is written by “a Google software engineer who works on Google Wave and represents Google on several Java expert groups. He contributes to Guice” (from the ABOUT THE AUTHOR section of the book’s home page at Manning). I found it out once I’d finished reading the book and spent quite a few moments to think whether or not there were places where I could’ve figured out the origins of the author myself earlier. I can honestly say that if there had been such I could have spotted none. Be rest assured, the author handled the subject of dependency injection and supportive design patterns like adapter, provider and proxy with a great care and covered the way Spring Framework does the DI job as often as Guice (with some coverage of PicoContainer too). The book presented code snippets that were mostly Guice-oriented though, which I found very informatory and valuable. Mind the aim of the book – the concept of dependency injection, and it was not an easy task to do it in detail keeping the fair balance between Spring Framework and Guice (the book would’ve otherwise been twice long). The topic was described in 11 chapters and the samples ensured the book was by no means boring and served their purpose very well. I think it would have been even better if it’d devoted itself completely to Guice leaving Spring Framework aside for which there’re many books available.

As you might’ve guessed by now, for me the most valuable pages of the book were those with Guice covered. I read them with a great passion and found striking similarities to these two Java EE 6 specifications – CDI and Managed Beans. It was as if I’d been reading the specs again. Having read the book helped me understand them better. Their goal is much clearer now once I realized their origins and what design issues influenced their development. It was in the chapter 2. “Time for injection” when I finally found the answer to the question I was struggling with for some time – “Are annotations a correct way to convey additional configuration?” They certainly are. Coverage of JSR-303 Bean Validation in the chapter 10. “Integration with third-party frameworks” as a case study of a well-designed framework with DI in mind wasn’t something exceptional in this book. There were some sentences and an example about CGLib (which I’m about to learn), but I wished it’d been more. The book was filled out with many fine explanations of the entire dependency injection ecosystem, and was a complete no-brainer to find something worthy. With many refreshing angles of looking at dependency injection one can barely be left with a bad taste in mouth.

Not only did the author take a great care to explain the concepts around dependency injection, but the language itself was very professional and with a great sense of humour. I definitely learnt a lot – dependency injection, design patterns around it, Spring Framework and finally Guice as well as a bunch of new words and phrases in English. The reading was worth its time and I’m certainly going to refer to the book’s chapters every now and then. In a blink of an eye, “Dependency Injection, Design patterns using Spring and Guice” by Dhanji R. Prasanna from Manning turned me into a Guice passionate. It’s not clear if it’s Guice itself or the book, but I have no doubts about a DI container when one’s requested. The book presented quite a few examples of Guice for web development so you should find it a viable alternative to Spring Framework stack if you run across such a need. It urged me on to try out Guice and its extensions. I’ve got some ideas for more developments too and whenever designing a solution I’ll look back to the book as a definitive source for thought-provoking advices. Thanks Dhanji!

نظرات (0)

نقد و بررسی‌ها

هنوز بررسی‌ای ثبت نشده است.

اولین کسی باشید که دیدگاهی می نویسد “دانلود کتاب Dependency Injection”