Persoonlijke hulpmiddelen
Zest Software
U bent hier: Home separator Oplossingen separator Webapplicaties separator Django Web Application Framework

Django Web Application Framework

Django is een web-ontwikkelomgeving waarmee programmeurs en ontwerpers in korte tijd flexibele webapplicaties kunnen bouwen. De Engelse slogan voor Django is 'The Web framework for perfectionists with deadlines'. Zest Software gebruikt Django bij diverse projecten met goed resultaat.

Herkomst van Django

DjangoDjango ontstond in 2003 als interne ontwikkeltool bij een regionale krantenuitgeverij in de VS voor het bouwen van hun nieuws-websites. In 2005 werd het vrijgegeven als Open Source project en sindsdien gebruiken een groot aantal bedrijven en ontwikkelaars dit platform. Google heeft Django zelfs gebruikt als basis voor hun Google App Engine Cloud computing platform.

Wat is Django?

Django is een set bibliotheken en een raamwerk waarme programmeurs razendsnel webapplicaties kunnen bouwen. In de bibliotheken zitten functies om eenvoudig web-pagina's (HTML) te genereren, formulieren op te bouwen, gegevens in een relationele database op te slaan en weer op te vragen, e-mail te versturen en nog veel meer hulpmiddelen. Doordat al deze functies al beschikbaar zijn, hoeft de programmeur ze niet meer zelf te ontwikkelen.

Django administrator panelVoor het gegevensbeheer heeft elk Djangoproject een ingebouwde administratie-website, waarmee een beheerder op een apart afgeschermd gedeelte alle gegevens die in de database staan kan bewerken. Deze admin-pagina's zijn zeer eenvoudig door de programmeur toe voegen en aan te passen aan de administratieve behoefte in het project. Daarnaast heeft Django een zeer modulaire opzet, waardoor het voor Django-ontwikkelaars en gebruikers zeer eenvoudig is al gemaakte onderdelen te hergebruiken in verschillende projecten of ook publiek beschikbaar te stellen. Er zijn inmiddels honderden van dit soort 'componenten' beschikbaar voor hergebruik.

SatchmoDjango is, in tegenstelling tot bijvoorbeeld Plone, geen kant en klare applicatie die een organisatie kan installeren en gebruiken voor hun website. Er zijn wel diverse applicaties die in Django gemaakt zijn die al wel 'out of the box' functionaliteit bieden, zoals de online winkel applicatie 'Satchmo' of het social networking platform 'Pinax'.

Door de modulaire opzet zijn op Django gebaseerde applicaties als Satchmo en Pinax vrij eenvoudig aan te passen aan uw specifiek behoeften door extra modules toe te voegen of bestaande modules uit te breiden of te vervangen door een op maat gemaakte versie.

Kant-en-klare applicatie of Framework

Of: waarvoor maakt Zest Software gebruik van Django?

Zest Software werkt al sinds haar oprichting met het Content Management Systeem Plone. Plone is een complete webserver-applicatie en biedt standaard na het installeren al een imposante veelheid aan functionaliteit en onze klanten kunnen er zonder veel maatwerk al complete websites in beheren. Plone is uitermate geschikt voor content en documentbeheer en het ontsluiten van informatie. De architectuur is dermate flexibel dat alle compenten uit het systeem kunnen worden uitgewisseld of aangepast: het grafische thema, de soorten documenten, het rechtenbeheer, alles.

De grote hoeveelheid aan standaard functionaliteit en de nadruk op content beheer in Plone is een groot voordeel voor publicatiewebsites en informatiesystemen, maar kan zowel bij de ontwikkeling als het gebruik ervan een nadeel zijn als uw project weinig 'document-achtige' content heeft en meer een webapplicatie is met een beperkt aantal pagina's, maar bijvoorbeeld wel grote hoeveelheden database-gegevens.

Actie-websites

Bram Ladage geeft een rondjeEen goed voorbeeld is de website ter ondersteuning van een marketingactie zoals 'Bram geeft een Rondje'. Hierbij kunnen deelnemers zich aanmelden, actie-codes registreren en vervolgens met de ingevulde codes prijzen winnen. De verschilende informatietypes zijn gering (deelnemers, codes, prijzen), maar de hoeveelheden kunnen natuurlijk wel enorm zijn (actiecodes en gebruikers).

Een op documenten gebaseerd content management systeem zou voor deze informatietypes veel te zwaar zijn. Functionaliteit als documentbeheer, geavanceerd toegangsbeheer, een online grafische tekstverwerker en hierarchische mapstructuren zitten zowel de programmeur als de beheerder van de website alleen maar in de weg; ze zijn niet nodig maar ondertussen vereist de website wel zeer krachtige hardware omdat de ongebruikte functies wel geladen zijn.

Kosten-effectief

Door dezelfde applicatie op basis van Django op te bouwen is de applicatie op maat gemaakt en draaien in het systeem alleen die modules die echt nodig zijn. En precies volgens het interactie- en grafisch ontwerp. Ook de ontwikkelkosten zijn binnen de perken gebleven. Alhoewel de applicatie vanaf de grond af is opgebouwd, hoefde er geen bestaande functionaliteit uitgeschakeld, verplaatst of aangepast te worden. Deze ontwikkelkosten worden vaak onderschat bij het plannen van een applicatie.

Bewezen

Voor Zest Software heeft Django zich bewezen:

  • Een lichte manier van ontwikkelen, alleen datgene komt in de applicatie wat de klant nodig heeft
  • Volledig gebaseerd in Python, Zest Software werkt al jaren met deze object-georiënteerde robuuste programmertaal
  • Uitstekende documentatie op www.djangoproject.com en diverse recente boeken
  • Goede performance van de website, ook als er veel dynamische elementen in voorkomen.

Is Django ook geschikt om uw webapplicatie in op te zetten? Neem contact met ons op en we adviseren u graag over de voor- en nadelen van Django en Plone en welk systeem (of combinatie) in uw specifieke situatie geschikt is.

 

Document acties
Delen |