You’re probably wondering what Django is right? Well, the best way to understand it is to first of all take a step back and understand what web frameworks are. Web frameworks are software applications that offer a standard and accessible way to create, develop, and publish web applications and web sites. Frameworks exist to save you from having to reinvent the wheel and to help alleviate some of the overhead when you’re building rich and sophisticated web applications.
With that in mind, the simplest way to define Django is that it’s a web application framework written in Python that’s free and open-source. It follows a custom Model View Controller architectural pattern which is best referred to as a model-template-view.
Why Programmers Choose Django
Django's primary goal is to ease the creation of complex, database-driven websites. The Framework emphasizes on:
- Reusability and "pluggability" of components
- Less code
- Low coupling
- Rapid development
- and the DRY principle (Don't Repeat Yourself)
Python is used throughout, even for settings files and data models. Django also provides an optional administrative create, read, update, and delete interface that is generated dynamically through introspection and configured via admin models.