O’ZBEKISTON RESPUBLIKASI AXBORAT TEXNOLOGIYALARI VA KOMMUNIKATSIYALARINI RIVOJLANTIRISHVAZIRLIGI
MUHAMMAD AL-XORAZMIY NOMIDAGI TOSHKENT AXBORAT TEXNOLOGIYALARI UNIVESITETI
Dasturlash uslublari va paradigmalar
MUSTAQIL ISH
MAVZU: Baraka savdo webapi
Bajardi: Xoshimov Lazizbek
Tekshirdi: Otaxonova Bahrixon
Toshkent 2023
Loyiha maqsadi:
Tovarlarni onlayn sotish va foydalanuvchining aravachalarini boshqarish va ularga narsalarni qo'shish, narsalarni olib tashlash, mahsulot miqdorini oshirish yoki kamaytirish kabi yaxshi imkoniyatlarni taqdim etish uchun yaratilgan.
Loyiha n-tier arxitecturasi orqali yaratilgan. Loyihada 5ta project mavjud. 4ta project loyiha qurishga va 1ta project loyihani test qilish uchun mo’ljallangan.
Har bir layer(project)ni maqsadini ko’rib chiqamiz:
Domain layer
Data access layer
Servise layer
API layer
Unit test
Domain layer:
Domain layer da loyihani asosiy qismi joylashgan bo’ladi.
Ular quyidagilar:
Modellar
Enums
Exception
C# dasturlash tilida "model" dastur tuzilishining ma'naviy qismi hisoblanadi va u tarmoq, fayllar, ma'lumotlar bazasi yoki boshqa ma'lumotlar manzili orqali ma'lumotlarni o'z ichiga oladi. Dasturlashda modellarning asosiy vazifalari quyidagilar:
1. **Ma'lumotlar Strukturasini Aks etish:** Modellar, dasturda ishlatiladigan ma'lumotlar strukturasini belgilaydi. Bu ma'lumotlar, dastur ichidagi obyektlar, o'zgaruvchilar va ma'lumotlar bazasidagi jadvallar kabi narsalarni o'z ichiga oladi.
2. **Biznes Logini Tavsifi:** Modellar, dasturda ishlab chiqilayotgan biznes jarayonlarni (business logic) tavsiflashda ishlatiladi. Bu, ma'lumotlarni qanday saqlash, o'zgartirish va qo'shish kerakligini, shuningdek, ularga qanday amal bajarilishini belgilaydi.
3. **Ma'lumotlar Uygunligi:** Modellar ma'lumotlarni uygun bir ko'rinishda saqlashni, tarqatishni yoki tarqatilgan ma'lumotlarni o'z ichiga olishni ta'minlaydi. Ular, ma'lumotlar tuzilishi va turini belgilaydigan atributlar yordamida foydalanuvchiga o'zgaruvchilarni boshqa qatorda tekshirish imkoniyatini beradi.
4. **Obyektoriyentatsiya:** Modellar, dasturda ishlatiladigan ma'lumotlarni obyektga aylanish prinsiplariga asoslanadi. Bu, dastur tuzilishini osonroq tuzilishini va o'zgartirishni, qo'shishni yoki o'chirishni ta'minlaydi.
5. **Interfeyslar va Xususiyatlar:** Modellar, interfeyslar va xususiyatlarni (properties) o'z ichiga oladi. Bu, ma'lumotlarga murojaat qilishni osonlashtiradi va kodni o'rganishni, saqlashni va ularga kirishni osonlashtiradi.
6. **Dastur Ichidagi Aksariyat Tuzilmalari:** Modellar, dasturda ishlatiladigan ko'p o'zgaruvchili va muhim tuzilmalarni o'z ichiga oladi. Ular, dastur tuzilishining barcha qismlariga murojaat qilishni, ularga o'zgaruvchilarni o'zgartirishni yoki qo'shishni ta'minlaydi.
Dastur tuzilishini amalga oshirish va yaxshi tahlil qilish uchun modellar, dasturlashda tashkil etilgan nazorat strukturasi, masalan, MVC (Model-View-Controller) o'rniga keladi. Bu struktura dastur logikasini (model), foydalanuvchi interfeysini (view) va foydalanuvchi bilan dastur o'rtasidagi murojaatni (controller) ajratadi.
Data access layer:
Data access layer proyektda database bilan muloqotni ta’minlab beradi.
Databasa bilan muloqot quyidagicha kod bilan amalga oshirilishi mumkin:
Service layer:
Bu layerda loyihani logika qismi yoziladi. Bunda shu data access layerdan kelgan repositore dan foydalanamiz.
API layer:
Bu layerda loyiha uchun controller lar yoziladi va loyiha uchun API lar chiqariladi.
Dostları ilə paylaş: |