Programador Python - curso 124.500 rublos. de GeekBrains, formación 8 meses, Fecha: 10 de junio de 2023.
Miscelánea / / December 04, 2023
En los últimos dos años, la demanda de desarrolladores de Python ha crecido un 20%. Para dominar una profesión en demanda, el conocimiento escolar será suficiente para ti. Aprenderá los conceptos básicos de HTML/CSS y aprenderá a desarrollar el lado del servidor de un sitio web en Python y Django.
Vídeo curso Conceptos básicos del lenguaje Python. 1 mes.
El curso Fundamentos del lenguaje Python es perfecto tanto para programadores experimentados que desean familiarizarse con una nueva herramienta de desarrollo como para principiantes. Pasaremos de los conceptos básicos de programación (variables, bucles, ramificaciones) a la construcción de programas utilizando un enfoque orientado a objetos. A lo largo del curso veremos varios ejemplos del uso del lenguaje para resolver problemas prácticos. Sumerjámonos en el mundo de Python e inspirémonos en su ideología y filosofía. El curso utiliza Python versión 3.
Lección 1. Introducción
Lección 2. Introducción a Python
Lección 3. Análisis de una tarea práctica.
Lección 4. Tipos integrados y operaciones con ellos.
Lección 5. Análisis de una tarea práctica.
Lección 6. Taller. Juego "Adivina el número"
Lección 7. Análisis de una tarea práctica.
Lección 8. Funciones
Lección 9. Análisis de una tarea práctica.
Lección 10. Módulos y bibliotecas
Lección 11. Análisis de una tarea práctica.
Lección 12. Trabajar con archivos. Codificaciones
Lección 13. Análisis de una tarea práctica.
Lección 14. Herramientas útiles. Manejo de excepciones
Lección 15. Análisis de una tarea práctica.
Lección 16. Taller. Administrador de archivos de consola
Lección 17. Análisis de una tarea práctica.
Vaya. Curso basico
Conceptos básicos de Git
13 videos le enseñarán los conceptos básicos para trabajar con el sistema de control de versiones Git. Aprenderá por qué es importante en el desarrollo moderno. Aprenda los conceptos básicos: repositorio, confirmaciones, ramas y etiquetas. Operaciones de clave maestra: creación y clonación de un repositorio, fusión de ramas, consulta del historial de cambios y mucho más. Después de la capacitación, estará listo para usar Git para preparar tareas para cursos de programación en cualquier idioma. Además, te acercarás a la entrevista, donde varias preguntas suelen centrarse en el control de versiones.
Lección 1. Introducción a Git
Lección 2. Instalación y configuración de Git
Lección 3. Comandos básicos de terminal
Lección 4. Trabajar con repositorios en Git
Lección 5. Gestión de archivos del repositorio
Lección 6. Historia de cambios
Lección 7. Trabajar con ramas del repositorio
Lección 8. Publicar un repositorio
Lección 9. La sucursal se fusiona
Lección 10. Gestión de versiones
Lección 11. Creando una solicitud de extracción
Lección 12. Operaciones complejas
Lección 13. Trabajar con repositorios Fork
Conceptos básicos del lenguaje Python. 1 mes.
Desde conceptos básicos de programación hasta creación de programas usando programación orientada a objetos
El lenguaje de programación Python es una poderosa herramienta para crear programas para una amplia variedad de propósitos, accesible incluso para principiantes. Se puede utilizar para resolver varios tipos de problemas. El curso Python Basic es perfecto tanto para programadores experimentados que desean familiarizarse con una nueva herramienta de desarrollo como para principiantes. Pasaremos de los conceptos básicos de programación (variables, bucles, ramificaciones) a la construcción de programas utilizando un enfoque orientado a objetos. A lo largo del curso veremos varios ejemplos del uso del lenguaje para resolver problemas prácticos. Sumerjámonos en el mundo de Python e inspirémonos en su ideología y filosofía.
Lección 1. Introducción a Python
La lección contiene la información básica necesaria para un comienzo exitoso en el desarrollo de Python, incluida una descripción de la instalación del intérprete en varios sistemas operativos y entornos de desarrollo. También se incluye en el curso una descripción del concepto de tipificación dinámica, características del uso de operaciones aritméticas y lógicas. Se dedican secciones separadas de la lección a las formas de formatear cadenas, seguirlas, bifurcarlas y bucles. Al final hay una lista de los principales errores del desarrollador y formas de solucionarlos.
Lección 2. Tipos integrados y operaciones con ellos.
Esta lección describe los tipos de datos integrados clave implementados en Python. El desarrollador puede realizar operaciones con tipos de datos tradicionales como cadenas, números y booleanos. Se consideran listas, conjuntos, tuplas y diccionarios. Además, como parte de la lección, nos familiarizaremos con los conceptos del operador ternario y del operador is. Definitivamente abordaremos algunas operaciones realizadas con datos de tipos básicos y aprenderemos sobre los trucos que un desarrollador puede utilizar para aumentar la brevedad del código.
Lección 3. Funciones
Es hora de familiarizarse con el mecanismo para agrupar líneas de código en bloques: funciones. Proporcionan la posibilidad de reutilizar estos bloques de código en cualquier parte del programa. Las funciones pueden tener nombre o ser anónimas, tomar parámetros y devolver un resultado. Un concepto importante en esta lección es el alcance de las variables. Las funciones se pueden documentar para describir su propósito, los parámetros que aceptan y el resultado que devuelven. Finalmente, las funciones pueden ser integradas o personalizadas (escritas a medida).
Lección 4. Herramientas útiles
La lección está dedicada a herramientas que harán que su código sea más conciso y simplificarán la solución de muchos problemas estándar. La lección también describe las capacidades de varios módulos adicionales que se utilizan al escribir algoritmos. Se proporcionan las características del mecanismo para ejecutar scripts con parámetros y obtener acceso a los parámetros desde el código del programa. El uso de las herramientas presentadas apunta a un estilo de programación más avanzado y aumenta el estatus del desarrollador.
Lección 5. Trabajar con archivos
La lección actual analiza aspectos del trabajo con archivos para extraer datos y registrar los resultados del programa. Se consideran los mecanismos para leer y escribir datos y los modos de trabajar con archivos. Se analiza un concepto tan importante como administrador de contexto y se describen errores comunes al trabajar con archivos. Se proporcionan las características para determinar la posición del puntero en un archivo, los posibles parámetros de los objetos del archivo y las características de la implementación de la impresión en un archivo.
Lección 6. Programación orientada a objetos
Es hora de familiarizarse con el paradigma de programación más importante: la orientación a objetos programación, que juega un papel importante en Python y le permite formar la estructura del programa a partir de componentes separados. Los conceptos importantes del paradigma son clase, constructor, atributo, método, instancia de clase. También se incluyen en la lección las propiedades más importantes de la programación orientada a objetos: encapsulación, herencia y polimorfismo. Se proporciona una descripción de los mecanismos para sobrecargar y anular métodos.
Lección 7. POO. Nivel avanzado
En esta lección, analizaremos las características de implementar la sobrecarga de operadores, es decir, cambiar el mecanismo de operación de los operadores de lenguaje utilizando métodos especiales. Además, como parte de la tarea actual, nos familiarizaremos con el concepto de anulación de métodos, es decir, aprenderemos a modificar la lógica de los métodos de las clases base. Introduciremos el concepto de interfaz y aprenderemos a crear nuestros propios objetos iteradores. Al final de la lección, aprenderemos para qué se utiliza el decorador @property y las características más importantes de la implementación del paradigma de programación orientada a objetos en Python.
Lección 8. POO. Adiciones útiles
La octava lección del curso cubre adiciones importantes que amplían las capacidades del paradigma de programación orientada a objetos en Python, como métodos estáticos y métodos de clase. Además, hablaremos sobre atributos y métodos integrados inherentes a las clases. En esta lección, también veremos el proceso paso a paso de escribir un programa simple basado en el paradigma OOP y aprenderemos cómo crear nuestras propias excepciones. Para concluir este tutorial, hablaremos sobre algunos trucos para hacer que su código sea más conciso y exploraremos una serie de bibliotecas útiles.
Fundamentos de bases de datos relacionales. MySQL. 1,5 meses.
Familiarícese con el lenguaje de consulta SQL. Aprenda a escribir consultas, hacer cálculos y trabajar con tablas. Conozca las principales limitaciones de SQL. Trabajará con MySQL y se familiarizará con bases de datos alternativas: MongoDB, Redis, ElasticSearch y ClickHouse.
Lección 1. Seminario web. Configuración del entorno. Comandos DDL
Tipos de bases de datos. Fundamentos de bases de datos relacionales. SGBD MySQL. Clientela. Gestión de base de datos.
Lección 2. Vídeotutorial. Gestión de base de datos. Lenguaje de consulta SQL
Introducción a SQL. Tipos de datos. Índices. operaciones CRUD
Lección 3. Seminario web. Introducción al diseño de bases de datos
Diseño de base de datos.
Lección 4. Seminario web. operaciones CRUD
Operaciones CRUD.
Lección 5. Vídeotutorial. Operadores, filtrado, clasificación y limitación. Agregación de datos
Agrupación de datos. Funciones de agregación. AGRUPAR POR, TENER y CON construcciones. Operadores. Muestreo condicional y limitado. Funciones predefinidas.
Lección 6. Seminario web. Operadores, filtrado, clasificación y limitación. Agregación de datos
Agrupación de datos. Funciones de agregación. AGRUPAR POR, TENER y CON construcciones. Operadores. Muestreo condicional y limitado. Funciones predefinidas.
Lección 7. Vídeotutorial. Consultas complejas
Consultas de varias tablas. UNIÓN. Consultas anidadas. ÚNETE se une. Llaves extranjeras.
Lección 8. Seminario web. Consultas complejas
Consultas de varias tablas. UNIÓN. Consultas anidadas. ÚNETE se une. Llaves extranjeras.
Lección 9. Vídeotutorial. Transacciones, variables, vistas. Administración. Procedimientos y funciones almacenados, disparadores.
Actas. Variables. Tablas temporales. Expresiones preparadas. Representación. Administración. Derechos de los usuarios. Replicación Procedimientos y funciones almacenados. Parámetros y variables. Operadores de sucursales y bucles. Desencadenantes.
Lección 10. Seminario web. Transacciones, variables, vistas. Administración. Procedimientos y funciones almacenados, disparadores.
Actas. Variables. Tablas temporales. Expresiones preparadas. Representación. Administración. Derechos de los usuarios. Replicación Procedimientos y funciones almacenados. Parámetros y variables. Operadores de sucursales y bucles. Desencadenantes.
Lección 11. Vídeotutorial. Optimización de consultas. No SQL
Tipos de mesas. Optimización de consultas. Índices. Bases de datos NoSQL. DBMS orientado a documentos. DBMS columnar. Valor-clave del DBMS. DBMS Búsqueda de texto completo.
Lección 12. Seminario web. Optimización de consultas
Tipos de mesas. Optimización de consultas. Índices. Bases de datos NoSQL. DBMS orientado a documentos. DBMS columnar. Valor-clave del DBMS. DBMS Búsqueda de texto completo.
Algoritmos y estructuras de datos en Python. Curso basico. 1 mes.
Soluciones eficientes a problemas informáticos.
Los estudiantes profundizarán su base de programación en Python y mejorarán su pensamiento algorítmico. El curso le enseña a comprender algoritmos fundamentales y utilizarlos para resolver problemas prácticos. Introduce métodos de análisis de datos en Python y todas las bibliotecas necesarias.
Lección 1. Introducción a la algoritmización e implementación de algoritmos simples en Python.
Introducción a la algoritmización. Resolución de problemas prácticos.
Lección 2. Ciclos. Recursión. Funciones.
Ciclos: repetición repetida del mismo tipo de acciones. Búsqueda recursiva. El algoritmo de Euclides. La Criba de Eratóstenes es un algoritmo para determinar números primos. Usando funciones.
Lección 3. Matrices. Tuplas. Multitudes. Liza.
Concepto de matriz, tupla, conjunto y listas. Procesamiento de secuencias, arrays unidimensionales y bidimensionales. Trabajar con matrices asociativas (tablas de datos). Búsqueda binaria de un elemento en una matriz.
Lección 4. Evaluación empírica de algoritmos en Python.
Mediciones de tiempo de ejecución usando timeit. Perfilador.
Lección 5. Colecciones. Lista. Cola. Diccionario.
Concepto de colección. Tipos básicos de colección. Métodos estándar para trabajar con colecciones. Ejemplos de uso de colecciones para resolver problemas prácticos.
Lección 6. Trabajar con memoria dinámica
Representación de colecciones en memoria. Gestión de la memoria.
Lección 7. Algoritmos de clasificación
Ordenamiento de burbuja. Ordenación rápida. Tipo de concha. Clasificar estructuras complejas mediante una clave. Clasificación inversa. Ordenar usando la función attrgetter.
Lección 8. Árboles. Función hash
Árboles de búsqueda binaria. Caminando entre un árbol. Función hash.
HTML/CSS. Curso interactivo. 1 mes.
HTML/CSS es un lenguaje de marcado de hipertexto, la base para estudiar los lenguajes del lado del servidor. Al aprender HTML, puede crear una página web o un sitio web responsivo. CSS (hojas de estilo en cascada) le permitirá diseñar su sitio web de la forma que desee. Podrás ver el curso en video en un momento conveniente y, si tienes alguna pregunta, contactar a un mentor que monitoreará tu progreso. El formato fomenta la comunicación y la autodisciplina en el aprendizaje. En un mes aprenderá: * diseño de sitios web responsivos, * diseño válido para varios navegadores, * diseño de flexbox, * realización de operaciones básicas en Figma, * uso de preprocesadores SASS y Bootstrap. Su tarea debe ser calificada antes de que pueda pasar a la siguiente lección del curso. Esto demostrará que entendiste la lección anterior y aprenderás fácilmente nuevos conocimientos. La tarea puede ser revisada tanto por el mentor como por los compañeros de clase en cuyos conocimientos confía y recibir un logro por ello. Con cada verificación, aumenta la cantidad de logros y aumenta la habilidad para trabajar con el código de otras personas. El nivel del certificado final depende del número de logros: cuantos más, mayor será el estatus. Esta mecánica un tanto lúdica hace que las clases sean aún más interesantes.
Lección 1. Conceptos básicos en desarrollo web.
Introducción, información introductoria, configuración del código de Visual Studio, teclas de acceso rápido, instalación de extensiones. Crear un documento html Estructura de un documento html. Tipos y atributos de etiquetas Depurador del navegador
Lección 2. Conceptos básicos del lenguaje de marcado de documentos HTML
Listas en html Caracteres especiales y comentarios Hipervínculos (locales, absolutos, anclas) Tipos de imágenes para la web; Formas y sus elementos. Ver, editar y buscar errores a través del depurador del navegador
Lección 3. Conceptos básicos del lenguaje de estilo de documentos CSS
Introducción a los estilos Métodos para conectar estilos Selectores Propiedades básicas de los estilos (px, %, fondo, color, borde) parte 1 Propiedades de estilo básicas (ancho, alto, fuente, estilo de lista, texto) Anidamiento, herencia y agrupación propiedades
Lección 4. Etiquetas básicas para diseño, pseudoclases y pseudoelementos.
Etiquetas básicas div, span, creación de una estructura de bloques Sangrías de elementos Elementos de flujo Pseudoclases Pseudoelementos Tablas
Lección 5. Conceptos básicos de posicionamiento, trabajar con Flexbox
Propiedad de visualización ¿Qué es flexbox (diseño horizontal y vertical)? Orden de visualización, multilínea, desplazamiento de un bloque separado Configuración de tamaños flexibles para bloques Posición: relativa y absoluto
Lección 6. Trabajar con una maqueta de diseño en formato Figma
¿Qué es un diseño y qué tipos de diseños existen? Conociendo el programa Figma, cortando el diseño Determinando los tamaños de los bloques, creando una estructura de bloques Añadiendo estilos del diseño Creando un sitio web basado en el diseño. Parte 1 Creación de un sitio web basado en el diseño. Parte 2
Lección 7. Conceptos básicos para crear un sitio web responsivo
Tamaños de bloque flexibles, sitio web responsivo Emulación de dispositivos móviles Consultas de medios Expresión de pie de página al final de la pantalla Práctica de creación de un sitio web responsivo Práctica de creación de un sitio web responsivo parte 2
Lección 8. Estándares web y herramientas de soporte.
Herramientas de desarrollo. Parte 1 Carga de proyectos al servidor Navegador cruzado Introducción a Boostrap Introducción al preprocesador Sass Uso práctico del preprocesador Sass
Curso básico de JavaScript. 1 mes.
Aplicaciones web interactivas en ECMASCRIPT 2016
Los estudiantes aprenden los conceptos básicos de JavaScript, que hace que las páginas web sean interactivas. Aprenda a crear páginas y aplicaciones dinámicas utilizando la experiencia de codificación HTML. Practique habilidades de programación JavaScript desarrollando minijuegos.
Lección 1. Conceptos básicos del lenguaje JavaScript
Sintaxis; estructura del código; scripts externos y el orden de su ejecución; variables y tipos de datos; Hola Mundo; estándares modernos.
Lección 2. Operadores básicos de JavaScript
Operadores y operandos; prioridad de operaciones; declaraciones condicionales; funciones; recursividad; taller; juego "Adivina el número".
Lección 3. Bucles, matrices, estructuras de datos.
Bucles en JavaScript; matrices en JavaScript; estructuras de datos; taller; juego "Toros y vacas".
Lección 4. Objetos en JavaScript
Introducción al concepto de objetos; objetos en JavaScript; trabajar con objetos; enumeración de valores; taller; juego "Búsqueda".
Lección 5. Introducción al DOM
Concepto de DOM; DOM en JavaScript; Manipulación DOM en JavaScript; taller; juego "Misión 2.0".
Lección 6. Manejo de eventos en JavaScript
El concepto de evento; procesamiento de clics; eventos del navegador; taller; juego "Tic Tac Toe".
Lección 7. Lección taller
Implementación del juego "Serpiente".
Lección 8. Funciones anónimas, cierres.
Estudio en profundidad de cómo funcionan las funciones; funciones y expresiones funcionales; funciones anónimas; Corto circuitos; acciones predeterminadas del navegador.
Conceptos básicos del marco Django. 1 mes.
Creación de sitios web
Durante el curso, los estudiantes aprenderán cómo crear un sitio web en Python usando el marco Django. Durante el desarrollo práctico, los programadores novatos aprenderán a utilizar las capacidades de Django, que acelera la escritura de código y permite traducir de forma rápida y eficiente una idea en un proyecto de TI funcional. Al final del curso, los estudiantes aprenderán a crear sitios web seguros, implementar el patrón de diseño MVC, implementar la autorización y registro de usuarios, el panel de administración y la actualización de contenido asincrónica. Crearán un proyecto y un portafolio personal.
Lección 1. Conociendo el marco
¿Por qué necesitas Django? Fortalezas del marco. Instalacion y configuracion. Información general sobre la estructura del proyecto. Introducción a los patrones de URL. La primera página y su visualización.
Lección 2. Plantilla + Contexto = html
Motor de plantillas Django (etiquetas, filtros y herencia). Trabajar con contenido estático y enlaces en páginas. Enviar contenido a plantillas y cargarlo en controladores desde fuentes externas.
Lección 3. Modelos + ORM = datos
Breve teoría de las bases de datos. Introducción a Django-ORM. Conexión y creación de una base de datos. Algunas palabras sobre las migraciones. Trabajando con datos. Administrador incorporado. Espacios de nombres.
Lección 4. Autenticación y registro de usuario.
Cargando datos a la base de datos desde archivos. Modelo de usuario. Procedimiento de autenticación. Formularios en Django. Mecanismo CRUD al trabajar con modelos.
Lección 5. Usuario + producto = carrito
Ejecutar consultas usando ORM. Trabajando con el menú. Creando un carrito.
Lección 6. Carrito + AJAX + decoradores
Trabajando con la cesta. Añadiendo dinámica a la “oferta caliente”. Creando una página de producto. Restringir el acceso al carrito. AJAX: realizar solicitudes asincrónicas.
Lección 7. Panel de administración propio
Integración de una nueva aplicación al proyecto. Restringir el acceso al panel de administración. Implementación del mecanismo CRUD para usuarios y categorías de productos.
Lección 8. Útil: salida de página, filtros de plantilla, CBV
Implementación del mecanismo CRUD para productos. visualización de objetos página por página. CBV: controladores prefabricados. Filtros de plantilla.
Marco Django. Herramientas de optimización. 1 mes.
Desarrollo de sitios web en Python
Al continuar estudiando Django, los estudiantes desarrollarán un proyecto personal: crearán un procesador de contexto y agregarán la confirmación del registro del usuario por correo electrónico. Continuarán familiarizándose con el mecanismo ORM de Django, resolviendo problemas de agregación de datos, consultas complejas, almacenamiento en caché y optimizando el trabajo con la base de datos. Aprenderán a utilizar conjuntos de formularios (fromsets) para crear simultáneamente varias instancias de un modelo, por ejemplo, agregando varias entradas a una categoría en una página en el panel de administración. Veremos el mecanismo para vincular archivos estáticos (CSS, JS) a formularios en Django. Una vez completado el desarrollo, cualquier proyecto debe probarse e implementarse en un servidor web de producción; estas cuestiones se estudiarán en el curso.
Lección 1. Envío de correo electrónico. Procesadores de contexto
Pasemos a Django 2.0. Enviamos un mensaje con el código de activación del usuario. Trabajamos con procesadores de contexto usando el ejemplo de un carrito de compras.
Lección 2. Registro a través de una red social. Django-ORM: comunicación uno a uno
Regístrese en la tienda a través de VKontakte. Creamos un perfil de usuario y lo rellenamos con datos de la red social.
Lección 3. Trabajar con orden de usuario: CBV, formets Django
Creamos la aplicación de pedidosapp. Trabajar con formularios Django usando CBV.
Lección 4. Trabajar con el pedido de un usuario: actualizar los saldos de productos, agregar código jQuery
Ajustamos la cantidad de mercancía al trabajar con el carrito y realizar el pedido. Actualizamos las estadísticas del pedido al editarlo. Trabajar con un conjunto de formularios usando jQuery y django-dynamic-formset.
Lección 5. Implementación de un proyecto Django en VPS desde REG.RU
Estamos preparando el proyecto para su implementación. Pasemos a la base de datos PostgreSQL. Simulamos trabajar con VPS: instalamos y configuramos el servidor Ubuntu Server 17. Implementemos la combinación “nginx” + “gunicorn”.
Lección 6. Perfilado y pruebas de carga del proyecto, optimización del trabajo con la base de datos.
Miremos el trabajo del proyecto desde adentro. Encontrar controladores lentos. Realizamos pruebas de carga. Optimizamos el trabajo con la base de datos.
Lección 7. Aún más rápido: almacenamiento en caché en Django
Decorador “@cached_property”: métodos del modelo de caché. Etiqueta "Con": almacenamos en caché las variables en las plantillas. Almacenamos en caché funciones, fragmentos de plantillas y controladores usando "Memcached".
Lección 8. Trabajo avanzado con Django-ORM. Pruebas en Django
Trabajar con atributos del modelo a nivel de base de datos. Objetos "F" y "Q". Implemente una lógica compleja utilizando "Caso" y "Cuándo". La clase TestCase es la base de las pruebas en Django. Pruebas de humo. Probando la aplicación de autenticación. Prueba del controlador.
Aplicaciones cliente-servidor en Python. 1 mes.
El curso le ayudará a dominar las capacidades avanzadas del lenguaje Python, una poderosa herramienta para crear programas de varios perfiles. Se considera paso a paso el desarrollo de una aplicación que brinde gestión de información desde el diseño hasta las pruebas. Los estudiantes practicarán la escritura de un programa multiproceso desarrollando su propio mensajero.
Lección 1. Conceptos de almacenamiento de información
Características del almacenamiento de símbolos en la memoria de la computadora. Desventajas de la codificación ASCII. Introducción a Unicode. Unicode en Python 3. Conversión de bytes y cadenas: concepto y ejemplos. Errores de conversión.
Lección 2. Almacenamiento de datos de archivos
Introducción al almacenamiento de datos basado en archivos. Utilice archivos CSV al guardar datos. Archivos JSON como medio de intercambio de datos. Trabajar con archivos YAML al procesar y guardar datos.
Lección 3. Conceptos básicos de programación de redes
Introducción a las redes y sus protocolos. Sockets como base para aplicaciones de red. Protocolos de intercambio en el proyecto del curso.
Lección 4. Conceptos básicos de las pruebas
Introducción a las pruebas. afirmar la declaración. Módulo de pruebas unitarias y pruebas unitarias.
Lección 5. Inicio sesión
Registro de eventos y módulo de registro.
Lección 6. Decoradores y seguir trabajando con la red
Decorador. Decorador con parámetro. Programación de redes (continuación).
Lección 7. Seleccionar módulo, ranuras
Características del uso del módulo de selección. Tragamonedas, su finalidad y aplicación.
Lección 8. Corrientes
Introducción a los hilos. Introducción a la programación multiproceso. Módulo de roscado Primitivas de sincronización. Módulo de cola. Módulo multiprocesamiento.
Prácticas en GeekBrains. 2 meses.
En formato de seminario web
Durante la pasantía, los estudiantes deberán trabajar de forma remota en un proyecto o startup de código abierto. Se pedirá a los estudiantes que elijan entre un conjunto de proyectos disponibles para desarrollo. Los estudiantes aprenderán a trabajar en equipo, comunicarse con otros desarrolladores, productos y Los gerentes de proyectos, diseñadores, estudiarán metodologías flexibles, el marco SCRUM y dominarán los principios. trabajo remoto. El resultado de la pasantía es la capacidad de trabajar en equipo, la adición de un portafolio y la oportunidad de indicar el trabajo en un proyecto como experiencia laboral principal en su currículum. La pasantía se realiza en formato de trabajo remoto a tiempo parcial, reuniones semanales de estado con el profesor en formato de seminario web.
Lección 1. Conocernos, elegir un proyecto
¿Qué roles hay en el desarrollo? Product Manager, Project Manager, desarrollador, diseñador. ¿Qué es MVP? Arquitectura de servicio moderno. Cómo interactúan los desarrolladores entre sí. API REST, conector web. Backend, Frontend, aplicaciones móviles. Arquitectura de microservicios. Conceptos básicos del trabajo remoto. Regístrate para equipos.
Lección 2. Metodologías de desarrollo
Revisión de metodologías. Cascada (cascada), Manifiesto Agile, Kanban, Scrum. Dónde y para qué se utilizan. Metodologías mixtas.
Lección 3. Metodología SCRUM
Trabajar usando SCRUM. Planificación de sprints. Preparación del trabajo atrasado. Objetivo de sprint. Incremento. Metodología flexible en condiciones de trabajo remoto. Rastreadores de tareas (Trello, Favro)/
Lección 4. Mapeo de historias de usuario
Tipos de tareas. Descomposición de tareas. Mapeo de historias de usuarios. Trabajando en historias de usuarios. Trabajo con especificaciones técnicas utilizando metodologías en cascada y flexibles.
Lección 5. Responsabilidad, motivación, crecimiento personal.
Qué y cómo motivarte. ¿Cuáles son los niveles de motivación? Cómo no agotarse en el trabajo. Y cómo no olvidarse del trabajo.
Lección 6. Escribir un currículum
Cómo redactar un currículum para que RR.HH. no lo rechace. Cómo interesar a un empleador. Cómo demostrar las habilidades adquiridas en tus estudios si aún no tienes experiencia laboral relevante.
Lección 7. Resumen preliminar, preparación para la defensa del proyecto.
Análisis de currículums de estudiantes. Resumen preliminar. Un poco sobre startups, monetización, inversores.
Lección 8. Resumiendo, demostrando el proyecto final.
Demostración de un prototipo funcional por parte de los estudiantes. Discusión de los resultados obtenidos. Comentarios del profesor. Palabras de despedida.