Dasturlash tili
Go http url routing
Qidiruv ishga tushirilmoqda
Bosh sahifa
Go asoslari
Web
DSA
Masalalar
Blog
Dasturlash tili
Bosh sahifa
Go asoslari
Go asoslari
000. Kirish
001. Birinchi dasturimiz
002. O'zgaruvchilar
003. Goda asosiy ma'lumot turlari
004. Operatorlar
005. Matematik misollar
006. Shart operatori (if, else, else if)
007. Tanlash operatori (switch)
008. Sikl operatori (for)
009. String bilan ishlash
010. Massiv(array)
011. Slice bilan ishlash
012. Map bilan ishlash
013. Ko'rsatkichlar (pointers)
014. Funksiyalar
014. Funksiyalar
Funksiyalar
Funksiya va ko'rsatkichlar
015. Struct va metodlar
015. Struct va metodlar
Struct
Metodlar
016. Xatolarni boshqarish
017. Konsoldan ma'lumot kiritish
018. Buyruq qatori dasturlari va standart oqimlar
019. Go'da modullar
020. Tashqi kutubxonalar va dependency management
021. Go dokumentatsiyasini yozish va o'qish
022. Interface
023. Enum va iota
024. Go'da test yozish
025. Generics
026. Benchmark
027. Go kodini tekshirish vositalari
028. Concurrency va parallelism
028. Concurrency va parallelism
Parallel dasturlash
Goroutine
Wait group
029. Channels
029. Channels
Kirish
Turlari
Select
030. Mutex va race detector
030. Mutex va race detector
Mutex
Race detector
031. Context asoslari
032. Chuqurlashtirish — Worker pool
033. Go'da sana va vaqt bilan ishlash
034. Fayllar bilan ishlash
034. Fayllar bilan ishlash
Fayllar
Kataloglar
Embed
035. Go'da JSON bilan ishlash
036. Go standart paketlari
036. Go standart paketlari
Random paketi
Hashing (MD5, Base64 va boshqalar)
RegEx
037. Environment o'zgaruvchilari
Web
Web
API va so'rov
API va so'rov
Web server nima?
API nima?
API ga so'rov yuborish
Goda API qurish (server tomoni)
Goda API qurish (server tomoni)
net/http paketining tuzilishi
http.HandleFunc va http.ListenAndServe
ResponseWriter va *Request obyektlari
URL routing
URL va query parametrlar bilan ishlash
Loyiha: CRUD
Middleware
Middleware
Logging
Logging middleware
Request timing va error handler middleware
Handlerlarni modullarga ajratish (clean architecture)
JSON bilan Ishlash
JSON bilan Ishlash
encoding/json asoslari
Request body parsing
Response struct formatlash
Validation (go-playground/validator)
Xatoliklarni standart formatda qaytarish
Ma'lumotlar Bazasi
Ma'lumotlar Bazasi
Ma'lumotlar Bazasi va Xavfsiz So'rovlar
PostgreSQL bilan bog'lanish (pgx / database/sql)
Context bilan ishlash
SQL Injection oldini olish
Parollarni xeshlash (bcrypt)
Config va .env bilan ishlash
Authentication
Authentication
Authentication — From Scratch
Authentication nima?
Session va Token-based auth farqi
Login / Signup endpointlari
JWT yaratish va tekshirish
Auth middleware yozish
Authorization
Authorization
Authorization — Access nazorati
Authorization nima?
RBAC
Resource-based permission modeli
Middleware orqali ruxsat tekshirish
401, 403 va 500 statuslar
Routing (gorilla/mux)
Routing (gorilla/mux)
gorilla/mux bilan Routing"
Framework kerakmi?
mux bilan router yaratish
Path parametrlari
Subroutes
Middleware integratsiyasi
Gin Framework
Gin Framework
gin Framework bilan Tezkor API Yaratish
gin arxitekturasi
Request binding
JWT middleware
Error handling
Performance
HTTPS va TLS
HTTPS va TLS
HTTPS va TLS
HTTPS nima
Self-signed sertifikat
TLS konfiguratsiyasi
Let's Encrypt
HTTP → HTTPS majburlash
Xavfsizlik
Xavfsizlik
Xavfsizlik Tahdidlari va Himoya
CSRF & XSS
Input sanitizatsiyasi
Brute-force himoya
Rate limiting (Redis)
Security headers & CORS
DSA
DSA
Kirish
Kirish
Algoritm nima?
Kompyuter qanday ishlaydi
Big-O notatsiyasi
Array
Array
Array
Dinamik massiv
Qidirish (chiziqli, binar)
Saralash (bubble, selection, insertion)
Texnikalar (two pointers, sliding window, prefix sum)
Masalalar
Masalalar
Nollarni ortga surish
Ro'yxatni aylantirish
Eng ko'p suvli hovuz
Sonlar ko'paytmasi
String
String
String
Satr algoritmlari
Masalalar
Masalalar
Teskari so'z
Eng uzun umumiy prefiks
Palindromni tekshirish
Harflari takrorlanmagan qism
Rekursiya va saralash
Rekursiya va saralash
Rekursiya
Merge sort va Quick sort
Masalalar
Masalalar
Darajaga ko'tarish (pow)
Ikki saralangan massivni birlashtirish
K-chi eng katta element
Linked List
Linked List
Singly Linked List
Doubly Linked List
Masalalar
Masalalar
O'rtasini topish
Teskari qilish
Tsikl bormi?
Ikki listni birlashtirish
Palindrom linked list
Stack
Queue
Stack & Queue masalalari
Stack & Queue masalalari
To'g'ri qavslar
Stack tuzish
Queue tuzish
Kunlik harorat
Teskari polyak yozuvi (RPN)
Hashlash
Hashlash
Hashlash asoslari
Hash table
Masalalar
Masalalar
Takrorlanish bormi?
Ikki son yig'indisi (Two Sum)
To'g'ri anagramma
Anagram guruhlari
Daraxtlar
Daraxtlar
Daraxt asoslari
Binar daraxt va BST
Daraxtni aylanish (DFS, BFS)
Heap va Priority Queue
Masalalar
Masalalar
Daraxt chuqurligi
Akslantirish (invert)
Simmetrik daraxt
Daraxt qavatlari (level order)
BST'mi?
Graflar
Graflar
Graf asoslari
BFS va DFS
Dijkstra
Masalalar
Masalalar
Orollar soni
Viloyatlar soni
Chirigan apelsinlar
So'z qidirish
Sonlar va matematika
Sonlar va matematika
Sonlar va matematika asoslari
Masalalar
Masalalar
Songa aylantirish (atoi)
Teskari raqamlar
Unutilgan son
Excel ustunlari
Bit manipulyatsiya
Bit manipulyatsiya
Ikkilik sanoq va bit amallari
Masalalar
Masalalar
1 bo'lgan bitlar soni
Hamming masofasi
Juftsiz poyabzal (single number)
Son 4 ning darajasimi?
Algoritmik yondashuvlar
Algoritmik yondashuvlar
Greedy
Backtracking
Dinamik dasturlash
Masalalar
Masalalar
Zinapoyaga chiqish
Tangalar (coin change)
Uy o'g'risi (house robber)
Permutatsiyalar
N-vazir
Masalani yechish yondashuvi
Masalalar
Masalalar
Kirish
Asosiy mavzular
Asosiy mavzular
1. Kiritish-chiqarish va o'zlashtirish (40)
2. Butun sonlar (30)
3. Mantiqiy ifodalar (40)
4. Shart operatori (30)
5. Tanlash operatori (20)
6. Parametrli sikl (40)
7. Shartli sikl (30)
8. Sonli ketma-ketliklar (40)
9. Funksiyalar (60)
10. Minimum va maksimumlar (30)
11. Bir o'lchamli massivlar (140)
12. Ikki o'lchamli massivlar (100)
13. Belgilar va satrlar (70)
14. Ikkilik fayllar (90)
15. Matnli fayllar (60)
16. Funksiyalarda murakkab turlar (70)
17. Rekursiya (30)
18. Dinamik ma'lumotlar strukturalari (80)
19. Daraxtlar (100)
20–21. Jadval ma'lumotlarini qayta ishlash (130)
Go tili
Go tili
G1. Slice'larning ichki tuzilishi (20)
G2. Xaritalar (25)
G3. Struct va metodlar (25)
G4. Interfeyslar (25)
G5. Xatolar, defer, panic va recover (20)
G6. Umumiy dasturlash (20)
G7. Goroutine va kanallar (30)
G8. Sinxronizatsiya va context (20)
G9. Paketlar va standart kutubxona (30)
G10. Testlar va benchmark'lar (15)
SQL (PostgreSQL)
SQL (PostgreSQL)
000. Sxemalar va tayyorlov
001. SELECT, alias va ifodalar (30)
002. WHERE sharti (42)
003. NULL bilan ishlash (30)
004. ORDER BY, LIMIT, OFFSET, DISTINCT (30)
005. IN, BETWEEN, LIKE, ILIKE (29)
006. Matematik funksiyalar (24)
007. Satr funksiyalari (39)
008. Sana va vaqt (44)
009. CASE ifodasi (24)
010. CAST va ma'lumot turlari (24)
011. Agregat funksiyalar, GROUP BY, HAVING (56)
012. JOIN (65)
013. Subquery va EXISTS (40)
014. UNION, INTERSECT, EXCEPT (20)
015. CTE (WITH) (28)
016. Rekursiv CTE (25)
017. Window funksiyalar (61)
018. INSERT, UPDATE, DELETE, RETURNING (32)
019. UPSERT va MERGE (20)
020. CREATE TABLE va cheklovlar (33)
021. ALTER, DROP va migratsiya (20)
022. Normalizatsiya va sxema loyihalash (23)
023. JSON va JSONB (41)
024. ARRAY (26)
025. ENUM, UUID, range va composite turlar (21)
026. Full-text search va pg_trgm (21)
027. View va Materialized view (16)
028. Funksiyalar va PL/pgSQL (30)
029. Triggerlar (15)
030. Tranzaksiyalar, izolyatsiya va lock (25)
031. Indekslar (20)
032. EXPLAIN va ANALYZE (20)
033. Partitioning va VACUUM (11)
034. Rollar, GRANT va RLS (15)
Blog
Go http url routing