Sesión UNAM OPR14082023

Descargar como pptx, pdf o txt
Descargar como pptx, pdf o txt
Está en la página 1de 52

Técnicas de Programación.

Ingeniería Mecatrónica
M. en C. Omar Pérez Romero
Objetivo del Curso:

Objetivo(s) del curso: El alumno diseñará sistemas de cómputo


con interfaces gráficas de usuario, con base en el paradigma de
la programación orientada a objetos. El alumno elaborará
programas eficientes, con un desempeño a prueba de fallas y
que sean amigables con el usuario

[1] SOMMERVILLE (2002). Ingeniería de Requisitos. https://


tesuva.edu.co/phocadownloadpap/Anlisis%20de%20requisitos%20del%20software.pdf
1 Importancia del software en la mecatrónica

Objetivo: El alumno determinará las ventajas que le ofrecen, para su desempeño


profesional, tanto el uso de software, como el saber programar adecuadamente.
Contenido:
1.1 Diferencia entre programación y codificación.
1.2 El lugar que ocupa el software en los sistemas Mecatrónicos.
1.3 Clasificación de los lenguajes de programación según su: nivel de abstracción (bajo
nivel, nivel medio, alto nivel), propósito (general, específico), generación o evolución
histórica (1GL, 2GL, 3GL, 4GL, 5GL), manera de ejecutarse (interpretados, compilados).
1.4 Ejemplos de los distintos tipos de lenguajes de programación y sus áreas de aplicación
2 Metodología de la programación orientada a objetos

Objetivo: El alumno descubrirá los fundamentos del paradigma de programación orientado


a objetos.
Contenido:
2.1 Clases y objetos. Constructores, atributos y métodos.
2.2 Encapsulación, herencia y polimorfismo.
2.3 Sobrecarga de funciones.
2.4 Sobrecarga de operadores.
2.5 Manejo de errores y de excepciones.
2.6 Arreglos y colecciones.
2.7 Implementación de interfaces.
2.8 Manejadores de eventos.
2.9 Construcción de bibliotecas y reutilización de código.
2.10 Almacenamiento, actualización y eliminación de información en base a estructuras.
2.11 Manejo de archivos (escritura, lectura, acceso secuencial, acceso aleatorio).
3 Desarrollo de sistemas de cómputo orientados a objetos

Objetivo: El alumno desarrollará programas y sistemas de cómputo mediante el paradigma


orientado a objetos.
Contenido:
3.1 Análisis y definición de los requerimientos del usuario y del sistema.
3.2 Diseño y modelado de sistemas, utilizando el Lenguaje de Modelado Unificado (UML).
3.3 Desarrollo de los subsistemas.
3.4 Integración del sistema.
3.5 Verificación, validación y pruebas del software.
3.6 Mantenimiento del software (depuración, actualización, evolución)
4 Concepto, uso y aplicaciones de las estructuras de datos compuestas

Objetivo: El alumno utilizará las principales listas lineales y no lineales.


Contenido:
4.1 Listas.
4.2 Pilas.
4.3 Colas.
4.4 Árboles.
4.5 Algoritmos de ordenación y búsqueda.
5 Interfaces gráficas de usuario

Objetivo: El alumno diseñará programas y sistemas de cómputo que se ejecuten en


ambientes gráficos.
Contenido:
5.1 Diseño y construcción de interfaces gráficas. Reglas y metodología para el diseño de
interfaces claras,
concisas, eficientes y fáciles de usar.
5.2 Uso y configuración de controles predefinidos: formularios, botones de comando, cajas
de texto,
etiquetas, botones de opción, casillas de verificación, listas, timers, menús, barras de
herramientas.
5.3 Diseño y construcción de controles personalizados.
5.4 Uso de la interfaz de dispositivos gráficos para realizar dibujos
TEMA: NOMBRE HORAS:
1. Importancia del software en la 2.0
mecatrónica

2. Metodología de la programación 20.0


orientada a objetos

3. Desarrollo de sistemas de cómputo 12.0


orientados a objetos

4. Concepto, uso y aplicaciones de las 14.0


estructuras de datos compuestas

5. Interfaces gráficas de usuario 16.0

64.0
Actividades prácticas 32.0
Total: 96.0
1 Importancia del software en la mecatrónica
Objetivo: El alumno determinará las ventajas que le
ofrecen, para su desempeño profesional, tanto el
uso de software, como el saber programar 01
adecuadamente.

1.1 Diferencia entre programación


y codificación.
1.2 El lugar que ocupa el software
en los sistemas mecatrónicos.
02
1.3 Clasificación de los lenguajes
de programación según su: nivel
de abstracción (bajo nivel, nivel
03 medio, alto nivel), propósito
(general, específico), generación o
evolución histórica (1GL, 2GL, 3GL,
4GL, 5GL), manera de ejecutarse
(interpretados, compilados).

04
1.4 Ejemplos de los distintos tipos de lenguajes de
programación y sus áreas de aplicación.
1.1 Diferencia entre programación y codificación:
La codificación es el primer paso para traducir los requisitos a una sintaxis legible por máquina. Por el contrario,
la programación se ocupa de las próximas etapas del programa ejecutable para construir las salidas apropiadas a
nivel de máquina en respuesta a las entradas humanas dadas.
¿Qué es la codificación?
La codificación es un subconjunto de la programación y es esencialmente el proceso de implementar el plan de
desarrollo de aplicaciones en varios lenguajes comprensibles. Su principal objetivo es facilitar la comunicación
entre el usuario y la máquina. En pocas palabras, la codificación hace que un dispositivo informático realice una
determinada tarea en su lenguaje comprensible.
Interview 1:

1.-Mencione al menos 3 unidades temáticas de la materia


Técnicas de programación
2.- Diferencia entre programación y codificación
Lenguajes de codificación ¿cuáles son los mejores?
Los lenguajes cuyo objetivo es traducir, mapear o representar
algo directamente (sin una lógica de programación) se
consideran lenguajes de codificación. Los más utilizados y
conocidos incluyen:
HTML: define el significado y la estructura del contenido
web;
CSS: se utiliza para describir la apariencia y presentación de
una página web;
VRML: se utiliza para ilustrar objetos, edificios, paisajes u
otros elementos que requieren una estructura 3D;
XML: formato simple basado en texto que se utiliza para
representar información estructurada como datos, libros,
facturas, transacciones, etc.
JSON: un formato mínimo y legible para estructurar datos.
¿Qué es la programación? ¿Cuál es la diferencia entre
codificar y programar?

La programación es el proceso de crear


y desarrollar un programa de máquina,
o aplicación, ejecutable que realiza un Desglosaremos las diferencias en tres
conjunto de instrucciones o tareas. categorías principales que nos ayudarán
El objetivo principal de la programación es escribir código a comprender mejor la codificación
frente a la programación:
formalmente para que la entrada humana y la salida de la
máquina siempre permanezcan sincronizadas. En pocas
palabras, la programación se trata de mantener todos los ciclos
de programación y desarrollo de aplicaciones en tándem, de
modo que cada vez que le dé a su computadora o aplicación
una cierta entrada, tendrá que tener una cierta salida que
tenga sentido.
Title
Title Herramientas:
Cuando se trata de codificación, una de las
herramientas más importantes será un editor de texto:
Title
puede ser simplemente el Bloc de notas, un
Title compilador o un intérprete, o algo visualmente más
atractivo para trabajar como Visual Studio Code,
Emacs, Sublime Text, Atom o Empuje.
Title Para programar, en cambio, necesitaremos
herramientas más complejas. Un programador,
Title generalmente, realizará revisiones de documentos,
mucha planificación, pensará en el diseño, etc. Por lo
tanto, las herramientas que necesitará usar incluyen
editores de código avanzados, compiladores,
enlazadores, herramientas de análisis, depuradores,
marcos de modelado y algoritmos de modelado.
Conocimiento
La codificación requerirá un conocimiento básico de los
lenguajes de programación y su sintaxis, ya que el objetivo es
escribir el código que le dice a la máquina que realice una
determinada tarea. La programación, por otro lado, requiere
una comprensión mucho más profunda de los lenguajes de
programación, la construcción y el trabajo con algoritmos, el
diseño de sitios web, la depuración y prueba de códigos y la
gestión de proyectos.
El pensamiento crítico, la resolución de problemas y la
orientación analítica también son habilidades esenciales al
construir sistemas complejos.
Producto final
Mientras que, en la codificación, el resultado esperado es
generalmente una solución simple que, después de la
compilación, brindará con éxito el resultado deseado, en la
programación, el resultado será una aplicación completamente
funcional o una pieza de software lista para usar.

¿Cuáles son los lenguajes de programación más usados?


Existen diferentes lenguajes para diferentes propósitos y tipos de software.
Algunos de los más populares son:
JavaScript: se utiliza para desarrollar aplicaciones web interactivas;
Ruby: ideal para crear sitios web estáticos, aplicaciones de escritorio,
herramientas de automatización y servicios de procesamiento de datos;
Java: la mejor opción para alimentar dispositivos IoT, aplicaciones web y de
escritorio, aplicaciones de Android, big data y juegos;
C ++: lo ayuda con los programas de computadora y el software empaquetado, como
juegos, aplicaciones de oficina, gráficos, editores de video y sistemas operativos;
C#: se utiliza para desarrollar aplicaciones móviles y de escritorio, servicios basados ​en
la nube, juegos, sitios web y software empresarial;
Python: le permite trabajar rápidamente para integrar sistemas como un lenguaje de
secuencias de comandos o pegamento; también es adecuado para el desarrollo rápido de
aplicaciones (RAD);
Swift: se utiliza principalmente para desarrollar aplicaciones para iOS y OS X.
Kotlin: inspirado en Java, pero mucho más limpio, más simple, más rápido de compilar e
implica una combinación de programación orientada a objetos y funcional.
¿Cómo funcionan juntos la codificación y la programación?

Si se llevara a cabo el proceso de codificación y programación, sucedería lo siguiente:


Programación:
Planifica la estructura de la aplicación. Escriba sus características principales; es decir, para
qué se espera que los usuarios la utilicen, cómo navegan por ella, cómo buscan, etc. Luego se
realiza el diseño.
Codificación:
Toma las ideas anteriores y las hace legibles por máquina al escribir código para que la
aplicación realice tareas específicas;
Tras evaluar las líneas de código, verificar errores, ejecutar pruebas y comprobar que
funciona sin problemas, la aplicación está lista para implementarse.

En general, tanto la codificación como la programación se utilizan para crear cualquier


producto de software, web o aplicación móvil. La codificación es el primer paso para traducir
los requisitos a una sintaxis legible por máquina. Por el contrario, la programación se ocupa
de las próximas etapas del programa ejecutable para construir las salidas apropiadas a nivel
de máquina en respuesta a las entradas humanas dadas. Por lo tanto, implica todos los
aspectos clave del proceso de desarrollo de software, desde la depuración y la compilación
hasta la prueba y la implementación.
1.2 El lugar que ocupa el software en los sistemas mecatrónicos.

a) Como disciplina: La Mecatrónica es una disciplina de las


ciencias de la ingeniería que integra los conocimientos de las
ingenierías mecánica, eléctrica/electrónica y en computación.
b) como sistema de control: La mecatrónica es la integración
de los sistemas de control de equipos y procesos, basados en
microprocesadores, sistemas electrónicos, sistemas mecánicos,
sistemas de control automático y simulación virtual.
Interview 2:

1.-Mencione al menos 3 lenguajes de programación


2.- Mencione al menos 3 herramientas de codificación
3.- ¿Cual es el lugar que ocupa el software en los sistemas
mecatrónicos?
c) como sistema integral de manufactura: La mecatrónica es
una herramienta necesaria para los procesos de manufactura
modernos, donde se integran el diseño de equipos, control de
calidad, control de procesos, comunicación y gestión de la
producción.
La Mecatrónica es una disciplina de la ingeniería, una herramienta necesaria para el control
automático de equipos que integran un sistema de producción y procesos industriales
aplicados en los modernos sistemas de manufactura, transporte, explotación de recursos,
comunicación y obras civiles.
Un sistema de control automático para poder realizar su función requiere de información
del proceso o equipo mediante señales físicas, químicas o eléctricas que son captadas por
los sensores. Los sensores generan un pulso o corriente eléctrica que debe ser
acondicionada a un valor adecuado para que sea ingresada en forma óptima al sistema de
control. El sistema de control procesa la información recibida ( input) mediante un programa
cargado por el usuario.
Según la programación realizada, el sistema de control genera ( output) una señal eléctrica (
análoga o digital) que se acondiciona para que un preactuador (válvula, contactor, etc)
accione a los actuadores ( cilindros neumáticos, motores hidráulicos, motores eléctricos,
etc) los cuales transforman la energía en movimiento, dichos movimientos producen
cambios en el proceso productivo o en el movimiento del equipo, provocando la generación
de nuevas señales. Este
continuo cambio y generación de señales producen un ciclo de procesamiento en el sistema
de control, lográndose así producir en forma automática, sin la interacción directa del
hombre, bienes y servicios de alta calidad.
En la mecatrónica se utilizan distintas áreas tecnológicas que se relacionan con sensores,
sistemas de medición, acondicionamiento de señales, sistemas de mandos, actuadores y
accionamiento mecánicos, sistemas de control, controladores y microprocesadores.

Ejemplos de Sistemas Mecatrónicos actualmente de usos


común:
• Automóviles Híbridos, Motores de Inyección Electrónica.
• Brazos Robóticos Industriales.
• Maquinaria Pesada y Camiones de Alto Tonelaje.
• Aviones de Combate y de Pasajeros.
• Robótica interactiva.
• Trasbordador y Estación Espacial Internacional.
• Lavadoras Automáticas.
• Etc.
Sistemas de Medición.
Las señales emitidas por los objetos pueden ser físicas, químicas, térmicas o eléctricas, pero
para que los sensores puedan detectar dichas señales se deben calibrar el instrumento o
control que procesará la señal eléctrica que genera el sensor. El sistema de medición es el
encargado de indicar los valores o lecturas de dichas señales, las cuales deben ser
acondicionadas para que el equipo de visualización o control las reconozca y procese.
En general, se puede decir que los sistemas de medición están formados por tres
elementos.
Los objetos posee características como temperatura, conductividad, inductancia, reflexión,
radiación, sonido, fuerza, etc, que son captados por distintos tipos de sensores.
Los sensores ( capacitivos, inductivos, ópticos, ultrasonido, etc), responden a la cantidad que
se desea medir, generando un señal eléctrica de tipo analógica o digital que se debe
amplificar o acondionar.
El acondicionador de señal, toma la señal del sensor y la manipula para convertirla en una
forma adecuada para su presentación visual o , como en el caso de un sistema de control,
para que genere un señal de entrada ( input).
Cuando un objeto genera una señal electromagnética muy débil, se debe amplificar su valor
para obtener una señal mayor. En este caso el amplificador se considera como
acondicionador de señal.
El sistema de presentación visual o medio de visualización ( Pantalla LCD, Display Digital), es
donde se despliega la información de salida producida por el acondicionador de señal. Por
ejemplo: un manómetro, un termómetro digital, etc.
Es necesario también conocer las terminologías usados en los sistemas de control industrial,
referentes a la medición o lectura de las características de los objetos, tales como;
sensibilidad, presión, histéresis, error, linealidad, etc.

1.3. Sistemas de Control.


Los procesos industriales exigen el control de la fabricación de los diversos productos
obtenidos. Los procesos son muy variados y abarcan muchos tipos de productos: productos
derivados del petróleo, productos alimenticios, centrales generadoras de energía, siderurgia,
productos de la industria papelera, de la industria textil, etc.
En todos estos procesos es absolutamente necesario controlar y mantener constante algunas
variables y magnitudes, tales como la presión, el caudal, el nivel de líquidos, la temperatura,
la humedad, la ubicación de objetos, etc. Los instrumentos de medición y control permiten el
mantenimiento y la regulación de estas condiciones más idóneas que las que el propio
operador del equipo podría realizar.
Los procesos industriales a controlar pueden dividirse ampliamente en dos categorías:
procesos continuos y discontinuos. En ambos tipos, deben mantenerse en general las
variables bien en un valor deseado fijo, bien en valor variable con el tiempo de acuerdo con
una relación predeterminada, o guardando una relación determinada con otra variable.
El sistema de control que permite este mantenimiento de la variable puede definirse como
aquel que compara el valor de la variable o condición a controlar con un valor deseado y
toma una acción de corrección de acuerdo con la desviación existente sin que el operario
intervenga en el proceso.
El sistema de control exige que para que esta comparación y subsiguiente corrección sean
posibles, que se incluya un elemento de comparación, una unidad de control, una unidad de
corrección, el proceso y un dispositivo de medición.

Este conjunto de unidades forma un bucle o lazo que recibe el nombre de bucle de control.
El bucle puede ser abierto o bien cerrado.
a) Sistema de Control en Bucle Abierto.
En un sistema de control de bucle abierto, la unidad de control no se realimenta de
información del proceso, por lo que de existir algún problema en el proceso este continúa
funcionando hasta cumplir con el ciclo programado en la unidad de control.
b) Sistema de Control en Bucle Cerrado:
En el sistema de control en bucle cerrado, el proceso entrega información a la unidad de
control, mediante el dispositivo de medición. De existir algún problema en el proceso este es
detectado, comparado y corregido, hasta que se reciba el valor correcto.
Consideremos el siguiente ejemplo de llenado de botella, para entender el funcionamiento de
un sistema de control de bucle o lazo cerrado.
El ejemplo muestra el proceso de llenado de botella, el cual consta de dos subprocesos;
ubicación de la botella en el lugar de llenado y el llenado de la botella .
Los elementos del sistema de control del ejemplo son:
• Unidad de Control: Autómata Programable ( PLC).
• Dispositivo de Medición: Sensor detector de botella y Sensor detector de líquido.
• Unidad de Corrección: Electroválvula y Contactor _ Motor.
• Proceso: Ubicación de Botella y Llenado de Botella.
• Variable Controlada: Posición y Nivel de llenado.
• Elemento de Comparación: Circuito eléctrico programado en la unidad de control.
Interview 3:

1.-Sistema de Control en Bucle Abierto.


2.- Sistema de control en bucle cerrado
3.- https://www.youtube.com/watch?v=UFHso6ELDIA
Cómo INSTALAR y USAR Visual Studio 2022 [Tutorial Desde Cero en Español]
1.3 Clasificación de los lenguajes de programación según su: nivel de abstracción (bajo nivel,
nivel medio, alto nivel), propósito (general, específico), generación o evolución histórica (1GL,
2GL, 3GL, 4GL, 5GL), manera de ejecutarse (interpretados, compilados).
Clasificación de los lenguajes de programación.
Para clasificar los lenguajes de programación, se puede seguir hasta 11 criterios válidos. Sin embargo, los clasificaremos según tres criterios fundamentales.

Según su nivel de abstracción.


De bajo nivel:
El único lenguaje de bajo nivel que existe es el que llamamos lenguaje máquina. Este lenguaje pertenece a los lenguajes de primera generación. Utiliza un sistema binario de ceros y
unos para elaborar instrucciones que luego procesa el PC o computadora.

Lenguajes de medio nivel.


Estos lenguajes pertenecen a la segunda generación de lenguajes de programación. Cualquier programa escrito en este lenguaje tiene que ser traducido al lenguaje máquina
mediante un proceso de compilación para poder ejecutarse. Se utilizan nombres mnemotécnicos, y las instrucciones trabajan directamente con registros de memoria física.

Aunque muchas veces se clasifican como lenguajes de alto nivel, permiten usar características de los lenguajes de programación de alto nivel. Además, se suelen utilizar para la
creación de sistemas operativos.

De alto nivel.
La gran mayoría de los lenguajes de programación que se utilizan hoy en día pertenecen a este nivel de abstracción.

Dentro de los lenguajes de programación de alto nivel, encontramos los lenguajes de tercera, cuarta y quinta generación.

Tercera generación. Son lenguajes de propósito general. Estos lenguajes tienen un alto nivel de abstracción, ya que la forma de programar es mucho más entendible e intuitiva, ya
que se parece al lenguaje humano.

Cuarta generación. Son los lenguajes creados para un propósito específico. Por ello, permite reducir las líneas de código que para resolver un problema concreto respecto a los
lenguajes de tercera generación.

Quinta generación. Este tipo de lenguajes los podemos encontrar frecuentemente en inteligencia artificial. Pretenden abstraer el lenguaje utilizado más aún que los lenguajes de
cuarta generación.
Las características de un lenguaje de alto nivel son las siguientes.
1. Es totalmente independiente del ordenador.
2. Es muy utilizado en informática y con gran variedad de instrucciones.
3. Se puede modificar y actualizar fácilmente.
4. Para traducirlo necesitamos un compilador y un enlazador con librerías del propio lenguaje.

Lenguajes de programación según su forma de ejecución.


Compilados.
Cuando programamos en lenguajes de programación de alto nivel, se deben traducir las instrucciones escritas en
lenguaje máquina. Para ello utilizamos lo que se denomina un compilador.
Interpretados.
Este tipo de lenguajes ejecutan las instrucciones directamente, sin que se genere código objeto. Para ello es
necesario un programa intérprete en el sistema operativo o en la propia máquina donde cada instrucción es
interpretada y ejecutada de manera independiente y secuencial.
La principal diferencia con los lenguajes compilados, es que se traducen a tiempo real solo las instrucciones que se
utilicen en cada ejecución.
Virtuales.
Los lenguajes virtuales tienen un funcionamiento muy similar al de los lenguajes compilados. Sin embargo, la
diferencia con los lenguajes compilados, es que el compilador genera un archivo de bytecodes que puede ser
interpretado por cualquier ordenador que tenga instalada la máquina virtual. Estos lenguajes de programación
pueden ser multiplataforma.
Según su paradigma de programación.
Imperativos.
Consisten en una serie de sentencias que establecen cómo debe manipularse la información digital presente en
cada memoria. También puede indicar cómo se debe enviar o recibir la información en los dispositivos.
Dentro de esta categoría podemos incluir la programación estructurada, la programación modular o la
programación orientada a objetos. Casi todos los lenguajes de desarrollo de software comercial son imperativos.
Declarativos.
Especifica o declara un conjunto de premisas y condiciones para indicar qué es lo que hay que hacer y no
necesariamente cómo hay que hacerlo.
Procedimentales.
El programa se divide en partes más pequeñas, llamadas funciones y procedimientos que
pueden comunicarse entre sí. Permite reutilizar código ya programado y solventa el problema
de la programación spaghetti.
Lenguajes de programación orientados a objetos.
Encapsula el estado y las operaciones, creando una estructura de clases y objetos que emula un
modelo del mundo real. Permite la herencia entre clases y objetos.
Funcionales.
Evalúa el problema realizando funciones de manera recursiva.
Lógicos.
Define un conjunto de reglas lógicas para ser interpretadas mediante sentencias lógicas.
Además, permite responder preguntas planteadas al sistema para resolver problemas.
Evolución de los lenguajes de programación.
En la actualidad hay gran cantidad de lenguajes de programación. Vamos a ver algunos de los lenguajes más importantes desde la
década de los 50 hasta nuestros días.
Lenguajes entre 1950 y 1970.
Algol y BASIC derivados de Fortran creado en 1957.
Pascal, Modula 2, Simula, derivados de Algol en 1958.
Clojure y Sheme derivados de LISP creado en 1958.
COBOL en 1959.
Smalltalk y C++ derivados de Simula se extienden desde 1962 a 1967.
CPL creado en 1963 y del cual derivan otros lenguajes como C, C++, Java, C#, ObjetiveC.
1970: Pascal.
1972: Lenguaje C y Prolog.
1973: ML
1975: Sheme.
1978: SQL.
1980: C++.
1984: MATLAB.
1985: Eifel.
1986: Erlang
1987: Perl.
1990: Haskell.
1991: Python.
1993: Ruby.
1994: CLOS.
1995: Java.
1996: JavaSccript.
A partir del año 2000 y en la actualidad se siguen creando
lenguajes de programación como:
2000: C#.
2002: F#
2003: Groovy, Scala.
2007: Clojure.
2011: Dart.
2014: Swift.
TIPOS DE LENGUAJES DE PROGRAMACIÓN
LENGUAJES COMPILADOS: Clipper, Fortran, Pascal y otros.
LENGUAJES INTERPRETADOS. Basic y otros
LENGUAJES DE PROGRAMACIÓN DECLARATIVOS. Ejemplos: SQL, Prolog, HTML, WSDL
(Web Services Description Language), XML (Stykesheet language for transformation).
LENGUAJES DE PROGRAMACIÓN IMPERATIVOS. Ejemplos: BASIC, C, C++, JAVA, C#,
Perl.
LENGUAJES DE PROGRAMACIÓN ORIENTADOS A OBJETOS. Ejemplos: ActionScript,
Ada, C++, C#, VB. NET, Visual FoxPro, Clarion, Delphi, Harbour, Eifel, Java, JavaScript, Léxico,
Objetive-C, Ocaml, Oz, Perl, PHP,, Python, Ruby, SmallTalsk, Magik, Clipper, Visual Clipper
LENGUAJES DE PROGRAMACIÓN FUNCIONAL. Ejemplos: Haskell, Miranda, Híbridos,
Lisp, Sbheme, Ocaml, Standar ML, Scala.
LENGUAJES DE PROGRAMACIÓN LÓGICA: Ejemplos: Prolog
1.4 Ejemplos de los distintos tipos de lenguajes de programación y sus áreas de aplicación.
1. Lenguaje de programación PHP
PHP es de código abierto muy usado en el desarrollo web, ya que puede incrustarse en HTML. El
código se ejecuta en el servidor, genera HTML y se lo envía al cliente.
Muy fácil de emplear si estás empezando en esto de la programación, pero muy completo para los
programadores profesionales.
Se orienta al desarrollo de aplicaciones web dinámicas.
Es un código seguro y confiable, por el hecho de que el código fuente está oculto para el
navegador y cliente.
Licencia abierta de uso.
Las últimas versiones hacen que PHP sea un lenguaje orientado a objetos muy potente y con un
rendimiento muy mejorado.
Necesitas un servidor web para ejecutar una aplicación, aunque las últimas versiones traen un
servidor incorporado.
Debes tener un conocimiento genérico de HTML para trabajar con PHP o con JSON.
2. Perl
El uso de Perl está extendido en la construcción de aplicaciones CGI para la web. Se trata de un tipo de
lenguaje muy práctico para extraer información de archivos de texto y generar informes a partir de su
contenido. También es de licencia abierta.
Es uno de los lenguajes de programación más sencillos que existen.
Muy eficiente y de elevado rendimiento a la hora de tratar un gran volumen de datos.
Puede usarse tanto en desarrollo web como en otros entornos.
No necesitas hacer instalaciones a posteriori, ya que el intérprete viene por defecto.
Un mismo código corre en multitud de distribuciones sin necesidad de que toques una sola línea.
Puede ser lento comparado con otras herramientas, puesto que se compila al principio de su
ejecución.
Su código es difícil de leer.
Al no disponer de control de excepciones es complicado encontrar algunos errores.
3. Java
Es uno de los lenguajes de programación de código abierto más populares. Java fue comercializado
por primera vez 1995 por Sun Microsystems. Está detrás de muchas webs y aplicaciones, de consolas
y súper ordenadores, de móviles y de hasta Internet.
De hecho, no sé si sabes que Java es quien impulsa Android, el sistema operativo más usado del
mundo.
Lenguaje multiplataforma, ejecutable en la mayoría de los sistemas operativos.
Software de distribución libre.
Lenguaje completo y dispone de una librería y utilidades amplias.
Lenguaje de ejecución lenta al ser interpretado.
Difícil de aprender debido a su compleja sintaxis, se trata de un lenguaje de programación de alto
nivel.
4. C++
C++ permite la manipulación de objetos y tiene como base el lenguaje C. Se le reconoce como
uno de los lenguajes de programación multiparadigma (programación orientada a objetos y
estructurada). Es una de las herramientas más populares por su versatilidad y potencia.
Lenguaje muy didáctico, y a través del mismo puedes aprender otros como C#, Java, PHP.
Muy utilizado en la creación de sistemas operativos, utilidades, bibliotecas…
Permite programar con múltiples estilos, como los estructurados.
Admite la compilación de nuestro código en múltiples plataformas.
El uso de librerías dinámicas se hace muy complicado, ya que la carga y la liberación de
memoria de la librería corre a cargo de los programadores.
No es muy usable para desarrollar páginas web.

Complejo programar bases de datos.


Más pesado que otros programas similares.
5. C#
C# es un lenguaje creado por Microsoft con seguridad de tipos y orientado a objetos. Se diseñó
para ejecutarse en la plataforma .NET. C# se usa para el desarrollo de juegos, servicios web XML,
componentes distribuidos, aplicaciones cliente-servidor, etc. La sintaxis de C# es muy
reconocida, por lo que si estás familiarizado con Java o C++ no te será difícil aprenderlo.
Lenguaje muy potente y flexible.
Soporta la mayoría de paradigmas.
Es complicado hacer portabilidades.
Tiene una curva de aprendizaje bastante elevada.
No existe una correcta documentación de la herramienta.
6. Python
Python se origina a finales de los 80 y principios de los 90. Su programación se orienta a objetos y
se emplea para hacer aplicaciones genéricas (juegos, web o de escritorio), en la informática
científica y big data, que ahora está muy de moda. Su código es de distribución libre, por lo que no
tendrás que pagar licencias para utilizarlo.
Es escalable y flexible.
Funciona en múltiples plataformas (Windows, Mac, Linux).
Soporte de programación de interfaces gráficas de usuario.
Conexión con las bases de datos más usadas.
Se integra fácilmente con lenguajes como C, C++, y Java entre otros.
No dispone de una buena documentación.
Es más lento comparado con otros lenguajes como Java o C.
Difícil de ejecutar múltiples hilos.
7. JavaScript
Es uno de los lenguajes de programación más importantes y según datos, lo utilizan un 80% de los
desarrolladores y un 95% de todos los sitios web. Las ventajas de JavaScript se sitúan en el lado del
front-end, y varios frameworks que soporta como React y Angular JS tienen un gran potencial para
mejorar la experiencia del usuario en la web. Se trata en definitiva de un tipo de lenguaje ligero,
multiplataforma, estructurado y orientado a objetos y eventos.
Es un lenguaje de programación seguro y fiable.
De fácil empleo y muy completo.
Es ligero y permite la elaboración de múltiples aplicaciones web.
Es compatible con la mayoría de navegadores.
No proporciona muchos recursos.
Soporta 3D, pero las opciones que ofrece son limitadas.
Puede ser vulnerable, ya que el código de JavaScript está visible para todo el mundo.
Tienes que descargar completamente el código antes de procesarlo.
8. Swift
Es uno de los lenguajes de programación más recientes y de más futuro y se lanza en 2014
para los sistemas iOS y macOS. Es open source y puedes encontrar toda la información
necesaria para usarlo en su web o en su github.
No es un lenguaje exclusivo de iOS y puedes usarlo en Linux también.
Es más fácil de aprender y programar con él que otros lenguajes.
Ofrece un código muy seguro, ya que evita ciertas estructuras o condiciones.
Tareas como la encriptación se ejecutan más rápidamente.
Cada vez que salga una nueva versión, tendrás que reprogramar tu app.
Impone muchas reglas a hora de programar.
9. R
R está aumentando su popularidad debido al Big Data y del número creciente de trabajos de
minería de datos, por lo que te vendrá muy bien aprender este lenguaje. Forma parte de un
proyecto colaborativo y abierto y funciona mediante comandos. Ofrece una amplia gama de
herramientas estadísticas con los que podrás generar gráficos de gran calidad.
Es software libre de código abierto, por lo que tendrás una gran comunidad detrás apoyándote
en caso de dudas.
Multiplataforma. Funciona en Mac, Windows…
Los gráficos son de gran calidad.

Es difícil encontrar información específica dada la amplia documentación que circula.


Los mensajes de error que nos muestra no concretan los fallos.
Si no sabes mucho de programación, es complejo de usar.
10. Rust
Por último, incorporamos a nuestra lista Rust. Aunque es de nicho, su popularidad está
aumentando según datos de Google Trends y forma parte de esos nuevos lenguajes de
programación. Lo fundaron ingenieros de Mozilla y permite desarrollar software de sistemas,
donde la interacción con el usuario es escasa. Es apropiada para aplicaciones con el modelo
cliente-servidor.
Lenguaje rápido y seguro (gestión automática del guardado y el manejo de la memoria).
Basado en expresiones.
No puedes utilizar un valor que no haya sido inicializado previamente.
Necesitamos por lo menos una función de inicio (la función main).
Es más complejo de aprender que otros lenguajes, ya que algunas de sus reglas son
diferentes a las habituales.
GRACIAS

También podría gustarte