0% encontró este documento útil (0 votos)
55 vistas

Leng - Aut I - M1Pr1

Este documento presenta una práctica sobre lenguajes de programación realizada por el alumno Carlos Ledesma Martínez para la asignatura Lenguajes y Autómatas I. La práctica consistió en investigar diferentes aspectos relacionados con los lenguajes de programación como sus características, tipos, ejemplos y usos. Se realizó una tabla comparativa de PHP con sus fortalezas y debilidades.

Cargado por

Carlos Ledesma
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
55 vistas

Leng - Aut I - M1Pr1

Este documento presenta una práctica sobre lenguajes de programación realizada por el alumno Carlos Ledesma Martínez para la asignatura Lenguajes y Autómatas I. La práctica consistió en investigar diferentes aspectos relacionados con los lenguajes de programación como sus características, tipos, ejemplos y usos. Se realizó una tabla comparativa de PHP con sus fortalezas y debilidades.

Cargado por

Carlos Ledesma
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 8

Instituto Tecnológico Superior De

Lerdo

Ingeniería En Sistemas
Computacionales

Lenguajes Y Automatas

Practica II

6 “B”

Docente: Roberto García Flores

Alumno: Carlos Ledesma Martínez

01 De Marzo Del 2022


Desarrollo de la Práctica
Materia: Lenguajes y Autómatas I
I. Introducción a la teoría
Unidad de aprendizaje: Práctica número: 1
de lenguajes formales
Nombre de la práctica: Lenguajes de programación
Objetivo. Por medio de la realización de un trabajo de investigación, comprender lo que son los lenguajes
de programación.
Lugar: Laboratorio de cómputo. Duración: 2 horas.

Materiales Maquinaria y equipo Herramientas

Computadora, Visual Studio C#, Apuntes de la materia, material


Hojas de máquina, lápiz.
procesador de texto didáctico.
Procedimiento

Realizar un trabajo de investigación acerca del tema: “Lenguajes de programación”.


En esta actividad se investigará en medios bibliográficos, hemerográficos y electrónicos
todos los términos y aspectos relacionados con los diferentes lenguajes de
programación; cuáles son, en qué tiempo salieron, generaciones, versiones,
desarrolladores, características, diferencias y similitudes entre ellos, etc.
Se pretende la realización de un trabajo de investigación muy completo.

Revisar las guías y rúbricas para la realización de la actividad.

Conocer cómo funciona el lenguaje de programación y cómo se interrelaciona con


nosotros a través de software nos permite mejorar nuestra productividad y conseguir
ese algo que nos diferencie de la competencia.
A lo largo de los años, los lenguajes de programación han aumentado su potencia y
flexibilidad para, de esa forma, llevar a cabo las tareas complejas que la innovación y
las nuevas tecnologías de información y comunicación (TIC) nos exigen.
Todas las máquinas y dispositivos requieren un lenguaje de programación para
cumplir sus funciones.

¿Qué es un lenguaje de programación?


Es un lenguaje formal que, mediante una serie de instrucciones, le permite a un
programador escribir un conjunto de órdenes, acciones consecutivas, datos
y algoritmos para, de esa forma, crear programas que controlen el comportamiento
físico y lógico de una máquina.
Mediante este lenguaje se comunican el programador y la máquina, permitiendo
especificar, de forma precisa, aspectos como:
• cuáles datos debe operar un software específico;
• cómo deben ser almacenados o transmitidos esos datos;
• las acciones que debe tomar el software dependiendo de las circunstancias
variables.
Para explicarlo mejor (en otras y con menos palabras), el lenguaje de programación es
un sistema estructurado de comunicación, el cual está conformado por conjuntos de
símbolos, palabras claves, reglas semánticas y sintácticas que permiten el
entendimiento entre un programador y una máquina.
Es importante recalcar que existe el error común de usar como sinónimos el lenguaje
de programación y el lenguaje informático, pero ¿por qué no debemos confundirlos?
Pues, es debido a que el lenguaje de programación obedece a un conjunto de reglas
que permiten expresar las instrucciones que serán interpretadas por el programador. Y
el lenguaje informático comprende otros lenguajes que dan formato a un texto pero no
son programación en sí mismos.
Entonces, no todos los lenguajes informáticos son de programación, pero todos los
lenguajes de programación son a la vez informáticos.
¿Qué tipos de lenguaje de programación existen?
El lenguaje de programación es la base para construir todas las aplicaciones digitales
que se utilizan en el día a día y se clasifican en dos tipos principales: lenguaje de bajo
nivel y de alto nivel.
Lenguaje de programación de bajo nivel

Son lenguajes totalmente orientados a la máquina.


Este lenguaje sirve de interfaz y crea un vínculo inseparable entre el hardware y el
software.
Además, ejerce un control directo sobre el equipo y su estructura física. Para aplicarlo
adecuadamente es necesario que el programador conozca sólidamente el hardware.
Éste se subdivide en dos tipos:
Lenguaje máquina
Es el más primitivo de los lenguajes y es una colección de dígitos binarios o bits (0 y 1)
que la computadora lee e interpreta y son los únicos idiomas que las computadoras
entienden.
Ejemplo: 10110000 01100001
No entendemos muy bien lo que dice ¿verdad? Por eso, el lenguaje ensamblador nos
permite entender mejor a qué se refiere éste código.

Lenguaje ensamblador

El lenguaje ensamblador es el primer intento de sustitución del lenguaje de máquina


por uno más cercano al utilizado por los humanos.
Un programa escrito en éste lenguaje es almacenado como texto (tal como programas
de alto nivel) y consiste en una serie de instrucciones que corresponden al flujo de
órdenes ejecutables por un microprocesador.
Sin embargo, dichas máquinas no comprenden el lenguaje emsamblador, por lo que
se debe convertir a lenguaje máquina mediante un programa llamado Ensamblador.
Este genera códigos compactos, rápidos y eficientes creados por el programador que
tiene el control total de la máquina.
Ejemplo: MOV AL, 61h (asigna el valor hexadecimal 61 al registro "AL")

Lenguaje de programación de alto nivel

Tienen como objetivo facilitar el trabajo del programador, ya que utilizan unas
instrucciones más fáciles de entender.
Además, el lenguaje de alto nivel permite escribir códigos mediante idiomas que
conocemos (español, inglés, etc.) y luego, para ser ejecutados, se traduce al lenguaje
de máquina mediante traductores o compiladores.
Traductor
Traducen programas escritos en un lenguaje de programación al lenguaje máquina de
la computadora y a medida que va siendo traducida, se ejecuta.
Compilador
Permite traducir todo un programa de una sola vez, haciendo una ejecución más
rápida y puede almacenarse para usarse luego sin volver a hacer la traducción.

¿Para qué sirven los lenguajes de programación?


En general un lenguaje de programación sirve para programar. Sin embargo, cada uno
tiene un alcance y forma de comunicación diferente.
En resumidas cuentas, el lenguaje de bajo nivel permite la comunicación interna de la
máquina, cada instrucción tiene su código único de operación.
Y el lenguaje de alto nivel facilita la captación de instrucciones que el programador le
da a la máquina, mientras que éste introduce datos en el idioma conocido la máquina
lo va absorbiendo en lenguaje de máquinas mediante traductores o compiladores,
permitiendo así:
• reducir el tiempo de programación;
• entender más fácilmente la tarea a realizar;
• permitir al programador desvincularse del funcionamiento interno de la
máquina, entre otros.
En otras palabras, el lenguaje de bajo nivel es cercano a los idiomas de las máquinas
mientras que el lenguaje de alto nivel está más cerca del entendimiento e idioma
humano.
¿Qué softwares de programación existen?
Por software de programación entendemos el conjunto de todas las herramientas que
le permiten al programador, crear, escribir códigos, depurar, mantener y empaquetar
los proyectos.
Algunos de los distintos programas por los que pasará el proyecto para gestionarlo
son:
Editores de código o texto
Al escribir los códigos se auto-completan marcando los errores sintácticos y la
refactorización.
Compiladores
Como mencionados anteriormente, éstos traducen el código ingresado a lenguaje de
máquina generando un código binario ejecutable.
Depuradores
Sirven para optimizar el tiempo de desarrollo mediante el monitoreo de la ejecución de
un programa, el seguimiento a los valores de ciertas variables, las referencias a
objetos en memoria y por ende, nos ayuda a corregir errores.
Enlazadores
Este programa toma objetos generados en los primeros pasos del proceso de
compilación y los recursos necesarios de la biblioteca, quita aquellos procesos y datos
que no necesita, y enlaza el código con dicha biblioteca para así aumentar su tamaño
y extensión.
Interpretadores o traductores
Como leíste en éste artículo, el traductor (o intérprete) carga el código ingresado y
traduce las instrucciones para que el programa pueda ser ejecutado.
IDE
El IDE (Integrated Development Environment) o Entorno de Desarrollo Integrado, es
una aplicación informática que proporciona una serie de servicios que facilitan la
programación de software, tales como:
• funciones de autocompletado;
• un editor de código fuente;
• gestión de conexiones a bases de datos;
• integración con sistemas de control de versiones;
• simuladores de dispositivos;
• un depurador para agilizar el proceso de desarrollo de software, entre otros.
TABLA COMPARATIVA
Lenguaje características Fortalezas Debilidades Opinión
PHP · Utilizado para · Su sintaxis es muy · Necesita un · Es un
generar páginas similar a otros servidor para lenguaje que
web dinámicas lenguajes funcionar está muy bien
· Se ejecuta en el· Fácil · La POO es documentado y
servidor · Es un lenguaje deficiente para se pueden
· Los usuarios no muy popular tiene aplicaciones encontrar un
pueden ver el una comunidad muy grandes sinfín de
código PHP grande · Todo el ejemplos y
únicamente · Rápido trabajo se tutoriales lo cual
reciben en sus · Multiplataforma realiza el en lo hacer una
navegadores · Maneja base de servidor y muy buena
código HTML datos mucha opción para
· Las páginas que · Bastante información o aprender y
genera son documentado solicitudes conocer sobre
visibles para · Libre y gratuito. pueden ser la
prácticamente · Varias funciones ineficiente. programación.
cualquier · No requiere
navegador y definición de
computadora o variables
dispositivos · Puede ser
móviles que pueda combinado junto a
interpretar el HTML
HTML. · Tiene muchos
· No se necesita frameworks que
la instalación de facilitan el desarrollo
PHP en el lado del en este lenguaje.
cliente. · Muchos servicios
· Versiones de alojamiento web
resiente permiten tienen PHP
la POO
· Lenguaje de alto
nivel
RUBY · Orientado a · Diferencia entre · es · Sus sintaxis
objetos mayúsculas y relativamente es muy simple y
· Lenguaje de alto minúsculas nuevo y no fácil de
nivel · Maneja cuenta con aprender y
· Sintaxis similar excepciones mucha posible
a Python y Perl · Puede cargar documentación utilizarlos en
· Opensource librerías si el sistema en comparación baria
· Lenguaje para operativo lo permite con otros plataformas,
la creación de · Multiplataforma lenguajes de además es
aplicaciones de · Portátil programación Opensource y
escritorio y · Desarrollo de bajo· no está muy libre.
aplicaciones web. costo difundido en
· Software libre relación a otros
· multiplataforma lenguajes.
JSP · Lenguaje para · ejecución rápida · Complejidad· Su sintaxis es
(Java creación de sitios de servlets. de aprendizaje similar a java
Server dinámicos · Código bien por lo que
Pages) · Necesita un estructurado podría ser
servidor Tomcat · Integridad con relativamente
· Motor basado módulos java fácil de
en servlets de java · La parte dinámica aprender para
· multiplataforma está escrita en java los que saben
programa en
java.
ASP · Desarrollado por
· Usa visual Basic · De paga · La principal
Microsoft script desventaja de
(Active · Tecnología del · Comunicación · El hospedaje este lenguaje
Server lado del servidor optima con SQL de sitios web es es el costo.
Pages) · Requiere de server costos
Internet · Soporta JScript · Necesita de
Información mucho código
Server (IIS) para funciones
sencillas
ASP.ET · Sucesor de ASP
· Controles de · Mayor · es un
· Creada por usuarios y consumo de lenguaje que
Microsoft personalizados recursos tiene con
· De paga · Fácil mejores
· Orientado a mantenimiento características
objetos · Incremento en que su primera
velocidad versión
· Mayor seguridad
Python · permite la · libre y código · los lenguajes· es un opción
creación de todo fuente abierto interpretados más para
tipo de programas· lenguaje de suelen ser realizar páginas
incluso sitios web propósito general relativamente web dinámicas,
· no requiere de · multiplataforma lentos tiene el gran
compilación es un· orientado a beneficio de ser
código objetos un lenguaje
interpretado · portable multiplataforma
por lo que tener
problemas al
utilizar una u
otra plataforma
es mínimo.
JavaScript
· es un lenguaje · los script tiene · No soporta · Es un
interpretado capacidad limitada herencias lenguaje fácil de
· es similar a java por razones de · Código aprender y que
· es orientado a seguridad visible por puede hacer un
objetos · se ejecuta del lado cualquier sitio web muy
del cliente usuario dinámico y
· lenguaje de · El código grandes
scripting seguro y debe ser efectos.
fiable descargado Además cuenta
completamente con múltiples
· Puede poner librerías de
en riesgo la terceros las
seguridad del cuales pueden
sitio con el facilitar el
actual problema desarrollo de
llamado XSS scripts.
(significa en
inglés Cross
Site Scripting
renombrado a
XSS por su
similitud con las
hojas de
estilo CSS).
C++ · Orientado a · Ideal para · No soporta · Al ser
objetos sistemas robustos creación de multiplaforma y
· Rápido • IDEs aplicaciones rápido es una
de desarrollo web buena
son DEV · Complejo alternativa para
C++, visualmente el desarrollo de
BORLAND aplicaciones
C, TURBO C para escritorio
· Es multiplaforma
C · Popular para la· Rápido · No es · Es un
creación de · Eficiente popular para la lenguaje
software de · Es un lenguaje creación de bastante rápido
sistema orientado a la aplicación por estar
implementación de · Sintaxis cercano a los
Sistemas compleja lenguajes de
Operativos, bajo nivel y la
concretamente Unix principal
desventaja de
este lenguaje
es sus sintaxis
que resulta ser
compleja y
difícil o tedioso
de implementar.
C# · Está orientado ·a Se desempeña de· Requiere un· Es un
objetos forma plena en los mínimo de 4 gb lenguaje ideal
· Esta sistemas operativos para su para desarrollar
estandarizado por Windows. instalación. aplicaciones
Microsoft como · Sintaxis más en para los entorno
parte de su comparación con C y de Windows.
plataforma net. C++
· Posibilidad de
realizar aplicaciones
web, de escritorio y
móviles.

Java · Es orientado a · Al ser orientado a· Es un · Es un


objetos objetos permite su lenguaje lenguaje
· Multiplataforma modularización interpretado así bastante
· Permite la que es documentado y
creación de relativamente fácil de
aplicaciones de lento en aprender,
escritorio Tiene comparación contiene
soporte a desarrollo con otros muchas
de aplicaciones lenguajes librerías tiene
móviles y web. varias
alternativas de
framework para
un desarrollo
más fácil y
creación de
aplicaciones
robustas.

También podría gustarte