What is Django? Why should I Learn Django?

Django is a web framework used to create a website. Django is not just another framework. It uses python programming language to create website.

Django is a very high level framework. You do not have to worry about most part of your project because Django will do it for you.

As we know that python is a high-level programming language and we don’t have to focus on underlying process like how the written code interact with hardware on basic level. The same thing apply to Django Framework. You can focus on the execution of your project while Django will do the back-end process for you.

Django has an explicit slogan: “THE WEB FRAMEWORK FOR PERFECTIONISTS WITH DEADLINES”

As you can understand from its slogan, the framework is for those people who wanted to create a perfect project with a deadline in their mind.

Django uses MVC (Model View Controller) pattern which helps to separate the logic from representation of your website.

Model View Controller Mechanism

Why Django?

Following are some benefits of using Django Framework (#from Django: Web development with Python Learning Path by packt):

Django is published under the BSD license, which assures that web applications can be used and modified freely without any problems; it’s also free.

-Django is fully customizable. Developers can adapt to it easily by creating modules or overridden framework methods.

-This modularity adds other advantages. There are lot of Django modules that you can integrate into Django. You can get some help with other people’s work because you will often find high-quality modules that you might need.

-Using python in this framework allows you to have benefits from all python libraries and assures a very good readability.

-Django is a framework whose main goal is perfection. It was specifically made for people who want clear code and a good architecture for their applications. It totally respects the Don’t repeat yourself (DRY) philosophy, which means keeping the code simple without having to copy/paste the same parts in multiple cases.

-With regards to quality, Django integrates lots of efficient ways to perform unit tests.

-Django is supported b a good community. This is a very important asset because it allows you to resolve issues and fix bugs very fast.  Thanks to the community, we can also find code examples that show the best practices.

Why Not Django?

Although, Django have lots of advantages to consider it as a first choice web framework. It do have some disadvantages also. Mainly if you are a beginner and don’t know much about console (because lots of things have to be done using shell or command-line applications like cmd / shell),  

Also, you may notice the change on some syntax with frequent update of Django framework.

Otherwise it is a perfect web framework to develop any Websites within a given deadline.