Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Estudiante
Jorge Andrés Vega Montalván
Materia
Arquitectura de la Información
Fecha
17 de enero del 2022
Ingeniera
Natalia Patricia Layedra Larrea
Carrera
Tecnologías de la Información
Curso
Tercero “A”
Código
42
Actividad
Lectura crítica de textos: Tecnologías Front - End y Back - End
RIOBAMBA-ECUADOR
pág. 1
Tabla de contenido
Introducción 3
Desarrollo 4
Conclusión 11
Fuente Bibliográfica 11
pág. 2
Introducción
Frontend es la parte de un sitio web que interactúa con los usuarios, por eso decimos
que está del lado del cliente. Backend es la parte que se conecta con la base de datos y el
servidor que utiliza dicho sitio web, por eso decimos que el backend corre del lado del
servidor. Estos dos conceptos explican a grandes rasgos cómo funciona un sitio o
aplicación web y son fundamentales para cualquier persona que trabaje en el mundo
digital.
¿Qué es Frontend?
Frontend es la parte de un programa o dispositivo a la que un usuario puede acceder
directamente. Son todas las tecnologías de diseño y desarrollo web que corren en el
navegador y que se encargan de la interactividad con los usuarios.
Los desarrolladores frontend son aquellos que crean los componentes visuales de un
sitio web. Dan formato a las imágenes, la animación y la interactividad de un sitio web.
Quienes desarrollan el Front-end son responsables del código orientado a la inmersión
del sujeto en el sitio. Para lograrlo los expertos deben conocer tres idiomas esenciales:
Javascript;
CSS;
HTML.
Así como estar familiarizados con frameworks como:
Foundation;
Bootstrap;
AngularJS;
Ember JS;
Backbone.
Un desarrollador front-end debe conocer los siguientes lenguajes de
programación: HTML5, CSS3, JavaScript, Jquery, Ajax.
¿Qué es Backend?
Backend es la capa de acceso a datos de un software o cualquier dispositivo, que no es
directamente accesible por los usuarios. Además, contiene la lógica de la aplicación que
maneja dichos datos. El Backend también accede al servidor, que es una aplicación
especializada que entiende la forma en la que el navegador hace solicitudes.
Los desarrolladores backend se encargan de hacer que la lógica del sitio funcione
correctamente, la información se transmita de manera segura y el desempeño de la
aplicación no entorpezca la experiencia del usuario.
pág. 3
En pocas palabras, aquellos aspectos que las personas no pueden ver en el navegador,
entre ellos servidores y bases de datos.
Facebook y Google Maps son sitios dinámicos diseñados para cambiar y actualizarse en
tiempo real constantemente.
Un desarrollador Back end debe tener amplios conocimientos de los siguientes
lenguajes: frameworks y los tipos de base de datos. No siendo necesario conocer todos
los lenguajes, pero sí entender y saber trabajar con algunos de ellos.
ASP. NET, PHP, Python, Ruby, Node.js, Java, MySQL, SQL Server, PostgreSQL,
Oracle, MongoDB
DESARROLLO/CONTENIDO
Contenido (Tecnologías Front - End y Back - End)
Tecnologías utilizadas en front-end
1.-React
React es un lenguaje de programación desarrollado por Facebook para la
creación de interfaces de usuario web rápidas y de vanguardia. Actualmente
es una de las bibliotecas de JavaScript más utilizadas para la creación de
interfaces web.
El lenguaje de programación React es adecuado para la creación de
interfaces de usuario visuales y la representación de datos para navegadores.
Características
JSX: JSX se encuentra entre las extensiones de sintaxis de JavaScript. Se utiliza
con React Native para describir la apariencia de una interfaz de usuario. El uso
de esta extensión permite a los usuarios crear estructuras HTML que existen en
el mismo archivo que el código JavaScript.
DOM virtual: React almacena una versión más ligera de DOM dentro de la
memoria, que puede denominarse VDOM o DOM virtual. Los usuarios pueden
modificar VDOM más rápido que DOM debido a que no es necesario realizar
una llamada a la pantalla.
2.-Vue
Vue es un marco para la creación de interfaces de usuario y es diferente de la mayoría
de los marcos monolíticos, ya que ha sido creado para ofrecer una adaptabilidad óptima.
pág. 4
La biblioteca principal de Vue se centra en una capa de vista y se puede utilizar
fácilmente, además de integrarse fácilmente con otras bibliotecas de proyectos
existentes.
Características
DOM virtual: Vue.js utiliza DOM virtual, que es esencialmente una copia del
componente DOM principal, reacciona a cada cambio de DOM y puede
utilizarse como estructuras de datos de JavaScript. Las progresiones y cambios
de la estructura de datos de JavaScript se pueden comparar con las estructuras de
datos originales. El DOM real obtiene los cambios finales que los usuarios
pueden ver.
Enlace de datos bidireccional: VueJS viene con enlace bidireccional debido a
su arquitectura MVVM. Confiar en el QRR ayuda a editar o asignar atributos de
valor HTML para acelerar los bloques HTML. VueJS cuenta con comunicación
bidireccional para garantizar que cualquier cambio realizado en la interfaz de
usuario se transmita a la interfaz de usuario.
3.- Tensor Flow
Tensor Flow es un sistema extremadamente popular e inteligente cuya primera versión
se lanzó en el año 2017, que no es más que el sistema de segunda generación de Google
Brain que tiene la funcionalidad y la capacidad adicionales de ejecutarse en múltiples
CPU y GPU y varios sistemas operativos como macOS, Windows. Linux y varias
plataformas informáticas móviles como Android e iOS.
Tensor Flow tiene una arquitectura muy flexible que lo ayuda a facilitar el cálculo en
una variedad de computadoras y plataformas móviles. Tiene una ventaja adicional del
desarrollo de aprendizaje automático además del desarrollo web en todo tipo de
plataformas. Tiene una versión avanzada, llamada Tensor Flow 2.0, que tiene beneficios
adicionales para el desarrollo de aplicaciones y dispositivos móviles.
4.-TypeScript
TypeScript es otro de los 10 principales lenguajes de programación frontend y un
superconjunto sintáctico de JavaScript. Cualquier código JavaScript se considera un
código TypeScript válido, que se ejecuta en los navegadores como JS.
TypeScript es un lenguaje aditivo con una capa de traducción simple y se puede utilizar
en proyectos de JavaScript.
Características
TypeScript es lo mismo que JavaScript: TypeScript es bastante similar y, a
menudo, se considera lo mismo que JavaScript. Utiliza algunos de
los componentes de los programas que se toman prestados de JavaScript. Los
desarrolladores necesitan conocer el funcionamiento de JavaScript para obtener
un buen uso de TypeScript. Esto se debe a que el código TypeScript se traduce a
código JavaScript antes de la ejecución.
Compatibilidad con bibliotecas JS: TypeScript ofrece compatibilidad con
bibliotecas JavaScript y el código compilado se puede adoptar de cualquier parte
pág. 5
del código JS. El código JavaScript generado a partir de TypeScript utiliza todas
las herramientas, marcos y bibliotecas de JS actuales.
Cambiar el nombre de los archivos: los usuarios encuentran muy conveniente
cambiar el nombre de los archivos JavaScript a archivos TypeScript. Cualquier
archivo .js puede cambiarse fácilmente de nombre a un archivo .ts y compilarse
con diferentes archivos de TypeScript.
5.- Elm
Elm es un lenguaje funcional y un marco orientado al desarrollo frontend. Es la fuente
del lenguaje de programación Haskell y mejora la capacidad de mantenimiento de
JavaScript.
Es una de las opciones más cercanas a JavaScript y una opción de desarrollo
simple. Elm presenta una arquitectura de marco similar a Redux.
Características
Funcional: Elm ofrece características, entradas y salidas limpias para las
necesidades de los desarrolladores. Los usuarios obtienen una salida predecible
para cualquier entrada de función dada. El razonamiento del código se vuelve
más fácil.
Reactivo: Los usuarios de Elm pueden definir interfaces de usuario con una
función debido al soporte de programación reactiva. Pueden crear un ciclo
reactivo a través de actualizaciones de acciones del usuario.
Compila en JavaScript: Elm compila código en JavaScript para la creación de
HTML y CSS, lo que permite a los navegadores ejecutar código.
6.- Angular
Angular es un marco de código abierto que se utiliza principalmente para el desarrollo
de aplicaciones web de una sola página. Los desarrolladores pueden confiar en él para
generar menús animados adecuados para páginas web HTML.
Es un marco desarrollado por los ingenieros de Google Adam Abrons y Misko
Hebert. Lanzado por primera vez en 2012, AngularJS sigue recibiendo actualizaciones.
Características
Aplicaciones web progresivas: Los desarrolladores pueden usar características
de plataforma de vanguardia para crear experiencias similares a las
aplicaciones. Angular ofrece un alto rendimiento y una fácil instalación.
CLI de Angular: Angular ofrece herramientas de línea de comandos para
permitir a los desarrolladores crear aplicaciones más rápido, agregar pruebas y
lograr una implementación rápida.
7.- JQuery
jQuery es una biblioteca de JavaScript objetiva pero repleta de características. Es una
opción viable para características como manejo de eventos, recorrido HTML, Ajax,
manipulación de documentos y animaciones.
pág. 6
Los usuarios también encuentran que la API de jQuery es bastante fácil de usar y
funciona en diferentes navegadores de manera efectiva. Este lenguaje de desarrollo de
frontend es conocido por su flexibilidad y variedad de características. Ha permitido a
innumerables desarrolladores aprovechar al máximo la programación JavaScript.
Características
Manipulación de CSS: jQuery tiene métodos css () predefinidos para cambiar
el estilo de los elementos HTML.
Manipulación de HTML: jQuery facilita la selección, el recorrido y la
modificación del contenido de los elementos DOM.
Compatibilidad con varios navegadores: jQuery ofrece compatibilidad con los
navegadores web modernos más populares.
Tecnologías utilizadas en back-end
1.- JavaScript
Javascript, originariamente llamado LiveScript, es un lenguaje de programación creado
por Netscape y nació en 1995 con un propósito muy claro: Mejorar la navegación del
usuario directamente desde el navegador.
Características:
Lenguaje del lado del cliente: Cuando se dice que un lenguaje es del lado del
cliente, nos referimos a que se ejecuta en la máquina del propio cliente a través
de un navegador. Algunos de estos lenguajes son el propio JavaScript, HTML,
CSS o Java.
Lenguaje orientado a objetos: Javascript es un lenguaje orientado a objetos.
Que permiten organizarse de forma simple y son reutilizables durante todo el
desarrollo. Otros lenguajes orientados a objetos son Java, Python o C++.
De tipado débil o no tipado: Que un lenguaje sea de tipado débil quiere decir
que no es necesario especificar el tipo de dato al declarar una variable. Pero
puede provocar que cometamos más errores que si tuviéramos esa restricción
que poseen los lenguajes de tipado fuerte como C++ o Java.
De alto nivel: Que Javascript sea un lenguaje de alto nivel significa que su
sintaxis es fácilmente comprensible por su similitud al lenguaje de las personas.
Se le llama de “alto nivel” porque su sintaxis se encuentra alejada del nivel
máquina, es decir, del código que procesa una computadora para ejecutar lo que
nosotros programamos.
Lenguaje interpretado: Javascript es un lenguaje interpretado porque utiliza un
intérprete que permite convertir las líneas de código en el lenguaje de la
máquina.
Muy utilizado por desarrolladores: A la hora de elegir si aprender o no un
nuevo lenguaje.
2.- Python
Python es un lenguaje de programación multiuso líder creado por un programador
holandés llamado Guido van Rossum en 1991. Con una competencia central de códigos
pág. 7
concisos y legibles, Python apoya a los programadores de backend para escribir líneas
de código racionales y explícitas.
Características:
Fácil de entender y programar: la competencia principal de Python es su
característica de legibilidad. En realidad, las secuencias de comandos precisas de
Python hacen que sea fácil de entender y programar tanto para principiantes
como para programadores experimentados. A veces, también parecen frases
escritas en inglés.
Bibliotecas extensas: La tecnología de programación de backend descarga
bibliotecas extensas. Estas bibliotecas incluyen códigos para pruebas unitarias,
bases de datos, expresiones regulares, navegación y correo electrónico, etc. En
resumen, con el apoyo de bibliotecas extensas, los ingenieros de backend no
tienen que escribir cada código manualmente.
Asequible: Python es de código abierto y gratuito. Es por eso que los
desarrolladores y las empresas tienen la oportunidad de utilizar bibliotecas
extensas gratuitas y otras fuentes para sus proyectos.
Oportunidades de IoT: con la ayuda de las funciones de programación modernas
de Python, puede crear proyectos físicos en Raspberry Pi.
Integrable: insertar su código Python en el código fuente de lenguajes como
C++ es sencillo. Sin embargo, el programador no debe olvidar la regla Write
Once Run Anywhere (Escríbalo una vez, ejecútelo en todos lados) (WORA).
3.- Ruby
Ruby es otra tecnología de backend de código abierto que fue diseñada por el científico
informático japonés Yukihiro Matsumoto en la década de 1990. Este lenguaje de
programación tiene similitudes con Python, Java y Perl. Ruby se usa generalmente para
el desarrollo de aplicaciones web y se considera el favorito para la creación de
prototipos.
Características:
Productivo: Debido al código de lectura corta y la disponibilidad de bibliotecas
de terceros, Ruby es una tecnología de backend de producto. Los desarrolladores
normalmente necesitan menos documentación con Ruby. Permite que las
tecnologías backend utilicen proyectos ya disponibles.
Meta programación: Ruby también respalda la meta programación. En la meta
programación, los scripts del desarrollador codifican en Ruby y el programa
presenta el otro código en sí. Con herramientas flexibles como métodos
fantasmas, introspección y macros, es conveniente para crear secuencias de
comandos en poco tiempo.
Bibliotecas: Ruby ofrece módulos de terceros. Puede encontrar todas sus
bibliotecas en RubyGems.
Testing: La tecnología de backend de Ruby también es útil para el desarrollo de
proyectos de alta calidad. Se trata de funciones de automatización de pruebas y
bibliotecas valiosas de Ruby que lo hacen posible.
pág. 8
Rápido y estable: En comparación con otros lenguajes de scripting de backend,
Ruby tarda un 40% menos en desarrollar un código. También es rápido para
realizar solicitudes y seguir los pasos de procesamiento. Del mismo modo, Ruby
también es más resistente debido a sus características orientadas a objetos.
4.- PHP
pág. 9
Los desarrolladores han preferido crear aplicaciones web adaptables y ricas en
funciones con Java durante años. Sin embargo, también puede usar Java para
dispositivos móviles, desarrollo de software severo y de microcontroladores.
Características:
Simple y altamente escalable: Java EE es altamente escalable porque permite
numerosas instancias a las solicitudes del servidor. La disponibilidad instantánea
de los componentes Java y la tecnología de sintaxis inequívoca también facilitan
a los desarrolladores el uso de este lenguaje de backend.
Multihilo: Java permite manejar todas las solicitudes en hilos independientes
gracias a un servidor web multiproceso. Con esta función de subprocesos
múltiples, Java funciona muy bien para aplicaciones con uso intensivo de CPU.
Bibliotecas de código abierto: una variedad de bibliotecas de código abierto
tales como análisis JSON, mensajería, PDF, pruebas unitarias y bibliotecas de
Excel disponibles para Java. Los desarrolladores de Java pueden utilizar estos
recursos para acelerar sus tareas del lado del servidor.
Seguridad: Java ofrece excelentes funciones para superar los riesgos de
seguridad. Asimismo, las máquinas virtuales Java examinan los códigos de bytes
de Java para detectar y reducir el riesgo de virus. De manera similar, el modelo
de seguridad de Java y la prueba de códigos reutilizables ayudan a los
desarrolladores a evitar amenazas a la seguridad.
6.- C# .NET
pág. 10
Perl es otra tecnología de backend de uso general que Larry Wall desarrolló hace 32
años. Según la encuesta para desarrolladores de Stack Overflow de 2020, Perl es la
tecnología de pago más importante a nivel mundial. Por cierto, es importante saber que
la misma encuesta también clasifica a Perl entre los tres primeros lenguajes más
temidos.
Mientras que Perl es bastante anticuado, los desarrolladores todavía usan Perl 5 para la
automatización rápida y la creación de prototipos.
Características:
Multiplataforma: Perl puede funcionar con distintas plataformas, incluidas
Macintosh, Windows y la mayoría de las variantes de UNIX.
De código abierto: Al igual que las otras tecnologías de backend rivales, Perl
también ofrece bibliotecas gratuitas y de código abierto. Sin embargo, en
muchos casos, podrían volver a solicitar pequeños cargos por copia.
Integrable y extensible: Perl puede integrarse fácilmente en cualquiera de las
aplicaciones C++ y C. Además de SWIG y XS, Perl también respalda
bibliotecas externas de C y C++.
Procesamiento de texto: Perl es un lenguaje de programación perfecto para el
procesamiento de texto. Afortunadamente, las versiones recientes de Perl
también mantienen sistemas compatibles con POSIX y procesan llamadas de
socket con otras características avanzadas.
Conclusión
Se puede ver que quien trabaja con sitios web se llama Front-End, quien hace
aplicaciones es un desarrollador móvil y que el Back-End se encarga de la aplicación
que está detrás de estos 2 tipos, entre otros casos. Vimos que para ser Full Stack, puede
ser necesario aprender mucho.
Podemos decir que, aunque abarquen distintos aspectos dentro de una programación, las
dos son completamente necesarias para el correcto funcionamiento de esta.
Existen muchos tipos de desarrollo de aplicaciones web, cada uno de ellos con
características y utilidades diversas. A partir de estos ejemplos de aplicaciones, puedes
hacerte una idea sobre las distintas opciones disponibles actualmente. Y, a la hora de
elegir, valorar todas las alternativas, para decantarte por la aplicación web que mejor
satisfaga tus requerimientos o los de tus clientes.
Fuentes de consulta en formato APA
https://platzi.com/blog/que-es-frontend-y-backend/
https://www.servnet.mx/blog/backend-y-frontend-partes-fundamentales-de-la-
programaci%C3%B3n-de-una-aplicaci%C3%B3n-web
https://nestrategia.com/desarrollo-web-back-end-front-end/
pág. 11
https://blog.back4app.com/es/los-10-principales-lenguajes-de-programacion-de-
frontend/
https://www.cisin.com/coffee-break/es/enterprise/list-of-top-front-end-technologies-
used-in-our-company-to-bring-superlative-results-for-clients.html
https://blog.back4app.com/es/las-10-mejores-tecnologias-de-backend/
pág. 12