Code Monkey home page Code Monkey logo

cursociudadrealpython's Introduction

Curso de introducción a Python, Django y API REST (EOI 2018 Ciudad Real)

logos

Archivos y documentación del curso en https://github.com/xleon/CursoCiudadRealPython

¿Qué hemos aprendido?

  • Conceptos básicos de python

    • Input: recoger entrada de datos en aplicaciones de consola
    • Asignación de variables
    • Manejo de strings
    • Operadores aritméticos
    • Operadores de asignación
    • Operadores condicionales
    • Listas
    • Tuplas
    • Diccionarios
    • Funciones y argumentos de función
    • Bucles
    • Imports
    • Fechas
    • Generación de números aleatorios y elementos aleatorios de una lista
    • Llamadas http
    • Imprimir con colores en la consola
    • Control de errores con try-except
  • Introducción a la programación orientada a objetos en python

    • Clases e instancias de clase
    • Herencia y herencia múltiple
    • Encapsulación con métodos privados
  • Cómo hacer un juego simple con una aplicación de consola, utilizando los conceptos aprendidos

  • Comandos básicos de git (init, status, add, commit, push, pull, remote, etc) para crear un repositorio

  • Utilización de GitHub para alojar nuestro respositorio

  • Utilizar la herramienta PipEnv para gestionar entornos virtuales y paquetes de nuestros proyectos

  • Instalación de proyectos django mediante línea de comandos

  • Configuración y utilización de Visual Studio Code para python y proyectos django

  • Configuración y utilización de PyCharm para python y proyectos django

  • Depurar un programa python con Visual Studio Code

  • Depurar un programa python con PyCharm

  • Introducción a los settings de django

  • Creación de modelos y relaciones entre modelos de django

  • Aplicar migraciones de datos en django

  • Utilizar y personalizar la herramienta admin de django

  • Creación de vistas html mediante plantillas/templates de django

  • Gestión de Urls en django

  • Introducción a REST y RESTfull: conceptos básicos (GET, POST, PUT, DELETE)

  • Instalación y configuración de django rest framework

  • Creación de ViewSets y serializers con django rest framework

  • Utilización de Postman para probar nuestra API REST

Ejercicio final

Para poner en práctica los conceptos aprendidos hemos creado una aplicación cliente-servidor. Se trata de un mini juego de lucha donde tenemos torneos, luchadores y combates. Una vez elegido un torneo presente en la base de datos, se podrán crear combates entre los luchadores disponibles (elegidos aleatoriamente). Cada luchador tiene un número de vidas y un nivel de poder, que irá perdiendo en cada combate. La pérdida total de poder implica pérdida de una vida. Cuando solo quede un luchador con vida se dará el torneo por terminado.

El servidor proporciona una API rest con django-rest-framework y el cliente (aplicación de consola escrita con python) se comunica mediante llamadas http utilizando la librería requests, tanto para recibir listados de datos como para enviar objetos/modelos que se guardarán en la base de datos.

fight game client and server

Extras

Enlaces de interés

Instalación y uso de python 3 y pipenv

Para trabajar en distintos proyectos de python/django es conveniente aislar entornos de python de manera que distintas versiones de paquetes o librerías no entren en conflicto. En este vídeo instalamos python 3 en Windows y además pipenv para gestionar entornos virtuales (virtualenv) de manera muy sencilla.

IMAGE ALT TEXT

Crear y lanzar proyecto django con línea de comandos

IMAGE ALT TEXT

Instalar y configurar Visual Stutio Code para python y django (windows y mac)

IMAGE ALT TEXT

cursociudadrealpython's People

Stargazers

 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.