PHP: ming ramkalarning mamlakati

Muallif: Louise Ward
Yaratilish Sanasi: 6 Fevral 2021
Yangilanish Sanasi: 18 Mayl 2024
Anonim
Bekorchilar makoni (o’zbek film) | Бекорчилар макони (узбекфильм) #UydaQoling
Video: Bekorchilar makoni (o’zbek film) | Бекорчилар макони (узбекфильм) #UydaQoling

Tarkib

Qaysi ramkadan foydalanishimni so'rang, ehtimol men g'amgin kampirga duch kelaman va sizga barcha ramkalar bir-birlariga o'xshab yomonligini aytaman. Bu ularning hammasi yomon, demoqchi emasmiz, lekin PHP-da biz tasavvurga ega bo'lmagan juda ko'p sonli ramkalarga egamiz (odatda N + 1 deb nomlanadi, bu erda N - bu PHP dunyodagi ishlab chiquvchilar soni) va ularning barchasi ehtimol mantiqan ularni ixtiro qilgan kishiga.

Ramkalarni tanlash imkoniyatiga ega bo'lish, aynan nimani yaratmoqchi bo'lganligingizdan qat'iy nazar, faqat bitta ramkadan foydalanishga urinishdan ko'ra yaxshiroqdir, chunki bu "eng yaxshi" (har qanday "eng yaxshi" o'lchov bilan). Ushbu ramka takliflari sizning loyihaning ehtiyojlariga javob beradigan narsani tanlashingiz mumkinligini anglatadi va u hatto hujjatlashtirilgan bo'lishi mumkin. Har qanday platformadagi ramkalar, albatta, tuzilma, qayta ishlatilishi mumkin bo'lgan modullar va kutubxonalar bilan ta'minlanadi va odatda bir xil funktsiyalarni qayta-qayta yaratish bilan bog'liq barcha zerikarli va takrorlanadigan vazifalardan qochadi. Masalan, CMS-lar qurishda, men uchun biror narsa ishlov berish va tasdiqlash kerak; agar o'z holimda qoldirsam, men muhim bir narsani sog'inib qolishim mumkin va men har bir loyihaning elementlarini bajarishni afzal bilaman boshqacha, har safar bir xil bo'lganlardan ko'ra!


To'liq to'plamli ramkalar

To'liq to'plamli ramkalar, masalan Zend Framework, juda ko'p me'moriy tajribasiz ishlab chiquvchi uchun yaxshi joy bo'lishi mumkin. Bu yangi dasturni osib qo'yish uchun yaxshi tuzilma beradi va uning atrofida yaxshi "ekotizim" mavjud - juda ko'p kitoblar, o'quv qo'llanmalari va ba'zi bir oqilona hujjatlar. Agar siz ko'plab odamlar tomonidan qo'llab-quvvatlanadigan katta dastur yaratmoqchi bo'lsangiz, unda taniqli va keng qamrovli tuzilma yaxshi tanlov bo'lishi mumkin, chunki u juda ko'p tuzilishni belgilaydi va taniqli va tushunarli bo'ladi.

Ajratishga yordam beradigan tuzilishga ega bo'lish har doim yaxshi; kariyeramning boshida men ba'zilar bilan ishladim juda kichik ishlab chiquvchilar va ularga o'sha paytda nisbatan yangi bo'lgan MVC (Model View Controller) naqshini o'rgatishga harakat qilishdi. Smarty-ni ko'rish qatlamida ishlatish to'g'risida qaror qabul qildik; qisman dizaynerlar shablonlar bilan osonroq ishlashi uchun va qisman mening stolimga kimdir kelib: "Smarty bilan X ni qanday qilaman?" "X ko'rinishda qilmang!" Deb ayta olaman. (10 dan to'qqiz marta, bu javob edi). Ramkalarga ega bo'lish, dasturimizning boshqa qismlarida ham xuddi shunday ajratishni topishga yordam beradi. Ularning aksariyati "Smarty" yoki mening yangi sevganim "Twig" kabi jozibali qatlamga qarshi integratsiyani qo'llab-quvvatlaydi, shuning uchun qaysi vositani tanlasangiz, o'sha vositalarni olib yurishingiz mumkin.


Yukni engillashtiring

Zend Framework-dan ko'ra engilroq ramkalar juda ko'p, masalan, men CodeIgniter bilan biroz ishlayman. Bu Zend Framework kabi keng qamrovli va mustahkammi? Yo'q, unday emas. Ilovani tezda yaratishga imkon beradigan yordamchi ramka sifatida bu juda foydali. Umuman olganda, kamroq "yordamchi" funktsiyaga ega ramkalar sizning yo'lingizni topishda osonroq bo'lishi mumkin, chunki qismlar qanday birlashishi ancha ravshanroq. Noma'lum doirada (men uchun bu deyarli hamma narsa), bu ishlashni va disk raskadrovka qilishni qiyinlashtiradigan avtomagik bitlar.

Ushbu "yangi doirada yo'qolib qolish" hissi muqarrar va umuman umidsizlikka uchraydi; hatto tajribali ishlab chiquvchi ham biron bir narsaning qanday ishlashini bilmaganida o'zini yangi boshlovchi kabi his qiladi. Agar chindan ham omadingiz kelmasa, siz IRC kanali sizga ahmoq ekanligingizni aytadigan ramkani tanlagan bo'lasiz! Aynan mana shu juda salbiy dastlabki tajriba ko'plab odamlarni yangi ramkadan foydalanishni yoki uni birinchi navbatda qabul qilishni to'xtatib qo'yadi va juda ozgina ramkalar ushbu to'siqdan yangi foydalanuvchilarga yordam berishda yaxshi ishlaydi.


PHP-da bizda ba'zi bir ramkalar mavjud bo'lib, ular aslida men so'zni ishlatadigan asos emas. Bizda juda yoqimli tarkibiy qismlar mavjud; o'z xohishiga ko'ra ishlatilishi va birgalikda o'ynashga mo'ljallangan Zeta Componentlar (ilgari eZ Componentlari) va Symfony Componentlari kabi kutubxonalar to'plamlari (ularning saytini ko'rganmisiz? Ular eng yaxshi san'at asarlari mukofotiga sazovor bo'lishdi!). Bulardan eng yaxshisi va eng muhimi, albatta, PHP-ning o'zining PEAR va PECL takliflari - bu jasur yangi dunyo dunyosida qandaydir tarzda unutilib ketadi.

Mikroframeworks

Mikroframeworks - bu PHPda paydo bo'layotgan tendentsiya; bu juda oson takliflar, bu shunchaki narsalarni tezroq yopishtirishga yordam beradi. Yaxshi misol - bu juda tez va sodda foydalaniladigan va RESTful tushunchalarini tushunadigan Slim. U URL naqshlari bo'lgan "marshrutlar" g'oyasi atrofida asoslangan. Siz marshrutni ro'yxatdan o'tkazasiz va ushbu URL so'ralganda qayta chaqiriladigan qo'ng'iroqni qaytarasiz.

Ko'pgina PHP ishlab chiquvchilari ramkalarni qabul qilishadi va ular bilan ishlashadi, yoki ular ish joylarida, boshqalari esa o'zlarining sevimli mashg'ulotlari yoki ochiq kodli loyihalari uchun foydalanishlari mumkin. "Eng yaxshi" ramka haqida ozgina kelishuv mavjud, shuning uchun hamma o'z bilgan narsalariga sodiq qoladi va natijada juda ko'p sonli ramkalarning parallel rivojlanishi bo'ladi! Tanlashim kerak bo'lgan tanlovni yaxshi ko'raman, lekin ularning hammasi bir-birlariga o'xshab yomonligini aytib o'tdimmi?

Agar siz Zend Frameworkni bilsangiz, u holda siz o'zingizni Zend Framework ishlab chiqaruvchisi sifatida tasvirlaysiz; u bilan ishlash imkoniyatiga ega bo'lmaguningizcha, boshqa doirada yozish sizga qulay bo'lmaydi va ehtimol siz PHP funktsiyalarining ko'pini eslay olmaysiz, agar siz ularni tez-tez ishlatmasangiz. Biz ramkaga xos ishlab chiquvchilarga aylandik, faqat abstraktsiya qatlamlari ustida ishlaymiz, degan fikr PHP uchun biroz g'alati. Axir bu "veb-muammoni hal qilish uchun" til. Bu C tilida yozilgan va o'zi uchun tezkor, engil til ... katta ramka yuklash jarayoni bajarilishini kutmasligingizni ta'minlaydi! Shu nuqtai nazardan biz Funkatron deb atagan odam yozgan MicroPHP Manifesti paydo bo'ldi (garchi uning ismi haqiqatan Ed Finkler bo'lsa ham). Bu bir-biriga mos keladigan bir nechta kichik modullarni yaratish yaxshi, bundan kattaroqi yaxshi emas va haqiqatan ham Java uchun hayot juda qisqa - hatto PHP-da yozilgan bo'lsa ham, bu bir qator bayonotlar.

So’Nggi Xabarlar
Tasviringizni kuchaytirish uchun 15 ta kontseptsiya san'ati qobiliyatlari
Ko’Proq O’Qish

Tasviringizni kuchaytirish uchun 15 ta kontseptsiya san'ati qobiliyatlari

Mening ra miy ma hg'ulotlarim illyu trat iya edi, lekin men o'n yillardan beri bola ifatida "Yulduzlar jangi an'ati" turkumidagi kitoblar va bo hqa "kino ehrlari" kabi ...
Dreamweaver jiddiy veb-dizayn vositasimi?
Ko’Proq O’Qish

Dreamweaver jiddiy veb-dizayn vositasimi?

Adobe Dreamweaver Creative Cloud panteonida qiyin joyni egallaydi. Photo hop, Illu trator va InDe ign o'x ha hlari o'zlarining ijodiy ohalarida amalda tandartlar bo'l a-da, Dreamweaver veb...
Bu eng ijodiy selfilarmi?
Ko’Proq O’Qish

Bu eng ijodiy selfilarmi?

o'nggi 12 oy ichida " elfi" deyarli barcha ijtimoiy media kanallarini egallab oldi. Animator va Creative Bloqning evimli i Endi Martin " elfi" uchun quvnoq odni yaratdi; uper ...