Arhitektūras lēmuma ieraksts par Python Django ietvaru
Lēmuma datums: 2021-07-15
Statuss: pieņemts
Konteksts
Mūsu organizācija plāno izstrādāt tīmekļa lietojumprogrammu, kas pārvalda klientu datus. Mēs esam izvēlējušies Python kā programmēšanas valodu un apsveram Django kā tīmekļa ietvaru lietojumprogrammas izstrādei.
Lēmums
Mēs nolēmām izmantot Django tīmekļa ietvaru tīmekļa lietojumprogrammas izstrādei. Django nodrošina robustu rīku un funkciju kopumu tīmekļa lietojumprogrammu ātrai un efektīvai veidošanai.
Faktori
Daži no faktoriem, kas ietekmēja mūsu lēmumu, ir:
Objektu-relāciju kartēšana (ORM): Django ir iebūvēts ORM, kas ļauj mums mijiedarboties ar datubāzi bez SQL vaicājumu rakstīšanas. Tas atvieglo lietojumprogrammas izstrādi un uzturēšanu ilgtermiņā.
MVC ietvars: Django ievēro Model-View-Controller (MVC) arhitektūru, atvieglojot lietojumprogrammas biznesa loģikas un prezentācijas slāņu nošķiršanu.
Mērogojamība: Django ir pazīstams ar savām mērogojamības spējām, padarot to par izcilu izvēli liela mēroga lietojumprogrammu izstrādei.
Drošība: Django ir iebūvētas drošības funkcijas, piemēram, aizsardzība pret bieži sastopamiem tīmekļa uzbrukumiem, tādiem kā starpvietņu skriptēšana (XSS) un SQL injekcija.
Kopienas atbalsts: Django ir liela un aktīva kopiena, kas sniedz atbalstu un veicina ietvara attīstību.
Apsvērtās alternatīvas
Mēs apsvērām citus tīmekļa ietvarus, piemēram, Flask un Pyramid. Tomēr mēs atklājām, ka Django ir nobriedušāks un labāk iedibināts ietvars ar robustu funkciju kopumu.
Mēs apspriedām arī lietojumprogrammas izstrādi bez tīmekļa ietvara, izmantojot bibliotēkas, piemēram, SQLAlchemy un Flask-RESTful. Tomēr mēs atklājām, ka Django piedāvā plašāku funkcionalitāti, padarot to par labāku izvēli pilnīgai tīmekļa lietojumprogrammai.
Sekas
Django ieviešanai būs šādas sekas:
Vieglāk izstrādāt un uzturēt lietojumprogrammu, pateicoties Django iebūvētajiem rīkiem un funkcijām.
Biznesa loģikas un prezentācijas slāņa nošķiršana, kas noved pie organizētāka un vieglāk uzturama koda.
Lietojumprogrammas mērogojamība un robustums.
Iebūvētas drošības funkcijas, kas palīdz aizsargāt lietojumprogrammu pret bieži sastopamiem tīmekļa uzbrukumiem.
Piekļuve lielai un aktīvai kopienai atbalstam.
Mēs saprotam, ka Django ir stāvāka mācīšanās līkne nekā citiem ietvariem, taču uzskatām, ka ieguldījums ir vērts ilgtermiņa ieguvumu dēļ, ko tas sniedz.
Secinājums
Pamatojoties uz apsvērtajiem faktoriem, mēs nolēmām izmantot Django tīmekļa ietvaru tīmekļa lietojumprogrammas izstrādei. Mēs uzskatām, ka Django funkcijas, kopienas atbalsts un mērogojamības spējas padara to par labāko izvēli pilnīgas tīmekļa lietojumprogrammas veidošanai. Mēs apmācīsim savus izstrādātājus lietot Django, lai nodrošinātu ietvara efektīvu un lietderīgu izmantošanu.