Drills Academy: pyramid

An Academy of all Tutorials

Showing posts with label pyramid. Show all posts
Showing posts with label pyramid. Show all posts

Saturday, August 11, 2018

A List to Popular Python Frameworks

August 11, 2018 2
A List to Popular Python Frameworks
Python programming language is being popular for quite a few years and so does its frameworks. If you are new to Python programming language then I would recommend you to first learn Python Programming language. The reason behind Python popularity is its large number of frameworks, Python has a power to interact with almost every type of development platform either it is web, core development, database, data science, machine learning etc and there are much more to come. When it comes to languages and frameworks used for web development, ASP.NET and PHP are a nearly large number of frameworks available on the web such as Wordpress, Joomla, and other open source web applications built on PHP. But nowadays ASP.NET and PHP are not the daddies anymore because we have a wide variety of Python frameworks.




A Python framework is a platform for developing software applications. It provides a foundation for programmers to build programs for a specific platform. A framework may include predefined classes and functions that can be used to process input, manage hardware devices, and interact with system software. But a perfect choice of frameworks depends upon the programmer's needs, skill levels and preferences.



As a web developer, you would like a framework that enables you to rapidly develop and deploy applications. When it comes to a web application, there is always more to do than just coding your application. You need to understand the server side architecture and then there will be your application running on a Javascript enabled browser. Python has a wide range of frameworks, from cross-platform frameworks to platform-specific frameworks. In this post, we are going to discuss some of the best and widely used Python frameworks. Here, we are going to cover the top 5 most used frameworks of Python programming language.

  • Django
  • Pyramid
  • Web2py
  • Flask
  • CherryPy

Django




Django comes first in the list whenever we talked about Python frameworks. Django is a free open-source full stack Python framework that encourages fast growth and robust development. If you want to use your web app framework as CMS, Django probably be the good choice to go along with it. Django applications are based on MVT (Model View Template) design pattern which is similar to MVC. Django Framework uses ORM (Object Relational Mapper) to map its objects to database tables, which maps objects to queries, tables and records. The same concepts works with different databases resulting in the portability between databases types easier.  


Advantages of Django framework

  • Django ORM is so complete and powerful that process optimization becomes easy.
  • The Rest framework collection of Django is easy and we can develop applications without any restrictions.
  • The GUI for Django makes it popular Python framework among all, using GUI we can design applications seamlessly.
Official Django Website: https://www.djangoproject.com/
Best Django Tutorial: Learn Django Step by Step

Pyramid



Pyramid is an open source web application framework based on Python. Pyramid is rooted in two other products by Python: Pylons and repoze.bfg which are no longer developed. The legacy left by its predecessors caused Pyramid into a stable project. Pyramid was released in same year as Django (2005). Unlike Django, Pyramid framework is easy to customize and allows you to  create applications in a simple and sleek way. It does not force the programmer to use framework's phrases rather it allows programmers to code with an edge with high flexibility on standard projects. Some of the major Pyramid features are:
  • URL Generation
  • Extensible Configuration
  • Flexible authentication and much more.

Advantages of Pyramid Framework

  • Pyramid framework is very useful for creating small applications quickly.
  • Pyramid is best for developers working on API projects, Prototyping a concept & Developing large web applications, such as a CMS.
  • Easy integration of databases like NoSQL, MongoDB and CouchDB.
Official Pyramid Website: https://trypyramid.com/
Pyramid Tutorial: Official Pyramid docs

Web2py



Web2py Python Framework was originally designed as a tools for students so that they can learn design, development and deployment at same platform. Web2py is a full stack Python framework developed in 2007 by a Computer Science Professor Massimo Di Pierro. Web2py is used for rapid development of fast, scalable, secure and portable database-driven web-based applications. Web2py is written and programmed in Python, though it comes with own web-based IDE which includes features like code editor, debugger and one-click deployment.

Some of the bundled features of Web2py are amazing, since the are not present in other frameworks like:
  • two-factor authentication
  • helps creating javascript enabled websies with jQuery and Ajax
  • sending SMS messages

Advantages of Web2py

  • One of the most appealing feature is web2py have high qulaity documentation.
  • Web2py comes with the web based IDE with full support. 
  • Web2py is backward compatible. A site one makes two version old, needs to be updated.
Note: Web2py is quite popular Python framework but it is still not compatible with Python 3. Currently it supports Python 2.7, and there is no Python 3.X support.

Offical Web2py Website: http://web2py.com/
Best Web2py Tutorial: Learn Web2py Framework

Flask



Flask is a new web development Python framework that comes under BSD license. Flask framework is considered as Micro-framework, it comes with basic functionality but it allow you to easily expand it. Flask framework is best suitable for developers who need a standalone app and prototype something quickly because of its light weight and modular design. By default, Flask framework comes with Jinja template engine. It takes less time to setup that makes it quick and easy to use. Some of the notable features of Flask framework are:
  • support for Unit Testing
  • Unicode based
  • Built in debugger and development server.
  • Jinja template support

Advantages of Flask Framework

  • Web application development is convenient and easy to implement.
  • Email verification is easy to implement
  • Flask contains Jinja2 templating and Werkzeug WSGI toolkit.
Official Flask Website: http://flask.pocoo.org/
Best Flask Tutorial: Learn Flask Framework

CherryPy



CherryPy is an open-source HTTP framework based on Python programming language. CherryPy makes web development similar to building any other object oriented program. CherryPy is so powerful that a CherryPy powered web-app is a standalone Python application that embeds its own multi-threaded web-server. CherryPy is offered with an extremely low-level development environment which is an add-on over the HTTP protocol and allows interaction with all kinds of servers. Some of the important CherryPy features are:
  • powerful configuration system
  • flexible plugin system
  • Some of the best tools for caching, encoding, sessions, authentications and so on.

Advantages of CherryPy

  • It is used for designing various sites due to its simplicity and smoothness.
  • You can setup web applications and start testing on the go.
Official CherryPy Website: http://cherrypy.org/
Best CherryPy Tutorial: Learn CherryPy Framework

Conclusion

I hope the short summary of these Python frameworks will help you to decide which frameworks you are going to learn. You can accomplish everything you want with these frameworks, the above frameworks list are not mandatory for anyone and their are more Python frameworks to learn. This list particularly belongs to my choice and it may be differ accordingly. Now its your time move up. Read tutorials, practice code and get started with your first Python project with these frameworks.