Introducción A La Programación - Python - Prep Course
Introducción A La Programación - Python - Prep Course
Intro Intro a la Programación Tipos de Datos Flujos de Control Estructuras de datos Iteradores e Iterables Funciones Clases y OOP Error Handling
Preparando tu computadora
Antes de comenzar deberás descargar en tu computadora las siguientes herramientas de trabajo:
1. Editor de texto
2. Git
3. Github
4. Python
Luego deberás realizar la clonación del repositorio. Te explicamos cómo hacerlo en el tutorial:
Importante: Github cambió el método de autenticación, ahora es por PAT (Personal Access Token), para crearlo pueden seguir este link. Pueden elegir
expiration infinita para hacerlo una sóla vez.
SLACK
Slack es una plataforma de comunicación que utilizamos en Henry para estar conectados. Por este medio podrás recibir comunicados y mantener
conversaciones con toda la comunidad de Henry.
Para ingresar al espacio de Slack del Prep Course de Henry, por favor revisa el los mails que recibiste al avanzar con el proceso de admisión dado que ahí
encontrarás el link de acceso
Editores de Texto
Para poder escribir código que pueda ser interpretado por un lenguaje de programación, necesitamos utilizar un editor de texto.
Hay varios, puedes probarlos y optar por el que te sientas más a gusto.
Sublime Text
Es un editor de texto liviano, que cuenta con una serie de plugins para adaptarlo a las necesidades de cada desarrollador.
En Windows o en OS X
2. Al ingresar, detectará automáticamente el sistema operativo que tenemos, y nos sugerirá descargar el instalador apropiado.
5. Finalizada la descarga, ejecutamos el instalador, seleccionamos las opciones siguiente, siguiente, etc, hasta completar el proceso.
1. Nos dirigimos al sitio oficial de Sublime Text. Aquí encontrarás las instrucciones para instalarlo:
3. Para asegurarnos de que apt esté configurado para trabajar con orígenes https, ejecutamos:
Atom
Es un editor de código abierto, disponible tanto para Windows, como Linux y para OS X.
Tiene integrada una consola de Git y Github, para llevar un control de versiones de tus proyectos.
Para comenzar el proceso de instalación, realizamos los siguientes pasos:
https://atom.io/
Al ingresar, el navegador detecta automáticamente el instalador que necesitamos bajar, según nuestro sistema operativo.
En Windows
Una vez finalizada la descarga, hacemos doble click en el instalador y esperamos a que finalice el proceso de instalación.
En Ubuntu y derivados
Tiene integrado el control de versiones mediante Git y Github para tener un seguimiento de tus proyectos. Brinda una cantidad de extensiones que facilitan
el trabajo de un desarrollador.
Para descargarlo, nos dirigimos al sitio oficial, en la sección Download y descargamos el instalador según nuestro Sistema Operativo:
https://code.visualstudio.com/download
Git
¿Qué es Git?
Git es un sistema de control de versiones, distribuido y open source. Un control de versiones es un sistema que registra los cambios realizados en un archivo
o conjunto de archivos a lo largo del tiempo, de modo que puedas recuperar versiones específicas más adelante.
Instalación
https://git-scm.com/book/es/v2/Inicio---Sobre-el-Control-de-Versiones-Instalación-de-Git
https://www.youtube.com/watch?v=PSULlxUk744
https://www.youtube.com/watch?v=oV0spTF71AI
Para Windows
Ingreso a https://git-scm.com y descargo la última versión.
Una vez descargado, se abre el archivo .exe y van a visualizar la siguiente ventana
En este momento de la instalación, si quieren, pueden elegir el editor de texto que van a usar. (Importante, ténganlo instalado antes de instalar Git)
Por último, ¡finalizar! Si seleccionan la opción “Launch Git Bash”, una vez que finalizan la instalación se va a abrir la consola
Otra forma de abrir la consola es haciendo click derecho sobre el escritorio y elegir la opción “Git Bash Here”
Una vez instalado Git van a poder visualizar la consola: ingresamos el comando git --version para chequear que está instalado. Si ven la consola así, ya
están listos para comenzar a trabajar!
GitHub
¿Qué es GitHub?
Es una red para almacenar tus repositorios, sería un repositorio de repositorios. Es uno de los tantos disponibles en internet, y el más popular. GitHub NO es
lo mismo que Git, aunque funcionen muy bien juntos. Github es un lugar donde podés compartir tu código o encontrar otros proyectos. También actúa como
portfolio para cualquier código en el que hayas trabajado.
Comenzando
1. Para comenzar nos creamos una cuenta — > https://github.com 🚀
En la parte superior derecha, vemos nuestra imagen de perfil. Desde ahí podemos desplegar opciones para gestionar nuestro perfil, repositorios y
configuración. Si accedemos a nuestro perfil encontramos algo parecido a esto:
Podemos poner una foto de perfil, editar el nombre, agregar la ubicación, link y organizaciones a las que pertenecemos. En el centro podemos fijar los
repositorios que queremos mostrar para que estén visibles en nuestro perfil.
Más abajo se muestra un diagrama de todas las contribuciones que vamos haciendo a los repositorios.
Si accedemos a la pestaña de arriba que dice repositorios veremos una lista de todos ellos. Cuando elegimos un repositorio para ver, nos lleva a una
página como esta:
En el centro podemos ver todos los archivos que tiene dentro el repo. El botón verde que dice Code es importante, si clickeamos ahí vamos a poder
obtener la url del repo, para así poder clonarlo (esto lo veremos más adelante).
Arriba a la derecha encontramos tres botones. Watch nos permite seguir un repositorio, mientras que con Star podemos marcar como favorito un repo
que nos guste. Por último tenemos Fork , este es muy importante, lo vamos a necesitar cuando hagamos el Challenge!
Python
¿Qué es Python?
Es un lenguaje de programación sencillo de leer y escribir debido a su alta similitud con el lenguaje humano. Además, se trata de un lenguaje multiplataforma
de código abierto y, por lo tanto, gratuito, lo que permite desarrollar software sin límites
Instalación
Si estás usando Windows:
Mac OS X suele tener python instalado por defecto. Para verificarlo abrí la terminal, en el buscador de tu Mac, y escribí Python. Comprobar que está
correctamente instalado:
Python
Python 2.7.13 (default, Mar 25 2021, 18:52:10)
[GCC 4.2.1 Compatible Apple LLVM 10.0.1 (clang-1001.0.37.14)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>>
En una distribución estándar Linux dispone por defecto el intérprete Python instalado, para comprobar la correcta instalación solamente debería ejecutar el
comando en la consola:
python
Python 2.7.13 (default, Sep 26 2018, 18:42:22)
[GCC 6.3.0 20170516] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>>
Si le muestra los mensajes anteriores está correctamente instalado el intérprete Python en su Linux.
python
bash: python: no se encontró la orden
Esto es debido a que no tiene instalado el intérprete, así que debe ejecutar el siguiente comando:
De nuevo vuelva a ejecutar en su consola de comando el comando python. Ya están listos para comenzar a trabajar
Introducción a la Programación
¿Qué es la Programación?
Comencemos con un ejemplo, en la imagen se representa un pequeño robot abeja en una esquina del cuadrilátero, y en la otra esquina una flor. El objetivo
del robot abeja es llegar hasta la flor, esquivando los arbustos que hay de por medio. Para esto, hay que decirle cómo se debe mover, pero solo puede saltar
de a un casillero por vez. La forma en que se le puede “decir” es a través de instrucciones y esttas son: “arriba”, “abajo”, “izquierda” y “derecha”. Por
supuesto, teniendo en cuenta que debe moverse dentro del cuadrilátero.
¿Hay más de una forma, en que el robot abeja pueda llegar a la flor?
Derecha, Derecha, Arriba, Arriba, Derecha, Derecha, Arriba, Arriba, Arriba, Derecha, Derecha, Arriba
Derecha, Derecha, Derecha, Derecha, Derecha, Derecha, Arriba, Arriba, Arriba, Izquierda, Izquierda, Arriba, Arriba, Derecha, Arriba, Derecha
Arriba, Derecha, Derecha, Arriba, Arriba, Arriba, Arriba, Arriba, Derecha, Derecha, Derecha, Derecha, Arriba
Lo importante, en principio, es que notemos que al resolver el problema planteado, lo que estamos haciendo, utilizando un pensamiento lógico, es
precisamente, programación
Entonces, programar, es armar una secuencia lógica de pasos a seguir, en pos de cumplir un objetivo. En el ejemplo visto, tuvimos un contexto que nos
marcaba las posibilidades y restricciones del problema, por ejemplo moverse dentro del cuadrilátero ó no chocar con los arbustos. Y también un conjunto de
instrucciones disponibles, que definian el lenguaje que teníamos que usar, para que el robot comprenda las instrucciones. Lo que usamos fue un lenguaje
formal, muy básico y que fue suficiente para resolver el problema. Éstos lenguajes, se denominan lenguajes de programación, nos permiten plasmar esas
instrucciones necesarias para darle una solución al problema que queremos resolver, generando así un programa (o software).
Los primeros lenguajes de programación se escribían en instrucciones que podían interpretar las computadoras muy fácilmente, pero que resultaban menos
amigables a las personas, tales como el lenguaje ensamblador (o Assembler) o Fortran, desarrollado en 1955. Con el tiempo, esto fue cambiando, se fueron
desarrollando lenguajes de programación de más alto nivel y con diferentes aplicaciones, que por lo general eran comerciales o científicas, pero también con
fines educativos, es decir, lenguajes desarrollados para aprender a programar, y consecuentemente, más sencillos.
Éste último, es el caso de Python, que nace a finales de la década del 80 y fue pensado para principiantes por su facilidad de aprendizaje y uso. Su código
era compacto pero legible. Con el correr de los años fue incluyendo mejoras hasta llegar también a ser de licencia libre. Hoy por hoy, es usado desde simples
“scripts”, hasta grandes servidores web que proveen servicio ininterrumpido las 24hs. Es utilizado para la programación de interfaces gráficas y bases de
datos. Además tiene una amplia aceptación por científicos que hacen aplicaciones para las supercomputadoras más rápidas del mundo y por los niños que
recién están comenzando a programar.
La generalización del Big Data en los últimos años, seguida de la explosión de la Inteligencia Artificial, Machine Learning y el surgimiento de la Ciencia de
Datos como un nuevo área de trabajo con especialistas propios, ha revolucionado el panorama ya que muchas de las nuevas herramientas que han surgido
han sido desarrolladas en Python o nos ofrecen Python como la forma predilecta de interactuar con ellas.
Podemos hablar de tecnología para Big Data como PySpark, de herramientas para Data Science como Pandas, NumPy, Matplotlib o Jupyter. De herramientas
del procesamiento del lenguaje natural como NLTK, y por último el área de Deep Learning como Tensorflow, MXNet o Scikit-Learn.
El Zen de Python
Para conocer mejor el lenguaje que estaremos aprendiendo les compartimos una colección de los 19 principios que influyen en el diseño del lenguaje
Python. De alguna manera, muestran la filosofía del mismo:
Recursos adicionales
[Introducción al Pensamiento Computacional] (https://github.com/karlbehrensg/introduccion-pensamiento-computacional)
[Entrenamiento Básico] (https://entrenamiento-python-basico.readthedocs.io/es/latest)
[El Libro de Python] (https://ellibrodepython.com/)
[Python para todos] (https://www.py4e.com)
[Curso Python Videos] (https://youtu.be/G2FCfQj-9ig)
[Visualizar tu código] (https://memlayout.com/)
[Visualizar tu código] (https://pythontutor.com/visualize.html#mode=edit)
Homework
Instalar Visual Studio Code, GitHub y Python para poder comenzar!
Si tienes dudas sobre este tema, puedes consultarlas en el canal #python de Slack