JavaFXبنية المكتبة
- المكتبات الموجودة في JavaFX
- آلية عمل تطبيقات JavaFX
المكتبات الموجودة في JavaFX
JavaFX توفر الكثير من الكلاسات و الإنترفيسات التي يمكن استخدامها في بناء واجهة التطبيقات.
سنضع فكرة عامة حول أهم الكتبات المتوفرة فيها.
المكتبة javafx.application
تحتوي هذه المكتبة على كلاسات تستخدم للتعامل مع دورة حياة التطبيقات.
المكتبة javafx.animation
تحتوي هذه المكتبة على كلاسات تستخدم لإضافة مؤثرات على الأشياء التي يمكن إضافتها في النافذة.
المكتبة javafx.css
تحتوي هذه المكتبة على كلاسات تستخدم لتحسين تصميم واجهة المستخدم بكود CSS.
المكتبة javafx.event
تحتوي هذه المكتبة على كلاسات و إنترفيسات تستخدم للتعامل مع أي تفاعل قد يجريه المستخدم عند استخدام التطبيق.
المكتبة javafx.geometry
تحتوي هذه المكتبة على كلاسات تستخدم لإضافة أشكال هندسية ثنائية الأبعاد 2D و إجراء تعديلات عليها.
المكتبة javafx.stage
تحتوي هذه المكتبة على كلاسات تستخدم لإضافة نوافذ عادية أو نوافذ لها إستعمالات مختلفة.
المكتبة javafx.scene
تحتوي هذه المكتبة على كلاسات و إنترفيسات تستخدم لتحديد نوع المحتوى الذي يمكن إضافته في النافذة و لإضافة محتوى جديد فيها.
هذه المكتبة تحتوي بداخلها أيضاً على المكتبات التالية:
canvas
- chart
- control
- effect
- image
- input
- layout
- media
- paint
- shape
- text
- transform
- web
.
المكتبة javafx.fxml
تحتوي هذه المكتبة على كلاسات و إنترفيسات تستخدم لربط ملفات الـ Java بملفات FXML.
المكتبة javafx.embed
تحتوي هذه المكتبة على كلاسات تستخدم لجعل تطبيقات JavaFX قادرة على إستخدام أي شيء موجود في المكتبة Swing.
المكتبة javafx.print
تحتوي هذه المكتبة على كلاسات تستخدم للتعامل مع آلة الطباعة ( أي الـ Printer ) و بالتالي إصدار أوامر للطباعة بشكل مباشر من داخل التطبيق.
آلية عمل تطبيقات JavaFX
الصورة التالية توضح آلية عمل تطبيقات JavaFX.
ملاحظة: سنشرح فكرة كل شيء موضوع في هذه الصورة و سنبدأ من الأسفل إلى الأعلى.
Java Virtual Machine
الـ JVM هو البرنامج الذي يقوم بتشغيل البرامج المكتوبة بلغة Java.
JDK and Tools
الـ JDK and Tools هو المكتبات و الأدوات الموجودة في لغة Java.
JavaFX Graphics Engine
الـ JavaFX Graphics Engine عبارة عن البرامج التي قد تعمل لتولد لك صورة التطبيق على الشاشة.
- الـ Prism مهمته عرض الأشكال الهندسية التي قد يتم إضافتها في التطبيق سواء كانت 2D أو 3D.
- الـ Glass Windowing Toolkit مهمته عرض النوافذ بشكل يتوافق مع نظام التشغيل بالإضافة إلى إدارة الأحداث (Event Queues) و عداد الوقت (Timer).
- الـ Media Engine مهمته تشغيل الفيديوهات و الملفات الصوتية التي قد يتم إضافتها في التطبيق.
- الـ Web Engine مهمته عرض صفحات الويب التي قد يتم إضافتها في التطبيق.
Qunatum Toolkit
الـ Qunatum Toolkit عبارة عن برنامج يجعل جميع الـ Graphics Engine متاحة للإستخدام للتطبيقات المبنية بواسطة JavaFX.
Scene Graph
الـ Scene Graph عبارة عن مجموعة من الـ Nodes تم إضافتها بشكل هرمي حتى تكون محتوى النافذة.
JavaFX APIs
الـ JavaFX APIs عبارة عن كل المكتبات المتوفرة في JavaFX.