Londres
91 |Londres es la capital de Inglaterra y es la ciudad más popular del Reino Unido, es la ciudad mas poblada con 13 millones de habitantes en su área metropolitana
92 |
├── 01 - INTRO
├── README.md
├── images
│ ├── atom.jpg
│ ├── axe.png
│ ├── bodyExample.jpeg
│ ├── caniuse.png
│ ├── confluence.png
│ ├── espagueti.png
│ ├── frameworks.png
│ ├── hcj.png
│ ├── lighthouse.png
│ ├── mantenbilidad.jpg
│ ├── mapa.jpg
│ ├── mvc.png
│ ├── notion.jpg
│ ├── qefe1.gif
│ ├── sdlc.jpg
│ ├── sketchfigmaxd.png
│ ├── steper.gif
│ ├── structure.webp
│ ├── sublime.jpg
│ ├── uxui.jpg
│ ├── vscode.jpeg
│ └── wiki.png
├── practicas
│ ├── 1.-Reqierimientos.doc
│ ├── 1.-requerimientos.md
│ ├── 2.-buyerPersona.md
│ ├── 2.-persona.pdf
│ ├── 3.-publicoObjetivo.md
│ ├── 4.-wireframe.md
│ ├── 5.-ui.md
│ └── README.md
└── temario
│ ├── 1.-queEsFrontEnd.md
│ ├── 2.-frontEndTecs.md
│ ├── 3.-webDevSetup.md
│ ├── 4.-estructuraWeb.md
│ └── 5.-estructuraCodigo.md
├── 02 - HTML
├── README.md
├── images
│ └── HTML.png
├── practicas
│ └── README.md
├── programas
│ ├── 1.-etiquetasBasicas.html
│ ├── 2.-elementosCompuestos.html
│ ├── 3.-layoutYRutas.html
│ ├── Tacos El Jefe.png
│ ├── atributosHTML.xlsx
│ └── tacosElJefe.html
└── temario
│ ├── 1.-queEsHMTL.md
│ ├── 2.-etiquetasBasicas.md
│ ├── 3.-elementosCompuestos.md
│ ├── 4.-acomodoNavegacion.md
│ └── 5.-propiedades.md
├── 03 - CSS
├── README.md
├── images
│ ├── fondo1.jpg
│ └── fondo2.jpg
├── practica
│ ├── README.md
│ └── landingVacunación.png
└── programas
│ ├── 1.-selectores.html
│ ├── 2.-colores.css
│ ├── 2.-colores.html
│ ├── 3.-fondos.css
│ ├── 3.-fondos.html
│ ├── 4.-textos.css
│ ├── 4.-textos.html
│ ├── flexbox.css
│ ├── flexbox.html
│ ├── mobile.css
│ └── mobile.html
├── 04 - JS
├── README.md
├── images
│ └── pokedex.jpg
├── practica
│ └── README.md
└── programas
│ ├── 1.-intro.html
│ ├── 1.-intro.js
│ ├── 2.-funciones.html
│ ├── 2.-funciones.js
│ ├── 3.-navegador.html
│ ├── 3.-navegador.js
│ ├── 4.-pokedex.html
│ └── 4.-pokedex.js
├── 05 - VUEJS
├── README.md
├── practica
│ └── README.md
└── programas
│ ├── CDN
│ ├── app.js
│ ├── index.html
│ └── style.css
│ ├── CLI
│ ├── App.vue
│ ├── assets
│ │ └── logo.png
│ ├── components
│ │ └── HelloWorld.vue
│ └── main.js
│ └── VUEX
│ ├── App.vue
│ ├── assets
│ └── logo.png
│ ├── components
│ ├── Botones.vue
│ ├── ColorCode.vue
│ ├── ContadorCuadrado.vue
│ └── Counter.vue
│ ├── main.js
│ ├── router
│ └── index.js
│ ├── store
│ └── index.js
│ └── views
│ ├── AboutView.vue
│ └── HomeView.vue
├── 06 - VUEX
└── vuex.md
├── 07 - AZURE
└── azure.md
├── README.md
└── images
└── frontend.gif
/01 - INTRO/README.md:
--------------------------------------------------------------------------------
1 | # Introducción a la programación FrontEnd
2 |
3 | Bienvenido Explorer, estas entrando a tu misión en este camino para convertirte en un FullStack Developer; empezaremos con la parte del FrontEnd, en donde verás toda la magia de las interfaces, las interacciones y todo lo increíble que puedes construir con un teclado y unas cuantas líneas de código.
4 |
5 | En este módulo veremos las siguientes cosas.
6 |
7 | 1. **Programación FrontEnd**
8 |
9 | - [¿Qué es la programación FRONTEND?](./temario/1.-queEsFrontEnd.md)
10 | - [Tecnologías aplicadas](./temario/2.-frontEndTecs.md)
11 | - [SETUP de programación Web](./temario/3.-webDevSetup.md)
12 | - [Estructura de páginas web](./temario/4.-estructuraWeb.md)
13 | - [Estructura y limpieza de código](./temario/5.-estructuraCodigo.md)
14 |
15 | 2. **Prácticas de Introducción**
16 |
17 | - [Prácticas](./practicas//README.md)
18 |
19 | Para entrar a los contenidos solo tienes que dar click en el título y empezará la aventura.
20 |
21 | **_¡Vámonos hasta el espacio y más allá Explorers!_**
22 |
--------------------------------------------------------------------------------
/01 - INTRO/images/atom.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romarpla/cursoFrontEnd/10846bab2e324c4e1f96706d1ae174a1e2f56115/01 - INTRO/images/atom.jpg
--------------------------------------------------------------------------------
/01 - INTRO/images/axe.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romarpla/cursoFrontEnd/10846bab2e324c4e1f96706d1ae174a1e2f56115/01 - INTRO/images/axe.png
--------------------------------------------------------------------------------
/01 - INTRO/images/bodyExample.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romarpla/cursoFrontEnd/10846bab2e324c4e1f96706d1ae174a1e2f56115/01 - INTRO/images/bodyExample.jpeg
--------------------------------------------------------------------------------
/01 - INTRO/images/caniuse.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romarpla/cursoFrontEnd/10846bab2e324c4e1f96706d1ae174a1e2f56115/01 - INTRO/images/caniuse.png
--------------------------------------------------------------------------------
/01 - INTRO/images/confluence.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romarpla/cursoFrontEnd/10846bab2e324c4e1f96706d1ae174a1e2f56115/01 - INTRO/images/confluence.png
--------------------------------------------------------------------------------
/01 - INTRO/images/espagueti.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romarpla/cursoFrontEnd/10846bab2e324c4e1f96706d1ae174a1e2f56115/01 - INTRO/images/espagueti.png
--------------------------------------------------------------------------------
/01 - INTRO/images/frameworks.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romarpla/cursoFrontEnd/10846bab2e324c4e1f96706d1ae174a1e2f56115/01 - INTRO/images/frameworks.png
--------------------------------------------------------------------------------
/01 - INTRO/images/hcj.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romarpla/cursoFrontEnd/10846bab2e324c4e1f96706d1ae174a1e2f56115/01 - INTRO/images/hcj.png
--------------------------------------------------------------------------------
/01 - INTRO/images/lighthouse.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romarpla/cursoFrontEnd/10846bab2e324c4e1f96706d1ae174a1e2f56115/01 - INTRO/images/lighthouse.png
--------------------------------------------------------------------------------
/01 - INTRO/images/mantenbilidad.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romarpla/cursoFrontEnd/10846bab2e324c4e1f96706d1ae174a1e2f56115/01 - INTRO/images/mantenbilidad.jpg
--------------------------------------------------------------------------------
/01 - INTRO/images/mapa.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romarpla/cursoFrontEnd/10846bab2e324c4e1f96706d1ae174a1e2f56115/01 - INTRO/images/mapa.jpg
--------------------------------------------------------------------------------
/01 - INTRO/images/mvc.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romarpla/cursoFrontEnd/10846bab2e324c4e1f96706d1ae174a1e2f56115/01 - INTRO/images/mvc.png
--------------------------------------------------------------------------------
/01 - INTRO/images/notion.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romarpla/cursoFrontEnd/10846bab2e324c4e1f96706d1ae174a1e2f56115/01 - INTRO/images/notion.jpg
--------------------------------------------------------------------------------
/01 - INTRO/images/qefe1.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romarpla/cursoFrontEnd/10846bab2e324c4e1f96706d1ae174a1e2f56115/01 - INTRO/images/qefe1.gif
--------------------------------------------------------------------------------
/01 - INTRO/images/sdlc.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romarpla/cursoFrontEnd/10846bab2e324c4e1f96706d1ae174a1e2f56115/01 - INTRO/images/sdlc.jpg
--------------------------------------------------------------------------------
/01 - INTRO/images/sketchfigmaxd.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romarpla/cursoFrontEnd/10846bab2e324c4e1f96706d1ae174a1e2f56115/01 - INTRO/images/sketchfigmaxd.png
--------------------------------------------------------------------------------
/01 - INTRO/images/steper.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romarpla/cursoFrontEnd/10846bab2e324c4e1f96706d1ae174a1e2f56115/01 - INTRO/images/steper.gif
--------------------------------------------------------------------------------
/01 - INTRO/images/structure.webp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romarpla/cursoFrontEnd/10846bab2e324c4e1f96706d1ae174a1e2f56115/01 - INTRO/images/structure.webp
--------------------------------------------------------------------------------
/01 - INTRO/images/sublime.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romarpla/cursoFrontEnd/10846bab2e324c4e1f96706d1ae174a1e2f56115/01 - INTRO/images/sublime.jpg
--------------------------------------------------------------------------------
/01 - INTRO/images/uxui.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romarpla/cursoFrontEnd/10846bab2e324c4e1f96706d1ae174a1e2f56115/01 - INTRO/images/uxui.jpg
--------------------------------------------------------------------------------
/01 - INTRO/images/vscode.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romarpla/cursoFrontEnd/10846bab2e324c4e1f96706d1ae174a1e2f56115/01 - INTRO/images/vscode.jpeg
--------------------------------------------------------------------------------
/01 - INTRO/images/wiki.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romarpla/cursoFrontEnd/10846bab2e324c4e1f96706d1ae174a1e2f56115/01 - INTRO/images/wiki.png
--------------------------------------------------------------------------------
/01 - INTRO/practicas/1.-Reqierimientos.doc:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romarpla/cursoFrontEnd/10846bab2e324c4e1f96706d1ae174a1e2f56115/01 - INTRO/practicas/1.-Reqierimientos.doc
--------------------------------------------------------------------------------
/01 - INTRO/practicas/1.-requerimientos.md:
--------------------------------------------------------------------------------
1 | # Practica Requerimientos
2 |
3 | Para esta practica pueden usar la plantilla que les dejo en el siguiente link --> [PLANTILLA](./1.-Reqierimientos.doc)
4 |
5 | ***¡Vámonos hasta el espacio y más allá Explorers!***
6 |
--------------------------------------------------------------------------------
/01 - INTRO/practicas/2.-buyerPersona.md:
--------------------------------------------------------------------------------
1 | # Practica Buyer Persona
2 |
3 | Para esta practica pueden usar la plantilla que les dejo en el siguiente link --> [PLANTILLA](./2.-persona.pdf)
4 |
5 | ***¡Vámonos hasta el espacio y más allá Explorers!***
6 |
--------------------------------------------------------------------------------
/01 - INTRO/practicas/2.-persona.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romarpla/cursoFrontEnd/10846bab2e324c4e1f96706d1ae174a1e2f56115/01 - INTRO/practicas/2.-persona.pdf
--------------------------------------------------------------------------------
/01 - INTRO/practicas/3.-publicoObjetivo.md:
--------------------------------------------------------------------------------
1 | # Practica Pubico objjetivo
2 |
3 | Para esta practica pueden usar la plantilla que les dejo en el siguiente link --> https://miro.com/es/plantillas/publico-objetivo/
4 |
5 | ***¡Vámonos hasta el espacio y más allá Explorers!***
6 |
--------------------------------------------------------------------------------
/01 - INTRO/practicas/4.-wireframe.md:
--------------------------------------------------------------------------------
1 | # Practica Wireframe
2 |
3 | Recuerda que Para esta practica puedes usar las siguientes herramientas:
4 |
5 | - Miro (https://miro.com/es/) Esta herramienta te permitirá crear flujos de información y flujos de negocio.
6 | - Balsamic mockups (https://balsamiq.com/wireframes/) Nos da elementos para poder crear interfaces rápidas y que nos dejan representar la idea.
7 | - Dibujos a mano alzada --> a veces un wireframe también puede ser en una servilleta o en cualquier forma escrita.
8 |
9 | Y puedes revisar el live del jueves 17/02/22 --> https://web.microsoftstream.com/video/9bcebbbb-a07a-4ffe-a4b8-3e9ad0c6b5e8
10 |
11 | ***¡Vámonos hasta el espacio y más allá Explorers!***
12 |
--------------------------------------------------------------------------------
/01 - INTRO/practicas/5.-ui.md:
--------------------------------------------------------------------------------
1 | # Practica Wireframe
2 |
3 | Recuerda que Para esta practica puedes usar las siguientes herramientas:
4 |
5 | - Sketch (https://www.sketch.com/) Esta herramienta solo aplica si tienes una computadora MacOS, pero cuenta con una amplia gama de características enfocadas a diseñadores, lo que hace que se puedan crear cosas muy grandes y escalables.
6 |
7 | - Figma (https://www.figma.com/) Esta herramienta es gratuita en muchas de sus características y permite colaboración entre usuarios, lo que es muy útil cuando se trabaja en equipo, tanto en equipos de diseño como en equipos de desarrollo.
8 |
9 | - Adobe XD (https://www.adobe.com/mx/products/xd.html) Existe su versión de prueba gratuita que te dejará ocupar la herramienta completa para crear todos tus diseños y el costo para tener un plan pro no es muy alto, tiene la ventaja de estar basado en las herramientas de Adobe, por lo que si ya tienes experiencia con alguna de estas herramientas, la curva de aprendizaje podría ser más corta.
10 |
11 | Y puedes revisar el live del jueves 17/02/22 --> https://web.microsoftstream.com/video/9bcebbbb-a07a-4ffe-a4b8-3e9ad0c6b5e8
12 |
13 | ***¡Vámonos hasta el espacio y más allá Explorers!***
14 |
--------------------------------------------------------------------------------
/01 - INTRO/practicas/README.md:
--------------------------------------------------------------------------------
1 | # Practicas de Intro a Frontend
2 |
3 | Para las practicas de esta semana tendrán el siguiente caso y a raiz de eso sacar los puntos mencionados abajo.
4 |
5 | **Caso: Abogabot**
6 | Descripción:
7 |
8 | - Es un despacho de abogados que quiere automatizar las demandas de sus clientes, esto lo harán a traves de una página web llenando un formulario.
9 | - Al momento de llenar el formulario se manda al proceso de pago para finalizar la transacción.
10 | - Para dar seguimiento a su demanda, el cliente crea una cuenta en la plataforma y verá el seguimiento de cada una de las actualizaciones del proceso legal.
11 | - El administrador del sitio recbe la notificación de una nueva demanda y con los datos llenados del formulario se crea automaticamente el documento legal en formato word para empezar el proceso.
12 | - El administrador recibe el pago y debe de ser capaz de verlo en un dashboard para ver la cantidad de ingresos recibidos.
13 | - El administrador actualiza el proceso de la demanda y agrega comentarios en cada paso del proceso.
14 | - Al usuario le llegan correos de notificación para saber el avance de su proceso.
15 | - La página debe de ser responsive para poderla ver desde el celular.
16 | - La preferncia de colores del cliente es azul marino y blanco, pero acepta propuestas.
17 |
18 | - **Practicas**
19 | - [Toma de requerimientos](./1.-requerimientos.md)
20 | - [Crea tu buyer persona](./2.-buyerPersona.md)
21 | - [Publico objetivo](./3.-publicoObjetivo.md)
22 | - [Crea tu primer Wireframe UX](./4.-wireframe.md)
23 | - [Ahora el UI](./5.-ui.md)
24 |
25 | Para entrar a los contenidos solo tienes que dar click en el título y empezará la aventura.
26 |
27 | **_¡Vámonos hasta el espacio y más allá Explorers!_**
28 |
--------------------------------------------------------------------------------
/01 - INTRO/temario/1.-queEsFrontEnd.md:
--------------------------------------------------------------------------------
1 | # ¿Qué es FrontEnd?
2 |
3 | Hola Explorers!
4 |
5 | Esta es la primera de todas las preguntas que veremos durante este curso y de hecho su respuesta es bastante amplia...
6 |
7 | ## ¿Qué significa Front?
8 |
9 | Cuando hablamos de Front nos referimos a la parte de "en frente" de las aplicaciones web, la cual es la capa en la que interactuan los usuarios.
10 |
11 | Esta es la parte que se visualiza en el navegador y es la que manda toda la información al Backend para ser procesada.
12 |
13 |
14 |
15 | Así como se muestra en la imágen, en el FrontEnd construimos todo el diseño del sitio; desde la estructura, el acomodo, la distribución de contenido, los estilos que se muestran y los flujos de interacción con nuestros usuarios.
16 |
17 | ## El usuario
18 |
19 | Cuando programamos en FrontEnd tenemos que estar conscientes de que todo lo que hacemos será lo que la persona al otro lado de la pantalla usará, y esta persona es en la que nos tenemos que enfocar.
20 |
21 | Para eso existe el UI/UX, el cual se refiere a User Interface (Interfaz de usuario) y User experience (Experiencia de usuario), estas son las partes más importantes del diseño de una web, y SIEMPRE se tienen que realizar antes de empezar a programar.
22 |
23 |
24 |
25 | ## Patrones de arquitectura de desarrollo Web
26 | ### MVC (Model View Controller)
27 |
28 | Hablaremos de uno de los patrones de diseño web más utilizados y con el cual podremos tener muchísimo más claro el funcionamiento de todo el FrontEnd, la parte a la que nos referimos para el Front es la parte de la "Vista".
29 |
30 |
31 |
32 | MVC se refiere a la separación de la interfaz de usuario (Vista) de la parte de datos y de negocio (Modelo), la cual está intermediada por un controlador (Controller); el controlador realiza las validaciones, sanitizaciones de datos, manejo de errores, entre varias otras cosas que permiten que los datos que se mandan desde la vista, lleguen de forma más ordenada y limpia a su procesamiento en el backend que es donde se encuentra el modelo.
33 |
34 | Así como este patrón de diseño arquitectónico existen algunos otros como **MVVM(Model View View Model), MVP (Model View Presenter), RMR (Resource Method Representation)** y se recomienda que utilices el que sea mejor para tu aplicación.
35 |
36 | ## SDLC (Software Development Life Cycle)
37 |
38 | El Ciclo de Vida del desarrollo de software es algo que debemos tomar en cuenta siempre que vayamos a hacer una aplicación, así sea un proyecto personal, un trabajo o cualquier momento en el que desarrollemos software.
39 |
40 |
41 |
42 | En el SDLC tenemos las diferentes fases que harán que nuestro desarrollo sea mucho más controlado y sobre todo escalable y mantenible.
43 |
44 | - Fase 1: Requerimientos --> Fase donde se presentan las necesidades de la aplicación.
45 | - Fase 2: Diseño --> En esta fase los requerimientos se convierten en un plan y en lo que debería de parecer la aplicación o producto final.
46 | - Fase 3: Desarrollo --> En esta fase se hace la programación de las aplicaciones, aquí es donde metemos el código con las mejores prácticas y con las reglas de las guías de desarrollo seguro.
47 | - Fase 4: Verificación --> En esta fase revisarás y confirmarás que las buenas prácticas se aplicaron en el código. En esta parte se integran las pruebas de CI/CD e integración de pruebas unitarias.
48 | - Fase 5: Mantenimiento y evaluación --> Los sistemas son un ente vivo y por lo tanto tiene que mantenerse en continuo movimiento.
49 |
50 | Eso es todo por esta lección, nos vemos en la [siguiente](./2.-frontEndTecs.md).
51 |
52 | ***¡Vámonos hasta el espacio y más allá Explorers!***
53 |
--------------------------------------------------------------------------------
/01 - INTRO/temario/2.-frontEndTecs.md:
--------------------------------------------------------------------------------
1 | # ¿Qué tecnologías se usan en FrontEnd?
2 |
3 | El FrontEnd tiene muchísimos sabores y existen cientos de formas de hacer que tengas una página o aplicación web, y eso sin contar que también podríamos considerar como FrontEnd las aplicaciones móviles o de escritorio en toda su sección de interfaces.
4 |
5 | Para el caso específico del curso estaremos utilizando principalmente 3 tecnologías y sus variantes, estas son: HTML, CSS y JavaScript.
6 |
7 |
8 |
9 | ## HTML
10 |
11 | Este lenguaje nos permite tener el esqueleto de nuestra aplicación, es lo que define la estructura del sitio y lo que nos da la pauta y el inicio de nuestra aplicación web.
12 |
13 | Esto es lo que veremos en el siguiente módulo del curso.
14 |
15 | ## CSS
16 |
17 | Este lenguaje nos da la posibilidad de estilizar y de insertarle toda la parte de visual y estética a tu sitio como si fuera la piel de nuestra aplicación.
18 |
19 | Se utilizan clases y selectores para poder definir las propiedades y características de cada uno de los elementos que nosotros definamos en la aplicación web.
20 |
21 | ## JavaScript
22 |
23 | Es el cerebro de nuestra plataforma, una vez que nosotros utilizamos JS en el sitio le damos la capacidad de escalar las funcionalidades de forma exponencial, ya que pasamos de las propiedades que tienen las etiquetas (Que también tienen algo de JS) a tener una cantidad virtualmente infinita de posibilidades.
24 |
25 | Podemos considerar a JS como el sistema nervioso que controla toda nuestra aplicación web y la que manejará todos los músculos y huesos de nuestro sitio.
26 |
27 |
28 |
29 | Esta imagen es una metáfora bastante acertada de cómo funcionan estas 3 tecnologías básicas de FrontEnd
30 |
31 | ## Frameworks
32 |
33 | Los Frameworks son variantes de JS que nos ayudan a que nuestra programación pueda llegar a ser mucho más rápida o con algunas funcionalidades adicionales a Vanilla JS, esto aplica tanto para FrontEnd como para Backend.
34 |
35 | El hecho de que un Framework te permita programar de forma más sencilla NO SIGNIFICA que puedes saltarte toda la parte fundamental de JS, esto es porque al ser la base de muchos de los Frameworks web, es bastante útil conocer como funciona desde el fondo.
36 |
37 | Existen muchos Frameworks y librerías muy famosos, pero por mencionar algunos de FrontEnd están React JS, Vue JS, Angular, Ember JS, Svelte, entre otros.
38 |
39 |
40 |
41 | Adicional a estos también existen Frameworks para Backend, como por ejemplo NodeJS (Que de hecho es una de las opciones a seleccionar para tu siguiente misión)
42 |
43 | Eso es todo por esta lección, nos vemos en la [siguiente](./3.-webDevSetup.md).
44 |
45 | ***¡Vámonos hasta el espacio y más allá Explorers!***
46 |
--------------------------------------------------------------------------------
/01 - INTRO/temario/3.-webDevSetup.md:
--------------------------------------------------------------------------------
1 | # Setup de un programador FrontEnd
2 |
3 | ¡Hola Explorers!
4 | En cualquiera de las profesiones a las que nos dediquemos necesitamos herramientas poderosas que nos ayuden a hacer realidad nuestros más grandes sueños.
5 |
6 | En el caso específico de programación web y específicamente FrontEnd lo que utilizaremos es lo siguiente:
7 |
8 | - Herramienta de diseño de aplicación
9 | - IDE de programación
10 | - Navegador web
11 | - Diferentes opciones de "Developer tools"
12 | - Herramienta de documentación
13 |
14 | Algunas de las herramientas podrían ser opcionales o en un ámbito profesional podrían ser utilizadas por otras áreas de la empresa, sin embargo, es importante que ustedes las conozcan para que en el flujo operativo de la empresa, su aporte sea mucho más valioso.
15 |
16 | ## Herramienta de diseño
17 |
18 | Esta herramienta es la que nos da la capacidad de tener un prototipo sin poner NI UNA línea de código.
19 |
20 | En el flujo de programación, basándonos en el SDLC (Software Development Life Cycle) siempre es necesario empezar con el diseño de la solución antes de irnos directo a programarla, esto se hace así porque en caso de haber un cambio o modificación es mucho más fácil y rápido cambiarla en el lado de diseño que volver a programar el módulo completo.
21 |
22 | El diseño tiene como objetivo poder aterrizar los requerimientos de quien nos esté pidiendo el software y para eso existen diferentes técnicas como por ejemplo: Desing Thinking, Visual Thinking, diagramas de flujo, o la que mejor se te acomode para poder entender lo más cercano posible a lo que tu cliente esté pidiendo.
23 |
24 | En cuanto a las opciones, existen muchas herramientas de diseño; desde Paint, Canva, Photoshop, Illustrator, Publisher o cualquier cuaderno que tengamos en casa, pero existen herramientas especializadas y enfocadas al diseño de wireframes e interfaces gráficas las cuales idealmente deberíamos usar para este caso.
25 |
26 | Antes de adentrarnos en las herramientas recordemos que primero necesitamos poder aterrizar la idea y los requerimientos, para esto existe toda una fase previa a la estética de nuestra aplicación, esta fase es fundamental, ya que si no la realizamos podríamos encontrarnos obstáculos en el camino después. Esta es la fase de diseño de flujo y de WireFrame, lo que haremos en esta fase es entender las necesidades y empezar a dibujar como funciona la aplicación sin darle diseño gráfico aún, esta es una fase completamente funcional para darnos cuenta de las interacciones, los botones necesarios, el número de clicks y los diferentes movimientos de la aplicación y nos dará muchísima información para que nuestra aplicación sea lo más fluida posible.
27 |
28 | Para esta fase de flujos y Wireframe existen diferentes herramientas como las siguientes:
29 |
30 | - Miro (https://miro.com/es/) Esta herramienta te permitirá crear flujos de información y flujos de negocio.
31 | - Balsamic mockups (https://balsamiq.com/wireframes/) Nos da elementos para poder crear interfaces rápidas y que nos dejan representar la idea.
32 | - Dibujos a mano alzada --> a veces un wireframe también puede ser en una servilleta o en cualquier forma escrita.
33 |
34 | Una vez realizado tu wireframe pasaremos a la parte de UI/UX, en este momento comenzaremos con toda la parte gráfica, de identidad y de uso de colores, formas e interacciones a lo largo de nuestra aplicación, para eso podemos usar cualquiera de las siguientes herramientas.
35 |
36 |
37 |
38 | - Sketch (https://www.sketch.com/) Esta herramienta solo aplica si tienes una computadora MacOS, pero cuenta con una amplia gama de características enfocadas a diseñadores, lo que hace que se puedan crear cosas muy grandes y escalables.
39 |
40 | - Figma (https://www.figma.com/) Esta herramienta es gratuita en muchas de sus características y permite colaboración entre usuarios, lo que es muy útil cuando se trabaja en equipo, tanto en equipos de diseño como en equipos de desarrollo.
41 |
42 | - Adobe XD (https://www.adobe.com/mx/products/xd.html) Existe su versión de prueba gratuita que te dejará ocupar la herramienta completa para crear todos tus diseños y el costo para tener un plan pro no es muy alto, tiene la ventaja de estar basado en las herramientas de Adobe, por lo que si ya tienes experiencia con alguna de estas herramientas, la curva de aprendizaje podría ser más corta.
43 |
44 | Cualquiera de estas 3 últimas nos sirven también para la fase de wireframe y diseños de flujo, pero están más enfocadas hacia la parte de agregar diseño gráfico a los flujos realizados.
45 |
46 |
47 | ## IDE de programación
48 |
49 | Un IDE (Integrated Development Environment) es un software que nos ayuda a los desarrolladores a poder construir aplicaciones de forma más sencilla, esto es porque combina diferentes herramientas de desarrollo en una sola interfaz gráfica.
50 |
51 | - Editor de código: Un simple editor de texto que te ayuda a escribir software, tiene características útiles como: resaltar la sintaxis, encontrar algunos problemas dependiendo del lenguaje o autocompletando para que tu experiencia sea mejor.
52 | - Automatización: Algunos IDEs tienen la posibilidad de automatizar tareas repetitivas como el despliegue de tu programa, la compilación o incluso la actualización de versiones.
53 | - Depuración: Al tener toda la experiencia con lenguajes de programación, hay algunos IDEs que te ayudan a identificar errores o bugs antes de que se compile, e incluso hay algunos que te dan la solución o recomendaciones para que eso no pase.
54 | - Integración: Existen herramientas que nos permiten integrar nuestro IDE de forma directa con su aplicación como lo son las interfaces, versionamientos de código o herramientas de despliegue.
55 |
56 | Existen muchas y diferentes opciones, algunas enfocadas a un solo lenguaje y otras que son más abiertas y debes de utilizar el que se adapte mejor a la necesidad que se te presente.
57 |
58 | Te dejo algunos ejemplos de IDEs para que puedas escoger el que más te guste.
59 |
60 | A mi en lo personal me gusta mucho Visual Studio Code por todas las extensiones que tiene y las integraciones sencillas con diferentes tecnologías de Azure, Github, entre otras https://code.visualstudio.com/, además lo puedes usar en el navegador sin necesidad de instalarlo https://vscode.dev/
61 |
62 |
63 |
64 | Adicional a este IDE también he utilizado Atom, el cual tiene una alta capacidad de personalización, así como también diferentes integraciones con herramientas de despliegue https://atom.io/
65 |
66 |
67 |
68 | Igualmente si buscas una opción más simple, existe el editor de texto Sublime Text, es una herramienta que se utiliza mucho al inicio, pero que no cuenta con todas las integraciones y automatizaciones que te dan los primeros 2 https://www.sublimetext.com/
69 |
70 |
71 |
72 | ## Navegador web
73 |
74 | Al ser programadores web todo lo que programemos se desplegará en un navegador web, aquí hay que tener mucho cuidado y revisar que la tecnología que estemos utilizando es compatible y se despliega de forma igual o similar en todos los navegadores.
75 |
76 | Recordemos que todo lo que hacemos es para nuestro usuario y si a nuestro usuario le gusta usar un navegador u otro, nuestra aplicación deberá de ser capaz de brindarle los servicios, independientemente del navegador en el que se encuentre.
77 |
78 | Tenemos Navegadores desde Internet Explorer, Chrome, Brave, Safari, Firefox, Edge, Opera y muchísimos más que hacen diferentes interpretaciones al código que nosotros programemos, es por eso que siempre es importante revisar la compatibilidad.
79 |
80 | Para eso existen plataformas como "Can I use" https://caniuse.com/, la cual nos dice en que navegadores podemos utilizar la tecnología de HTML, CSS y JS que queramos utilizar.
81 |
82 |
83 |
84 | Antes de decidir que tecnología vamos a implementar es importante saber a que usuarios vamos dirigidos y poder conocer los navegadores más utilizados por ellos, tanto en ambientes de escritorio como móviles.
85 |
86 | ## Developer tools
87 |
88 | Cuando hablamos de las Developer tools ya *no* nos referimos a todo lo que estamos viendo como parte del SetUp que necesitamos para programar y desarrollar nuestras aplicaciones.
89 |
90 | En este caso nos referimos a herramientas adicionales que nos dan información sobre nuestra aplicación y mejoras que podemos implementarle.
91 |
92 | Una de las más conocidas y usadas es Lighthouse de Google (https://developers.google.com/web/tools/lighthouse?hl=es) , la podemos encontrar directamente en el navegador y nos dará una auditoría del status de nuestro sitio en diferentes áreas como rendimiento, accesibilidad, buenas prácticas y SEO.
93 |
94 |
95 |
96 | Si bien es de las más conocidas, no es la única y algo que debemos de tomar muy en cuenta es la parte de Accesibilidad en nuestros desarrollos, la democratización de la tecnología no solo significa que todos puedan tener acceso a ella, sino que también la puedas aprovechar independientemente de si tienes alguna condición física que no te permita interactuar con ella.
97 |
98 | Pensemos en las personas que tienen debilidad visual o que son completamente ciegas usando nuestra aplicación web o personas que tienen algun problema motriz y que no pueden tocar todos los botones de nuestro sitio.
99 |
100 | Estas personas también pueden ser nuestros usuarios y es nuestro deber como desarrolladores integrar las facilidades de accesibilidad a nuestras plataformas ayudando así a la democratización de la tecnología.
101 |
102 | Para esto existen herramientas específicas que nos darán todas las guías y usos adecuados de accesibilidad para los usuarios como axe DevTools (https://www.deque.com/axe/devtools/) que puedes instalar como una extensión en tu navegador y te dará mucha información sobre cuales son los problemas en tu desarrollo, pero lo más importante, información sobre como solucionarlos.
103 |
104 |
105 |
106 | ## Documentación
107 |
108 | Una de las fallas más grandes que me ha tocado ver a lo largo de mi carrera es que no se documentan los desarrollos, esto es bastante grave, ya que en caso de que se cambie de desarrollador o de que sea un programa que tiene mucho tiempo que no mueves, necesitas conocer y entender como fue desarrollado.
109 |
110 | En el ámbito profesional tu proyecto no será considerado a menos que esté bien documentado y cuando eres parte de un equipo de desarrollo la documentación es la forma más sana de comunicarte con todo el equipo.
111 |
112 | La falta de documentación hace que la mantenibilidad del código sea mucho más complicada y que muchas veces se tenga que reprogramar los módulos ya que en promedio si no usas el código en aproximadamente 6 meses, dejarás de comprender su funcionalidad.
113 |
114 | Para esto existen librerías como API Doc (https://apidocjs.com/) o como rails Admin (https://github.com/railsadminteam/rails_admin) que nos dan facilidades para documentar mientras programamos.
115 |
116 | Lo que es importante considerar al momento de documentar tu código es lo siguiente:
117 |
118 | - Definir tu audiencia: A quien va a ir dirigida tu documentación, si es para otros desarrolladores, de que nivel o si es para alguien administrativo o si incluso es para ti mismo en un futuro.
119 | - Qué problemática soluciona tu código: Todo lo que programamos tiene una funcionalidad por módulo y necesitamos definir que parte de la aplicación afecta, en que forma y cuales son las opciones de entrada y salida de nuestras funciones.
120 | - Estructura de aplicación: Cuando documentamos todo un proyecto tendremos diferentes secciones, funcionalidades, páginas o incluso otros sitios que se conecten al nuestro, para esto es recomendable documentar desde lo más general a lo particular, un ejemplo muy bueno lo podemos encontrar en la documentación de Firebase (https://firebase.google.com/docs/build)
121 |
122 | Una herramienta muy útil para poder lograr esta estructura es Notion (https://www.notion.so/)
123 |
124 |
125 |
126 | Otra herramienta que igualmente es adaptable y está enfocada hacia desarrolladores por la parte de seguimiento de sprints por parte de Atlassian es Confluence (https://www.atlassian.com/es/software/confluence)
127 |
128 |
129 |
130 | Estas son herramientas que te pueden servir a darle mucha más formalidad a tu proyecto y que hará que tengas más orden en todos tus proyectos y en lo profesional tu valor aumentará de forma muy relevante.
131 |
132 | Eso es todo por esta lección, nos vemos en la [siguiente](./4.-estructuraWeb.md)
133 |
134 | ***¡Vámonos hasta el espacio y más allá Explorers!***
135 |
--------------------------------------------------------------------------------
/01 - INTRO/temario/4.-estructuraWeb.md:
--------------------------------------------------------------------------------
1 | # Estructura Web
2 |
3 | En este módulo veremos como están estructurados los sitios para que los usuarios puedan comprender mejor.
4 |
5 | La estructura de tu sitio o aplicación web es el cómo están ligadas las diferentes páginas, visto desde como interactuan con los links y llamados internos, así como su jerarquía.
6 |
7 | Esto es importante porque define la organización de la información, lo cual afecta tanto a tus usuarios, como a los navegadores para poder leer bien tu contenido y que eso le ayude a la navegación para las personas, pero también a darte una mejor calificación de SEO.
8 |
9 | ## Contenido Jerárquico
10 |
11 | Esta es una de las estructuras web más utilizadas y conocidas por los diseñadores y desarrolladores, ya que utiliza una categorización de contenido de lo general a lo particular.
12 |
13 |
14 |
15 | Esto se refiere a que tenemos una raíz y de ahí se desprende todo el contenido informativo y de uso en el sitio.
16 |
17 | ### Homepage
18 | Esta es la página inicial y en donde mostrarás la información más importante, todas las páginas importantes de tu sitio deben de estar ligadas a esta para que la navegación sea mucho más sencilla e intuitiva para los usuarios.
19 |
20 | Esta navegación puede ser representada en forma de menú, botones o diferentes tipos de interacciones dentro de la página inicial, aquí podemos ver elementos como sliders, cards, enlaces, imágenes y más elementos que hagan alusión al movimiento y lo que tenemos que cuidar aquí es que para el usuario sea muy sencillo encontrar todas las demás páginas.
21 |
22 | ### Navegación / Menú
23 | Esta es la forma en como tu usuario identificará como está organizada toda tu información y así encontrar lo que esté buscando.
24 |
25 | Necesitamos asegurarnos de que la información más importante y las categorías principales estén representadas en el menú principal o como parte de la navegación del sitio considerando lo siguiente:
26 |
27 | - Usa frases cortas o en todo caso una sola palabra para cada elemento y poder moverte de un lado a otro.
28 | - Usa lenguaje simple para que seas claro con tus usuarios.
29 | - No revuelvas la información, busca el orden de prioridad y sigue ese orden en tu navegación.
30 | - Las URLs de tu aplicación deben de ser intuitivas y no confusas (iE. tusitio.com/contacto)
31 | - Muestra la jerarquía como parte de tu sitio con las subCategorías desplegadas con su categoría padre.
32 | - Secciones como los términos y condiciones, política de privacidad o secciones que no son muy utilizadas llevalas al footer para que no sea tanta información por procesar para el usuario.
33 |
34 | Este menú puede tener diferentes formas e incluso se puede modificar la forma de interacción incluso si cambias de tamaño de pantalla, pero los más comunes son NavBar que es la barra de navegación en la parte de arriba de las páginas o los SideBar que significa que el menú se encuentra a un costado de la página o aplicación.
35 | ### Categorías y subcategorías
36 | Las categorías sirven para poder agrupar los contenidos e información pensando en hacerlo fácil para que los usuarios accedan al contenido.
37 |
38 | Las categorías puedes considerarlas como tu menú principal y de ahí desplegar la información adicional como submenu, recuerda que las categorías principales deben de darle el "mapa" a tu usuario para poder navegar por todo tu sitio, mientras que las subcategorías le dan la información detallada de lo que está buscando.
39 |
40 |
41 |
42 | Si lo vemos con el ejemplo de un blog, las categorías podrían ser los temas principales de tus publicaciones y esas categorías las puedes desglosar para hacerlas más detalladas.
43 |
44 | O con otro ejemplo sencillo, en una tienda en línea de ropa tenemos categorías de productos que pueden ser "zapatos", "chamarras", etc. y las subcategorías podrían ser "niños", "mujer", "hombre", "Tallas chicas", etc. La idea de la organización hace que el uso de tu aplicación sea más sencilla para el usuario.
45 |
46 | ### Páginas individuales / finales
47 | Estas son las páginas finales a donde puede llegar tu usuario, apartir de aquí ya no hay más jerarquía y es en donde descansa la mayor parte de la información valiosa de tu plataforma.
48 |
49 | Estas páginas deben de tener contenido significativo, por ejemplo; puede ser que compartan la publicación, que compren el producto o simplemente que hayan encontrado lo que buscan en tu plataforma.
50 |
51 | Alguna información adicional que puedes poner aquí puede ser con respecto a contenido similar como links a otras partes de tu sitio o en algunos casos de productos, y un formulario de contacto por si necesitan soporte.
52 |
53 | La finalidad de estas páginas es darle al usuario lo que necesita, así que debes de ser muy claro al darle las instrucciones necesarias para que llegue sin problemas a tus páginas finales.
54 |
55 | ## Otros tipos de estructuras de sitios
56 |
57 | ### Modelo Secuencial
58 | Este modelo es popular por dirigir al usuario por diferentes pasos secuenciales los cuales tienen un orden de finalización antes de poder pasar al siguiente.
59 |
60 | Este modelo se utiliza cuando necesitas que tu usuario vaya por un flujo de información sin salirse del carril.
61 |
62 |
63 |
64 | ### Modelo de matriz
65 | Este modelo te permite una navegación general por todo el sitio, en la que normalmente se tienen muchas opciones de información específica, la cual es compleja de agrupar en categorías, estos sitios por lo general utilizan links internos del mismo sitio para poder dirigirte a las secciones deseadas.
66 |
67 | Uno de los mejores ejemplos de este tipo de modelo es Wikipedia.
68 |
69 |
70 |
71 | Al final del día no hay un modelo que sea mejor a otro, cada sitio es único y se debe tratar como tal para lograr la mejor organización de la información pensando siempre en tu usuario.
72 |
73 | Eso es todo por esta lección, nos vemos en la [siguiente](./5.-estructuraCodigo.md).
74 |
75 | ***¡Vámonos hasta el espacio y más allá Explorers!***
76 |
--------------------------------------------------------------------------------
/01 - INTRO/temario/5.-estructuraCodigo.md:
--------------------------------------------------------------------------------
1 | # Estructura Código
2 |
3 | En este módulo nos referimos a la estructura y limpieza de código.
4 |
5 | Esto es COMPLETAMENTE NECESARIO, ya que debemos de aprender las buenas prácticas de programación desde el inicio.
6 |
7 | ## ¿Para qué?
8 |
9 | La limpieza de código es una de las mejores cosas que puedes hacer mientras estés desarrollando tu proyecto y esto es porque ayuda muchísimo con la **mantenibilidad** y la **continuidad** del código.
10 |
11 | Es una forma intuitiva de hacer que tu programa sea legible, para ti mismo dentro de unos meses o para otros desarrolladores.
12 |
13 |
14 |
15 | ## Estructura de proyecto
16 |
17 | No existe una forma "estándar" de manejar la estructura de tu proyecto, pero existen algunas formas de hacerlo que ayudarán a la organización y limpieza de tu programación.
18 |
19 | La estructura en los folders de tu proyecto ayuda mucho a ubicar los archivos y aquí tienes algunas opciones dependiendo del tamaño de tu proyecto y de lo que mejor convenga para el mismo, aquí te dejo algunos ejemplos de estructura.
20 |
21 | ### Por tipo de archivo
22 |
23 | Esta forma de estructurar tu proyecto divide los diferentes archivos por tipo y ayuda para cuando tienes proyectos pequeños para organizar y ubicar donde esté lo que necesitas.
24 |
25 | Ejemplo:
26 |
27 | - Root
28 | - assets
29 | - img
30 | - img1.png
31 | - img2.png
32 | - fonts
33 | - videos
34 | - styles
35 | - file1.css
36 | - file2.css
37 | - js
38 | - file1.js
39 | - file2.js
40 | - views - file1.html - file2.html
41 | index.html
42 |
43 | Esta organización te ayudará mucho para que puedas identificar de forma rápida si necesitas cualquier archivo, pero puede llegar a ser complicado en caso de que tu proyecto crezca y tenga un gran número de archivos porque se complica la búsqueda.
44 |
45 | ### Por funcionalidad
46 |
47 | Este tipo de organización funciona mucho con proyectos más grandes, los cuales tienen varias páginas como parte de su funcionalidad, en este tipo de proyectos ya se utilizan componentes, rutas, librerías externas, etc.
48 |
49 | Ejemplo
50 |
51 | - Root
52 | - assets
53 | - img
54 | - img1.png
55 | - img2.png
56 | - fonts
57 | - videos
58 | - styles
59 | - file1.css
60 | - file2.css
61 | - controllers
62 | - controller1.js
63 | - controller2.js
64 | - components
65 | - component1.js
66 | - component2.js
67 | - routes
68 | - route1.js
69 | - route2.js
70 | - views - view1.html - view2.html
71 | index.html
72 |
73 | Este tipo de estructuras funcionan cuando tu proyecto contiene una gran cantidad de archivos y la arquitectura de desarrollo está segmentada.
74 |
75 | ### Por ruta
76 |
77 | Este tipo de estructura sirve para cuando se programa en equipos que tienen desarrollos independientes, pero que son todos parte de un mismo proyecto, ya que separa los archivos de forma que cada carpeta tenga sus propios archivos.
78 |
79 | Ejemplo:
80 |
81 | - Root
82 | - assets
83 | - img
84 | - img1.png
85 | - img2.png
86 | - fonts
87 | - videos
88 | - perfil
89 | - perfil.css
90 | - perfil.js
91 | - perfil.html
92 | - perfil.test.js
93 | - feed
94 | - feed.css
95 | - feed.js
96 | - feed.html
97 | - feed.test.js
98 | - searchbar
99 | - searchbar.css
100 | - searchbar.js
101 | - searchbar.html
102 | - searchbar.test.js
103 |
104 | Esta estructura funciona para equipos que trabajan en archivos o secciones independientes.
105 |
106 | ## Buenas Prácticas de código.
107 |
108 | Ya vimos como estructurar nuestros proyectos, pero ahora siguen cuales son las recomendaciones al momento de escribir código y evitar cosas como el código espagueti, que así se le llama por estar enredado y nadie lo entienda.
109 |
110 |
111 |
112 | Para eso aquí te dejo varias recomendaciones para que tu código tenga una buena legibilidad y por lo tanto sea mucho más fácil de comprender.
113 |
114 | - Enfócate en la legibilidad: Para ayudar al seguimiento y que sea fácil de leer ayudará mucho a optimizar tiempo.
115 | - Usa la menor cantidad de líneas posible.
116 | - Usa nombres adecuados para las variables.
117 | - Segmenta tu código por bloques de funcionalidad.
118 | - Usa de forma correcta la identación para controlas las estructuras de código.
119 | - Usa funciones atómicas que no contengan muchas funcionalidades en una sola función.
120 | - Aplica el principio DRY (Don't Repeat Yourself) en donde las tareas repetitivas hay que usarlas como funciones.
121 | - Evita la anidación profunda.
122 | - Estandariza la documentación en los comentarios: Usa los comentarios como encabezados de cada una de tus funciones para poder explicar que es lo que hace la función antes de empezar a leer el código, esto ayuda mucho en el futuro cuando quieras revisar el código.
123 | - Nombre del módulo.
124 | - Fecha de creación.
125 | - Autor.
126 | - Historial de modificaciones.
127 | - Resumen de funcionalidad.
128 | - Formaliza las Excepciones: Las Excepciones se refiere a todos los problemas, errores o eventos poco comunes que pueden hacer que tu código no funcione de forma correcta o que simplemente rompa tu aplicación, es necesario controlarlas para poder solucionar estos problemas.
129 | - Siempre usa bloques de Try-Catch.
130 | - Maneja un proceso de pruebas.
131 | - Usa registros de actividad que te den información suficiente de en dónde, quien y qué fue lo que pasó en la excepción.
132 | - Estandarizar la forma de escribir código: Cuando se coolabora con más personas en el mismo equipo de desarrollo es necesario tener una misma forma de escribir código, desde las variables hasta las llaves, para eso existen diferentes herramientas para poder controlar el entorno de programación.
133 | - prettier: Es una extensión de VSCode que acomoda automáticamente tu código (https://prettier.io/)
134 | - eslint: Herramienta que revisa el código escrito y los revisa con una lista de estándares para poder unificar la forma de programación (https://eslint.org/)
135 |
136 | Eso es todo por esta lección, Vámonos a las [prácticas](../practicas/README.md).
137 |
138 | **_¡Vámonos hasta el espacio y más allá Explorers!_**
139 |
--------------------------------------------------------------------------------
/02 - HTML/README.md:
--------------------------------------------------------------------------------
1 | # HTML
2 |
3 | Bienvenido Explorer, llegamos al primer vuelo de tu misión de FrontEnd y empezamos a programar con HTML.
4 |
5 | HTML es el lenguaje que nos permite darle estructura a nuestras páginas web y que nos da la oportunidad de darle un esqueleto a nuestros sitios.
6 |
7 | En este módulo veremos las siguientes cosas.
8 |
9 | 2. **HTML**
10 | - [Qué es HTML y estructura de archivo](./temario/1.-queEsHMTL.md)
11 | - [Etiquetas básicas](./temario/2.-etiquetasBasicas.md)
12 | - [Elementos compuestos](./temario/3.-elementosCompuestos.md)
13 | - [Acomodo y navegación](./temario/4.-acomodoNavegacion.md)
14 | - [Propiedades de etiquetas](./temario/5.-propiedades.md)
15 |
16 | Para entrar a los contenidos solo tienes que dar click en el título y empezará la aventura.
17 |
18 | ***¡Vámonos hasta el espacio y más allá Explorers!***
19 |
--------------------------------------------------------------------------------
/02 - HTML/images/HTML.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romarpla/cursoFrontEnd/10846bab2e324c4e1f96706d1ae174a1e2f56115/02 - HTML/images/HTML.png
--------------------------------------------------------------------------------
/02 - HTML/practicas/README.md:
--------------------------------------------------------------------------------
1 | # Prácticas HTML
2 |
3 | Para la práctica de esta semana tendrán que maquetar en HTML el siguiente caso y generar su repositorio con el ejercicio.
4 |
5 | Recordemos que solamente se necesita maquetar como un prototipo, **no es necesario que tenga funcionalidad completa en la información**
6 |
7 | ## **Caso: Pastelería**
8 |
9 |
10 | Descripción:
11 | - El cliente de la pastelería necesita ver los diferentes sabores de pasteles, así como los precios de cada uno.
12 | - El cliente de la pastelería necesita ver los diferentes adornos con los que se puede decorar el pastel y los precios de cada uno.
13 | - El cliente de la pastelería tendrá la posibilidad de combinar sabores dependiendo de sus preferencias.
14 | - El cliente de la pastelería tendrá la posibilidad de combinar adornos dependiendo de sus preferencias.
15 | - El cliente de la pastelería necesita poner en un formulario su pedido.
16 | - El formulario debe de contener los datos de contacto del cliente que son Nombre, Teléfono, Correo Electrónico, Descripción general del pastel y la selección de sabores y adornos.
17 | - El pastelero necesita tener la información de la cantidad de sabores que le quedan para hacer los pasteles.
18 | - El pastelero necesita tener la información de la cantidad de adornos que le quedan para hacer los pasteles.
19 | - El pastelero necesita una tabla donde aparezcan los pedidos que se han realizado con los datos del formulario.
20 | - La página debe tener información de la pastelería que es Dirección, Teléfono y horarios de atención.
21 |
22 | ## Prácticas a Realizar
23 | **Tienen hasta el 4 de Marzo**
24 |
25 | Prácticas:
26 | - Crear marca de la pastelería como un logo y los mensajes que daremos desde la marca.
27 | - Maquetación de páginas de cliente de la pastelería.
28 | - Maquetación de páginas del pastelero.
29 |
30 | Bonus:
31 | En caso de que te quede corto el ejercicio siguele con esto!
32 | - Bonus de estilos (Intro a CSS)
33 | - Bonus de Rutas (Navegación en la página)
34 | - Bonus de despliegue (Montar la página en línea con dominio gratuito)
35 |
36 | ## El 4 de Marzo se subirá el Form para que entreguen las prácticas.
37 | ***¡Vámonos hasta el espacio y más allá Explorers!***
38 |
--------------------------------------------------------------------------------
/02 - HTML/programas/1.-etiquetasBasicas.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
Este es un parrafo para los explorers Este es un parrafo para los explorersEste es un parrafo para los explorers Este es
16 | un parrafo para los explorers
Este es un parrafo para los explorersEste es un parrafo para los explorers
Parrafo 2 Parrafo 2 Parrafo 2 Parrafo 2 Parrafo 2 Parrafo 2 Parrafo 2
19 | 20 | 21 | Link a LaunchX 22 |Compañía | 31 |Contacto | 32 |País | 33 |
---|---|---|
Alfreds Futterkiste | 36 |Maria Anders | 37 |Germany | 38 |
Centro comercial Moctezuma | 41 |Francisco Chang | 42 |Mexico | 43 |
Londres es la capital de Inglaterra y es la ciudad más popular del Reino Unido, es la ciudad mas poblada con 13 millones de habitantes en su área metropolitana
92 |Todos incluyen nopales y cebollas
20 |Con cilantro y cebolla
30 |Haz tu combo con refresco por $10 más
40 |Nombre | 60 |Ubicación | 61 |Horarios | 62 |
---|---|---|
Centro | 65 |Antonio Solis 166, Obrera | 66 |L - D 24H | 67 |
Sur | 70 |Cuauhtémoc E, Ignacio Allende 134 | 71 |L - D 5pm - 3am | 72 |
Norte | 75 |Sara 4537, Guadalupe Tepeyac | 76 |M - D 5pm - 3am | 77 |
contenido
41 | ``` 42 | 43 | Donde tenemos el contenido podemos poner la información que queremos que se visualice en nuestro navegador, pero recuerda aún sin estilos, porque eso lo veremos en otra lección. 44 | 45 | Podemos agregar un párrafo adicional con salto de línea por defecto, pero si queremos poner párrafos separados dentro del mismo, sin el salto de línea podemos ajustarlo con la siguiente etiqueta: 46 | 47 | ```html 48 |Compañía | 89 |Contacto | 90 |País | 91 |
---|---|---|
Alfreds Futterkiste | 94 |Maria Anders | 95 |Germany | 96 |
Centro comercial Moctezuma | 99 |Francisco Chang | 100 |Mexico | 101 |
Parrafo simple
58 | 59 |Prueba clase parrafo
61 |Prueba color rojo
14 |Prueba color RGB
15 |Prueba color RGBA
16 |Prueba color HEX
17 |Prueba color HSL
18 | 19 |Parrafo izquierda
12 |Parrafo derecha
13 |Parrafo Centrado
14 |Lorem ipsum dolor sit amet consectetur adipisicing elit. Eum molestiae, adipisci voluptatem ex quod tenetur quia praesentium necessitatibus doloribus qui repudiandae nihil exercitationem dolorem hic cum commodi beatae earum assumenda.
15 |Parrafo al reves
16 |Parrafo Overline
17 |Parrafo Line Through
18 |Parrafo Underline
19 |Parrafo decorado completo
20 |Parrafo Negritas
21 |Parrafo ligeras
22 | 23 | Link a tal lugar 24 | 25 | 26 | -------------------------------------------------------------------------------- /03 - CSS/programas/flexbox.css: -------------------------------------------------------------------------------- 1 | *{ 2 | font-family: Arial, Helvetica, sans-serif; 3 | } 4 | 5 | .contenedor{ 6 | min-height: 400px; 7 | background-color: #697070; 8 | display: flex; 9 | justify-content: space-around; 10 | align-items: center; 11 | flex-wrap: wrap; 12 | } 13 | 14 | .elemento{ 15 | height: 200px; 16 | width: 200px; 17 | background-color: #911a3c; 18 | border-color: #fff; 19 | border-width: 5px; 20 | border-style: solid; 21 | padding: 10px; 22 | } -------------------------------------------------------------------------------- /03 - CSS/programas/flexbox.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 |Hola explorers 1
14 |Hola explorers, ¿cómo están?
14 |Este es un parrafo
19 | Este es otro parrafo 20 | 21 | 22 | 23 |Mouse over me
27 |Click me
31 |
5 | For a guide and recipes on how to configure / customize this project,
6 | check out the
7 | vue-cli documentation.
10 |