C++ dasturlash tilining grafik vositalari
C++dasturlash tilining grafik imoniyatlari haqida gapirishdan avval biz grafika nima ekanligi haqida toliq malumot bilishimiz kerak.
“Grafika “(yun. graphike, grapho — yozaman, chizaman) — tasviriy sanʼat turi. Rasm va rasm sanʼatiga asoslangan, lekin oʻz tasvir va ifoda vositalariga ega boʻlgan bosma badiiy asarlar. Grafika termini dastlab xat va xattotlik sanʼati maʼnosida qoʻllangan. 19-asr oxiri — 20-asr boshlaridan yangi maʼno kasb etdi, poligrafiya sanoatining rivoji, fotomexanikaning vujudga kelishi bilan “grafika” tasviriy sanʼat turiga aylanadi. Asosiy turlari: dastgohli grafika (amaliy ahamiyatga ega boʻlmagan, mustaqil rasm, estamp, lubok), kitob, gazeta-jurnal grafikasi (illyustratsiya, bosma mahsulotlarni bezash, ularni shakllantirish), amaliy grafika (sanoat G.si, pochta markalari, ekslibris), plakat. Ifoda vositalari: kontur chiziq, shtrix, dog (qora, rangdor), varaq zamini (koʻpincha oq qogʻoz).
Grafikaning uslubiy vositalari turli-tuman: naturaga qarab tez chiziladigan xomaki chizgilar, etyud, eskizlardan tortib, to puxta oʻylab, mulohaza yuritib ishlanadigan kompozitsiyalar (biror xrlat, manzara tasvirlangan; bezak maqsadiga xizmat qiladigan; shrift kompozitsiyalari)gacha. Grafik asarlari, mahsulotlari tez tayyorlash imkoni, sikl va turkumlar yaratish mumkinligi, tashviqot va targʻibotga mosligi va boshqa Uni tasviriy sanʼatning eng ommaviy muhim sohasiga aylantirdi. Texnikasi jihatidan grafika 2 turga ajratiladi: qoʻlda chiziladigan rasm va matbaada chop qilinadigan, koʻp nusxada nashr etiladigan bosma mahsulotlar (gravyura, litografiya, monotipiya va shahri k.). Rangtasvir bilan G. chegarasidagi akvarel, guash, pastel rang-tasvirga ham, G.ga ham mansub boʻlishi mumkin. Birinchisining tarixi juda qad. boʻlib ibtidoiy odamlar gʻor devorlariga, qoyatoshlarga chizib qoldirgan ibtidoiy sanʼat namunalaridan boshlanadi. Ikkinchisi, asosan, poligrafiya rivoji bilan bogʻliq, lekin poligrafiya sanoati vujudga kelishidan ancha oldin ham Xitoyda 6—7-asrlar (Yevropada 14—15-asrlar)da gravyura ishlangan. Litografiya esa 19-asrdagina vujudga keldi.
Bugungi kunga kelib grafika atamasi mutlaqo yangi yo`nalish yani dasturlash sohasining ajralmas bir qismiga aylanib ulgurdi.
C++ uchun grafik kutubxonalar UI ilovalarini ishlab chiqishni imkon qadar tez va qulay qilish imkonini beradi.
1.SFML
2.Qt
3.Qohira
4.Cocos2D-X
5.Sharbat
6.wxVidjetlar
7.SDL 2.0
8.GTK+
9.Xulosa
SFML
C++ SFML uchun grafik kutubxona
SFML (Simple and Fast Multimedia Library) C++ tili uchun eng qulay va tezkor grafik kutubxonalardan biridir. Uning shubhasiz afzalligi - bu tilni bilish darajasi va rivojlanish qulayligi uchun minimal talablar: bir necha kun ichida siz to'liq to'liq dastur yozishingiz mumkin. Masalan, birinchi grafik ilovasi "SFML ishlaydi!" bir daqiqada yozish mumkin. Yana bir afzalligi kross-platforma: SFML Windows, Linux (faqat X11, Wayland emas) va Mac OS ostida ishlaydi, uni Android va iOS uchun chiqarish rejalashtirilgan .
SFML kutubxonasidan asosan o'yinlar yaratish sevimli mashg'ulot bo'lgan kichik startaplar va dasturchilar tomonidan qo'llaniladi. Dasturning grafik qismini ishlab chiqish katta hajmdagi kod yozishni talab qilmasligi sababli SFML kichik jamoalar orasida mashhurdir.
Dastlabki kursni olishga harakat qiling .
Qt
C++ Qt uchun grafik kutubxona
Qt - bu tezkor va oson GUI dizayni uchun vositalar to'plami. Albatta, siz ham bu erda o'yin yozishingiz mumkin - nega emas? - lekin Qt dasturchilarni asosan tez, qulay, moslashuvchan va kross-platformali bo'lgani uchun o'ziga tortadi. Qt ko'p jihatdan hatto SFML ni ham ortda qoldirdi: kutubxona Windows, Linux va Mac OS da, mobil platformalarda ham mavjud - Windows Mobile, Android va iOS.
Qt C++ ni MOC (Meta Object Compiler) bilan kengaytiradi va qo'shimcha funktsiyalarni (signallar va uyalar kabi) taqdim etadi. Shuningdek, u pullik qo'llab-quvvatlash xizmatiga (shuningdek, pullik litsenziyaga) ega. Qt uchun IDElarning katta tanlovi mavjud: QtDesigner , QtCreator , QDevelop , Edyuk , shuningdek, Visual Studio, Eclipse va XCode bilan integratsiya.
Qt siz hissa qo'shishingiz mumkin bo'lgan ochiq manba mahsulotidir. Bizning maqolamizda C++ uchun boshqa ochiq kodli loyihalar haqida o'qing .
Siz ushbu kutubxonada tayyor kursdan o'tishingiz mumkin.
Qohira
C++ Cairo uchun grafik kutubxona
Qohira - Linux, Windows va Mac OS uchun vektor ko'rsatish kutubxonasi. Masalan, Mozilla kabi yirik loyiha Gecko brauzeri dvigatelida Qohiradan foydalanadi . Qohira shuningdek, ba'zi operatsion tizimlar (MorphOS, AmigaOS) va ilovalar (InkScape, Synfig, Graphite) asosida joylashgan. Kutubxonadan foydalanganda, rus tilidagi resurslarning etishmasligiga tayyor bo'ling.
Qohira GPU-ni yoqadigan OpenGL backend bilan o'zaro aloqada bo'lishi mumkin, bu, albatta , foydali xususiyatlarning to'liq ro'yxatini ochadi .
Cocos2D-X
cocos2d ramkasi
Cocos2D-X kross- platforma kutubxonasi mobil o'yinlarni ishlab chiqishni soddalashtirish uchun mo'ljallangan. Qt bilan bir xil platformalarni qo'llab-quvvatlaydi. Afzalliklar orasida Cocos Creator kutubxonasi asosida alohida o'yin dizaynerining mavjudligi, foydalanish qulayligi va yaratilishini ta'kidlash kerak . Dvigatelga asoslangan o'yinlar ro'yxati barcha mavjud platformalarda ishlaydigan dunyoga mashhur BADLANDni o'z ichiga oladi.
Agar siz o'yin yaratishda katta hajmdagi grafik va animatsiya bilan ishlashingiz kerak bo'lsa, unda Cocos2D-X o'rniga Unity-dan foydalangan ma'qul. Unity Photoshop, Maya yoki Blender kabi vositalar bilan muammosiz integratsiya qilish qobiliyatiga ega. Cocos2D-X da barcha grafikalar tashqaridan qo'shiladi va koddan havola qilinadi.
Runet-da ushbu kutubxona bo'yicha darslar yo'q, ammo ishlab chiquvchilar tomonidan ingliz tilida ajoyib kurs mavjud.
Sharbat
Sharbat ramkasi
Juce - bu C++ da ilovalar va plaginlarni yaratish uchun platformalararo ramka.
Juce haqida juda ko'p hujjatlar mavjud, lekin rus tilida emas. Shuning uchun siz “C++ da JUCE 4.2.x bilan dasturlash: oddiy misollar bilan JUCE kutubxonasidan foydalangan holda platformalararo multimedia ilovalarini yaratish” kitobini yuklab olishingiz mumkin .
Juce audio plaginlarini yaratish uchun o'rash interfeyslari to'plami uchun audio dasturiy ta'minot ishlab chiqaruvchilari orasida ko'proq mashhur.
wxVidjetlar
C++ wxWidgetlari uchun grafik kutubxona
wxWidgets GUI-ni ko'rsatish uchun eng qadimgi, ammo ayni paytda eng mashhur grafik kutubxonalardan biridir. Uning asosiy afzalligi ishlashdir. QT faqat tugmalar va aylantirish panellari kabi elementlar uchun past darajadagi koddan foydalansa-da, wxWidgetlar tizimga xos bo'lib, barcha elementlarni tizim uslubiga iloji boricha yaqinroq ko'rsatishga imkon beradi.
wxWidgets-ning muhim xususiyati, iloji bo'lsa, operatsion tizim interfeysining "mahalliy" grafik elementlaridan foydalanishdir. Bu ko'plab foydalanuvchilar uchun muhim afzallikdir, chunki ular ma'lum bir muhitda ishlashga odatlanib qolishadi va dasturlarning interfeysidagi o'zgarishlar ko'pincha ularning ishida qiyinchiliklarga olib keladi.
Internetda uning ishlab chiquvchilaridan kutubxona bilan ishlash bo'yicha dars bor.
SDL 2.0
C++ SDL uchun grafik kutubxona
SDL - bu ilovalar (asosan o'yinlar) yozish uchun mo'ljallangan o'zaro platformali 2D kutubxona. Windows, Linux, Mac OS, shuningdek, Android, Windows Mobile va iOS qo'llab-quvvatlanadi. Kutubxonaning afzalliklari - tezkorlik, ishonchlilik va foydalanish qulayligi. Shuningdek, kutubxonada tovush bilan ishlash uchun professional vositalar mavjud - bu yirik loyihalarni ishlab chiqishda katta ortiqcha.
wxWidgetlar bilan birlashadi va OpenGL bilan yaxshi integratsiyalashgan.
Habr-da chop etilgan darslarning butun turkumi mavjud.
GTK+
GTK+
Ehtimol, eng mashhur grafik kutubxonalardan biri. GTK+ - bu ko'plab tizimlarda keng qo'llaniladigan grafik ramka. U dastlab GIMP komponenti sifatida ishlab chiqilgan, ammo birinchi barqaror versiya chiqarilgandan keyin 20 yil ichida u yuzlab boshqa ilovalarda qo'llanilgan.
Endi GTK + - bu bir xil QT dan kam bo'lmagan to'liq huquqli grafik ramka. U turli dasturlash tillarini qo'llab-quvvatlaydi va rivojlanishda davom etmoqda.
O'z vaqtida kutubxona Qt ga muqobil ravishda yaratilgan bo'lib, u pullik edi. GTK+ C tilini qoʻllab-quvvatlaydigan kam sonli ramkalardan biridir.Kutubxona kross-platformadir, lekin Linuxdagi dasturlar Windows yoki Mac OS’ga qaraganda mahalliyroq koʻrinadi degan fikr bor (GTK+ hatto KDEda ham yaxshi qoʻllab-quvvatlanadi). Qizig'i shundaki, ba'zi o'zaro platforma muammolari tufayli Wireshark Qt ga o'tdi .
Birinchi dastur misol Vikipediya ko'rish mumkin .
Tez yorug'lik asboblar to'plami
FLTK ("fulltic" deb talaffuz qilinadi) - bu Windows, Linux (X11) va Mac OS da ishlaydigan grafik kutubxona. OpenGL bilan 3D grafiklarni qo'llab-quvvatlaydi va o'rnatilgan GLUT simulyatoriga ega. Interfeyslarni yaratish uchun o'rnatilgan dastur mavjud - FLUID. Kutubxona hujjatlari bu yerda .
Nana grafik kutubxonasi
Nana - zamonaviy C++ uslubidagi o'zaro platformali GUI dasturlash kutubxonasi . Qo'llab-quvvatlanadigan tizimlar: Windows, Linux (X11) va Mac OS (eksperimental). C++ 11\17-ni qo'llab-quvvatlash zamonaviy C++ funksiyalaridan foydalanish imkonini beradi: lambdalar, aqlli ko'rsatkichlar va standart kutubxona. Bu ramka emasligi sababli, Nana-dan foydalanish dastur arxitekturasiga ta'sir qilmaydi.
Xulosa
Siz har doim ma'lum bir texnologiyaning xususiyatlarini hisobga olishingiz kerak. Ilovangizning funksiyalari roʻyxatini yozing, barcha C++ grafik kutubxonalarining tavsiflarini qayta oʻqing va shundan keyingina oʻzingizga eng mosini tanlang.
Foydalanilgan adabiyotlar.
A.M.Polatov C++ tili bo’yicha o’quv qo’llanma.
Sh.F Madrahimov ,,C++ tilida dasturlash asoslar’’ kitobi.
A.X Nishanov, U.U.Turapov ,,C++ tilida dasturlash asoslari’’.
Sh.F. Madraximov ,,C++ tilida programmalash bo’yicha masalaalr to’plami’’.
Elektron Saytlar ro’yhati.
www.w3shool.uz
www.replit.com
www.e-library.namde.uz
www.uzbekdvs.uz
Dostları ilə paylaş: |