☕️ Java BACKEND developers </>☕️
185 subscribers
89 photos
148 videos
34 files
212 links
Download Telegram
Siz qaysi operatsion tizimdan foydalanasiz.
Anonymous Poll
87%
Windows OS
5%
Mac OS
8%
Linux OS
Audio
❇️ backend developer bo'lish uchun qanaqa maslahat berasiz .
Faqat dasturlash tilidan tashqari qanaqa yana qoshimcha nimalarni o'rganish kerak?

👨🏻‍💻 @United_Programmers
Forwarded from CODE_UZ
Ancha so'ralgan maqola

SOLID prinsipillaridan (tamoyillaridan) o'zbek tilida maqolalar yozishni boshladim.
O'qing o'rganing va baho bering.

Do not be mazgi and develop your brain.

Maqolaga o'tish.
👍3
menga ayta olasizmi equals() metodi va " == "( teng operatori) ning farqini?

Ushbu savolga qanaqa javob bergan bo'lar edingiz suhbat jarayonida?

@java_interview_q
equals() vs " == "


(Ovoz sifati yaxshi bo'lmabdi uzr bu nosozlik uchun)

@java_interview_q
🔥1
Dasturchilar bilishi kerak bo'lgan #Git buyruqlari

Dasturchilar bilishi va ishlata olishi kerak bo'lgan Git buyruqlar ro'yxati:

Git config
Bu buyruq muallifni ismi va elektron pochta manzilini vazifalaringizda foydalanishga mos ravishda o'rnatadi.

git config -global user.name "[name]"
git config -global user email "[email adress]"



Git init
Ushbu buyruq yangi repository yani omborni boshlash uchun ishlatiladi.

git init [repository name]


Git clone
Ushbu  buyruq mavjud URL manzilidan repository (omborni) olish uchun ishlatiladi.

git clone[url]


Git push
Ushbu buyruqda bajarilishi kerak bo'lgan hamma fayllar ro'yxati keltirilgan bo'ladi.

git push <remote_URL/remote_name> <branch>
#agarda hammasini belgilamoqchi bo'lsak
$git push -all


Git merge
Bu buyruqda belgilangan filal tarixini joriy filalalga birlashtiradi.

git merge[branch name]


Git pull
Ushbu buyruq boshqa serverdagi o'zgarishlarni sizning ish katalogingizga olib keladi va birlashtiradi.

git pull [Repository Link]


Git commit
Bu buyruq faylni doimiy ravishda versiya tarixiga yozib oladi.

git commit -m "[commit xabar yozilsin]"


Git  add
Bu buyruq faylni qo'shib beradi.

git add [file]


Git Branch
Ushbu buyruq faqat sizni tizimingizda yangi fililal yaratadi.

git branch <branch-name>


Git Checkout
Bu buyruqda buyruqqa asoslanib sizni avtomatik filal nomiga o'zgartiradi.

git checkout <branch-name>


Git status
Bu buruqda bajarilishi kerak bo'lgan hamma fayllar ro'yxati keltiriladi.

git status


Git Tag
Ushbu buyruq belgilangan majburiyatlarga teglar berish uchun ishlatiladi.

git tag [commitID]


Git remote
Bu buyruqda sizni mahalliy  repositoryngizni masofaviy serverga ulash uchun ishlatiladi.

git remote add [variable name] [Remote Server Link]


Git Diff
Bu  buyruq ikkita filial orasidagi hamma fayllarni farqini ko'rsatib beradi.

git diff branch1..branch2


https://t.me/java_backend_developers
#FOYDALI_LINK

Javada masalalar yechish uchun foydali sayt:codingbat.com
#SAVOL
JVM, JRE, JDK nima va Ularning farqlari?


#Javob

JVM (Java Virtual Machine) - Java byte code larni ishga tushirish uchun ishlatiladiganu virtual mashina.

Java da yozilgan code oldin bytecode ga o'giriladi, undan keyin JVM ularni ishga tushiradi.

Ya'ni biz javada codeni .java file ga yozamiz va uni ishga tushirayotganda

1-chi java kodlar bytecode ga o'giriladi. Ya'ni kompliyatsiya qilinadi va .class fayllar yaratiladi.
2-chi JVM .class fayllarni ishga tushiradi.
JVM o'rnatilgan sistemaga qarab bytecode larni ishga tushiradi. Windows da boshqacha , Linux da boshqacha.

Demak JVM operatsion tizimga qarab farq qiladi.


JRE (Java Runtime Environment) - Java dasturlarini ishga tushurish uchun dasturlar to'plami (set of tools).

Ya'ni JRE java dasturini ishga tushirish uchun kerakli bo'lgan minimum kutubxonalar, boshqa qandaydir dasturlar va JVM dan tashkil topgan.

Deylik biz faqat gina Java dasturini ishga tushurishni xohlaymiz shunda bizning sistemaga JRE o'rnatamiz (install qilamiz).

JRE o'rtanilayotgan paytda Java da yozilgan dasturlarni ishga tushirish uchun kerakli barcha kutibxonalar o'rnatiladi va JVMu o'rnatiladi.

Shuning bilan biz xursand bo'lib java dasturlarini ishga tushursak bo'ladi.


JDK (java development kit) - bu java kutubxonasining to'lik versiyasi bo'lib unda :

Java da dasturlash uchunu kerakli barcha classlar.
Javada yozilgan code larni compiler qiladigan dastur/uskuna.
Java dasturlarini ishga tushiradigan dasturiy taminotlar bor.
Ya'ni JDK da java dasturchilar uchun kerak bo'lgan kutubxonalarning to'lik versiyasi (odam o'qiy oladigan), java codlarni compile qilib ularni ishga tushuradigan JVM va boshqa kerakli dasturiy taminotlar bo'ladi.

Agar hozir JDK ni boshdan oyoq gaplashamiz desam 1 kun yetmaydi. O'shanga kelinglar hozircha biz bilishimiz kerak bo'lgan narsa bu javada ishlash uchun jdk kerak va uni o'z kompyuterimizga o'rnatishimiz kerak.

->Manba<-
👍4
#SAVOL
Classloder nima?

#JAVOB
ClassLoader - class yukloVchisi deb tarjima qilinadi.

ClassLoader in Java is a class that is used to load class files in Java

ClassLoader bu java class bo'lib u runtime da (ish vaqtida) Java class fayllarini dinamik ravishda JVM ga yuklash uchun ishlatiladi.

ClassLoader lar JRE (Java Runtime Environment) bir qismi dir.

ClassLoader sababli JVM java dasturini ishga tushurish uchun fayllar yoki fayl tizimlari haqida bilishi shart emas

Bundan tashqari Java Class larining barchasi birdaniga xotiraga yuklanmaydi ular kerakli paytda yuklanadi. Shu holatda ClassLoader lar ishga tushadi. Ular class larni xotiraga yuklash uchun ishlatiladi.

Biz bilamizki. Javada kodlari javac compiler orqali class file larga kompliyatsiya qilinadi. Bu class fayllarda byte kodlar bo'ladi. Jvm shu class fayllaridagi byte kodlarni ishga tushurish orqali Java dasturini ishga tushuradi. Endi Class loader shu class file larni yuklab JVM ga taqdim etadi.

Javada 3ta defaul classLoader mavjud.
Ular:

Bootstrap ClassLoader: Loads class from JRE/lib/rt.jar
Extension ClassLoader: Loads class from JRE/lib/ext
Application ClassLoader: Loads class from CLASSPATH environment variable

Static vs. Dynamic Class Loading

Static Class loading (static ravishda class larni yuklash) da - Class class lar new kalit so'zi orqali yuklanadi.

Dynamic class loading (dinamik ravishda class larni yuklash) da - Class lar runtime da Class.forName() metodi orqali yuklanadi.


Difference between loadClass() and Class.forName()

loadClass() va Class.forName() ning farqlari

loadClass() metodi classni yuklaydi ammo uni initilize qilmaydi. Class.forName() metodi class ni yuklaydi va uni initilize qiladi.

MANBA
👍4
#SAVOL
Local vs Global o'zgaruvchilar nima?

#JAVOB
Global degani ommaviy degan ma'noni beradi. Global o'zgaruvchilar metoddan tashqarida yozilgan o'zgaruvchilar dir.
Local degani mahalliy degan ma'noni beradi. Local o'zgaruvchilar metodni ichida yozilgan o'zgaruvchilar dir.


Local o'zgaruvchilar metodni ichida yaratiladi.
local o'zgaruvchilar default qiymatini olmaydi.
local o'zgaruvchilar yaratilganda ularga qiymat berish kerak.

Agar global o'zgaruvchiga qiymat berilmasa u o'zining default qiymatini oladi.
default degani boshlangich degan ma'noni beradi. Ya'ni o'zgaruvchi yaratildimi demak u band qilgan xotirada o'sha tipni o'zini boshlang'ich qiymati bo'ladi.
Javada barcha primitive o'zgaruvchilarni o'zini default qiymati bor.


Default Qiymatlar.
boolean - false
byte - 0
char - \u0000
short - 0
int - 0
long - 0
float - 0.0
double - 0.0

MANBA