TCP qanday ulanadi? (Nazariya)
Sizning ilovangiz ma'lumotlar bazasi yoki boshqa serverga ulanishidan oldin, ular o'rtasida 3 qadamli salomlashish sodir bo'ladi. Bu dasturlashda juda mashhur bo'lgan 3-Way Handshake deyiladi:
SYN (Synchronize): Sizning tizimingiz serverga paket jo'natadi: "Salom, men sen bilan ulanmoqchiman, portlaring ochiqmi?"
SYN-ACK (Synchronize-Acknowledge): Server buni qabul qilib, javob qaytaradi: "Salom, ha, portlarim ochiq, gaplashishga tayyorman."
ACK (Acknowledge): Sizning tizimingiz tasdiqlaydi: "Ajoyib, unda ma'lumot almashishni boshladik!"
Shu uch qadam to'liq bajarilgandan keyingina sizning HTTP GET yoki POST so'rovingiz tarmoqqa chiqadi.
Sizning ilovangiz ma'lumotlar bazasi yoki boshqa serverga ulanishidan oldin, ular o'rtasida 3 qadamli salomlashish sodir bo'ladi. Bu dasturlashda juda mashhur bo'lgan 3-Way Handshake deyiladi:
SYN (Synchronize): Sizning tizimingiz serverga paket jo'natadi: "Salom, men sen bilan ulanmoqchiman, portlaring ochiqmi?"
SYN-ACK (Synchronize-Acknowledge): Server buni qabul qilib, javob qaytaradi: "Salom, ha, portlarim ochiq, gaplashishga tayyorman."
ACK (Acknowledge): Sizning tizimingiz tasdiqlaydi: "Ajoyib, unda ma'lumot almashishni boshladik!"
Shu uch qadam to'liq bajarilgandan keyingina sizning HTTP GET yoki POST so'rovingiz tarmoqqa chiqadi.
Ustozimiz aytar aytar edila: har qanday dastur (loyiha) og'riqdan kelib chiqiladi deb !
Loyiha qilmoqchi edim resurs qidirdim lekin ko'p site-larga Uzbekistondan to'rib kira olmadim va VPN ishlatishga to'g'ri keldi.
VPN ishlatar ekanman undagi reklamalar holdan toydirdi, reklamasiz ishlatish esa pullik edi shu vaqt hayolimga uzim uchun shaxsiy VPN yaratsam qanday bo'lar ekun degan fikr keldi, ishga kirishdim va buni udaladim 🎉
Loyiha qilmoqchi edim resurs qidirdim lekin ko'p site-larga Uzbekistondan to'rib kira olmadim va VPN ishlatishga to'g'ri keldi.
VPN ishlatar ekanman undagi reklamalar holdan toydirdi, reklamasiz ishlatish esa pullik edi shu vaqt hayolimga uzim uchun shaxsiy VPN yaratsam qanday bo'lar ekun degan fikr keldi, ishga kirishdim va buni udaladim 🎉
Ta'rif: Ma'lumotlar bazasi (MB) – bu ma'lum bir tuzilishga ega bo'lgan, o'zaro bog'liq ma'lumotlarning tartiblangan to'plamidir. U ma'lumotlarni samarali saqlash, boshqarish, yangilash va ulardan foydalanishni ta'minlaydi. Oddiy qilib aytganda, bu ma'lumotlar uchun elektron "kartoteka" yoki "ombor".
Tarixiy fakt: "Ma'lumotlar bazasi" atamasi ilk bor 1960-yillarda, kompyuter texnologiyalari rivojlanishi bilan birga paydo bo'lgan. Dastlabki bazalar ierarxik va tarmoqli modellarga asoslangan edi.
#database@CodeVerce
Tarixiy fakt: "Ma'lumotlar bazasi" atamasi ilk bor 1960-yillarda, kompyuter texnologiyalari rivojlanishi bilan birga paydo bo'lgan. Dastlabki bazalar ierarxik va tarmoqli modellarga asoslangan edi.
#database@CodeVerce
MBBT (Ma'lumotlar Bazalarini Boshqarish Tizimi - DBMS)
Ta'rif: DBMS – bu ma'lumotlar bazasini yaratish, boshqarish va u bilan o'zaro aloqa qilish uchun mo'ljallangan dasturiy ta'minot. Foydalanuvchi yoki dasturlar MBBT orqali ma'lumotlar bilan ishlaydi. Mashhur MBBTlarga misollar: MySQL, PostgreSQL, Oracle Database, Microsoft SQL Server, SQLite.
PS: DBMS --> database management services.
#database@CodeVerce
Ta'rif: DBMS – bu ma'lumotlar bazasini yaratish, boshqarish va u bilan o'zaro aloqa qilish uchun mo'ljallangan dasturiy ta'minot. Foydalanuvchi yoki dasturlar MBBT orqali ma'lumotlar bilan ishlaydi. Mashhur MBBTlarga misollar: MySQL, PostgreSQL, Oracle Database, Microsoft SQL Server, SQLite.
PS: DBMS --> database management services.
#database@CodeVerce
Relatsion Ma'lumotlar Bazalari (Relational Databases)
Ta'rif: Bu eng keng tarqalgan ma'lumotlar bazasi turi bo'lib, unda ma'lumotlar jadvallar (relations) ko'rinishida saqlanadi. Jadvallar satrlar (qaydlar/tuples) va ustunlar (maydonlar/attributes) dan iborat. Jadvallar o'zaro kalitlar yordamida bog'lanadi.
Tarixiy fakt: Relatsion model konsepsiyasini 1970-yilda IBM xodimi Edgar F. Kodd (Edgar F. Codd) taklif qilgan. Uning bu inqilobiy g'oyasi zamonaviy ma'lumotlar bazalarining poydevorini qo'ygan.
#database@CodeVerce
Ta'rif: Bu eng keng tarqalgan ma'lumotlar bazasi turi bo'lib, unda ma'lumotlar jadvallar (relations) ko'rinishida saqlanadi. Jadvallar satrlar (qaydlar/tuples) va ustunlar (maydonlar/attributes) dan iborat. Jadvallar o'zaro kalitlar yordamida bog'lanadi.
Tarixiy fakt: Relatsion model konsepsiyasini 1970-yilda IBM xodimi Edgar F. Kodd (Edgar F. Codd) taklif qilgan. Uning bu inqilobiy g'oyasi zamonaviy ma'lumotlar bazalarining poydevorini qo'ygan.
#database@CodeVerce
Ma'lumotlar bazasi dizayn turlari
Konseptual dizayn: Bu eng yuqori darajadagi dizayn. U tizimning asosiy obyektlari (entities), ularning xususiyatlari (attributes) va ular orasidagi munosabatlarni (relationships) aniqlaydi. Ko'pincha ERD (Entity-Relationship Diagram) shaklida chiziladi.
Mantiqiy dizayn (Logical Design): Konseptual dizaynni ma'lum bir ma'lumotlar modeli (masalan, relyatsion model) asosida jadvallar, ustunlar, kalitlar va aloqalarga aylantirish. Bu bosqichda hali aniq bir MBBT (masalan, MySQL yoki PostgreSQL) tanlanmaydi.
Fizik dizayn (Physical Design): Mantiqiy dizaynni aniq bir MBBT uchun amalga oshirish. Bu bosqichda ustunlarning ma'lumot turlari (INT, VARCHAR), indekslar, saqlash usullari kabi fizik xususiyatlar aniqlanadi.
Konseptual dizayn: Bu eng yuqori darajadagi dizayn. U tizimning asosiy obyektlari (entities), ularning xususiyatlari (attributes) va ular orasidagi munosabatlarni (relationships) aniqlaydi. Ko'pincha ERD (Entity-Relationship Diagram) shaklida chiziladi.
Mantiqiy dizayn (Logical Design): Konseptual dizaynni ma'lum bir ma'lumotlar modeli (masalan, relyatsion model) asosida jadvallar, ustunlar, kalitlar va aloqalarga aylantirish. Bu bosqichda hali aniq bir MBBT (masalan, MySQL yoki PostgreSQL) tanlanmaydi.
Fizik dizayn (Physical Design): Mantiqiy dizaynni aniq bir MBBT uchun amalga oshirish. Bu bosqichda ustunlarning ma'lumot turlari (INT, VARCHAR), indekslar, saqlash usullari kabi fizik xususiyatlar aniqlanadi.
DDL (Data Definition Language) - Ma'lumotlarni aniqlash tili
Bu buyruqlar ma'lumotlar bazasi sxemasini (jadvallar, indekslar) yaratish va o'zgartirish uchun ishlatiladi:
DML (Data Manipulation Language) - Ma'lumotlarni boshqarish tili
Bu buyruqlar jadvaldagi ma'lumotlar ustida amallar bajaradi:
DQL (Data Query Language) - Ma'lumotlardan so'rov tili
Bu guruh asosan SELECT buyrug'idan iborat:
Bu buyruqlar ma'lumotlar bazasi sxemasini (jadvallar, indekslar) yaratish va o'zgartirish uchun ishlatiladi:
CREATE TABLE,
DROP TABLE,
ALTER TABLE
DML (Data Manipulation Language) - Ma'lumotlarni boshqarish tili
Bu buyruqlar jadvaldagi ma'lumotlar ustida amallar bajaradi:
INSERT INTO,
UPDATE,
DELETE
DQL (Data Query Language) - Ma'lumotlardan so'rov tili
Bu guruh asosan SELECT buyrug'idan iborat:
SELECT,
WHERE,
ORDER BY,
LIMIT,
Aggregate Functions,
AS(alias),
UNION
Hozir RAM arzonligi sababli dasturchilar xotirani isrof qiluvchi, semiz va sifatsiz kodlar yozishga o'rganib qoldi. Qachonki xotira yana qimmatlashsagina, biz kompyuterlarning ilk davridagidek, har bir baytning qadriga yetib, o'z ishimizni chinakamiga mukammal bajarishga majbur bo'lamiz"
🚀 FlashMind — Shaxsiy Quizlet klonim tayyor!
O'quv jarayonini samarali qilish uchun mo'ljallangan, to'liq offline-first arxitekturadagi ilovani ishlab chiqdim. Bu shunchaki flashcard-lar emas, balki "aqlli" o'rganish tizimidir.
✨ Asosiy imkoniyatlar:
🧠 Leitner SRS logikasi: So'zlarni unutilmaslik darajasida takrorlash algoritmi.
🔊 Audio TTS: 7 xil aksentda (US, UK, ...) matnlarni o'qib berish.
🎮 Interactive Modes: Match Game, Cloze Test va taymerli Speed Mode.
↔️ Swipe Gestures: Tinder-style boshqaruv (framer-motion orqali).
📱 PWA Support: Play Market-siz telefonga o'rnatib, internetsiz ham foydalanish mumkin.
🔥 Streak Tracker: Kunlik o'rganish faolligini kuzatish.
🛠 Texnik stack:
React 19 + Vite 8
Zustand (State management)
Dexie.js (IndexedDB brauzer bazasi)
Framer Motion (Premium animatsiyalar)
Loyihani GitHub'ga push qildim va Vercel'ga uladim. Endi o'z bilimlarimni tartibli va tezkor o'rganishda o'z ilovamdan foydalanaman! ⚡️🧠
#Project #React #PWA #FlashMind #Learning #DeveloperLife
O'quv jarayonini samarali qilish uchun mo'ljallangan, to'liq offline-first arxitekturadagi ilovani ishlab chiqdim. Bu shunchaki flashcard-lar emas, balki "aqlli" o'rganish tizimidir.
✨ Asosiy imkoniyatlar:
🧠 Leitner SRS logikasi: So'zlarni unutilmaslik darajasida takrorlash algoritmi.
🔊 Audio TTS: 7 xil aksentda (US, UK, ...) matnlarni o'qib berish.
🎮 Interactive Modes: Match Game, Cloze Test va taymerli Speed Mode.
↔️ Swipe Gestures: Tinder-style boshqaruv (framer-motion orqali).
📱 PWA Support: Play Market-siz telefonga o'rnatib, internetsiz ham foydalanish mumkin.
🔥 Streak Tracker: Kunlik o'rganish faolligini kuzatish.
🛠 Texnik stack:
React 19 + Vite 8
Zustand (State management)
Dexie.js (IndexedDB brauzer bazasi)
Framer Motion (Premium animatsiyalar)
Loyihani GitHub'ga push qildim va Vercel'ga uladim. Endi o'z bilimlarimni tartibli va tezkor o'rganishda o'z ilovamdan foydalanaman! ⚡️🧠
#Project #React #PWA #FlashMind #Learning #DeveloperLife
Muvaffaqiyatsizlik — so'zsiz pastga qulashdir, ammo unchalik ham fojia emas.
Eng katta muvaffaqiyatsizlik esa o'rindan qayta turmaslikka qaror qilishdir.
Eng katta muvaffaqiyatsizlik esa o'rindan qayta turmaslikka qaror qilishdir.
ish qidirish jarayonida 50 va undan ortiq kanalga obuna bo'lish noqulaylik to'g'diradi shuning uchun bir nechta kanallarni bir joyda ko'zatib boring: https://t.me/jobs_it_uz
Telegram
IT Jobs uz
IT vacancy
Uzbekiston bozoridagi va barcha it vacancy kanallarni bir joydan ko'zatib boring!
taklif va shikoyatlarni xabar jo'natish qismidan jo'natishingiz mumkin!!
Uzbekiston bozoridagi va barcha it vacancy kanallarni bir joydan ko'zatib boring!
taklif va shikoyatlarni xabar jo'natish qismidan jo'natishingiz mumkin!!
CodeVerce
event_loop_interactive.html
Event Loop — asosiy tushuncha
JavaScript bitta ipli (single-threaded) — bir vaqtda faqat bitta narsa bajariladi. Lekin u bloklamas (non-blocking) ishlaydi. Buning siri — Event Loop mexanizmi.
4 ta asosiy tushuncha
Call Stack — hozir bajarilyotgan kod.
Web/Node APIs —
Microtask Queue —
Macrotask Queue —
JavaScript bitta ipli (single-threaded) — bir vaqtda faqat bitta narsa bajariladi. Lekin u bloklamas (non-blocking) ishlaydi. Buning siri — Event Loop mexanizmi.
Call Stack → bo'shasa → Microtask Queue → bo'shasa → Macrotask Queue
4 ta asosiy tushuncha
Call Stack — hozir bajarilyotgan kod.
push (kirdi) / pop (chiqdi).Web/Node APIs —
setTimeout, fetch, fs.readFile kabi asinxron ishlar shu yerda kutadi. Stack ni bloklamaydi.Microtask Queue —
Promise.then(), queueMicrotask(), MutationObserver. Stack bo'shagandan keyin birinchi navbatda, barchasi bajariladi.Macrotask Queue —
setTimeout, setInterval, I/O. Microtask queue to'liq bo'shagandagina navbat keladi.
CodeVerce
Event Loop — asosiy tushuncha JavaScript bitta ipli (single-threaded) — bir vaqtda faqat bitta narsa bajariladi. Lekin u bloklamas (non-blocking) ishlaydi. Buning siri — Event Loop mexanizmi. Call Stack → bo'shasa → Microtask Queue → bo'shasa → Macrotask Queue…
console.log("1"); // Call Stack — hoziroq
setTimeout(() => {
console.log("4"); // Macrotask — eng oxirida
}, 0);
Promise.resolve()
.then(() => console.log("3")); // Microtask — setTimeout dan oldin!
queueMicrotask(() => {
console.log("2.5"); // Microtask — Promise dan oldin (qo'shilish tartibida)
});
console.log("2"); // Call Stack — hoziroq
// Natija: 1 → 2 → 2.5 → 3 → 4