کتاب Java Coding Problems, 2nd Edition: Become an expert Java programmer by solving over 200 brand-new, modern, real-world problems (مشکلات کدنویسی جاوا، ویرایش دوم: با حل بیش از 200 مشکل کاملاً جدید، مدرن و واقعی به یک برنامه نویس متخصص جاوا تبدیل شوید)
در ادامه مقدمهای از کتاب Java Coding Problems را از زبان نویسنده شرح خواهیم داد.
مقدمهای بر کتاب Java Coding Problems:
کتاب «حل مسائل کد نویسی جاوا، نسخه دوم» درباره برنامهنویسی جاوا است. در این چند سال اخیر، جاوا خیلی سریعتر از گذشته در حال پیشرفت بوده و ویژگیهای جدید زیادی به آن اضافه شده است. این ویژگیهای جدید به شما کمک میکنند تا مشکلات امروزی را به روشهای بهتری حل کنید. اما از طرف دیگر یادگیری این همه قابلیت جدید جاوا هم کار سادهای نیست و نیاز به صرف زمان بیشتری دارد.
کتاب Java Coding Problems به شما کمک میکند تا با رویکردی اصولی به سراغ حل مسائل رایج بروید. در این کتاب، روشهای درست و تصمیماتی که باید برای بهبود پیچیدگی، کارایی، خوانایی کد و موارد دیگر بگیرید، توضیح داده شده است.
«حل مسائل کد نویسی جاوا، نسخه دوم» به شما کمک میکند تا وظایف روزانهتان را به موقع انجام دهید و در عین حال یک توسعهدهنده جاوا ماهرتر و مستقلتر شوید. در کتاب Java Coding Problems بیش از ۲۷۰ مسئله جدید گنجانده شده است که مهمترین و پایهایترین حوزههای برنامهنویسی جاوا را پوشش میدهد. این حوزهها شامل رشتهها، اعداد، آرایهها، کلکسیونها، رابط برنامهنویسی حافظه و توابع خارجی، ساختارهای داده، تاریخ و زمان، تطبیق الگو، کلاسهای پنهان و مهر و موم شده، برنامهنویسی تابعی، رشتههای مجازی، همزمانی ساختاریافته، جمعآورندههای زباله، آرشیوهای CDS پویا، رابط برنامهنویسی سوکت و سرور وب ساده میشود.
مسائل کتاب Java Coding Problems به دقت طراحی شدهاند تا دانش هستهای مورد نیاز برای کار روزانه را به شما بیاموزند و مهارتهایتان را تقویت کنند. به عبارت دیگر، فرقی نمیکند کار شما ساده، متوسط یا پیچیده باشد، داشتن این دانش در جعبه ابزارتان یک ضرورت است.
با مطالعه کتاب Java Coding Problems، درک عمیقی از مفاهیم جاوا پیدا خواهید کرد و اعتماد به نفس لازم برای توسعه و انتخاب راهحلهای مناسب برای همه مشکلات جاوا را به دست خواهید آورد.
کتاب Java Coding Problems به تنهایی کامل است و برای بهرهمندی از آن به هیچ منبع دیگری نیاز ندارید. با این حال، بسیاری از موضوعات مطرحشده در این کتاب در «حل مسائل کد نویسی جاوا، نسخه اول» نیز بررسی شدهاند. اگر به دنبال تمرین بیشتر هستید، میتوانید نسخه اول را هم تهیه کنید تا با مجموعه کاملاً متفاوتی از مسائل جاوا روبرو شوید.
کتاب Java Coding Problems برای چه کسانی مناسب است؟
«حل مسائل کد نویسی جاوا، نسخه دوم» به طور ویژه برای توسعهدهندگان جاوا در سطح متوسط رو به پایین که میخواهند با حل مسائل دنیای واقعی دانش خود را ارتقا دهند، مفید است. با این حال، هر توسعهدهنده جاوا، از مبتدی گرفته تا حرفهای، در کار روزانه خود با مسائل مطرحشده در این کتاب مواجه خواهد شد.
بنابراین، توصیه میشود که با اصول اولیه جاوا آشنا باشید و دانش ابتدایی و کاربردی از این زبان برنامهنویسی داشته باشید.
کتاب Java Coding Problems چه چیزی را پوشش میدهد؟
فصل ۱، بلوکهای متن، محلها، اعداد و ریاضیات، شامل ۳۷ مسئله است که ۴ موضوع اصلی بلوکهای متن، محلها، اعداد و عملیات ریاضی را پوشش میدهد.
فصل ۲، اشیاء، تغییرناپذیری، عبارات سوئیچ و تطبیق الگو، شامل ۳۰ مسئله است که به موضوعاتی مانند برخی ویژگیهای کمتر شناختهشدهی java.util.Objects، جنبههای جالب تغییرناپذیری، جدیدترین ویژگیهای عبارات سوئیچ و پوشش عمیق عبارات تطبیق الگو (instanceof و switch) میپردازد.
فصل ۳، کار با تاریخ و زمان، شامل ۲۰ مسئله است که موضوعات مختلف مربوط به تاریخ و زمان را پوشش میدهد. این مسائل عمدتاً بر روی رابط برنامهنویسی Calendar و رابط برنامهنویسی تاریخ و زمان نسخه ۸ جاوا (JDK 8) تمرکز دارند. در مورد مورد دوم، برخی از رابطهای برنامهنویسی کمتر شناختهشده مانند ChronoUnit، ChronoField، IsoFields و TemporalAdjusters را بررسی خواهیم کرد.
فصل ۴، رکوردها و الگوهای رکورد، شامل ۱۹ مسئله است که به طور مفصل رکوردهای جاوا معرفی شده در JDK ۱۶ (JEP 395) و الگوهای رکورد را بررسی میکند. الگوهای رکورد به عنوان یک ویژگی پیشنمایش در JDK ۱۹ (JEP 405)، یک ویژگی پیشنمایش دوم در JDK ۲۰ (JEP 432) و یک ویژگی نهایی در JDK ۲۱ (JEP 440) معرفی شدند.
فصل ۵، آرایهها، کلکسیونها و ساختارهای داده، شامل ۲۴ مسئله است که سه موضوع اصلی را پوشش میدهد. ابتدا با چند مسئله شروع میکنیم که به API بردار جدید اختصاصیافته به پردازش موازی داده میپردازند.
سپس به سراغ چند ساختار داده از جمله طناب (Rope)، فهرست جهشی (Skip List)، درخت کا-د (K-D Tree)، زیپر (Zipper)، توده دوقطبی (Binomial Heap)، توده فیبوناچی (Fibonacci Heap)، توده جفتشونده (Pairing Heap)، کدگذاری هافمن (Huffman Coding) و موارد دیگر میرویم. در نهایت، سه الگوریتم الحاق محبوب را بررسی میکنیم.
فصل ۶، ورودی/خروجی جاوا: فیلترهای Deserialization اختصاصی به محتوا، شامل ۱۳ مسئله مرتبط با فرآیندهای سریالسازی و Deserialization جاوا است. با مسائل کلاسیک مانند سریالسازی و Deserialization اشیاء به فرمتهای byte[], رشته (String) و XML شروع میکنیم. سپس به فیلترهای Deserialization جاوا ۹ که برای جلوگیری از آسیبپذیریهای Deserialization در نظر گرفته شدهاند، میپردازیم و با فیلترهای Deserialization اختصاصی به محتوای JDK ۱۷ کار را به پایان میرسانیم.
فصل ۷ کتاب Java Coding Problems، رابط برنامهنویسی حافظه خارجی (تابع)، شامل ۲۸ مسئله است که رابط برنامهنویسی حافظه خارجی و رابط اتصالدهنده خارجی را پوشش میدهد. با رویکردهای کلاسیک برای فراخوانی توابع خارجی مبتنی بر رابط برنامهنویسی JNI و کتابخانههای متنباز JNA/JNR شروع میکنیم.
در ادامه، رویکرد جدید ارائه شده تحت نام رمزی Project Panama را معرفی میکنیم. ما مهمترین رابطهای برنامهنویسی مانند Arena، MemorySegment، MemoryLayout و غیره را بررسی میکنیم. در نهایت، روی رابط برنامهنویسی اتصالدهنده خارجی و ابزار Jextract برای فراخوانی توابع خارجی با انواع مختلف امضا، از جمله توابع بازگشت (callback)، تمرکز میکنیم.
فصل ۸، کلاسهای مهر و موم شده و پنهان، شامل ۱۳ مسئله است که کلاسهای مهر و موم شده و پنهان را پوشش میدهد. ۱۱ مسئله اول، کلاسهای مهر و موم شده را بررسی میکنند، که یک ویژگی بسیار جالب است که توسط JDK ۱۷ برای حفظ سلسلهمراتب بسته (closed hierarchies) معرفی شده است. دو مسئله آخر، کلاسهای پنهان را پوشش میدهند، که یک ویژگی JDK ۱۵ است و به فریمورکها اجازه میدهد تا کلاسهای پویا (زمان اجرا) ایجاد و استفاده کنند که برای JVM پنهان هستند.
فصل ۹، برنامهنویسی به سبک تابعی – توسعه قابلیتهای API، شامل ۲۴ مسئله است که طیف وسیعی از موضوعات برنامهنویسی تابعی را پوشش میدهد. با معرفی تابع mapMulti() در JDK ۱۶ شروع میکنیم و سپس به حل چند مسئله دربارهی قیدها (Predicate)، توابع و جمعآورندهها (Collector) میپردازیم.
فصل ۱۰، همزمانی – رشتههای مجازی و همزمانی ساختاریافته، شامل ۱۶ مسئله است که به صورت خلاصه رشتههای مجازی و همزمانی ساختاریافته را معرفی میکند.
فصل ۱۱ کتاب Java Coding Problems، همزمانی – رشتههای مجازی و همزمانی ساختاریافته: عمیقتر شدن، شامل ۱۸ مسئله است که به نحوه عملکرد رشتههای مجازی و همزمانی ساختاریافته و چگونگی استفاده از آنها در برنامههای کاربردی شما میپردازد.
فصل ۱۲، جمعآورندههای زباله و آرشیوهای CDS پویا، شامل ۱۵ مسئله است که جمعآورندههای زباله و اشتراکگذاری دادههای کلاس برنامه (AppCDS) را پوشش میدهد.
فصل ۱۳، رابط برنامهنویسی سوکت و سرور وب ساده، شامل ۱۱ مسئله در مورد رابط برنامهنویسی سوکت و ۸ مسئله در مورد سرور وب سادهی JDK ۱۸ است. در ۱۱ مسئلهی اول، دربارهی پیادهسازی برنامههای کاربردی مبتنی بر سوکت مانند برنامههای سرور/کلاینت مسدودکننده/غیرمسدودکننده، برنامههای مبتنی بر دیتاگرام (Datagram) و برنامههای چندپخشی (Multicast) بحث میکنیم. در بخش دوم این فصل، سرور وب ساده را به عنوان یک ابزار خط فرمان بررسی میکنیم.
سرفصلهای کتاب Java Coding Problems:
- Preface
- Text Blocks, Locales, Numbers, and Math
- Objects, Immutability, Switch Expressions, and Pattern Matching
- Working with Date and Time
- Records and Record Patterns
- Arrays, Collections, and Data Structures
- Java I/O: Context-Specific Deserialization Filters
- Foreign (Function) Memory API
- Sealed and Hidden Classes
- Functional Style Programming – Extending APIs
- Concurrency – Virtual Threads and Structured Concurrency
- Concurrency – Virtual Threads and Structured Concurrency: Diving Deeper
- Garbage Collectors and Dynamic CDS Archives
- Socket API and Simple Web Server
- Other Books You May Enjoy
- Index
جهت دانلود کتاب Java Coding Problems میتوانید پس از پرداخت، دریافت کنید.
دیدگاهها
هیچ دیدگاهی برای این محصول نوشته نشده است.