Arkitektúrákvörðunarskrá fyrir Python Django ramma
Dagsetning ákvörðunar: 2021-07-15
Staða: Samþykkt
Samhengi
Stofnun okkar áformar að þróa vefforrit sem heldur utan um gögn viðskiptavina. Við höfum valið Python sem forritunarmál og erum að íhuga Django sem veframma fyrir þróun forritsins.
Ákvörðun
Við höfum ákveðið að nota Django-veframmann fyrir þróun vefforritsins. Django býður upp á öflugt safn verkfæra og eiginleika til að smíða vefforrit hratt og skilvirkt.
Þættir
Sumir þeirra þátta sem höfðu áhrif á ákvörðun okkar eru:
Hlutvarpun gagnagrunns (Object-Relational Mapping, ORM): Django hefur innbyggða ORM sem gerir okkur kleift að eiga samskipti við gagnagrunninn án þess að skrifa SQL-fyrirspurnir. Þetta auðveldar þróun forritsins og viðhald þess til lengri tíma.
MVC-rammi: Django fylgir Model-View-Controller (MVC) arkitektúr, sem auðveldar aðskilnað viðskiptarökfræði og framsetningarlaga forritsins.
Stigstærð: Django er þekkt fyrir stigstærðargetu sína, sem gerir það að frábærum kosti til að þróa stór forrit.
Öryggi: Django hefur innbyggða öryggiseiginleika, svo sem vörn gegn algengum vefárásum eins og krosssvæðisskriftun (XSS) og SQL-innsprautun.
Stuðningur samfélagsins: Django hefur stórt og virkt samfélag sem veitir stuðning og leggur sitt af mörkum til þróunar rammans.
Valkostir sem voru skoðaðir
Við skoðuðum aðra veframma eins og Flask og Pyramid. Við komumst þó að því að Django er þroskaðri og rótgrónari rammi með öflugt safn eiginleika.
Við ræddum einnig að þróa forritið án veframma og nota söfn eins og SQLAlchemy og Flask-RESTful. Við komumst þó að því að Django býður upp á víðtækari virkni, sem gerir það að betri kosti fyrir fullkomið vefforrit.
Afleiðingar
Upptaka Django mun leiða til eftirfarandi afleiðinga:
Auðveldara að þróa og viðhalda forritinu vegna innbyggðra verkfæra og eiginleika Django.
Aðskilnaður viðskiptarökfræði og framsetningarlags, sem leiðir til skipulagðari kóða sem auðveldara er að viðhalda.
Stigstærð og styrkur forritsins.
Innbyggðir öryggiseiginleikar sem hjálpa til við að verja forritið gegn algengum vefárásum.
Aðgangur að stóru og virku samfélagi til stuðnings.
Við gerum okkur grein fyrir að Django hefur brattari námsferil en aðrir rammar, en við teljum það þess virði að fjárfesta fyrir þann langtímaávinning sem það veitir.
Niðurstaða
Á grundvelli þáttanna sem voru skoðaðir höfum við ákveðið að nota Django-veframmann fyrir þróun vefforritsins. Við teljum að eiginleikar Django, stuðningur samfélagsins og stigstærðargeta geri það að besta kostinum til að smíða fullkomið vefforrit. Við munum þjálfa þróunaraðila okkar í notkun Django til að tryggja að rammanum sé beitt á áhrifaríkan og skilvirkan hátt.