1-modul · 10-dars: Principles
Daraja: Boshlang'ich
Principles. Java Core bo‘yicha nazariya, amaliy namuna va mustaqil mashq.
Tushuntirish
## Dars maqsadi Principles tushunchalarini farqlash, nima uchun kerakligini izohlash va kichik misolda qo‘llash.
## Nazariya Toza, tushunarli va qo'llab-quvvatlanadigan kod yozish uchun qo'llaniladigan tavsiya va qoidalar (DRY, KISS, SOLID...).
Takrorlanmaydigan (DRY), sodda (KISS), tushunarli nomlar, kichik va yagona vazifali funksiyalar, testlanadigan hamda o'qishga oson kod yozib.
## Intervyuga tayyorgarlik ### Programming Principles nima? Toza, tushunarli va qo'llab-quvvatlanadigan kod yozish uchun qo'llaniladigan tavsiya va qoidalar (DRY, KISS, SOLID...).
### Qanday qilib effective code yozasiz? Takrorlanmaydigan (DRY), sodda (KISS), tushunarli nomlar, kichik va yagona vazifali funksiyalar, testlanadigan hamda o'qishga oson kod yozib.
### DRY nima? Don't Repeat Yourself — kodni takrorlamaslik; umumiy qismni bitta joyga chiqarib qayta ishlatish.
### KISS nima? Keep It Simple, Stupid — yechimni imkon qadar sodda saqlash, ortiqcha murakkablashtirmaslik.
## Versiya va aniqlik Java misollari Java 17 bazasiga mo‘ljallangan. JDK/JRE paketlash usuli distributivga bog‘liq; JVM bayt-kodni interpretatsiya va JIT orqali bajarishi mumkin. GC uchun aniq bajarilish vaqtiga kafolat yo‘q; finalization resurs yopish usuli emas. Thread stop/suspend/resume kabi eski metodlar amaliy yechim emas. Koddagi import, klass yoki tashqi kutubxona kontekstini tekshiring.
## Manbalar [Moduldagi savollar yo‘nalishi](https://github.com/jlkesh/pdp_online_java_lessons/blob/main/interviewquestions/1-module.md) [Rasmiy qo‘llanma](https://dev.java/learn/) [Sizning avvalgi savol-javob arxivingiz](https://lightyer.uz/java/interview.html)
Kod quyida o‘quv namunasi sifatida berilgan. To‘liq ilova uchun import, dependency va konfiguratsiya kerak bo‘lishi mumkin. SQLni faqat ajratilgan test bazasida bajaring.
Kod misoli
// Bir vazifa, bitta tushunarli metod:
static boolean isAdult(int age) { return age >= 18; }
// Kerak bo'lmagan framework qo'shmasdan avval sodda yechimni tekshiring.
Keng tarqalgan xatolar
- DRY ni 'kodni qisqartirish' deb tushunish: maqsad takroriy BILIMNI yo'qotish, belgilar sonini emas.
- Erta abstraksiya: hali bir marta ishlatilgan kodni 'kelajakda kerak bo'ladi' deb umumlashtirish.
Mashqlar
- O'zingiz yozgan eski koddan takrorlangan bo'lakni toping va uni bitta metodga chiqaring.
- Bitta metodni soddalashtirib, o'zgarishdan oldingi va keyingi variantni izohlab bering.
Teglar: modul-01, nazariya, pdp