Django (framework web)

Django (shqiptohet: Xhengo(u); nganjëherë i stilizuar si django )  është një web framework i lirë dhe me burim të hapur, i bazuar në Python, që ndjek modelin arkitekturor model-template-views (MTV).   Ai mirëmbahet nga Django Software Foundation (DSF), një organizatë e pavarur e krijuar në SHBA si një organizatë jofitimprurëse 501(c)(3) .

Qëllimi kryesor i Django është të lehtësojë krijimin e faqeve të internetit të ndërlikuara, të drejtuara nga baza e të dhënave. Frameworku thekson ripërdorimin dhe "pluggability" të komponentëve, më pak kod, çiftëzim të ulët, zhvillim të shpejtë dhe parimin e mospërsëritjes .  Python përdoret kudo, madje edhe tek settings, skedarët dhe modelet e të dhënave . Django ofron gjithashtu një ndërfaqe opsionale administrative të krijimit, leximit, përditësimit dhe fshirjes që krijohet në mënyrë dinamike përmes introspeksionit dhe konfigurohet nëpërmjet modeleve të administratorit.

Disa sajte të njohura që përdorin Django përfshijnë Instagram,  Mozilla,  Disqus,  Bitbucket,  Nextdoor  dhe Clubhouse . 

 Veçoritë 

 Komponentët 
parapamje| Pamja e ekranit të ndërfaqes së administratorit Django për modifikimin e një llogarie përdoruesi
Megjithësse ka nomenklaturën e vet, siç është emërtimi i objekteve të thirrshme që gjenerojnë përgjigjet HTTP "views",  frameworku thelbësor i Djangos mund të shihet si një arkitekturë MVC .  Ai përbëhet nga një hartues relacional-objekt (ORM) që ndërmjetëson midis modeleve të të dhënave (të përcaktuara si klasa Python) dhe një bazë të dhënash relacionale (" Model"), një sistem për përpunimin e kërkesave HTTP me një sistem modelesh në internet (" View"), dhe një dispeçer URL i bazuar në shprehje të rregullt ("Controller").

Gjithashtu të përfshira në frameworkun bazë janë:

 një web server i lehtë dhe i pavarur për zhvillim dhe testim
 një sistem serializimi dhe vërtetimi i formave që mund të përkthejë midis formave HTML dhe vlerave të përshtatshme për tu ruajtur në bazën e të dhënave
 një sistem shabllonesh që përdor konceptin e trashëgimisë të huazuar nga programimi i orientuar nga objekti
 një framework cache që mund të përdorë cilëndo nga disa metoda të cache-it
 mbështetje për klasat e programeve të mesme që mund të ndërhyjnë në faza të ndryshme të përpunimit të kërkesave dhe të kryejnë funksione të personalizuara
 një sistem dispeçer i brendshëm që lejon komponentët e një aplikacioni të komunikojnë ngjarjet me njëri-tjetrin nëpërmjet sinjaleve të paracaktuara
 një sistem ndërkombëtarizimi, duke përfshirë përkthimet e vetë komponentëve të Django-s në një sërë gjuhësh
 një sistem serializimi që mund të prodhojë dhe lexojë përfaqësime XML dhe/ose JSON të shembujve të modelit Django
 një sistem për zgjerimin e aftësive të motorit të shablloneve
 një ndërfaqe me kornizën e integruar të testimit të njësisë së Python