Preskočiť na hlavný obsah

Pečieme svoj web :-)

V poslednom článku som sa zastrájala, že vám idem v dohľadnej dobe vysvetľovať pojem "framework" a priblížiť svet technológií. Ja svoje sľuby plním. Ak toto bude čítať nejaký programátor, nech mi odpustí ten kuchynský žargón, ale tento blog je primárne určený pre ženy a kde najčastejšie nájdete ženy? No predsa v kuchyni. ;-)




Článok začnem definíciou z Wikipedie, podľa ktorej je framework "softwarová štruktúra, ktorá slúži ako podpora pri programovaní a vývoji a organizácii iných softwarových projektov. Môže obsahovať podporné programy, knižnice API, podporu pre návrhové vzory alebo doporučené postupy pri vývoji".

Moje vysvetlenie frameworku


Vieme, že základom pre prípravu toho najjednoduchšieho koláča sú ingrediencie ako vajíčka, múka, cukor v nejakých pomeroch, ktoré by ste v každom ohľade mali dodržiavať, aby sa vám koláč podaril. Každá tá surovina má svoju funkciu vo vzťahu k tým ostatným a pri jej spracovaní sa musí dodržiavať nejaká postupnosť. Vajce drží celú hmotu pohromade ako také lepidlo a robí koláč ľahkým (pričom z bielka sa robí sneh a primiešava sa nakoniec), múka vytvára objem a zahusťuje,... Samozrejme, existujú aj koláče s inými typickými prísadami ako napríklad olej, mlieko, maslo, kypriaci prášok, kakao, ovocie a mnoho iných. Nemôžete povedať, že bez nich koláč nepripravíte, ale keď sa rozhodnete nejakú použiť, mali by ste pridať také množstvo, aby to bolo v rozumných medziach, čiže v rámci nejakých konvencii. Nikto predsa nemá rád gumené koláče, ktoré nemôže ani požuť, alebo koláče ťažké ako kameň.

Receptúry na tie najlepšie koláče sa dedia z pokolenia na pokolenie. Chápte ich ako také frameworky. Každá tá receptúra má nejaký základ (vajíčka, múka, cukor) a potom nejaké suroviny navyše, ktoré tomu koláču dodávajú nejaké funkcie (jablká ho robia šťavnatým, oriešky ľahším, kypriaci prášok do pečiva nadýchanejším), ale ešte vždy máme možnosť k tomu pridať niečo, čo bežne nedávame (príchute, horiace sviečky, marcipánové ozdoby...).

Tak si teraz predstavte, že ste amatérska cukrárka a dostanete objednávku na tri druhy báboviek z piškótového cesta. Niekto by vzal tri rôzne recepty, rôzne mištičky a behal po celej kuchyni s tyčovým mixérom, dookola ho umýval a upiekol by od základu každú jednu bábovku zvlášť. Všetko teda bude robiť trojmo, aby napokon všetky chutili dosť podobne. Niekto sebavedomejší by možno ani nehľadal recepty, len pridával suroviny od oka a riskoval, že niečoho bude priveľa, niečoho príliš málo a tak. Ale potrebujeme to? Sú predsa osvedčené univerzálne postupy, s ktorými sa vám bábovka vždy podarí bez ohľadu na to, ako sa ju rozhodnete dochutiť. Kroky majú nejaké poradie a sú navrhnuté tak, aby vám nezaberali kopu času. Načo si teda komplikovať si prácu a skúšať, či sa to dá urobiť inak? Načo mať stovky receptov pre to isté?

Prečo by sme mali / mohli používať frameworky


Šikovnejšia žienka použije jeden jednoduchý a osvedčený recept, urobí cesto v jednej veľkej mise, rozdelí ho na tretiny, pričom do jednej primieša kakao a do druhej hrozienka. Recept má písaný v prehľadnej forme (asi odstavce), v nejakej zrozumiteľnej reči, žiadne litánie ani odborná terminológia. Nemusí ten recept pol hodiny študovať, aby ho pochopila. Ušetrí veľa času a veľa námahy. Má teda jeden recept ako jeden framework, ktorý jej uľahčí prípravu celého základu a len si ho prispôsobuje. Vieme, že bábovka má byť sladká, ľahká, kyprá... to sú atribúty, ktoré chce úplne každý. Čiže nesnažíme sa nanútiť klientovi niečo, čo už máme vytvorené a kde sú zložky, ktoré si neobjednal, ale vychádzame z potrieb bežnej praxe. Na chute klienta už stačí napasovať výsledný produkt pridaním toho, čo tam chcel mať. Chcel čokoládové kúsky? Kandizované čerešne? OK. Tak mu ich tam dáme.

A presne takto nejako sa "pečú" weby, ktoré si ako zákazníci objednávame. Netreba za tým hľadať zložitú štruktúru. Funkčný základ webov bude úplne rovnaký. Aj spôsob, akým sú pospájané jednotlivé funkčné časti a ako majú pracovať.

Ako framework uľahčuje prácu


Vysvetlím to opäť na príklade.

Dajme tomu, že máme objednávku na tri weby a všade sa bude niečo písať a zverejňovať. Jeden bude online zbierkou kuchárskych receptov, druhý bude školskou nástenkou, tretí sociálnou sieťou. Všade ako registrovaný hosť napíšem text, kliknem na tlačidlo "zverejniť" a text bude online. Jediné, v čom sa weby budú odlišovať, budú nejaké tie prídavné funkcie (zdieľanie príspevkov, pridávanie smajlíkov, fotiek) a potom sa budú líšiť nejakým dizajnom (jeden chce menu vpravo, druhý vľavo, tretí hore). Načo by ste písali každý web od piky a vymýšľali, akým spôsobom vyvoláte zverejnenie textu? To je predsa jedno. Princíp môže byť rovnaký. Načo budete vymýšľať, ako by sa dal pridať obrázok? Však aj to môžu mať všetky tri weby úplne rovnaké. Aj návštevník ocení, ak to nebude nejaká zložitá "klikačka", ale úplne bežný postup, ktorý pozná z iných webov. Programátor má teda tri možnosti.
  1. Urobí všetky tri weby od základov.
  2. Použije niektorý z kódov, ktoré už kedysi dávno napísal, kde má veľa funkcionalít, niektoré povyhadzuje, niektoré doprogramuje a celé to napasuje podľa žiadostí klienta.
  3. Použije svoj alebo nejaký bežne dostupný framework, "ukuchtí" si v ňom celé základy funkčného webu a napokon doprogramuje už len tie časti aplikácie, ktoré budú daný web odlišovať, aby splnil požiadavky zákazníka.
Ktoré riešenie sa vám pozdáva najviac? Mne to tretie, lebo celý web sa mi robiť nechce a nemám na to čas. Nemusím mať tiež k dispozícii práve taký kód, ktorý zákazníkovi bude vyhovovať a na ktorom sa veľa nenarobím.

Mohla by som ísť po tom druhom riešení a takticky klientovi nanútiť všetky funkcie starého webu a nerobiť takmer nič, no automaticky vyvolám podozrenie. Skôr ako k tejto taktike pristúpim, môžem si položiť otázku. Urobím to aj s bábovkou? Však čo ak je môj zákazník alergický na oriešky a ja mám zhodou okolností len taký recept, kde je kakao i oriešky? Poviem mu, aby si dal kúsok bábovky a zajedol to tabletkou potláčajúcou alergickú reakciu? Navrhnem, aby si na svojom webe zdieľanie príspevkov cez Facebook nevšímal, keď si vyslovene nepraje žiadnu spojitosť s Facebookom? Pokiaľ by som mala pracným spôsobom prenikať do niečoho starého a vyhadzovať z toho polovicu vecí, to si rovno môžem spraviť nový web. Koniec koncov, vždy sa v tom starom môže nájsť niečo, čo zabudnem prepísať a bude trapas. Zákazníkovi DM drogérie sa niekde na webe objaví nápis "Drogéria Teta". Hanba na sto rokov. :-D

Vytváranie obsahu vo frameworku má však oproti pečeniu koláča aj jednu super výhodu, lebo tieto programátorské technológie sú už o niečo ďalej než tie naše kuchynské praktiky. Nepotrebujete kuchárku. Vy len dáte rozkazy a on vám to "upečie" sám podľa definovaných pravidiel a v nejakom programovacom jazyku (napr. Ruby), čiže v nejakej forme, štruktúre, terminológii, aby ste do toho mohli kedykoľvek zasiahnuť a vykonať zmeny.

Uznajte, že so správnym a jednoduchým receptom v zrozumiteľnej forme + znalosťou ingrediencií (čo sa s čím mieša, v akom poradí, akým spôsobom, čo sa dá nahradiť) je každá žena hviezdou domácnosti. Podstatou celého programovania vo frameworku Ruby on Rails je to isté. Znalosť postupu, akým podnietite vytvorenie základov webu aj s jeho funkciami, znalosť jednotlivých komponentov a prepojení + znalosť jazyka.

Lenže pozor, lebo vy predsa nechcete vytvárať weby navzájom si podobné ako vajce vajcu. Aby ste mohli pridávať funkcie, budete musieť naučiť jazyk HTML, ktorému dodáte nejaký štýl (CSS) a s ich pomocou si personalizujete web presne podľa potrieb. Nie je to ľahké. Veď upiecť dobrý koláč tiež vyžaduje nejaký cvik. Už musíte tú svoju rúru poznať a vedieť, z ktorej strany vám tá potvora pripeká koláče. My ženy sme však povestné svojou všestrannosťou a schopnosťou vidieť súvislosti a venovať sa viacerým veciam naraz. Toto je pre dobrého programátora absolútne MUST.

Zdá sa vám to aj tak ťažké? Nezúfajte. Však ak sa aj nenaučíte kódiť, môžete zvládnuť aspoň základy personalizácie webov. Nie je až takou vedou vylepšiť si web či blog. S trochou snahy to zvládnete.

Komentáre

Obľúbené príspevky z tohto blogu

Intolerancia potravín = veľmi podceňovaná príčina AE

U niektorých ľudí sa atopický ekzém aspoň v lete zlepší. Navštevujeme rôzne miesta a ak sa podarí i výlet k moru, aspoň na pár dní, je to len a len skvelé. Atopia však nikdy nezmizne. Je schopná vám prihnať svrbenie doslova na počkanie. Čomu sa teda máte vyvarovať a čo nepodceniť? Než sa začnem venovať jednej z najzávažnejších príčin, prečo atopický ekzém nemizne zo životov ľudí, navrhujem zmeniť uhol pohľadu. Atopia nie je predispozícia alebo protivník, s ktorým musíte urputne bojovať. Už v minulom článku o atopii som spomenula, že za všetkým treba hľadať v prvom rade imunitu . Tej stres a panika neprospieva. Presne naopak. Pod vplyvom stresových hormónov pokožka svrbí ešte viac. Oveľa lepšie je nedať atopii zámienku , aby vôbec na vás ten atopický ekzém zoslala. K AE s pokojom - čím viac stresu, tým horšie Príkladom človeka postihnutého ekzémom vyvolaným stresom je môj priateľ. Každé stresové obdobie v práci uňho rozpoznám na prvý pohľad. Nohy má šupinaté ako koža ryby. Aj by som v...

Kontaktujte ma

Pred necelými 6 rokmi, teda v čase, keď bol na tomto blogu publikovaný prvý článok " Kto je Bridget a kto je Veronika? ", som ešte presne nevedela, o čom tento blog bude. Chvíľkami to bolo prevažne o kozmetike, potom zasa o sebe, potom o práci, zdraví... taká "všehochuť". Dnes je obsah úplne jasný a keby ste mali k nemu otázky, alebo chceli so mnou nejakým spôsobom spolupracovať, kontakt na mňa nájdete v tomto článku. Presne 1. 1. 2013 som sa rozhodla pre radikálny krok. Všeobecné informácie o kozmetických procedúrach, obchodoch a rutine ostali na tomto mieste. Aj naďalej píšem o všetkom, čo ľudí zaujíma či môže zaujímať a články rôzneho druhu pribúdajú. No recenzie konkrétnych kozmetických produktov dostali svoj samostatný priestor. Produkty pre krásu, kozmetika, kozmetické pomôcky i parfumy sa odsťahovali preč a dali vznik novému blogu. Blog Awards4beauty - kozmetické oskary od New Bridget vám ukáže recenzie každého zaujímavého produktu, ktorý som kedy mala a ak...

Rails Girls - ženy vo svete IT

Prestaňte snívať a podporovať mýty o tom, že programovanie je len pre mužov. Máte v mysli nejaké vylepšenia aktuálnych webových stránok, alebo by ste rady rozbehli svoje vlastné weby? Dajte svojím nápadom reálnu podobu. Existuje workshop, ktorý vám otvorí oči a trošku vám tento tajomný svet informačných technológií pootvorí. Vy sa už len rozhodnete, či doňho vstúpite. Viete to s počítačmi a nebojíte sa výzvy? Potom vykonajte krôčik vpred. Máte najvyššiu šancu uspieť. Cieľovou skupinou, na ktorú sa vzdelávací program Rails Girls zameral, sú práve ženy a dievčatá a z toho vznikol aj jeho názov. Jeho hlavnou myšlienkou je šírenie povedomia o programovaní webových stránok a webových aplikácií vo frameworku nazývanom Ruby on Rails (pojem framework vám vysvetlím v jednom z ďalších článkov, aby ste sa toho nezľakli). Programovanie nie je práve ľahký chlebík, ale čo je v dnešnej dobe jednoduché, však? Hlavné je chcieť a ešte ideálnejšie je mať k tomu nejakú vhodnú pomoc v podobe skúseného pria...