دوره SICP: سفری جذاب به دنیای برنامهنویسی و ساختارهای داده همراه با فلشکارت آموزشی — ارائه روی فلش مموری
📚 کتاب آموزشی جامع
📚 اطلاعات کتاب
عنوان کتاب: کتاب SICP: سفری جذاب به دنیای برنامهنویسی و ساختارهای داده
موضوع کلی: مبانی علوم کامپیوتر
موضوع میانی: انتزاع در برنامهنویسی و طراحی نرمافزار
📋 سرفصلهای کتاب (100 موضوع)
- 1. مقدمه: چرا SICP و مبانی علوم کامپیوتر؟
- 2. عناصر اساسی برنامهنویسی: عبارتها و نامها
- 3. ترکیببندی: ساخت برنامهها از قطعات کوچک
- 4. انتزاع: ایجاد رویهها (توابع)
- 5. مدل جایگزینی: درک ارزیابی رویهها
- 6. عبارتهای شرطی: تصمیمگیری در برنامهها (if و cond)
- 7. فرآیندهای بازگشتی (Recursive Processes)
- 8. فرآیندهای تکراری (Iterative Processes)
- 9. مقایسه بازگشت و تکرار: بهینگی و ساختار
- 10. مدل محیط: درک دامنه و تخصیص متغیرها (مقدماتی)
- 11. رویههای مرتبه بالاتر: رویهها به عنوان آرگومان
- 12. رویههای مرتبه بالاتر: رویهها به عنوان مقدار بازگشتی
- 13. مثال کاربردی: نقطه ثابت (Fixed-Point Iteration)
- 14. مثال کاربردی: روش نیوتن برای یافتن ریشهها
- 15. ساخت رویههایی که رویه میسازند
- 16. انتزاع رویهای: کپسولهسازی منطق
- 17. توابع بدون نام (Lambda Expressions)
- 18. مدیریت دامنه: بلوکهای محلی و let
- 19. طراحی برنامهها با افزایش تدریجی انتزاع
- 20. مقدمهای بر دادههای ساختاریافته
- 21. انتزاع داده: معرفی مفهوم
- 22. دادههای مرکب: زوجها (Pairs)
- 23. سازندهها (Constructors)، انتخابگرها (Selectors) و گزارهها (Predicates)
- 24. طراحی سیستمهای داده با انتزاع
- 25. مثال: نمایش اعداد گویا
- 26. موانع انتزاع: جداسازی پیادهسازی از رابط
- 27. انتخاب نمایش داده: تأثیر بر طراحی
- 28. لیستها: ساختار بنیادی برای توالیها
- 29. عملیات اصلی روی لیستها: car، cdr، cons
- 30. پردازش توالیها با رویههای مرتبه بالاتر
- 31. نگاشت (Mapping) توالیها
- 32. فیلتر کردن (Filtering) توالیها
- 33. انباشت (Accumulating) توالیها (Fold/Reduce)
- 34. توالیهای سلسلهمراتبی: درختها
- 35. نمایش درختان و عملیات روی آنها
- 36. مثال جامع: مشتقگیری نمادین
- 37. مجموعهها به عنوان توالیها
- 38. نمایش مجموعهها با درختهای جستجوی دودویی
- 39. دیکشنریها و جداول جستجو
- 40. رابطهای قراردادی: استانداردسازی تعاملات داده
- 41. برنامهنویسی دادهمحور: معرفی
- 42. برچسبهای نوع (Type Tags) در برنامهنویسی دادهمحور
- 43. جداول اعزام (Dispatch Tables)
- 44. سبک پیامرسانی (Message Passing)
- 45. بستهها و ماژولها: سازماندهی کد
- 46. انتزاع برای انواع دادههای مختلف (مثال: اعداد مختلط)
- 47. گسترش سیستمهای داده: افزودن انواع جدید
- 48. مقدمه: مدلسازی با زمان و تغییر حالت
- 49. تخصیص (Assignment): `set!` و اثرات جانبی
- 50. حالت محلی (Local State) و اشیاء
- 51. مدل محیط پیشرفته: فریمها و تخصیص حافظه
- 52. مثال: طراحی حساب بانکی
- 53. مثال: تولید اعداد تصادفی
- 54. ساختارهای داده قابل تغییر: لیستهای تغییرپذیر
- 55. صفها (Queues) با استفاده از دادههای تغییرپذیر
- 56. جداول هش (Hash Tables) و مدیریت داده
- 57. اشتراکگذاری و تغییر حالت: چالشها
- 58. مشکل همگامی (Concurrency) و رقابت بر سر منابع
- 59. مدلسازی با جریانها (Streams): جایگزینی برای حالت صریح
- 60. جریانهای بینهایت و تولید داده پویا
- 61. عملیات روی جریانها: نگاشت و فیلتر (stream-map, stream-filter)
- 62. مثال: غربال اراتوستن با جریانها
- 63. تأخیر در ارزیابی (Delay and Force)
- 64. بهینهسازی با Memoization
- 65. مقدمه: برنامهنویسی مبتنی بر محدودیت (Constraint Propagation)
- 66. شبیهسازیها با اشیاء و حالت
- 67. طراحی پیشرفته اشیاء و الگوهای شیءگرایی
- 68. انتزاع فرازبانی: ساخت مفسرها
- 69. ارزیابیگر فراچرخهای: Scheme در Scheme
- 70. ساختار یک مفسر: `eval` و `apply`
- 71. نمایش عبارتهای زبان
- 72. مدیریت فرمهای خاص (Special Forms)
- 73. نقش محیط در ارزیابیگر
- 74. گسترش مفسر: افزودن قابلیتهای جدید به زبان
- 75. ارزیابی تنبل (Lazy Evaluation): پیادهسازی در مفسر
- 76. مقایسه ارزیابی عادی و کاربردی در مفسر
- 77. برنامهنویسی غیرقطعی (Non-Deterministic Programming): معرفی
- 78. `amb` و مفسر `amb`: کاوش فضای جستجو
- 79. راهبردهای جستجو در برنامهنویسی غیرقطعی
- 80. مقدمهای بر برنامهنویسی منطقی (Logic Programming)
- 81. ماکروها: گسترش نحو زبان
- 82. تبدیلهای نحوی و اعتبارسنجی
- 83. نقل قولهای شبهمعنایی (Quasiquotation)
- 84. مقدمه بر کامپایلرها: از مفسر تا کامپایلر
- 85. ساختار یک کامپایلر: بخشهای مختلف
- 86. بهینهسازیهای کامپایلر
- 87. زبانهای خاص دامنه (DSLs): طراحی و پیادهسازی
- 88. طراحی زبانهای برنامهنویسی جدید
- 89. مدل ماشین ثبات (Register Machine Model)
- 90. طراحی شبیهساز ماشین ثبات
- 91. مجموعه دستورالعملها و کنترل جریان
- 92. کامپایل Scheme به ماشین ثبات
- 93. پشته (Stack) و مدیریت کنترل
- 94. جمعآوری زباله (Garbage Collection): مدیریت خودکار حافظه
- 95. الگوریتمهای جمعآوری زباله: Mark-Sweep
- 96. الگوریتمهای جمعآوری زباله: Copying
- 97. ماشینهای مجازی (Virtual Machines)
- 98. ماهیت محاسبات: از سطح بالا تا سطح پایین
- 99. مروری بر اصول SICP: انتزاع، مدلسازی و طراحی
- 100. آینده برنامهنویسی: چالشها و فرصتها
محتویات بسته آموزشی
🌐 سامانه آنلاین فلشکارت؛ مرور هدفمند و هوشمند
اکانت ارائهشده، دسترسی به نسخه تحت وب سامانه فلشکارت ویژه این دوره را فراهم میکند. این سامانه از الگوریتم زمانبندی مرور SM-2 استفاده میکند و بر اساس ارزیابی شما از میزان یادآوری هر کارت، زمان مرورهای بعدی را تنظیم میکند.
به این ترتیب، کارتهای دشوارتر میتوانند زودتر مرور شوند و برای تثبیت مطالب در حافظه، برنامه مرور متناسبتری داشته باشید.
مدتزمان معادل آموزشی بر اساس برآورد این دوره در گواهی درج میشود.
گواهی دوزبانه با استعلام آنلاین
پس از تکمیل فعالیتهای لازم و تأیید درخواست، گواهی پایان دوره به زبان فارسی و انگلیسی صادر میشود. گواهی دارای لینک اختصاصی و QR Code برای بررسی و استعلام آنلاین است.
این گواهی صرفاً بهعنوان گواهی اتمام دوره آموزشی صادر میشود و معادل مدرک دانشگاهی، آکادمیک یا مدرک رسمی مورد تأیید نهادهای دولتی نیست. صدور آن منوط به تکمیل شرایط دوره و تأیید نهایی درخواست است.
نظرات
هنوز نظری ثبت نشده است.
وارد شوید تا نظر ثبت کنید.