کتاب کالبدشکافی توسعه مکینتاش: اصول طراحی و کدنویسی نرمافزارهای انقلابی با فرمت AZW3 برای کتابخوان کیندل و فرمت EPUB
کالبدشکافی توسعه مکینتاش: خلق نرمافزارهای انقلابی در دنیای macOS کالبدشکافی توسعه مکینتاش: خلق نرمافزارهای انقلابی در دنیای macOS آیا رویای ساختن نرمافزارهای قدرتمند و کاربرپسند برای macOS را در سر...
🎓 دوره آموزشی جامع
📚 اطلاعات دوره
عنوان دوره: دوره کالبدشکافی توسعه مکینتاش: اصول طراحی و کدنویسی نرمافزارهای انقلابی
موضوع کلی: مهندسی نرمافزار پلتفرممحور
موضوع میانی: توسعه نرمافزار در اکوسیستمهای با رابط کاربری گرافیکی
📋 سرفصلهای دوره
- 1. بخش اول: مبانی و فلسفه مکینتاش**
- 2. مقدمهای بر مهندسی نرمافزار پلتفرممحور
- 3. میراث مکینتاش: از لیسا تا macOS Sonoma
- 4. فلسفه مکینتاش: راهنمای رابط کاربری انسانی (HIG)
- 5. پارادایم رویدادمحور: واژگونی کنترل
- 6. آناتومی یک برنامه مکینتاش: از راهاندازی تا حلقه اصلی
- 7. جعبهابزار (The Toolbox): قلب تپنده سیستمعامل کلاسیک
- 8. از پاسکال و اسمبلی تا Objective-C و Swift
- 9. معرفی محیط توسعه Xcode و ابزارهای آن
- 10. مفهوم چارچوب (Framework): AppKit در برابر SwiftUI
- 11. ساخت اولین برنامه: سلام، مکینتاش
- 12. ساختار یک پروژه Xcode: فایلها، اهداف و تنظیمات
- 13. دیباگ مقدماتی: نقاط شکست و بازرسی متغیرها
- 14. بخش دوم: مدیریت حافظه و منابع**
- 15. مدیر حافظه (Memory Manager): دستهها (Handles) در برابر اشارهگرها (Pointers)
- 16. جهنم اشارهگرهای معلق و خطاهای باس
- 17. مدیریت حافظه مدرن: شمارش خودکار ارجاع (ARC)
- 18. چرخههای ارجاع قوی و نحوه شکستن آنها با weak و unowned
- 19. مدیر منابع (Resource Manager): جداسازی کد از داده
- 20. میراث مدیر منابع: بستهها (Bundles) و کاتالوگهای دارایی (Asset Catalogs)
- 21. کار با انواع دادههای پایه: از رشتهها تا مجموعهها
- 22. مفهوم Nil و مدیریت مقادیر اختیاری (Optionals) در Swift
- 23. بخش سوم: گرافیک و ترسیم**
- 24. جادوی QuickDraw: مدل گرافیکی اصلی مکینتاش
- 25. پورتهای گرافیکی (GrafPorts) و دنیای پیکسلی
- 26. سیستمهای مختصات: از Global تا Local
- 27. گرافیک مدرن: مقدمهای بر Core Graphics
- 28. مسیرها، اشکال و رنگها در Core Graphics
- 29. مدل نقاش: متد ()draw و بهروزرسانیهای نامعتبر
- 30. کار با تصاویر و بیتمپها: NSImage
- 31. قدرت لایهها: مقدمهای بر Core Animation
- 32. شتابدهی سختافزاری: از Quartz Extreme تا Metal
- 33. بخش چهارم: پنجرهها، نماها و کنترلها**
- 34. مدیر پنجره (Window Manager): مدیریت فضای کاری روی صفحه
- 35. کالبدشکافی NSWindow: پنجرهها در AppKit
- 36. چرخه حیات یک پنجره: ایجاد، نمایش و بسته شدن
- 37. مفهوم View و سلسلهمراتب آن (View Hierarchy)
- 38. نماهای سفارشی: پیادهسازی یک NSView از ابتدا
- 39. مدیر کنترل (Control Manager): عناصر استاندارد UI
- 40. کنترلهای مدرن AppKit: از NSButton تا NSSlider
- 41. نماهای مبتنی بر داده: NSTableView و NSCollectionView
- 42. استفاده از Auto Layout برای طراحی رابطهای کاربری واکنشگرا
- 43. پشتهها و محدودیتها: ساخت UIهای پیچیده به صورت بصری
- 44. مدیر گفتگو (Dialog Manager) و هشدارهای مودال
- 45. استفاده از NSAlert و پنلهای استاندارد (Open, Save)
- 46. بخش پنجم: مدیریت رویدادها**
- 47. مدیر رویداد (Event Manager) و حلقه اصلی رویداد
- 48. کالبدشکافی یک NSEvent: از کلیک ماوس تا فشار کلید
- 49. زنجیره پاسخدهی (Responder Chain): مسیر یک رویداد
- 50. پردازش رویدادهای ماوس: mouseDown, mouseDragged, mouseUp
- 51. پردازش رویدادهای صفحهکلید و Key-Value Coding
- 52. مدیر منو (Menu Manager): طراحی تعاملات استاندارد
- 53. ساخت منوهای اصلی و منوهای متنی (Contextual Menus)
- 54. فعال و غیرفعال کردن آیتمهای منو به صورت پویا
- 55. الگوی طراحی هدف-عمل (Target-Action)
- 56. الگوی طراحی نماینده (Delegate): قلب تپنده AppKit
- 57. بخش ششم: معماری برنامه**
- 58. الگوی طراحی Model-View-Controller (MVC) در عمل
- 59. معماری مبتنی بر سند (Document-Based Applications)
- 60. کلاسهای NSDocument و NSDocumentController
- 61. مدیریت وضعیت سند: ذخیره، بارگذاری و ویرایش
- 62. اتصال دادهها (Data Binding) با استفاده از Cocoa Bindings
- 63. الگوی مشاهدهگر (Observer) و مرکز اعلان (NotificationCenter)
- 64. مدیریت تنظیمات کاربر با UserDefaults
- 65. سریالسازی اشیاء: آرشیو کردن با NSCoder و Codable
- 66. بخش هفتم: کار با متن و داده**
- 67. موتور قدرتمند TextEdit: کار با NSTextView
- 68. متن استایلدار: کار با NSAttributedString
- 69. چاپ: از مدیر چاپ (Print Manager) تا NSPrintOperation
- 70. فونتها و تایپوگرافی در مک
- 71. بینالمللیسازی (Internationalization) و محلیسازی (Localization)
- 72. قالببندی دادهها: کار با Formatterها برای اعداد، تاریخ و ارز
- 73. بخش هشتم: فایلها، شبکه و همروندی**
- 74. مدیر فایل (File Manager): کار با فایلها و دایرکتوریها
- 75. مفهوم Sandboxing و امنیت برنامه
- 76. دسترسی به فایلهای خارج از Sandbox با Powerbox
- 77. تعریف انواع سند سفارشی (Uniform Type Identifiers)
- 78. اصول شبکهسازی: کار با URLSession
- 79. پردازش دادههای JSON و XML
- 80. مقدمهای بر همروندی (Concurrency): از Grand Central Dispatch تا Swift Concurrency
- 81. جلوگیری از مسدود شدن UI با اجرای وظایف در پسزمینه
- 82. بخش نهم: ویژگیهای پیشرفته و مدرن**
- 83. پیادهسازی کشیدن و رها کردن (Drag and Drop)
- 84. کار با Pasteboard برای عملیات کپی و چسباندن
- 85. طراحی برای حالت تاریک (Dark Mode)
- 86. دسترسیپذیری (Accessibility): طراحی برای همه
- 87. ارتباط بین برنامهها (Inter-Process Communication) با XPC
- 88. آشنایی با SwiftUI: پارادایم اعلانی برای UI
- 89. ترکیب SwiftUI و AppKit در یک برنامه
- 90. استفاده از فریمورکهای سیستمی: نقشه، مخاطبین و تقویم
- 91. بخش دهم: اشکالزدایی، بهینهسازی و انتشار**
- 92. ذهنیت یک دیباگر: هنر یافتن باگ
- 93. اشکالزدایی پیشرفته با LLDB و دستورات آن
- 94. پروفایلسنجی عملکرد با Instruments
- 95. شناسایی و رفع نشتی حافظه (Memory Leaks)
- 96. بهینهسازی رسم و پاسخگویی رابط کاربری
- 97. اشکالزدایی مشکلات Auto Layout
- 98. برنامهنویسی تدافعی، مدیریت خطا و Assertions
- 99. آمادهسازی و انتشار برنامه در Mac App Store
- 100. امضای کد (Code Signing) و Notarization
تگها:
Cocoa Programming
Coding Practices
Design Principles
GUI development
How to Write Macintosh Software
Macintosh Software Development
macOS Development
Objective-C
Platform Engineering
Swift
برچسبها: توسعه مکینتاش
رابط کاربری گرافیکی
کالبدشکافی نرمافزار
مهندسی نرمافزار
نرمافزار انقلابی
نظرات
هنوز نظری ثبت نشده است.
وارد شوید تا نظر ثبت کنید.