Before understanding the term flask, we have to go through the basic term known as the framework (or web framework).
At the beginning of web development, all applications were hand-coded, and only the developer of a particular application could modify or implement it. Web frames have introduced a simple way out of this trap. Since 1995, all the hassle associated with changing the structure of an application has been put in order due to the appearance of general performance. And it was then that specific web languages appeared. Its variety now works well for both static and dynamic websites. You can choose a framework that covers all your needs or combine different ones, depending on your requirement.
A framework is a kind of platform used for developing the applications; it may be a software application or a web application. We can say that a framework provides a foundation on which the user or developer can build programs for the specific platform.
For Example, a framework may contain predefined functions, classes that can be used to process input, use to manage hardware devices, and interact with system software.
In some cases, a framework can be supported natively by an operating system. We can understand as a program written for the Android Application Framework will run fine on an android device without requiring other additional files or some packages, on the other hand, some application requires a specific framework in order to run fine, for example, a windows application may require a specific .NET Framework 4.0, which is not installed on all devices supported windows especially PCs that have older versions of windows.
Web FrameWork can also be defined as a code library that contains predefined functions, and classes depending on what kind of context it is. A framework is designed to support the development process faster and much more comfortable without worrying about a lot of things by providing the typical pattern for building a more scalable, reliable, and maintainable web application. After 2000, most web developer professionals always use an existing web framework for web development, web applications, etc.
Flask is a kind of micro web framework that is written in Python and constructed on the basis of the jinja2 template engine and Werkzeug toolkit. It comes in the micro-framework category because it doesn’t require any particular libraries or tools. Flask is equally good for the small, as well as for the large applications.
Flask is a micro-web framework that is written in Python. It can be defined as a micro-framework because it does not require special tools or libraries and does not have a level of database abstraction, module validation, or other components in which pre-existing third-party libraries provide standard functions. However, Flask also supports extensions that can add application functionality as if they were implemented in Flask itself. There are extensions for mappers of relational objects, module validation, load management, various open authentication technologies, and numerous common tools related to the framework. Extensions are updated much more frequently than the main Flask program.
Flask is a part of the micro-framework categories. Micro-frameworks are general frameworks with little or no dependence on external libraries.
Advantages of the flask
- It is lightweight.
- There is a low dependency to update and monitor security errors.
- It has small core and easily extensible
- It is simple to learn and use
- Routing URLs is easy
- Minimalist without sacrificing power
Disadvantages of the flask
- Most of the work can be done on your own
- It increases the list of dependencies by adding additional components.
- It has limited features
- Lack of database/ORM/forms
- Limited support and documentation