Python Django markorako arkitektura-erabakien erregistroa
Erabakiaren data: 2021-07-15
Egoera: Onartua
Testuingurua
Gure erakundea bezeroen datuak kudeatzen dituen web aplikazio bat garatzeko asmoa du. Python aukeratu dugu programazio-lengoaia gisa eta Django web marko gisa aztertzen ari gara aplikazioaren garapenerako.
Erabakia
Django web marko erabiltzea erabaki dugu web aplikazioaren garapenerako. Djangok web aplikazioak azkar eta eraginkortasunez eraikitzeko tresna eta ezaugarri multzo sendoa eskaintzen du.
Faktoreak
Gure erabakian eragin duten faktoreen artean hauek daude:
Object-Relational Mapping (ORM): Djangok ORM integratu bat du, datu-basearekin SQL kontsultarik idatzi gabe elkarreragiteko aukera ematen diguna. Horrek aplikazioa garatzea eta epe luzera mantentzea errazten du.
MVC marko: Djangok Model-View-Controller (MVC) arkitektura jarraitzen du, aplikazioaren negozio-logika eta aurkezpen-geruzak bereiztea errazten duena.
Eskalagarritasuna: Django eskalagarritasun-gaitasunengatik ezaguna da, eta horrek aukera bikaina bihurtzen du eskala handiko aplikazioak garatzeko.
Segurtasuna: Djangok segurtasun-ezaugarri integratuak ditu, hala nola web eraso arruntetatik babesa, adib. cross-site scripting (XSS) eta SQL injekzioa.
Komunitatearen laguntza: Djangok komunitate handi eta aktiboa du, laguntza ematen duena eta markoaren garapenean laguntzen duena.
Aztertutako alternatibak
Beste web marko batzuk aztertu ditugu, hala nola Flask eta Pyramid. Hala ere, Django marko helduagoa eta finkatuagoa dela aurkitu dugu, ezaugarri sorta sendoarekin.
Aplikazioa web markorik gabe garatzea ere eztabaidatu dugu, SQLAlchemy eta Flask-RESTful bezalako liburutegiak erabiliz. Hala ere, Djangok funtzionalitate zabalagoa eskaintzen duela aurkitu dugu, web aplikazio oso baterako aukera hobea bihurtuz.
Ondorioak
Django hartzeak ondorio hauek ekarriko ditu:
Aplikazioa garatzeko eta mantentzeko errazagoa Djangoren tresna eta ezaugarri integratuengatik.
Negozio-logikaren eta aurkezpen-geruzaren bereizketa, kode antolatuagoa eta mantentzeko errazagoa ekarriko duena.
Aplikazioaren eskalagarritasuna eta sendotasuna.
Aplikazioa web eraso arruntetatik babesten laguntzen duten segurtasun-ezaugarri integratuak.
Laguntzarako komunitate handi eta aktibo baterako sarbidea.
Ulertzen dugu Djangok beste marko batzuek baino ikaskuntza-kurba aldapatsuagoa duela, baina eskaintzen dituen epe luzeko onuren aldean inbertsioak merezi duela uste dugu.
Ondorioa
Kontuan hartutako faktoreetan oinarrituta, Django web marko erabiltzea erabaki dugu web aplikazioaren garapenerako. Uste dugu Djangoren ezaugarriek, komunitatearen laguntzak eta eskalagarritasun-gaitasunek aukera onena bihurtzen dutela web aplikazio oso bat eraikitzeko. Gure garatzaileak Django erabiltzen prestatuko ditugu, marko eraginkortasunez eta eraginkorrean erabil dadin ziurtatzeko.