logo

Ar Symfony karkasas tinka el. parduotuvių kūrimui?

birželio 18 d., 2018 Autorius: Geistė Umbrasaitė

Šiandien, net 83% web aplikacijų bei svetainių yra sukurtos php programavimo kalba. O vienas iš galingiausių PHP įrankių – Symfony. Šiame straipsnyje aptarsime, kas tai yra Symfony, trumpai apibrėšime karkaso pliusus bei minusus ir padėsime identifikuoti, ar šis įrankis geriausiai atitiktų Jūsų poreikius.Symfony karkasa

Trumpai apie Symfony

Symfony karkasas yra SensioLabs kompanijos, turinčios 13 metų patirtį programinės įrangos kūrime, produktas. Karkasas yra kuriamas atviro kodo principu (angl. open source) ir nenuilstamai tobulinamas aktyvios tarptautinės bendruomenės iniciatyva.

Pagrindiniai Symfony privalumai programuotojams

  • Symfony naudoja paketus (angl. Bundles) – tai lyg komponentai, turintys savo failų struktūrą bei funkcionalumą. Jie yra viešai prieinami ir skirti pakartotiniam naudojimui bei funkcionalumui išgaut. Šiuos paketus galima kurti pačiam arba jau egzistuojančius surasti Symfony svetainėje.
  • Symfony karkase yra integruotas PHP Composer. Tai priklausomumo valdymo įrankis, užtikrinantis projekto versijų ir bibliotekų sintezę.
  • Taip pat į šį karkasą yra integruotas Doctrine – tai biblioteka, skirta darbui su duomenų bazėmis. Doctrine yra naudojama kaip abstrakcijos sluoksnis tarp veikimo logikos ir duomenų saugojimo. Kitaip tariant, Doctrine Jums suteikia galimybę keisti duomenų bazių valdymo sistemą (DBMS) nieko nekeičiant aplikacijoje.
  • Karkasas naudoja Twig šablonų variklį (angl. template engine). Šablonų variklis – tai programinė įranga, kuri dinamiškai atvaizduoja duomenis sukurtame vizualiniame šablone. Verta paminėti, jog šis šablonų variklis yra sukurtas ir toliau sėkmingai vystomas tos pašios kompanijos – SensioLabs.
  • Symfony turi integruotą kodo generatorių (angl. generator). Norint sugeneruoti Symfony paketą (angl. Bundle) tereikia paleisti reikiamą komandą komandinėje eilutėje.

Symfony ir elektroninė komercija

symfony_ecommerce

Kalbant apie elektroninę komerciją,  Symfony yra plačiai naudojamas, tačiau nėra išskirtinai elektroninių parduotuvių kūrimui pritaikytas karkasas. Elektroninėms parduotuvėms kurti geriau naudoti specialiai tam skirtas internetinių parduotuvių/svetainių kūrimo platformas (Magento, WordPress ar pan.), su kuriomis rezultatą galima pasiekti greičiau. Tačiau ką daryti, jeigu Jums reikia tose platformose negalimo funkcionalumo?

Pavyzdžiui:

  • valdyti sudėtingą dokumentaciją
  • sujungti elektroninę parduotuvę keliais kanalais (mobili programėlė, išoriniai API…)
  • naudoti Įvairias duomenų bazes (MySQL, PostgreSQL, MongoDB, Microsoft SQL…)
  • palaikyti kelių duomenų bazių sąveiką
  • verslo valdymo sistemos
  • ar klientų valdymo sistemos

Symfony karkasą reikėtų rinktis verslui, kuris nori unikalių sprendimų: vidinių sistemų (CRM, ERP…),  jų integracijos su elektronine parduotuve ir kita. 

 Pliusai

  • Symfony karkaso pagrindu sukurtos elektroninės komercijos platformos, o taip pat ir gigantas Magento – lengvai integruojami su sistemomis, kurtomis tuo pačiu Symfony.
  • Symfony, jeigu teisingai naudojamas, yra greičiausiai veikiantis php karkasas.
  • Gali pasigirti mažu resursų sunaudojimu.
  • Apsaugo nuo SQL injection.
  • Palaiko didžiulį vartotojų srautą.
  • Karkasas yra labai lankstus – sistemą galima kurti nuo nulio arba jau su esamais komponentais.
  • Symfony yra labai stabilus. Karkaso Versijos yra pilnai palaikomos Symfony kompanijos SensioLabs iki trijų metų, o saugumo klausimu – visą gyvenimą.
  • Su Symfony kuriamos inovacijos.
  • Karkasas neapribotas dizaino šablonais ar išankstinėmis struktūromis, todėl galima pritaikyti bet kurį dizainą.

Minusai

  • Kadangi Symfony yra skirtas unikaliems sprendimams – projekto įgyvendinimo pradžia užtrunka.
  • Symfony karkasas “daug sveria”, todėl nėra tinkamiausias mažesnės apimties projektams.

Pavyzdiniai projektai, kurti naudojant Symfony karkasą: BedrijventekoopMano susitikimai.

toolsJeigu Jums reikia didžiules apkrovas pavežančios svetainės, naujų sistemų ir/ar jų integracijos su elektronine parduotuve, vertėtų rinktis projekto įgyvendinimą naudojant Symfony karkasą.

O gal reikalinga elektroninė parduotuvė? Naudokite tinkamą įrankį darbui atlikti – rinkitės Magento.

Daugiau apie elektroninės parduotuvės kūrimą naudojant Magento galite skaityti mūsų straipsnyje „Magento platforma – profesionalams“.