کتاب ساخت زبان‌های خاص دامنه (DSL) در کاتلین؛ از طراحی تا پیاده‌سازی حرفه‌ای با فرمت AZW3 برای کتابخوان کیندل و فرمت EPUB

انتخاب پلن

انتخاب پلن برای ادامه خرید الزامی است.

پرداخت اقساطی
در صورت خرید اقساطی هر قسط: 62,488 تومان
۴ قسط ماهانه. بدون سود، چک و ضامن.
پرداخت اقساطی با دیجی‌پی پرداخت اقساطی با ترب‌پی

🎓 دوره آموزشی جامع

📚 اطلاعات دوره

عنوان دوره: دوره ساخت زبان‌های خاص دامنه (DSL) در کاتلین؛ از طراحی تا پیاده‌سازی حرفه‌ای

موضوع کلی: برنامه‌نویسی و توسعه نرم‌افزار

موضوع میانی: طراحی زبان‌های خاص دامنه (DSL) در کاتلین

📋 سرفصل‌های دوره

  • 1. مفهوم زبان خاص دامنه و تفاوت آن با زبان عمومی
  • 2. انواع DSL: داخلی، خارجی، متنی و گرافیکی
  • 3. مزایا، هزینه‌ها و ریسک‌های طراحی DSL
  • 4. معیارهای تصمیم‌گیری برای استفاده از DSL
  • 5. تحلیل دامنه و استخراج زبان مشترک
  • 6. جایگاه کاتلین در طراحی DSL
  • 7. امکانات کاتلین برای خلق نحو روان
  • 8. ساختار یک DSL داخلی در کاتلین
  • 9. طراحی API روان و قابل فهم برای DSL
  • 10. توابع الحاقی در خدمت DSL
  • 11. لامبدا با گیرنده و نوع Function with Receiver
  • 12. توابع infix و ساخت جملات شبه‌انگلیسی
  • 13. عملگر invoke و فراخوانی نمونه‌ها
  • 14. بازتعریف عملگرها در DSL
  • 15. مدیریت this و محدوده‌های گیرنده
  • 16. ساختارهای تودرتو با receiver
  • 17. استفاده از توابع inline در DSL
  • 18. reified type parameters در طراحی DSL
  • 19. جنریک‌ها و محدودیت‌های نوع در DSL
  • 20. استفاده از typealias برای ساده‌سازی عبارات
  • 21. sealed class برای مدل‌سازی گزینه‌های بسته
  • 22. data class و مدل‌سازی ساختارهای DSL
  • 23. خاصیت‌های محاسباتی و delegated properties
  • 24. توابع سطح بالا به‌عنوان بلوک‌های ساختمانی
  • 25. مدیریت بلوک‌های اختیاری و پیش‌فرض‌ها
  • 26. طراحی بلوک‌های تکرارشونده
  • 27. طراحی بلوک‌های شرطی
  • 28. کنترل جریان سفارشی در DSL
  • 29. ساختارهای بازگشتی و انواع تو در تو
  • 30. طراحی builder نوع-ایمن
  • 31. ساخت builder برای HTML
  • 32. ساخت builder برای JSON
  • 33. ساخت builder برای XML
  • 34. ساخت builder برای رابط کاربری
  • 35. طراحی DSL برای تست‌نویسی
  • 36. طراحی DSL برای تعریف گردش کار
  • 37. طراحی DSL برای ماشین حالت
  • 38. طراحی DSL برای اعتبارسنجی داده‌ها
  • 39. طراحی DSL برای قواعد کسب‌وکار
  • 40. طراحی DSL برای فرم‌ها
  • 41. طراحی DSL برای پیکربندی و تنظیمات
  • 42. طراحی DSL برای اتوماسیون وظایف
  • 43. طراحی DSL برای پرس‌وجوی داده
  • 44. طراحی DSL برای کار با پایگاه داده
  • 45. طراحی DSL برای فراخوانی API وب
  • 46. طراحی DSL برای مدیریت وابستگی‌ها
  • 47. طراحی DSL برای ساخت و کامپایل پروژه
  • 48. طراحی DSL برای تولید کد
  • 49. طراحی DSL برای پردازش متن و قالب‌ها
  • 50. طراحی DSL برای ساخت گراف و شبکه
  • 51. طراحی DSL برای تعریف بازی
  • 52. طراحی DSL برای انیمیشن
  • 53. طراحی DSL برای تعریف استایل و تم
  • 54. طراحی DSL برای سریال‌سازی اشیاء
  • 55. طراحی DSL برای تعریف رویدادها
  • 56. طراحی DSL برای مدیریت خطا و استثنا
  • 57. طراحی DSL برای کار با تاریخ و زمان
  • 58. طراحی DSL برای اعمال ریاضی و آماری
  • 59. طراحی DSL برای زیرساخت به‌صورت کد
  • 60. طراحی DSL برای تعریف خط‌مشی‌های امنیتی
  • 61. طراحی DSL برای مستندسازی خودکار
  • 62. طراحی DSL ناهمگام با suspend
  • 63. استفاده از کوروتین‌ها در اجرای DSL
  • 64. ترکیب چند DSL در یک برنامه
  • 65. برقراری ارتباط بین DSL و کد میزبان
  • 66. کنترل دسترسی به اجزای داخلی در DSL
  • 67. مدیریت زمینه و وضعیت در اجرای DSL
  • 68. طراحی DSL خارجی با کاتلین
  • 69. ساخت توکنایزر و parser ساده برای DSL
  • 70. پیاده‌سازی عملگرها و اولویت در DSL
  • 71. بررسی نمونه موفق: Gradle Kotlin DSL
  • 72. بررسی نمونه موفق: HTML و UI DSL
  • 73. مستندسازی نحو و قراردادهای DSL
  • 74. تست واحد برای DSL
  • 75. تست snapshot و بازخورد خطا در DSL
  • 76. اشکال‌زدایی و ابزارهای پشتیبان DSL
  • 77. بهبود کارایی و کاهش هزینه اجرای DSL
  • 78. الگوهای رایج در طراحی DSL
  • 79. ضدالگوهای DSL و راه‌های اجتناب
  • 80. ارزیابی، انتشار و نگهداری بلندمدت DSL
  • 81. پروژه عملی: طراحی و پیاده‌سازی یک DSL کامل
تگ‌ها: DSL در کاتلین Kotlin course Kotlin DSL Kotlin language Kotlin programming Type-Safe Builder آموزش برنامه‌نویسی آموزش کاتلین برنامه‌نویسی کاتلین پیاده‌سازی DSL توسعه نرم‌افزار زبان خاص دامنه طراحی DSL کاتلین پیشرفته نوع-ایمن

نظرات

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

وارد شوید تا نظر ثبت کنید.