|
9-15-laboratoriya ishi
|
bet | 1/7 | Sana | 23.05.2024 | Hajmi | 2,73 Mb. | | #251584 |
Muhammad Al-Xorazmiy nomidagi
Toshkent axborot texnologiyalari universiteti
Tarmoqni dasturlash asoslari
9-15-laboratoriya ishi
Bajardi: 412 – 20 guruh talabasi Aliqulov Shaxboz
Tekshirdi: Berdimuradov Mirzohid
Toshkent 2023
9-LABORATORIYA ISHI
Mavzu: JavaFX yordamida tarmoq dasturini yaratish
Ishning maqsadi:
Talabalarda Java dasturlash tilining java.net.*, java.io.*, javafx.stage.*, javafx.application.*, javafx.event.* paketlari klasslaridan foydalanib GUI kliyent-server tarmoq dasturini yaratish bo‘yicha ko‘nikmalar shakllantirish.
Nazariy qism:
JavaFX - boy Internet ilovalarini (Rich Internet Applications) yaratish uchun foydalaniladigan Java kutubxonasi. Ushbu kutubxonadan foydalanib yaratilgan ilovalar turli xil operatsion tizimlarda va qurilmalarda, masalan, Desktop kompyuterlari, mobil telefonlar, televizorlar, planshetlar va boshqalarda ishlashi mumkin.
Java dasturlash tilidan foydalangan holda GUI ilovalarini yaratish uchun dasturchilar Advanced Windowing Toolkit (AWT) va Swing kabi kutubxonalarga tayanadilar. JavaFX paydo bo‘lganidan so‘ng, ushbu Java dasturchilari boy tarkibga ega samarali GUI ilovalarni JavaFXdan foydalanib yaratishlari mumkin.
Boy xususiyatlarga ega kliyent tomon ilovalarini yaratish uchun dasturchilar Media, UI Controls, Web, 2D va 3D kabi funktsiyalarni qo‘shish uchun turli xil kutubxonalarga murojaat qilishadi. JavaFX ushbu xususiyatlarning barchasini o‘z ichiga oladi. Bunga qo‘shimcha ravishda, dasturchilar Java kutubxonasining Swing kabi mavjud xususiyatlaridan ham foydalanishlari mumkin.
JavaFX grafika va medianing boy to‘plamini taqdim etadi va apparat tezlashtirilgan grafikasi orqali zamonaviy Graphical Processing Unit (GPU)dan foydalanadi. JavaFXdan Groovy va JRuby kabi JVM asosidagi texnologiyalarda foydalanish mumkin.
JavaFX GUI ilovalarini yaratish uchun boy sinflar va interfeyslarga ega API hisoblanadi. Quyida muhim APIlar keltirilgan:
javafx.animation, javafx.application, javafx.css, javafx.event, javafx.geometry, javafx.stage, javafx.layout, javafx.beans, javafx.collections, javafx.util, javafx.concurrent, javafx.embed.swing, javafx.fxml, javafx.print, javafx.scene, javafx.scene.shape, javafx.scene.text, javafx.scene.effect, javafx.scene.input, javafx.scene.transform, javafx.scene.paint, javafx.scene.media, javafx.scene.web, javafx.scene.image, javafx.scene.control, javafx.scene.chart.
JavaFXda GUI ilovalari Scene Graph yordamida kodlanadi. Scene Graph GUI ilovasini yaratishning boshlang‘ich nuqtasidir. U GUI ilova node (tugun)lari deb ataladigan sodda vositalarni o‘z ichiga oladi.
Node vizual/grafik obyekt bo‘lib, unda quyidagilar bo‘lishi mumkin:
- geometrik (Grafik) obyektlar - (2D va 3D), masalan, aylana, to‘rtburchak, ko‘pburchak va boshqalar;
- foydalanuvchi interfeysi elementlari - Button, Checkbox, Choice box, Text Area va hokazo;
- konteynerlar - Border Pane, Grid Pane, Flow Pane va boshqalar;
- media elementlari - audio, video va tasvir obyektlari.
Stage (oyna) JavaFX ilovasining barcha obyektlarini o‘z ichiga oladi. U javafx.stage paketining Stage sinfi yordamida yaratiladi. Boshlang‘ich Stage platformaning o‘zi tomonidan yaratiladi. Yaratilgan Stage obyekti Application sinfining start() metodi uchun argument sifatida uzatiladi.
Stage ikki Width va Height parametrlariga ega. U tarkibiy qism va bezaklar (sarlavha paneli va chegaralar) ga bo‘linadi.
Stagelarning besh turi mavjud:
- Decorated;
- Undecorated;
- Transparent;
- Unified;
- Utility.
Stage tarkibini ko‘rsatish uchun show() metodini ishga tushirish kerak.
Scene JavaFX ilovasining fizik tarkibini aks ettiradi. Unda scene graphining barcha tarkibi mavjud. javafx.scene paketining Scene sinf Scene obyektini namoyish etadi.
Server kodi:
Client kodi:
Natija:
|
| |