Google Lens: 7 Foydali Qobiliyatlari
Google Lens — bu atrofingizni tushunishni osonlashtiruvchi kuchli vosita. Bu ilova faqat oddiy qidiruvdan tashqari, bir nechta foydali qobiliyatlarga ega.

GitHubning Primer dizayn tizimi, butun platformada tugmalar, bannerlar, breadcrumblar kabi asosiy komponentlarni boshqaradi. 2023‑yilda sahifalardagi komponentlar soni keskin oshgani sababli, mavjud CSS-in-JS yondashuvi sahifa yuklanishida sezilarli kechikishlarga olib keldi. Bu muammo nafaqat foydalanuvchi tajribasini pasaytirdi, balki server‑tomonida render qilish samaradorligini ham susaytirdi.
Primer dizayn tizimi GitHubning ko‘plab ichki va tashqi interfeyslarida bir xil vizual standartni ta’minlaydi. Dizayn tizimlari odatda komponentlarni qayta ishlatish, kirish imkoniyatini yaxshilash va kodni modulga ajratish maqsadida yaratiladi. Biroq, komponentlar soni o‘sib borishi bilan CSS‑in‑JS usulining runtime xarajatlari ham ortib, sahifa birinchi rasmiylashtirish vaqtini uzaytirdi.
Ushbu muammolarni hal qilish uchun GitHub jamoasi CSS‑in‑JS o‘rniga CSS Modulesni tanladi. CSS Modules – bu klass nomlarini mahalliy (local) darajada izolyatsiya qiluvchi, lekin oddiy CSS fayllarida yoziladigan yondashuv bo‘lib, ularni sahifaga statik stylesheet sifatida qo‘shish imkonini beradi.
GitHubda CSS‑in‑JS quyidagi asosiy kamchiliklarga ega edi:
sx prop orqali beriladigan inline stil obyektlari hajmi kattalashdi, bu esa runtime yukini oshirdi.Ushbu holatlar natijasida sahifalar bir necha soniyaga cho‘zilib, foydalanuvchi tajribasi va SEO ko‘rsatkichlari zarar ko‘rdi.
Primer jamoasi inkremental migratsiya modelini tanladi. Har bir komponent uchun quyidagi bosqichlar amalga oshirildi:
.module.css fayl yaratilib, mavjud stilni unga ko‘chirish.feature flag orqali eski (CSS‑in‑JS) va yangi (CSS Modules) usullar orasida almashtirish.Bu yondashuv riskni kamaytirish va tezkor fikr-mulohaza olish imkonini berdi. Shuningdek, @primer/styled-react paketida “wrapper” komponentlar yaratilib, sx propni yangi komponentlarga moslashtirishga yordam berdi.
Muqobil yondashuv – bir zumda barcha komponentlarni o‘zgartirish – katta xatolik xavfini tug‘dirardi, chunki GitHubning butun UI kod bazasi minglab sx propga tayanardi.
2024‑dekabr oyiga qadar barcha Primer komponentlari CSS Modulesga ko‘chirildi. Olingan asosiy natijalar:
Bu natijalar nafaqat Primer tizimida, balki GitHubning boshqa mahsulotlarida ham CSS‑in‑JSni o‘chirishga bo‘lgan ishonchni oshirdi. Jamoa sx propni kamaytirish orqali birinchi bosqichda ham sezilarli tezlik oshishini ko‘rdi.
CSS‑in‑JSni butun GitHub platformasidan chiqarish uchun quyidagi bosqichlar rejalashtirilmoqda:
sxni static klasslarga almashtirish.@primer/react paketini standart sifatida belgilash.Ushbu jarayon davomida feature flag va visual regression testing kabi xavfsizlik mexanizmlari saqlanadi, shuning uchun foydalanuvchilar sahifalarini uzluksiz ishlashini his qilishadi.
GitHubning bu tajribasi, katta miqdordagi komponentlar bilan ishlovchi har qanday dizayn tizimi uchun foydali dars bo‘lib, statik CSSga o‘tishning samaradorligini ko‘rsatadi. original articleda batafsil texnik tafsilotlar va kod misollari keltirilgan.
Asl manba: github.blog