کتاب Programming in Scala با پوشش نسخه 3 زبان برنامهنویسی اسکالا از جدیدترین ویژگیهای این زبان استفاده کرده است. این کتاب در 25 فصل به طور مفصل به آموزش مقدماتی تا پیشرفتهی این زبان و نکات مربوط به آن پرداخته است که تا این زمان جز جدیدترین منابع مربوط به آموزش اسکالا محسوب میشود.
در ادامه مقدمهای از کتاب Programming in Scala را از زبان نویسنده شرح خواهیم داد.
مقدمهای بر کتاب Programming in Scala:
این کتاب آموزشی برای زبان برنامهنویسی اسکالا است که توسط افرادی که مستقیماً در توسعه اسکالا نقش دارند نوشته شده است. هدف ما این است که با خواندن این کتاب، هر آنچه را که برای یک برنامهنویس مولد در اسکالا نیاز دارید، بیاموزید. تمام نمونههای این کتاب با نسخه 3.0.0 اسکالا گردآوری شده است.
چه کسی باید کتاب Programming in Scala را بخواند؟
مخاطب اصلی این کتاب برنامهنویسانی هستند که میخواهند برنامهنویسی را در اسکالا یاد بگیرند. اگر میخواهید پروژه نرم افزاری بعدی خود را در اسکالا انجام دهید، این کتاب برای شما مناسب است. علاوه بر این، این کتاب باید برای برنامهنویسانی که میخواهند افق خود را با یادگیری مفاهیم جدید گسترش دهند، جالب باشد. برای مثال، اگر یک برنامهنویس جاوا هستید، خواندن کتاب Programming in Scala شما را با مفاهیم بسیاری از برنامهنویسی تابعی و همچنین ایده های شیگرا پیشرفته آشنا میکند. ما بر این باوریم که یادگیری در مورد اسکالا و ایدههای پشت آن میتواند به شما کمک کند به طور کلی برنامهنویس بهتری شوید.
دانش برنامهنویسی عمومی فرض میشود. در حالی که اسکالا اولین زبان برنامهنویسی خوب است، این کتابی نیست که بتوان از آن برای یادگیری برنامهنویسی استفاده کرد. از سوی دیگر، دانش خاصی از زبانهای برنامهنویسی مورد نیاز نیست. حتی اگر اکثر مردم از Scala بر روی پلتفرم جاوا استفاده میکنند، کتاب Programming in Scala فرض نمیکند که شما چیزی در مورد جاوا میدانید. با این حال، ما انتظار داریم بسیاری از خوانندگان با جاوا آشنا باشند، و بنابراین گاهی اوقات Scala را با جاوا مقایسه میکنیم تا به این خوانندگان کمک کنیم تا تفاوتها را درک کنند.
نحوه استفاده از این کتاب Programming in Scala
از آنجایی که هدف اصلی این کتاب آموزش است، روش توصیه شده برای مطالعه کتاب Programming in Scala به ترتیب فصل، از جلو به عقب است. ما تلاش زیادی کردهایم که یک موضوع را در یک زمان معرفی کنیم و موضوعات جدید را فقط بر اساس موضوعاتی که قبلاً معرفی کرده ایم توضیح دهیم. بنابراین، اگر برای نگاهی اولیه به چیزی به پشت سر بپرید، ممکن است آن را در قالب مفاهیمی که کاملاً درک نمیکنید توضیح داده شده است. تا جایی که فصلها را به ترتیب بخوانید، فکر میکنیم که کسب شایستگی در اسکالا، یک مرحله در زمان، کاملاً ساده است.
اگر اصطلاحی را میبینید که نمیدانید، حتماً واژهنامه و فهرست را بررسی کنید. بسیاری از خوانندگان بخشهایی از کتاب Programming in Scala را مرور میکنند، و این خیلی خوب است. واژهنامه و فهرست میتوانند به شما کمک کنند که هر زمان که چیزی را خیلی سریع از روی آن میگذرید، به عقب برگردید.
پس از یک بار خواندن کتاب Programming in Scala، باید به عنوان مرجع زبان نیز عمل کند. مشخصات رسمی زبان اسکالا وجود دارد، اما مشخصات زبان سعی میکند دقت را به قیمت خوانایی انجام دهد. اگرچه این کتاب تمام جزئیات اسکالا را پوشش نمیدهد، اما کاملاً جامع است و باید به عنوان یک مرجع زبان قابل دسترسی باشد زیرا در برنامهنویسی در اسکالا مهارت بیشتری پیدا میکنید.
چگونه اسکالا را یاد بگیریم شما با خواندن کتاب Programming in Scala از جلد به جلد دیگر، چیزهای زیادی در مورد اسکالا خواهید آموخت. اگر چند کار اضافی انجام دهید، میتوانید اسکالا را سریعتر و کاملتر یاد بگیرید.
اول از همه، میتوانید از نمونههای برنامههای متعدد موجود در کتاب Programming in Scala بهره ببرید. تایپ کردن آنها در خودتان راهی است که ذهنتان را مجبور به عبور از هر خط کد کنید. امتحان تنوع راهی برای سرگرم کردن بیشتر آنها و اطمینان از اینکه واقعاً نحوه کار آنها را درک میکنید است.
دوم، با انجمنهای آنلاین متعدد در تماس باشید. به این ترتیب، شما و دیگر علاقهمندان به اسکالا میتوانید به یکدیگر کمک کنید. لیستهای پستی متعدد، انجمنهای گفتگو، اتاق گفتگو، ویکی و چندین فید مقاله ویژه اسکالا وجود دارد. برای یافتن مواردی که متناسب با نیازهای اطلاعاتی شما هستند، زمان بگذارید. زمان بسیار کمتری را صرف مشکلات کوچک میکنید، بنابراین میتوانید وقت خود را برای سؤالات عمیقتر و مهمتر صرف کنید. در نهایت، هنگامی که به اندازه کافی مطالعه کردید، پروژه برنامهنویسی خود را انجام دهید. از ابتدا روی یک برنامه کوچک کار کنید یا یک افزونه به یک برنامه بزرگتر توسعه دهید. فقط با خواندن میتوانید تا این حد پیش بروید.
مروری بر محتوا
- فصل 1، “یک زبان مقیاسپذیر”، نمای کلی از طراحی اسکالا و همچنین استدلال و تاریخچه پشت آن را ارائه میدهد.
- فصل 2، “اولین مراحل در اسکالا”، به شما نشان میدهد که چگونه تعدادی از وظایف برنامهنویسی اساسی را در اسکالا انجام دهید، بدون اینکه به جزئیات زیاد در مورد نحوه کار آنها بپردازید. هدف این فصل این است که با انگشتان دست خود شروع به تایپ و اجرای کد Scala کنید.
- فصل 3، “مراحل بعدی در اسکالا”، چندین کار برنامهنویسی اساسی دیگر را به شما نشان میدهد که به شما کمک میکند تا به سرعت در اسکالا سرعت خود را افزایش دهید. پس از تکمیل این فصل، باید بتوانید از Scala برای کارهای اسکریپتنویسی ساده استفاده کنید.
- فصل 4، «کلاسها و اشیاء»، پوشش عمیق اسکالا را با شرحی از بلوکهای ساختمان اصلی شیگرا و دستورالعملهایی درباره نحوه کامپایل و اجرای یک برنامه کاربردی اسکالا آغاز میکند.
- فصل 5، «انواع و عملیات اساسی»، انواع اصلی اسکالا، حروف تحتاللفظی آنها، عملیاتی که میتوانید روی آنها انجام دهید، نحوه تقدم و همبستگی چگونه کار میکند و پوشش های غنی را پوشش میدهد.
- فصل 6، «اشیاء تابعی»، با استفاده از اعداد گویا تابعی (یعنی غیرقابل تغییر) به عنوان مثال، عمیقتر به ویژگیهای شیگرا اسکالا میپردازد.
- فصل 7، «ساختارهای کنترل داخلی»، نحوه استفاده از ساختارهای کنترل داخلی اسکالا را به شما نشان میدهد: if, while, for, try, and match.
- فصل 8، «توابع و بستهها»، پوشش عمیقی از توابع، بلوک اصلی زبانهای تابعی، ارائه میکند.
- فصل 9، “Control Abstraction”، نشان میدهد که چگونه میتوان ساختارهای کنترلی اساسی Scala را با تعریف انتزاعات کنترلی خود تقویت کرد.
- فصل 10، “ترکیب و وراثت”، بیشتر در مورد پشتیبانی اسکالا از برنامهنویسی شیگرا بحث میکند. موضوعات به اندازه موضوعات فصل 4 اساسی نیستند، اما اغلب در عمل مطرح میشوند.
- فصل 11، “ویژگیها”، مکانیسم اسکالا را برای ترکیب ترکیبی میکسین پوشش میدهد. این فصل از کتاب Programming in Scala نحوه عملکرد صفات را نشان میدهد، کاربردهای رایج را توصیف میکند، و توضیح میدهد که چگونه صفات در وراثت چندگانه سنتی بهبود مییابند.
- فصل 12، “بستهها و ورودیها”، مسائل مربوط به برنامهنویسی را در سطح وسیع، از جمله بستههای سطح بالا، اسناد ورودی، و اصلاحکنندههای کنترل دسترسی مانند محافظت شده و خصوصی مورد بحث قرار میدهد.
- فصل 13، “تطابق الگو”، ساختارهای دوگانهای را معرفی میکند که هنگام نوشتن ساختارهای داده معمولی و بدون کپسول از شما پشتیبانی میکنند. کلاسهای Case و تطبیق الگو به ویژه برای دادههای بازگشتی درخت مانند مفید هستند.
- فصل 14، “کار با لیستها”، لیستهایی را به تفصیل توضیح میدهد، که احتمالاً رایجترین ساختار داده مورد استفاده در برنامههای اسکالا هستند.
- فصل 15، «کار با مجموعههای دیگر»، نحوه استفاده از مجموعههای اساسی اسکالا، مانند فهرستها، آرایهها، تاپلها، مجموعهها و نقشهها را به شما نشان میدهد.
- فصل 16، “اشیاء قابل تغییر”، اشیاء قابل تغییر و نحوی را که Scala برای بیان آنها ارائه میدهد، توضیح میدهد. این فصل از کتاب Programming in Scala با یک مطالعه موردی در مورد شبیهسازی رویداد گسسته، که برخی از اشیاء قابل تغییر را در عمل نشان میدهد، به پایان میرسد.
- فصل 17، «سلسله مراتب اسکالا»، سلسله مراتب وراثت اسکالا را توضیح میدهد و روشهای جهانی و انواع پایین آن را مورد بحث قرار میدهد.
- فصل 18، «پارامترسازی نوع»، برخی از تکنیکهای پنهان کردن اطلاعات معرفی شده در فصل 13 کتاب Programming in Scala را با استفاده از یک مثال عینی توضیح میدهد: طراحی یک کلاس برای صفهای کاملاً کاربردی. این فصل به شرح واریانس پارامترهای نوع و نحوه تعامل آن با پنهان کردن اطلاعات میپردازد.
- فصل 19، “Enums و ADTs” ساختارهای دوگانهای را معرفی میکند که هنگام نوشتن ساختارهای داده معمولی و غیر کپسوله شده از شما پشتیبانی میکنند.
- فصل 20، «اعضای انتزاعی»، انواع اعضای انتزاعی را که اسکالا پشتیبانی میکند، توصیف میکند. نه تنها متدها، بلکه فیلدها و انواع نیز میتوانند انتزاعی اعلام شوند.
- فصل 21، «Givens»، ویژگی Scala را توضیح میدهد که به شما کمک میکند با پارامترهای متنی توابع کار کنید. عبور در تمام اطلاعات زمینهای ساده است، اما میتواند مستلزم حجم زیادی باشد. دادهها به شما کمک میکند تا آن صفحه دیگر را کاهش دهید.
- فصل 22، «روشهای توسعه»، مکانیسم اسکالا را برای نشان دادن آن به گونهای توضیح میدهد که گویی یک تابع به عنوان یک متد در یک کلاس تعریف شده است، در حالی که واقعاً خارج از کلاس تعریف شده است.
- فصل 23، “Typeclasses”، که هنوز نوشته نشده است، این فصل چندین نمونه از تایپ کلاسها را نشان میدهد.
- فصل 24، “مجموعهها در عمق”، یک مرور دقیق از کتابخانه مجموعهها ارائه میدهد.
- فصل 25، «اظهارات و آزمونها»، مکانیسم اثبات اسکالا را نشان میدهد و توری از چندین ابزار موجود برای نوشتن آزمونها در اسکالا را ارائه میکند، بهویژه بر روی ScalaTest تمرکز دارد.
همچنین شما میتوانید برای مطالعهی بیشتر بر روی زبان اسکالا از کتاب Programming Scala نیز استفاده نمائید.
سرفصلهای کتاب Programming in Scala:
- What Readers are Saying
- Contents
- List of Figures
- List of Tables
- List of Listings
- Foreword
- Acknowledgments
- Introduction
- 1. A Scalable Language
- 2. First Steps in Scala
- 3. Next Steps in Scala
- 4. Classes and Objects
- 5. Basic Types and Operations
- 6. Functional Objects
- 7. Built-in Control Structures
- 8. Functions and Closures
- 9. Control Abstraction
- 10. Composition and Inheritance
- 11. Traits
- 12. Packages, Imports, and Exports
- 13. Pattern Matching
- 14. Working with Lists
- 15. Working with Other Collections
- 16. Mutable Objects
- 17. Scala’s Hierarchy
- 18. Type Parameterization
- 19. Enums
- 20. Abstract Members
- 21. Givens
- 22. Extension Methods
- 23. Typeclasses
- 24. Assertions and Tests
- Glossary
- Bibliography
- About the Authors
- Index
فایل کتاب Programming in Scala را میتوانید پس از پرداخت، دریافت کنید.
دیدگاهها
هیچ دیدگاهی برای این محصول نوشته نشده است.