IlmHamroh
JavaScript Full-stack/1-qism. Kompyuter, fayllar va terminal40/40-dars20 daqiqa
Mundarija (43)

Shriftlar, arxivlar va hujjat fayllari: WOFF2, ZIP, tar.gz va PDF

Qisqacha: Saytga shrift qo'yishda WOFF2 formati ishlatiladi: u oddiy TTF fayldan 2–3 barobar kichik. Ko'p faylni bitta qilib yuborish uchun ZIP (hamma joyda ochiladi) yoki tar.gz (Linux serverlarda odatiy) arxivi qulay. Har qanday qurilmada bir xil ko'rinishi shart bo'lgan hujjat — shartnoma, chek, sertifikat — PDF'da beriladi.

Bu darsda

  • Shrift formatlari TTF, OTF va WOFF2 farqini va vebda qaysi biri kerakligini bilasiz.
  • Variable font nima ekanini va u qachon foydali ekanini tushunasiz.
  • Shrift litsenziyasini tekshirishni va bepul shriftlarni qayerdan olishni bilasiz.
  • ZIP va tar.gz farqini tushuntira olasiz va terminalda arxiv yarata olasiz.
  • PDF nega hamma joyda bir xil ko'rinishini va DOCX'dan farqini bilasiz.

Oldin bilishingiz kerak: Matnli va binar fayllar, Audio va video formatlari, Fayl va papkalar bilan ishlash.


1. Nega bu kerak?

Uchta vaziyatni tasavvur qiling.

  1. Jasur o'z saytiga chiroyli shrift qo'ydi. Telefonda sahifa ochilganda 2–3 soniya matn umuman ko'rinmadi. Sababi — shriftning 4 ta og'ir fayli, jami 1 MB dan ortiq.
  2. Ali 3 000 ta fayldan iborat loyihani do'stiga yubormoqchi. Telegram esa fayllarni bittalab yuboradi — bu soatlab ish.
  3. Malika onlayn do'konida mijozga chek va shartnoma berishi kerak. Word faylini yuborsa, mijozning telefonida harflar surilib, jadval buzilib ko'rinadi.

Uch xil muammo — uch xil fayl oilasi: shriftlar, arxivlar, hujjatlar. Bu darsda har birining to'g'ri formatini o'rganamiz.


2. Shrift formatlari: TTF dan WOFF2 gacha

2.1 Shrift fayli ichida nima bor?

Shrift (font) — harflarning chizmalari to'plami. Har bir harf, raqam va belgining chizmasi glif (glyph) deyiladi.

Glif — Rasm formatlari darsidagi SVG kabi vektor chizma: nuqtalar va chiziqlar bilan yozilgan. Shuning uchun harfni xohlagancha kattalashtirsangiz ham xiralashmaydi.

Bitta shriftda yuzlab, hatto minglab glif bo'lishi mumkin: lotin, kirill, yunon, arab harflari, raqamlar, belgilar. Fayl hajmi aynan shundan kattalashadi.

2.2 To'rtta format

Format Kengaytma Nima uchun Vebda (2026)
TrueType .ttf Kompyuterga o'rnatish Ishlatmang — og'ir
OpenType .otf Kompyuterga o'rnatish, dizaynerlar uchun Ishlatmang — og'ir
WOFF .woff Vebga siqilgan birinchi avlod Endi shart emas
WOFF2 .woff2 Veb uchun kuchli siqilgan Asosiy format
  • TTF — Apple 1991-yilda yaratgan, keyin Microsoft ham qabul qilgan. Hozir ham kompyuterga shrift o'rnatishda eng ko'p uchraydi.
  • OTF — Microsoft va Adobe 1996-yilda yaratgan. TTF ning kengaytirilgan varianti: qo'shimcha harf shakllari va ligaturalar (ikki harfning birlashgan chizmasi, masalan fi) uchun ko'proq imkoniyat beradi.
  • WOFF va WOFF2 — "Web Open Font Format". Ichida o'sha TTF yoki OTF, faqat internet uchun siqilgan.

WOFF2 siqish uchun Brotli algoritmidan foydalanadi. Brotli — Google yaratgan, yo'qotishsiz (lossless) siqish usuli, ZIP'dagidan kuchliroq. 2026 holatiga barcha zamonaviy brauzerlar WOFF2 ni qo'llaydi, shuning uchun saytga faqat WOFF2 yetarli.

2.3 Haqiqiy o'lchamlar

Windows bilan keladigan Arial shriftini o'lchab ko'rdik:

Variant Hajm Farqi
arial.ttf (asl fayl) 1 045 KB —
WOFF2 ga siqilgan 434 KB 58% kichik
WOFF2, faqat lotin harflari 47 KB 22 barobar kichik

Oxirgi qatordagi usul qism ajratish (subsetting) deyiladi: shriftdan faqat saytingizga kerakli harflar qoldiriladi. O'zbek lotin yozuvidagi sayt uchun kirill, yunon va arab harflari kerak emas — ularni olib tashlash hajmni keskin kamaytiradi. Sayt kirill yozuvida bo'lsa, kirill harflarini (o'zbekcha maxsus harflari bilan birga) qoldirasiz.

Google Fonts xizmati buni o'zi qiladi: brauzerga faqat sahifada kerakli harflar guruhini beradi.

Tekshirib ko'ring: Jasur saytiga 4 ta TTF fayl qo'ygan, har biri 300 KB. WOFF2 ga o'girib, faqat lotin harflarini qoldirsa, har biri taxminan 25 KB bo'ladi. Qancha joy tejaladi?

Javob

Oldin: 4 × 300 = 1 200 KB. Keyin: 4 × 25 = 100 KB. Tejaldi: 1 100 KB, ya'ni hajm 12 barobar kichraydi. Sekin mobil internetda bu soniyalab farq qiladi.


3. Variable font: bitta faylda hamma qalinlik

3.1 Muammo

Shrift qalinligi sonlar bilan belgilanadi: 100 — eng ingichka, 400 — oddiy, 700 — qalin, 900 — eng qalin.

Klassik usulda har qalinlik — alohida fayl:

  • Roboto-Light.woff2 (300)
  • Roboto-Regular.woff2 (400)
  • Roboto-Bold.woff2 (700)

Har bir fayl — brauzer uchun alohida yuklash. Dizayner 500 va 600 qalinlikni ham xohlasa — yana ikki fayl.

3.2 Yechim

Variable font (o'zgaruvchan shrift) — bitta faylda harfning bir necha "chekka" shakli saqlanadi, oradagi hamma shakllar esa hisoblab chiqiladi. O'xshatish: chiroqning aylanadigan yorqinlik murvati. Oddiy chiroqda faqat "yoniq" va "o'chiq" bor, murvat bilan esa istalgan oraliq yorqinlikni tanlaysiz.

O'zgaradigan har bir xususiyat o'q (axis) deyiladi. Eng ko'p uchraydiganlari:

  • qalinlik (wght) — 100 dan 900 gacha;
  • eni (wdth) — tor yoki keng harflar;
  • qiyalik (slnt, ital) — kursiv.

Real misol: Windows 11 dagi tizim shrifti Segoe UI Variable — aynan variable font. Uni C:\Windows\Fonts\SegUIVar.ttf faylida topasiz.

Variable fontni 2018-yildan beri barcha asosiy brauzerlar qo'llaydi.

Maslahat: Variable font doim ham kichik emas. Saytda faqat 1–2 qalinlik ishlatsangiz, oddiy alohida fayllar yengilroq bo'lishi mumkin. 3 va undan ko'p qalinlik kerak bo'lsa — variable font odatda yutadi.

3.3 Saytga ulash — bir ko'z tashlash

Saytda shrift CSS tilida ulanadi. CSS'ni hali o'rganmadik — Web shriftlar darsida batafsil ko'ramiz, hozir tushunish shart emas. Faqat qanchalik qisqa ekanini ko'ring:

css
@font-face {
  font-family: "Asosiy";
  src: url("/fonts/asosiy.woff2") format("woff2");
  font-weight: 100 900;
  font-display: swap;
}
  • format("woff2") — brauzerga "bu WOFF2 fayl" deydi.
  • font-weight: 100 900 — "bu variable font, 100 dan 900 gacha hamma qalinlik bor".
  • font-display: swap — shrift yuklanguncha matn oddiy tizim shriftida ko'rinib turadi. Jasurning saytidagi "ko'rinmaydigan matn" muammosi shu bilan hal bo'ladi.

Tekshirib ko'ring: Dizayner saytda 300, 400, 500, 600 va 700 qalinliklarni ishlatmoqchi. Qaysi yondashuv yaxshiroq: 5 ta alohida fayl yoki bitta variable font?

Javob

Bitta variable font. 5 ta qalinlik — ko'p, alohida fayllar 5 ta yuklash va odatda kattaroq umumiy hajm degani. Variable font bitta faylda hammasini beradi.


4. Shrift litsenziyalari

4.1 Shrift ham mulk

Shrift — dizaynerning oylab qilgan mehnati. Kitob yoki dastur kabi u ham mualliflik huquqi bilan himoyalangan.

Litsenziya (license) — shriftni qayerda va qanday ishlatish mumkinligini aytadigan ruxsatnoma. Internetda "bepul yuklab olish" tugmasi bo'lishi shriftni bepul ishlatish mumkin degani emas.

4.2 Bepul litsenziyalar: OFL

OFL (SIL Open Font License) — eng keng tarqalgan bepul shrift litsenziyasi. U ruxsat beradi:

  • shaxsiy va tijoriy loyihalarda bepul ishlatish;
  • saytga yuklash, logotip, reklama, bosma mahsulotda ishlatish.

Ikki cheklovi bor:

  • shrift faylining o'zini sotib bo'lmaydi;
  • shriftni o'zgartirsangiz, ko'pincha unga boshqa nom berish kerak.

Google Fonts (fonts.google.com) — minglab bepul shriftlar katalogi. Ulardan deyarli hammasi OFL ostida, bir nechtasi Apache 2.0 yoki Ubuntu Font Licence ostida. Uchala litsenziya ham tijoriy ishlatishga ruxsat beradi. Har shrift sahifasida litsenziyasi yozilgan.

4.3 Pullik shriftlar

Pullik shriftlarda odatda bir nechta alohida litsenziya bo'ladi:

  • Desktop litsenziya — kompyuterga o'rnatib, dizayn yoki hujjatda ishlatish.
  • Veb litsenziya — faylni saytga yuklash. Narxi ko'pincha oylik tashriflar soniga bog'liq.

Kompyuter uchun sotib olingan shriftni saytga qo'yish — litsenziya buzilishi. Bu ikki xil ruxsat.

Diqqat: Windows yoki macOS bilan kelgan shriftlar (Arial, Segoe UI, San Francisco) — sizning kompyuteringizda ishlatish uchun. Ularning faylini o'z saytingizga yuklashga odatda ruxsat yo'q. Saytga Google Fonts'dagi o'xshash bepul shriftni oling.

Tekshirib ko'ring: Malika do'koni logotipi uchun Google Fonts'dan shrift oldi. Keyin shu logotip tushirilgan futbolkalarni sotmoqchi. Mumkinmi?

Javob

Mumkin. OFL tijoriy ishlatishga ruxsat beradi — shrift bilan yasalgan logotip va mahsulotni sotish mumkin. Faqat shrift faylining o'zini sotish mumkin emas.


5. Arxivlar: ZIP va tar.gz

5.1 Arxiv nima?

Arxiv (archive) — ko'p fayl va papkalarni bitta faylga joylash. Ko'pincha ular shu bilan birga siqiladi (compress) ham. O'xshatish: uy ko'chirishda mayda buyumlarni bitta katta qutiga joylash — tashish osonlashadi.

Arxiv uchta muammoni hal qiladi:

  1. Yuborish oson. 3 000 ta fayl o'rniga bitta fayl — Telegram yoki email orqali bir urinishda ketadi.
  2. Hajm kichrayadi. Matnli fayllar (kod, JSON, HTML) odatda 3–10 barobar siqiladi.
  3. Ko'chirish tezlashadi. Qator oxiri, inode va symlink darsida ko'rganimizdek, har bir faylning o'z inode yozuvi bor. Minglab mayda faylni ko'chirishda tizim har biri uchun alohida ish qiladi. Bitta katta faylni ko'chirish ancha tezroq.

Arxiv har doim yo'qotishsiz (lossless): ochganingizda har bir fayl bit-bitigacha asl holiga qaytadi. Aks holda kod yoki hujjat buzilardi.

5.2 ZIP

ZIP — 1989-yilda Phil Katz yaratgan format. Matnli va binar fayllar darsida ZIP fayl boshidagi PK imzosini ko'rgan edik — bu uning ismining bosh harflari.

ZIP har faylni alohida siqadi. Bundan ikki foyda bor:

  • bitta faylni butun arxivni ochmasdan tez chiqarib olish mumkin;
  • arxivning bir qismi buzilsa, qolgan fayllar saqlanib qoladi.

ZIP'ni Windows, macOS, Android va iPhone qo'shimcha dasturisiz ochadi. Shuning uchun oddiy foydalanuvchiga fayl yuborishda eng xavfsiz tanlov — ZIP.

Qiziq fakt: ko'p tanish formatlar aslida ZIP. Word hujjati (.docx), Excel jadvali (.xlsx), PowerPoint (.pptx), elektron kitob (.epub), Android ilovasi (.apk) — hammasi ichida fayllar joylangan ZIP arxivlar. Buni 3-mashqda o'zingiz tekshirasiz.

5.3 tar.gz

Linux va macOS dunyosida odatiy format — tar.gz (yana tarball deyiladi). U ikki bosqichda yasaladi:

  1. tar (Tape Archive — magnit tasma arxivi). Barcha fayl va papkalarni bitta uzun faylga ketma-ket yig'adi. tar o'zi siqmaydi, faqat yig'adi. Nomi 1979-yildan qolgan, o'shanda ma'lumot magnit tasmalarga yozilardi.
  2. gz (gzip). Hosil bo'lgan bitta katta faylni yaxlit siqadi.
flowchart TD
  P["loyiha/ papkasi<br/>200 ta fayl"]
  P --> Z["ZIP: har fayl<br/>alohida siqiladi"]
  P --> T["tar: hammasi bitta<br/>uzun faylga yig'iladi"]
  Z --> ZF["loyiha.zip"]
  T --> G["gzip: o'sha bitta fayl<br/>yaxlit siqiladi"]
  G --> TF["loyiha.tar.gz"]

Yaxlit siqishning foydasi: siquvchi fayllar orasidagi o'xshashlikni ham ko'radi. Kod fayllari bir-biriga juda o'xshaydi — bir xil so'zlar, bir xil tuzilma. Biz sinab ko'rdik: bir-biriga o'xshash 200 ta kichik JavaScript fayl ZIP'da 29–46 KB, tar.gz'da esa atigi 3 KB bo'ldi. Real loyihalarda farq bunchalik katta bo'lmaydi, lekin tar.gz odatda kichikroq chiqadi.

Kamchiligi: bitta faylni olish uchun arxivni boshidan o'qib chiqish kerak.

Yana bir muhim farq — ruxsatlar. tar fayl ruxsatlarini (rwx) va egasini saqlaydi. Windows'da yaratilgan ZIP esa odatda saqlamaydi. Serverga dastur yuborishda bu muhim: skript "bajarish" ruxsatini yo'qotmasligi kerak.

5.4 Boshqa arxiv formatlari

Format Siqish Tezlik Qayerda uchraydi
.tar.xz Kuchliroq Sekinroq Node.js va Linux yadrosi yuklamalari
.tar.zst Yaxshi Juda tez Linux paketlari, zaxira nusxalar
.7z Juda kuchli Sekin 7-Zip dasturi, katta arxivlar
.rar Kuchli O'rtacha Yopiq format, WinRAR

.tar.zst dagi zstd (Zstandard) — 2016-yilda Facebook yaratgan zamonaviy siqish usuli. U gzip darajasida siqib, bir necha barobar tez ishlaydi. Shuning uchun yangi tizimlarda tobora ko'p uchraydi.

2026 holatiga Windows 11 Fayl boshqaruvchisi (Explorer) 23H2 versiyasidan beri .7z, .rar va .tar.gz arxivlarni o'zi ochadi. 24H2 versiyasidan beri esa 7z va TAR arxiv yarata ham oladi. Eski Windows'da buning uchun 7-Zip dasturi kerak edi.

Tekshirib ko'ring: Nega tar.gz ko'pincha ZIP'dan kichikroq bo'ladi?

Javob

ZIP har faylni alohida siqadi, shuning uchun fayllar orasidagi o'xshashlikdan foydalana olmaydi. tar.gz esa avval hammasini bitta faylga yig'adi (tar), keyin uni yaxlit siqadi (gzip). Siquvchi bir faylda uchragan so'zni boshqa faylda ham "taniydi" va qayta yozmaydi.

Tekshirib ko'ring: Buxgalteriya bo'limidagi Nodiraga 40 ta Excel fayl yubormoqchisiz. Uning kompyuterida Windows. ZIP yoki tar.gz?

Javob

ZIP. Nodira dasturchi emas, ZIP'ni esa har qanday Windows ikki marta bosish bilan ochadi. tar.gz yangi Windows 11 da ham ochiladi, lekin ZIP har qanday versiyada ishlaydi.


6. Terminalda arxivlash

6.1 tar buyrug'i

tar Linux, macOS, WSL va Git Bash'da bor. Windows 10 (2018-yildan) va Windows 11 da ham o'rnatilgan tar.exe bor — PowerShell'da xuddi shu buyruqlar ishlaydi.

Eng kerakli to'rt amal:

bash
# 1. loyiha papkasini loyiha.tar.gz ga arxivlash
tar -czvf loyiha.tar.gz loyiha/

# 2. Arxiv ichida nima borligini ko'rish (ochmasdan)
tar -tzf loyiha.tar.gz

# 3. Arxivni joriy papkaga ochish
tar -xzvf loyiha.tar.gz

# 4. Arxivni boshqa papkaga ochish (papka oldin bo'lishi kerak)
tar -xzf loyiha.tar.gz -C zaxira/

# bilan boshlangan qatorlar — izoh, ular bajarilmaydi. Shell skript darsida ko'rgan edik.

2-buyruq natijasi (boshi):

text
loyiha/
loyiha/README.md
loyiha/src/
loyiha/src/f1.js

Flaglar ma'nosi — har harf bitta so'z:

Flag Inglizcha Ma'nosi
-c create Yangi arxiv yaratish
-x extract Arxivni ochish, fayllarni chiqarish
-t list Ichidagi ro'yxatni ko'rsatish
-z gzip gzip bilan siqish yoki ochish
-v verbose Har faylni ekranga yozib borish
-f file Arxiv fayli nomi — undan keyin darhol nom keladi
-C change dir Shu papkaga ochish

Maslahat: Arxivni ochishda -z ni yozmasangiz ham bo'ladi: tar -xf loyiha.tar.gz. Zamonaviy tar siqish turini faylning o'zidan aniqlaydi. Yaratishda esa -z kerak.

6.2 Keraksiz papkalarni chiqarib tashlash

Dasturchi loyihasida ikkita "og'ir" papka bo'ladi. node_modules — loyiha ishlatadigan tayyor kutubxonalar, ba'zan yuzlab megabayt. .git — loyihaning butun o'zgarishlar tarixi. Ikkalasining nomini qidiruv darsida ko'rgan edik, to'liq esa kursda keyinroq o'rganamiz. Muhimi: ular arxivga kerak emas, chunki qayta tiklanadi.

bash
tar --exclude=node_modules --exclude=.git -czf loyiha.tar.gz loyiha/

--exclude= — "shu nomdagi papka yoki faylni qo'shma". Sinovimizda node_modules bilan arxiv 112 KB, usiz esa 3 KB bo'ldi.

6.3 ZIP bilan ishlash

Git Bash, Linux, macOS — ochish uchun unzip:

bash
# Ichidagi ro'yxatni ko'rish
unzip -l fayllar.zip

# Joriy papkaga ochish
unzip fayllar.zip

ZIP yaratish uchun Linux va macOS'da zip -r arxiv.zip papka/ bor. Git Bash'da zip buyrug'i yo'q — Windows'da quyidagi usullardan foydalaning.

Windows PowerShell — o'rnatilgan buyruqlar:

powershell
# Papkani ZIP qilish
Compress-Archive -Path loyiha -DestinationPath loyiha.zip

# ZIP'ni ochish
Expand-Archive -Path loyiha.zip -DestinationPath ochilgan

Windows'dagi tar.exe ZIP yarata ham oladi. -a flagi siqish turini arxiv nomining kengaytmasidan tanlaydi:

powershell
tar -a -c -f loyiha.zip loyiha

Tekshirib ko'ring: tar -tzf zaxira.tar.gz buyrug'i nima qiladi? Arxivdagi fayllar diskka chiqadimi?

Javob

Yo'q, hech narsa chiqmaydi. -t — ro'yxatni ko'rsatish, -z — gzip bilan siqilgan, -f zaxira.tar.gz — shu arxiv. Buyruq faqat ichidagi fayllar nomini ekranga chiqaradi. Fayllarni chiqarish uchun -x kerak.


7. PDF: hamma joyda bir xil hujjat

7.1 PDF nima?

PDF (Portable Document Format — ko'chma hujjat formati) — 1993-yilda Adobe kompaniyasi yaratgan format. 2008-yildan beri u ochiq xalqaro standart (ISO 32000). Uni istalgan kompaniya bepul ishlata oladi. Matnli va binar fayllar darsida PDF fayl boshidagi %PDF imzosini ko'rgan edik.

PDF'ning maqsadi — hujjat har qanday telefon, kompyuter va printerda aynan bir xil ko'rinsin.

O'xshatish: HTML sahifa — idishga quyilgan suv: telefon ekraniga qarab shaklini o'zgartiradi, matn qayta joylashadi. PDF esa qog'ozga bosilgan varaq: har harf varaqning aniq bir nuqtasiga "mixlangan". Telefonda ham A4 varaq ko'rinadi, faqat kichraytirilgan.

7.2 Nega PDF hamma joyda bir xil?

PDF ichida hujjatni chizish uchun kerakli hamma narsa bor:

  • har harf va chiziqning varaqdagi aniq joyi (koordinatasi);
  • rasmlar;
  • shriftlarning o'zi — hujjatda ishlatilgan glif chizmalari faylning ichiga joylanadi.

Oxirgi band eng muhimi. Word fayli (.docx) esa shriftni odatda o'z ichida saqlamaydi. Mijozning telefonida o'sha shrift bo'lmasa — boshqasi qo'yiladi, harflar suriladi, jadval buziladi. Malikaning muammosi aynan shunda edi.

7.3 DOCX va PDF: qachon qaysi biri?

Vaziyat Format Nega
Shartnoma loyihasini birga tahrirlash DOCX Oson o'zgartiriladi
Tayyor shartnomani imzolashga yuborish PDF Ko'rinishi o'zgarmaydi
Chek, hisob-faktura, sertifikat PDF Hamma qurilmada bir xil
Rezyume (CV) yuborish PDF Kadrlar bo'limida ham xuddi siz ko'rgandek

7.4 Matnli va skanerlangan PDF

PDF ikki xil bo'ladi:

  • Matnli PDF — Word yoki sayt yaratgan. Matnni belgilab nusxalash va Ctrl+F bilan qidirish mumkin.
  • Skanerlangan PDF — skaner yoki telefon kamerasi yaratgan. Ichida faqat varaq rasmlari bor. Matnni belgilab bo'lmaydi.

Skanerlangan rasmdagi harflarni haqiqiy matnga aylantirish OCR (Optical Character Recognition — matnni rasmdan tanish) deyiladi. Telefonlardagi "rasmdan matnni nusxalash" funksiyasi — OCR.

Qaysi turdaligini bilish oson: PDF'ni ochib, Ctrl+F bilan hujjatdagi so'zni qidiring. Topilsa — matnli.

7.5 PDF vebda

Chrome, Edge, Firefox va Safari PDF'ni o'z ichida ochadi — alohida dastur kerak emas. Saytlar PDF'ni ko'pincha server tomonda yaratadi: siz buyurtma berasiz, server chekni PDF qilib beradi. Buni PDF generatsiya darsida o'rganamiz.

Arxiv uchun maxsus variant ham bor — PDF/A. U hujjat o'nlab yillardan keyin ham xuddi shunday ochilishini kafolatlaydi. Davlat idoralari va arxivlar shuni talab qiladi.

Tekshirib ko'ring: Nega rezyumeni DOCX emas, PDF'da yuborish tavsiya etiladi?

Javob

Chunki PDF shriftlar va har bir elementning aniq joyini o'z ichida saqlaydi. Ish beruvchining kompyuterida qaysi shrift va dastur bo'lishidan qat'i nazar, rezyume siz tayyorlagandek ko'rinadi. DOCX esa boshqa kompyuterda surilib ketishi mumkin.


8. Ko'p uchraydigan xatolar

8.1 Saytga TTF yoki OTF ulash

Kompyuterdan olingan TTF fayl 300 KB – 1 MB bo'lishi mumkin. WOFF2 ga o'girib, kerakli harflarni ajratsangiz — 20–50 KB. Saytga faqat WOFF2 qo'ying.

8.2 Shrift litsenziyasini tekshirmaslik

Noma'lum saytdan yuklangan pullik shriftni yoki Windows'dagi tizim shriftini saytga qo'yish — mualliflik huquqi buzilishi. Oqibati — ogohlantirish xati yoki jarima. Har doim shrift sahifasida litsenziyani o'qing yoki Google Fonts'dan oling.

8.3 Arxivga node_modules va .git ni qo'shib yuborish

Arxiv 3 KB o'rniga yuzlab megabayt bo'lib qoladi. --exclude=node_modules --exclude=.git ni ishlating.

8.4 gzip bo'lmagan faylni -z bilan ochish

bash
tar -xzf arxiv.tar
text
gzip: stdin: not in gzip format
tar: Child returned status 1
tar: Error is not recoverable: exiting now

Tarjimasi: "gzip: kirayotgan ma'lumot gzip formatida emas. tar: yordamchi dastur 1-kod bilan tugadi. Xatoni tuzatib bo'lmaydi: chiqib ketyapman."

Sababi: fayl gzip bilan siqilmagan (oddiy .tar), yoki umuman ZIP. -z esa "bu gzip" deb aytdi.

Yechim: -z ni olib tashlang — tar -xf arxiv.tar. ZIP bo'lsa — unzip. Fayl haqiqatda qanday ekanini matnli va binar fayllar darsidagi file arxiv.tar bilan tekshirsa ham bo'ladi.

8.5 Git Bash'da C: yo'li bilan xato

bash
tar -czf C:/Users/ali/zaxira.tar.gz loyiha/
text
tar (child): Cannot connect to C: resolve failed

Tarjimasi: "C ga ulanib bo'lmadi: nomni topa olmadim." G'alati xato: Git Bash'dagi tar Linux'dan kelgan. U nom:yo'l ko'rinishidagi yozuvni "boshqa kompyuterdagi fayl" deb tushunadi. C: ni esa C degan kompyuter nomi deb o'yladi.

Yechim: Git Bash uslubidagi yo'l yozing — /c/Users/ali/zaxira.tar.gz. Yoki nisbiy yo'l ishlating. PowerShell'dagi tar.exe da bu muammo yo'q.

8.6 -f dan keyin boshqa harf yozish

bash
tar -cfz loyiha.tar.gz loyiha/

Bu buyruq xato bermasligi ham mumkin. Eng yomoni ham shu. -f dan keyingi so'z arxiv nomi hisoblanadi. tar z degan arxiv yaratadi, loyiha.tar.gz ni esa arxivga solinadigan fayl deb o'ylaydi. Qoida: f har doim flaglar ichida oxirgi tursin — -czf.

8.7 PDF'da maxfiy matnni qora to'rtburchak bilan "yopish"

Pasport raqami ustiga qora to'rtburchak chizib yuborish uni o'chirmaydi. Matn to'rtburchak ostida qoladi va nusxalab olish mumkin. Bunday xato bilan davlat idoralari va yirik kompaniyalar ham maxfiy ma'lumotni oshkor qilib qo'ygan.

Yechim: PDF dasturidagi maxsus "Redact" (tahrirlab o'chirish) funksiyasidan foydalaning. Yoki hujjatni rasmga aylantirib, keyin PDF qiling.


9. Mashqlar

1-mashq (oson): Format tanlang

Har vaziyat uchun mos formatni tanlang: WOFF2, ZIP, tar.gz yoki PDF.

  1. Saytingizga chiroyli sarlavha shrifti qo'shmoqchisiz.
  2. Buvingizga 30 ta to'y rasmini bitta fayl qilib yubormoqchisiz.
  3. Linux serverga loyihani ruxsatlari bilan birga yubormoqchisiz.
  4. O'quv markazi bitiruvchilarga sertifikat bermoqchi.
Yechim
  1. WOFF2 — veb uchun siqilgan shrift formati.
  2. ZIP — buvingizning telefoni yoki kompyuteri uni qo'shimcha dasturisiz ochadi.
  3. tar.gz — Linux'da odatiy va fayl ruxsatlarini saqlaydi.
  4. PDF — sertifikat har qurilmada bir xil ko'rinadi va chop etilganda ham buzilmaydi.

2-mashq (o'rta): tar buyruqlari

Sizda sayt degan papka bor. Uch buyruq yozing:

  1. sayt papkasini sayt.tar.gz ga arxivlang, lekin node_modules papkasini qo'shmang.
  2. Arxivni ochmasdan, ichidagi fayllar ro'yxatini ko'ring.
  3. Arxivni zaxira papkasiga oching (zaxira papkasini oldin mkdir bilan yarating).

Ishora: "tar buyrug'i" bo'limidagi flaglar jadvali va --exclude= ga qarang.

Yechim
bash
# 1. Arxivlash, node_modules siz
tar --exclude=node_modules -czf sayt.tar.gz sayt/

# 2. Ro'yxatni ko'rish
tar -tzf sayt.tar.gz

# 3. zaxira papkasini yaratib, unga ochish
mkdir zaxira
tar -xzf sayt.tar.gz -C zaxira/
  • 1-buyruqda: c — yarat, z — gzip, f — nom. f oxirida, chunki undan keyin darhol sayt.tar.gz keladi.
  • 2-buyruqda c o'rniga t — faqat ro'yxat.
  • 3-buyruqda x — chiqar, -C zaxira/ — shu papkaga. Natijada zaxira/sayt/... hosil bo'ladi.

3-mashq (qiyin): DOCX ichiga qarash

Word hujjati aslida ZIP ekanini o'zingiz isbotlang. Qo'lingizda istalgan .docx fayl bo'lsin (Word yoki Google Docs'dan "Download → .docx" bilan olish mumkin). Uni hisobot.docx deb nomlang va Git Bash'da:

  1. xxd bilan faylning birinchi 4 baytini ko'ring. Qaysi imzo chiqadi?
  2. Faylni cp bilan hisobot.zip nomiga nusxalang.
  3. unzip -l bilan ichidagi ro'yxatni ko'ring. Hujjat matni qaysi faylda bo'lishi mumkin?

Ishora: xxd -l 4 fayl — birinchi 4 bayt (matnli va binar fayllar darsi).

Yechim
bash
xxd -l 4 hisobot.docx
cp hisobot.docx hisobot.zip
unzip -l hisobot.zip

Natija (qisqartirilgan):

text
00000000: 504b 0304                                PK..
Archive:  hisobot.zip
  Length      Date    Time    Name
---------  ---------- -----   ----
     1738  2026-09-27 19:58   [Content_Types].xml
      734  2026-09-27 19:58   _rels/.rels
      721  2026-09-27 19:58   docProps/core.xml
     1586  2026-09-27 19:58   word/document.xml
   349458  2026-09-27 19:58   word/styles.xml
  1. Imzo — PK (50 4B 03 04), ya'ni ZIP.
  2. Nusxa olgandik, asl fayl buzilmadi.
  3. Matn word/document.xml faylida. DOCX — ichida XML fayllar joylangan ZIP arxiv. styles.xml da uslublar, docProps/core.xml da esa muallif va sana saqlanadi.

Nega nusxa oldik, nomini o'zgartirmadik? Asl faylni buzmaslik uchun. Nomini .zip ga o'zgartirish fayl ichini o'zgartirmaydi — bu faqat unzip ga qulay bo'lishi uchun.


10. Real ishda

  • Veb shriftlar. Frontend dasturchi Google Fonts'dan shrift tanlaydi yoki WOFF2 faylni saytning o'z serveriga qo'yadi. Shrift hajmi sayt tezligi baholarida alohida tekshiriladi.
  • Deploy. Tayyor sayt ko'pincha tar.gz qilib serverga yuboriladi va u yerda ochiladi. GitHub har bir dastur versiyasi uchun "Source code (zip)" va "Source code (tar.gz)" yuklamalarini beradi.
  • Dasturlar yuklamasi. Node.js'ni Linux uchun yuklasangiz, .tar.xz arxiv olasiz, Windows uchun esa .zip.
  • Docker. Serverda dasturlarni "quti"larga joylaydigan vosita. Uning ichki qatlamlari ham aslida tar arxivlar. Docker'ni kursda keyinroq o'rganamiz.
  • PDF. Onlayn do'kon cheki, bank ko'chirmasi, kurs sertifikati — hammasini backend avtomatik PDF qilib yaratadi.
  • Intervyu savoli: "ZIP va tar.gz farqi nima?" Javob: "ZIP har faylni alohida siqadi, tar.gz esa avval yig'ib, keyin yaxlit siqadi".

Xulosa

  • Saytga faqat WOFF2 shrift qo'ying. Kerakli harflarni ajratish hajmni o'nlab barobar kamaytiradi.
  • Variable font — bitta faylda ko'p qalinlik. 3 va undan ko'p qalinlik kerak bo'lsa foydali.
  • Shriftning ham litsenziyasi bor. Google Fonts shriftlari tijoriy loyihada ham bepul.
  • ZIP — har faylni alohida siqadi va hamma joyda ochiladi. tar.gz — yaxlit siqadi, kichikroq va Linux ruxsatlarini saqlaydi.
  • tar -czf — yaratish, tar -tzf — ko'rish, tar -xzf — ochish. f doim oxirida.
  • PDF shriftlarni ham ichida saqlaydi, shuning uchun hamma joyda bir xil ko'rinadi.

Shu dars bilan 01-qism "Kompyuter, fayllar va terminal" tugadi. Qisqacha, nimalarni o'rgandingiz:

  • Kompyuter ichi: bit va bayt, sanoq sistemalari, CPU va xotira, matn va media qanday songa aylanishi.
  • Operatsion tizim: jarayonlar, fayl tizimi, yo'llar, nomlash qoidalari va ruxsatlar.
  • Terminal: bash va PowerShell, pipe va exit code, muhit o'zgaruvchilari, shell skriptlar.
  • Dasturchi odatlari: ko'r-ko'rona yozish va klaviatura yorliqlari.
  • Fayl formatlari: JSON, CSV, YAML, XML, Markdown, rasm, video, shrift, arxiv va PDF.

Bu — keyingi hamma qismlar uchun poydevor. Hozirgacha hammasi bitta kompyuter ichida bo'ldi. Endi kompyuterlar bir-biri bilan qanday gaplashishini ko'ramiz. Jarayonlar darsida ko'rgan port va matnli va binar fayllar darsidagi MIME turi o'sha yerda to'liq ochiladi.

Keyingi dars: Tarmoq va Internet nima — yangi, 02-qism boshlanadi: kompyuterlar bir-biri bilan qanday bog'lanishini o'rganamiz.

Ulashish:Telegram'da

Izohlar (0)

Izoh yozish uchun kiring.

  • Hozircha izoh yo'q. Birinchi bo'ling!
Shriftlar, arxivlar va hujjat fayllari: WOFF2, ZIP, tar.gz va PDF — IlmHamroh