Introducció

Flask és un microframework per al desenvolupament web en Python. És conegut per la seva simplicitat i flexibilitat, permetent als desenvolupadors crear aplicacions web ràpidament i amb una corba d'aprenentatge suau. A diferència d'altres frameworks més pesats com Django, Flask no ve amb moltes funcionalitats predefinides, la qual cosa permet als desenvolupadors afegir només les extensions que necessiten.

Característiques Clau de Flask

  • Microframework: Flask és lleuger i minimalista, proporcionant només les eines essencials per començar.
  • Flexibilitat: Permet als desenvolupadors estructurar les seves aplicacions com vulguin.
  • Extensible: Hi ha moltes extensions disponibles per afegir funcionalitats com bases de dades, autenticació, etc.
  • Basat en WSGI: Utilitza el protocol WSGI (Web Server Gateway Interface) per a la comunicació entre el servidor web i l'aplicació.
  • Jinja2: Utilitza el motor de plantilles Jinja2 per a la renderització de plantilles HTML.

Per què Utilitzar Flask?

  • Simplicitat: Ideal per a projectes petits i mitjans on no es necessiten totes les funcionalitats d'un framework més gran.
  • Flexibilitat: Permet una gran llibertat en l'arquitectura de l'aplicació.
  • Comunitat i Extensions: Té una comunitat activa i una gran quantitat d'extensions disponibles.
  • Documentació: Proporciona una documentació clara i detallada.

Comparació amb Altres Frameworks

Característica Flask Django
Tipus Microframework Framework complet
Configuració Minimalista Configuració per convenció
Extensibilitat Alta Moderada
Funcionalitats Bàsiques Completes
Corba d'aprenentatge Suau Moderada

Exemples Pràctics

Hola, Món amb Flask

A continuació, es mostra un exemple senzill d'una aplicació "Hola, Món" amb Flask:

from flask import Flask

app = Flask(__name__)

@app.route('/')
def hello_world():
    return 'Hola, Món!'

if __name__ == '__main__':
    app.run(debug=True)

Explicació del Codi:

  1. Importació de Flask: from flask import Flask

    • Importem la classe Flask del paquet flask.
  2. Creació de l'Aplicació: app = Flask(__name__)

    • Creem una instància de l'aplicació Flask.
  3. Definició d'una Ruta: @app.route('/')

    • Utilitzem el decorador @app.route('/') per definir la ruta principal de l'aplicació.
  4. Funció de Vista: def hello_world():

    • Definim una funció de vista que retorna el text 'Hola, Món!'.
  5. Execució de l'Aplicació: if __name__ == '__main__':

    • Executem l'aplicació en mode de depuració (debug=True) si el fitxer es crida directament.

Exercici Pràctic

Exercici 1: Creant la Teva Primera Aplicació Flask

Objectiu: Crear una aplicació Flask que mostri un missatge personalitzat a la pàgina principal.

Instruccions:

  1. Instal·la Flask si encara no ho has fet:
    pip install Flask
    
  2. Crea un fitxer anomenat app.py.
  3. Escriu el codi següent en app.py:
    from flask import Flask
    
    app = Flask(__name__)
    
    @app.route('/')
    def home():
        return 'Benvingut a la meva primera aplicació Flask!'
    
    if __name__ == '__main__':
        app.run(debug=True)
    
  4. Executa l'aplicació:
    python app.py
    
  5. Obre el navegador i visita http://127.0.0.1:5000/ per veure el missatge.

Solució: El codi proporcionat anteriorment és la solució a l'exercici. Si has seguit les instruccions correctament, hauràs creat la teva primera aplicació Flask que mostra el missatge "Benvingut a la meva primera aplicació Flask!".

Conclusió

En aquesta secció, hem après què és Flask, les seves característiques clau, per què és útil i com es compara amb altres frameworks com Django. També hem creat una senzilla aplicació "Hola, Món" per familiaritzar-nos amb la sintaxi bàsica de Flask. Amb aquests coneixements, estem preparats per configurar el nostre entorn de desenvolupament i començar a construir aplicacions més complexes.

Curs de Desenvolupament Web amb Flask

Mòdul 1: Introducció a Flask

Mòdul 2: Conceptes Bàsics de Flask

Mòdul 3: Formularis i Entrada d'Usuari

Mòdul 4: Integració de Bases de Dades

Mòdul 5: Autenticació d'Usuaris

Mòdul 6: Conceptes Avançats de Flask

Mòdul 7: APIs RESTful amb Flask

Mòdul 8: Desplegament i Producció

Mòdul 9: Proves i Millors Pràctiques

Mòdul 10: Extensions i Ecosistema de Flask

© Copyright 2024. Tots els drets reservats