کتاب Mastering Julia, 2nd Edition: Enhance your analytical and programming skills for data modeling and processing with Julia (تسلط بر جولیا، ویرایش دوم: مهارت های تحلیلی و برنامه نویسی خود را برای مدل سازی و پردازش داده ها با جولیا تقویت کنید) راهنمای جامعی برای علاقهمندان به داده، برنامهنویسان و تحلیلگرانی است که به دنبال ارتقای مهارتهای خود در مدلسازی و پردازش دادهها با استفاده از زبان برنامهنویسی جولیا هستند.
کتاب Mastering Julia که توسط متخصصان این حوزه تألیف شده است، کاوش عمیقی از تکنیکهای تحلیلی پیشرفته، بهترین شیوههای برنامهنویسی، و استراتژیهای پردازش دادهها را ارائه میدهد که به طور خاص برای جولیا طراحی شدهاند.
کتاب Mastering Julia با تمرکز بر استفاده از قابلیتهای محاسباتی با کارایی بالا جولیا، بینشهای عملی را در مورد طراحی الگوریتمهای کارآمد، پیادهسازی مدلهای داده پیچیده، و بهینهسازی گردشهای کاری داده برای حداکثر کارایی و مقیاسپذیری ارائه میدهد.
«تسلط بر جولیا، نسخه دوم» با مثالهای واقعی، تمرینهای عملی و نکات تخصصی، خوانندگان را با دانش و ابزارهای مورد نیاز برای باز کردن پتانسیل کامل جولیا در زمینه مدلسازی و پردازش دادهها مجهز میکند.
در ادامه مقدمهای از کتاب Mastering Julia را از زبان نویسنده شرح خواهیم داد.
مقدمهای بر کتاب Mastering Julia:
تجسم قبلی این کتاب زمانی نوشته شد که جولیا در نسخه ۰.۲ بود، که تا زمانی که چاپ شد به نسخه ۰.۴ رسید. اکنون متقاعد شدهام که نسخه دوم به تأخیر افتاده است، و به طور مشابه، زمانی که من شروع به کار کردم در نسخه ۱.۸.۲ بود و اکنون نسخه ۱.۹.۴ است اما با نسخه ۱.۱۰. x به عنوان کاندید انتشار و حتی نسخه ۱.۱۱ در حال توسعه است.
چرا اینقدر فاصله بین نسخه هاست؟ جولیا در گذشته از اصلاح زبان بیمیل نبوده و ظاهراً در حال حاضر نیز به این کار ادامه میدهد. مشکلات زیادی در نادیده گرفتن سازگاری به عقب هنگام توسعه یک زبان محاسباتی وجود دارد.
مثالی که احتمالاً بسیاری از خوانندگان از آن آگاه خواهند بود این است که وقتی پایتون سعی کرد از نسخه ۲ به نسخه ۳ برود، اقلیت قابل توجهی از کاربران مجبور شدند برای انجام این جهش فریاد بزنند و این فقط زمانی بود که پشتیبانی از نسخه ۲ به طور مؤثر انجام شد. منصرف شد که این اتفاق افتاده است.
نگرانکنندهتر زمانی بود که Perl، که زمانی جایگاهی را داشت که پایتون اکنون دارد (حدود سال ۲۰۲۳) حرکت از نسخه ۵ به نسخه ۶ آنقدر غیرممکن شد که Perl ۶ (چند بار) به عنوان یک زبان جدید تغییر نام داد، زبانی که به ندرت استفاده میشود. همانطور که پرل ۵ نیز هست.
بنابراین با توجه به شکاف بین دو نسخه کتاب Mastering Julia، میتوانامیدوار بود که جولیا، نسخه ۱.۰ را که در جولیاکون ۲۰۱۸ در لندن معرفی شده بود، گذشته است، حداقل ممکن است اکنون سر و سامان داشته باشد و این کار را انجام داده باشد. بدون هشدارهای ترسناک استهلاک که در نهایت به خطا تبدیل میشود.
علاوه بر این، از آنجایی که بسیاری از بستههای جولیا با کد ۱۰۰% بومی جولیا نوشته شدهاند، اثرات تغییرات ایجاد شده در جولیا گسترده است و بستهها باید به سرعت نگهداری شوند یا بستهها باید بازنشسته شوند.
با توجه به محتوای کتاب Mastering Julia، فلسفه آن مانند قبل باقی میماند. بنابراین، با بحث در مورد نحوه چاپ \”Hello World\” یا نحوه محاسبه نتیجه ۱ + ۱ شروع نمیشود، اگرچه نسخهای از اولی وجود دارد، یک گرگ استعاری در لباس گوسفند، بنابراین میتوان آن را پیدا کرد!
باز هم، من در مورد ساختارهای برنامهنویسی معمول برای حلقهبندی و شاخهبندی بحث نمیکنم، بلکه برخی ساختارهای جولیا را برجسته میکنم که ممکن است برای همه آشنا نباشند، مانند درک لیست، پخش و غیره، و البته پرداختن به موضوعاتی مانند سیستم نوع جولیا. نمونهها خیلی پیچیده نیستند، اماامیدواریم به اندازه کافی دقیق باشند که برای مدتی در آینده جالب و مهمتر قابل اجرا باشند.
تعداد فصلها اکنون از ۱۰ به ۱۱ افزایش یافته است، این به این دلیل است که برخی از مطالب در فصل توزیع و انواع به فصلهای جداگانه تقسیم میشوند، فصل دوم کتاب Mastering Julia به طور معمایی با عنوان: ۳M\’s، یعنی اشاره به ارسال چندگانه، ماکروها. و ماژولها، که همه آنها قبلاً در برخی از مطالب قبلی در کتاب دیده شدهاند.
این بدان معناست که در حال حاضر پنج فصل اول کتاب Mastering Julia عمدتاً برنامهنویسی جولیا را هدف قرار دادهاند و پنج فصل بعدی با موضوعات موضوعی، که همگی با تعداد بیشتری تبلیغ میشوند، مشابه موارد قبلی و با بهروزرسانی مطالب موجود در آنها هستند. فصل آخر تا حدودی متفاوت است، دیگری با نامی معمایی؟!
آنچه کتاب Mastering Julia پوشش میدهد:
فصل ۱: محیط جولیا به عنوان مقدمهای ملایم برای جولیا در نظر گرفته شده است که مراحل مورد نیاز برای راهاندازی و اجرای یک توزیع کارآمد و مراحل مورد نیاز برای دریافت بستهها و اجرای جولیا در REPL، ویرایشگرهای کد (به ویژه) VS-Code را پوشش میدهد. و IDEهای مشتری و پلوتون، سپس با نشان دادن این موارد با چند مثال ساده ادامه دهید.
فصل دوم: توسعه در جولیا، یک بررسی اجمالی از چندین نحوهٔ نگارش اولیهٔ جولیا است؛ که در آن به بحث در مورد چگونگی کار با متغیرهای عددی و حرفی ساده به عنوان مقادیر عددی یا حرفی در آرایههای گردشی پرداخته میشود، همراه با معرفی مختصر مفهوم چارچوب داده، که که به آن در بقیهٔ کتاب بارها خواهیم پرداخت.
فصل ۳: سیستم نوع جولیا ابتدا استفاده از ویژگیهای بیشتر مانند مشخص کردن پارامترهای پارامتری و اختیاری را به عنوان آرگومانهای توابع توصیف میکند و سپس با معرفیایده انواع دادههای انتزاعی و عینی به عنوان پیش زمینهای برای کار با و تعریف پیچیدهتر ادامه میدهد. ساختارهای داده مرکب با در نظر گرفتن اتحادیهها و نامهای مستعار در جولیا و آرایههای ابعاد بالاتر به پایان میرسد.
فصل ۴: The Three M موضوعات سه جنبه جولیا را پوشش میدهد که ممکن است برای کاربران یک زبان برنامهنویسی متفاوت کمی ناآشنا باشد، یعنی مفهوم (و استفاده از) ارسال چندگانه، سیستم ماکرو، و رویکرد جولیا به مدولار بودن، که تا حدودی با سیستمهای شی گرا معمولی متفاوت است.
فصل ۵: قابلیت همکاری کمی متفاوت است زیرا مربوط به کار جولیا با زبانهای دیگر است که مستقیماً با C، Python و R (از طریق کتابخانههای مشترک یا APIها) یا به طور غیرمستقیم با فراخوانی کمک سیستم عامل، راهاندازی خطوط لوله انجام میشود. و تغییر مسیر ورودی و خروجی اصلی.
فصل ۶: کار با دادهها اولین فصل موضوعی است که عمدتاً به مدیریت فایلهای دادههای متنی و باینری و مجموعه دادههای ساخت یافته مربوط میشود و دوباره با جزئیات بسیار بیشتر ساختارهای پیچیده جولیا، یعنی چارچوبها و جداول دادهها را ملاقات میکند.
این فصل از کتاب Mastering Julia، با اعمال برخی تحلیلهای آماری ساده برای برخی از مجموعه دادههای ارجاع شده به پایان میرسد.
فصل ۷: برنامهنویسی علمی ممکن است در ابتدا به عنوان جواهری در تاج جولیا در نظر گرفته شود، دلیل وجودی هدف آن. توسعه زبان بسیاری از جنبههای دیگر را در بر میگیرد، اما اخیراً تمرکز آن بر یادگیری ماشین و شبیهسازی سیستم ممکن است نوید دهنده یک حرکت به این سمت باشد.
طیف گستردهای از موضوعات از جمله جبر خطی، پردازش سیگنال، حل معادلات دیفرانسیل، بهینهسازی، و تصادفی را پوشش میدهد، البته به طور خلاصه.
فصل ۸ کتاب Mastering Julia: تجسم اندکی تسکین نور را برای تولید گرافیک و سایر اشکال تصویر فراهم میکند. در ابتدا جولیا به ناعادلانه مورد انتقاد قرار گرفت که در این زمینه کمبود دارد اما اکنون شرمساری از ثروت است.
این فصل از کتاب Mastering Julia، نمایشها و بستههای ویدیویی ساده (شطری) را برای ایجاد گرافیکبرداری و خروجی نسخهای چاپی مانند PDF و سپس به API جامع Plots پوشش میدهد. همچنین به بستههای قدرتمند پردازش تصویر میپردازد و با مروری بر برخی چارچوبهای گرافیکی مگا جولیا به پایان میرسد.
فصل ۹: دسترسی به پایگاه داده، همانطور که از نام آن استنباط میشود، به روشهای جولیا برای تعامل با پایگاههای داده میپردازد.
تقسیم بین پایگاههای داده رابطهای (سبک SQL) و سایر پایگاههای داده، که اغلب با هم ترکیب میشوند و NoSQL توضیح داده میشود و نمونههای مختلفی از هر کدام، هر دو نوع مبتنی بر دیسک و حافظه، بررسی میشوند. با توصیف استفاده از APIS پایگاه داده وب به سبک REST ادامه مییابد و با بحث در مورد استفاده از Queryverse و تعامل آن با گرافیک VegaLite به پایان میرسد.
فصل ۱۰ کتاب Mastering Julia: شبکهها و چند وظیفهای بر روشهای جولیا برای انجام چند کار و کار با سیستمهای توزیع شده تمرکز دارد. مفهوم سوکت را معرفی میکند و خدمات شبکهای را ایجاد میکند که میتواند هنگام کار با وب استفاده شود.
سپس روشهایی که فرآیندهای موازی را میتوان در جولیا تعریف و اجرا کرد، ارائه میشود، در نهایت، با بحث در مورد تجزیه و تحلیل مجموعه دادههای توزیع شده به پایان میرسد.
فصل ۱۱ کتاب Mastering Julia: صفحات پشتی جولیا با موضوعاتی که باید برای پیشرفت از کاربر علّی به توسعه دهنده جدی درک شوند، کمی متفاوت است.
این برنامه اسکریپتهای در حال اجرا را بدون REPL (یا IDE معادل) و سپس موضوع اصلی ایجاد بستههای جولیا را با استفاده از تکنیکهایی مانند پروفایل کد و استفاده از اشکالزدا پوشش میدهد. در نهایت این سؤال را مطرح میکند که جولیا در چه مرحلهای قرار دارد، اما سعی نمیکند به آن پاسخ دهد!
سرفصلهای کتاب Mastering Julia:
- Mastering Julia
- Contributors
- About the author
- About the reviewer
- Preface
- Chapter 1: The Julia Environment
- Chapter 2: Developing in Julia
- Chapter 3: The Julia Type System
- Chapter 4: The Three Ms
- Chapter 5: Interoperability
- Chapter 6: Working with Data
- Chapter 7: Scientific Programming
- Chapter 8: Visualization
- Chapter 9: Database Access
- Chapter 10: Networks and Multitasking
- Chapter 11: Julia’s Back Pages
- Index
- Other Books You May Enjoy
جهت دانلود کتاب Mastering Julia میتوانید پس از پرداخت، دریافت کنید.
دیدگاهها
هیچ دیدگاهی برای این محصول نوشته نشده است.