کتاب تسلط بر X Window System: از مبانی تا توسعه رابط‌های کاربری پیشرفته با فرمت AZW3 برای کتابخوان کیندل و فرمت EPUB

تسلط بر X Window System: از مبانی تا توسعه رابط‌های کاربری پیشرفته تسلط بر X Window System: از مبانی تا توسعه رابط‌های کاربری پیشرفته - رازگشایی معماری سیستم‌های گرافیکی! آیا می‌خواهید درک عمیقی از نح...

انتخاب پلن

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

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

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

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

عنوان دوره: دوره تسلط بر X Window System: از مبانی تا توسعه رابط‌های کاربری پیشرفته

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

موضوع میانی: اصول و معماری سیستم پنجره X (X Window System)

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

  • 1. مقدمه‌ای بر سیستم‌های گرافیکی و رابط‌های کاربری
  • 2. تاریخچه و فلسفه طراحی X Window System
  • 3. معماری کلاینت-سرور در X و مزایای آن
  • 4. پروتکل X: زبان مشترک کلاینت و سرور
  • 5. اجزای اصلی: سرور X، کلاینت، و مدیر پنجره (Window Manager)
  • 6. آشنایی با مفاهیم پایه: نمایشگر (Display)، صفحه (Screen) و پنجره ریشه (Root Window)
  • 7. سلسله مراتب پنجره‌ها و مفهوم والد و فرزند
  • 8. منابع سرور (Server Resources): پنجره‌ها، Pixmapها، فونت‌ها و اتم‌ها
  • 9. مدل برنامه‌نویسی رویداد محور (Event-Driven) در X
  • 10. معرفی کتابخانه Xlib: رابط برنامه‌نویسی C برای پروتکل X
  • 11. نصب و راه‌اندازی محیط توسعه برای برنامه‌نویسی X
  • 12. اولین برنامه در Xlib: ایجاد یک پنجره ساده
  • 13. کامپایل و لینک کردن برنامه‌های Xlib
  • 14. برقراری ارتباط با سرور X از طریق XOpenDisplay
  • 15. دریافت اطلاعات نمایشگر و صفحه
  • 16. ایجاد یک پنجره با XCreateWindow
  • 17. ویژگی‌ها (Attributes) و ماسک‌های پنجره
  • 18. نمایان کردن پنجره روی صفحه با XMapWindow
  • 19. حلقه رویداد (Event Loop): قلب تپنده برنامه‌های X
  • 20. پردازش اولین رویداد: Expose و نیاز به ترسیم مجدد
  • 21. ترسیم متن ساده با XDrawString
  • 22. مختصات و هندسه در X: موقعیت و ابعاد پنجره‌ها
  • 23. بستن صحیح یک پنجره و ارتباط با مدیر پنجره (WM_DELETE_WINDOW)
  • 24. مقدمه‌ای بر زمینه گرافیکی (Graphics Context - GC)
  • 25. تنظیم رنگ پیش‌زمینه و پس‌زمینه در GC
  • 26. ترسیم اشکال هندسی پایه: نقطه، خط و مستطیل
  • 27. ترسیم و پر کردن کمان، دایره و چندضلعی
  • 28. آشنایی با Pixmapها: ترسیم خارج از صفحه (Off-screen Drawing)
  • 29. مفهوم Bitmap: تصاویر تک‌بیتی
  • 30. مدیریت رنگ: Colormap و Visuals
  • 31. تخصیص رنگ‌ها در یک Colormap
  • 32. مدل‌های رنگی: TrueColor, DirectColor, PseudoColor
  • 33. مقدمه‌ای بر رویدادها و ساختار XEvent
  • 34. ماسک‌های رویداد: انتخاب رویدادهای مورد نظر
  • 35. رویدادهای صفحه کلید: KeyPress و KeyRelease
  • 36. تفاوت KeyCode و KeySym و تبدیل آن‌ها
  • 37. پردازش ورودی متن با XLookupString
  • 38. رویدادهای ماوس: ButtonPress, ButtonRelease و MotionNotify
  • 39. رویدادهای ورود و خروج نشانگر ماوس به پنجره (Enter/Leave)
  • 40. رویدادهای مربوط به وضعیت پنجره: ConfigureNotify, MapNotify
  • 41. رویدادهای فوکوس (FocusIn و FocusOut)
  • 42. انتخاب، کپی و پیست: کار با Selectionها
  • 43. مالکیت یک Selection
  • 44. درخواست محتوای یک Selection
  • 45. اتم‌ها (Atoms) و نقش آن‌ها در ارتباطات بین کلاینتی
  • 46. نقش و وظایف مدیر پنجره (Window Manager)
  • 47. راهنمایی‌ها (Hints) برای مدیر پنجره: اندازه، موقعیت و نسبت ابعاد
  • 48. پروتکل ارتباطات بین کلاینتی (ICCCM)
  • 49. تنظیم عنوان پنجره و نام آیکون
  • 50. ارتباط با مدیر پنجره از طریق Propertyها
  • 51. ایجاد پنجره‌های موقت (Transient Windows) مانند دیالوگ‌ها
  • 52. مدیریت پشته پنجره‌ها (Stacking Order)
  • 53. کار با فونت‌ها: بارگذاری و استفاده از فونت‌ها
  • 54. دریافت مشخصات و معیارهای فونت (Font Metrics)
  • 55. ترسیم متن با فونت‌های مختلف
  • 56. کار با تصاویر: ساختار XImage
  • 57. انتقال تصاویر به سرور با XPutImage
  • 58. دریافت تصاویر از سرور با XGetImage
  • 59. ایجاد و استفاده از نشانگرهای (Cursor) سفارشی
  • 60. مفهوم Grab: انحصاری کردن ورودی ماوس و کیبورد
  • 61. دستکاری سلسله مراتب پنجره‌ها: XReparentWindow
  • 62. ارسال رویدادهای سفارشی: ClientMessage
  • 63. مفهوم انتشار رویداد (Event Propagation)
  • 64. خطایابی در Xlib: مدیریت خطاها و رویدادهای خطا
  • 65. معرفی XCB: یک جایگزین مدرن و ناهمگام برای Xlib
  • 66. مقایسه Xlib و XCB: مزایا و معایب
  • 67. نوشتن یک برنامه ساده با XCB
  • 68. افزونه‌های X (X Extensions): گسترش قابلیت‌های پروتکل اصلی
  • 69. افزونه XRender: ترسیم پیشرفته و شفافیت (Alpha Compositing)
  • 70. ایجاد افکت‌های شفافیت با XRender
  • 71. افزونه Composite و نقش آن در مدیران پنجره مدرن
  • 72. افزونه Shape: ایجاد پنجره‌های غیرمستطیلی
  • 73. افزونه XInput2: مدیریت پیشرفته دستگاه‌های ورودی
  • 74. افزونه GLX: یکپارچه‌سازی OpenGL با X
  • 75. ایجاد یک زمینه OpenGL در یک پنجره X
  • 76. افزونه Xinerama: پشتیبانی از چند مانیتور
  • 77. افزونه RandR: تغییر پویا و مدیریت خروجی‌های نمایشگر
  • 78. پایگاه داده منابع X (X Resource Database) و سفارشی‌سازی برنامه‌ها
  • 79. ابزارهای خط فرمان برای کار با X: xwininfo, xprop, xev
  • 80. ابزار xev برای مشاهده زنده رویدادها
  • 81. امنیت در X: مفاهیم xhost و xauth
  • 82. پروتکل XDMCP و مدیریت نمایشگرهای راه دور
  • 83. مقدمه‌ای بر ابزارهای توسعه رابط کاربری (UI Toolkits) مانند GTK و Qt
  • 84. نحوه تعامل ابزارهای GTK و Qt با سرور X در سطح پایین
  • 85. بهینه‌سازی ترسیم: تکنیک بافر دوگانه (Double Buffering) با Pixmap
  • 86. مفهوم Backing Store برای ذخیره محتوای پنجره
  • 87. مدیریت حافظه در برنامه‌های Xlib
  • 88. الگوهای طراحی متداول در برنامه‌نویسی X
  • 89. پیاده‌سازی یک ویجت ساده (مانند دکمه) از ابتدا با Xlib
  • 90. مقدمه‌ای بر Wayland: معماری و تفاوت‌های کلیدی با X
  • 91. مقایسه مدل امنیتی و ترسیمی X و Wayland
  • 92. لایه سازگاری XWayland: اجرای برنامه‌های X بر روی Wayland
  • 93. پروژه نهایی: ساخت یک مدیر پنجره ساده و مینیمال (بخش اول: مدیریت پنجره‌ها)
  • 94. پروژه نهایی: ساخت یک مدیر پنجره ساده و مینیمال (بخش دوم: ترسیم تزئینات و ورودی)
  • 95. جمع‌بندی و نگاهی به آینده سیستم‌های گرافیکی در لینوکس
تگ‌ها: All-in-1 Display Server embedded systems Graphical Systems graphics programming Linux GUI Linux Kernel Open source System Programming UI Development Wayland X Window System X11 XCB Xlib

نظرات

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

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