¡Descarga Lenguajes de programación Resumen y más Apuntes en PDF de Programación C solo en Docsity! Universidad Autónoma de Nuevo León FACULTAD DE INGENIERIA MECANICA Y ELECTRICA Programación Visual Actividad #1 “Lenguajes de Programación” Luis Angel Saucedo Olivares Matricula: 1906095 23 de Enero del 2020 Monterrey, Nuevo León, México. LENGUAJES DE PROGRAMACIÓN. En los últimos años los lenguajes de programación han ido evolucionado en el desarrollo de sistemas o software, con el objetivo principal de facilitar al usuario las actividades que realiza día con día; por tal motivo, como programador, es importante conocer los conceptos básicos de programación, los tipos de lenguajes que se utilizan para el desarrollo y su funcionamiento para la interpretación de algoritmos, así como para dar solución a los problemas que pudieran presentarse. ¿Qué es un lenguaje de programación? En informática, se conoce como lenguaje de programación a un programa destinado a la construcción de otros programas informáticos. Su nombre se debe a que comprende un lenguaje formal que está diseñado para organizar algoritmos y procesos lógicos que serán luego llevados a cabo por un ordenador o sistema informático, permitiendo controlar así su comportamiento físico, lógico y su comunicación con el usuario humano. Dicho lenguaje está compuesto por símbolos y reglas sintácticas y semánticas, expresadas en forma de instrucciones y relaciones lógicas, mediante las cuales se construye el código fuente de una aplicación o pieza de software determinado. Así, puede llamarse también lenguaje de programación al resultado final de estos procesos creativos. La implementación de lenguajes de programación permite el trabajo conjunto y coordinado, a través de un conjunto afín y finito de instrucciones posibles, de diversos programadores o arquitectos de software, para lo cual estos lenguajes imitan, al menos formalmente, la lógica de los lenguajes humanos o naturales. Lenguaje de programación. es un idioma artificial diseñado para expresar computaciones que pueden ser llevadas a cabo por máquinas como las computadoras. Pueden usarse para crear programas que controlen el comportamiento físico y lógico de una máquina, para expresar algoritmos con precisión, o como modo de comunicación humana. Está formado de un conjunto de símbolos y reglas sintácticas y semánticas que definen su estructura y el significado de sus elementos y expresiones. Al proceso por el cual se escribe, se prueba, se depura, se compila y se mantiene el código fuente de un programa informático se le llama programación. También la palabra programación se define como el proceso de creación de un programa de computadora, mediante la aplicación de procedimientos lógicos, a través de los siguientes pasos: El desarrollo lógico del programa para resolver un problema en particular. Escritura de la lógica del programa empleando un lenguaje de programación específico (codificación del programa) Ensamblaje o compilación del programa hasta convertirlo en lenguaje de máquina. Prueba y depuración del programa. Desarrollo de la documentación. Los lenguajes de programación generalmente se dividen en dos grupos principales en base al procesamiento de sus comandos: lenguajes imperativos; lenguajes funcionales. En particular, este lenguaje está caracterizado por ser de uso general, de sintaxis compacta y portable. Así, un lenguaje de programación es una herramienta informática que permite desarrollar programas para computadoras. Características del lenguaje de programación. Un lenguaje de programación es un idioma artificial diseñado para expresar procesos que pueden ser llevadas a cabo por máquinas como las computadoras. Está formado por un conjunto de símbolos y reglas sintácticas y semánticas que definen su estructura y el significado de sus elementos y expresiones. Al proceso por el cual se escribe, se prueba, se depura, se compila y se mantiene el código fuente de un programa informático se le llama programación. Los elementos que caracterizan el lenguaje de programación son: Variables y Vectores Podrían calificarse como contenedores de datos y por ello se diferencian según el tipo de dato que son capaces de almacenar. En la mayoría de lenguajes de programación se requiere especificar un tipo de variable concreto para guardar un dato concreto. Los más comunes son: Variables tipo Char: Estas variables contienen un único carácter, es decir, una letra, un signo o un número. Variables tipo Int: Contienen un número entero. Variables tipo float: Contienen un número decimal. Variables tipo String: Contienen cadenas de texto, o lo que es lo mismo, es un vector con varias variables del tipo Char. Variables del tipo Boolean: Solo pueden contener un 0 o un 1. El cero es considerado para muchos lenguajes como la variable del tipo String "False" mientras que el 1 se considera "True". Condicionantes Son estructuras de código que indican que para que cierta parte del programa se ejecute, deben cumplirse ciertas premisas, como por ejemplo, que dos valores sean iguales, que un valor exista, que un valor sea mayor que otro y similares. Estos condicionantes por lo general solo se ejecutan una vez a lo largo del programa. Los condicionantes más conocidos y empleados en programación son: If: Indica una condición para que se ejecute una parte del programa. Else if: Siempre va precedido de un "If" e indica una condición para que se ejecute una parte del programa siempre que no cumpla la condición del if previo y si se cumpla con la que el "else if" especifique. Else: Siempre precedido de "If" y en ocasiones de "Else If". Indica que debe ejecutarse cuando no se cumplan las condiciones prévias. Bucles Los bucles son parientes cercanos de los condicionantes, pero ejecutan constantemente un código mientras se cumpla una determinada condición. Los más frecuentes son: For: Ejecuta un código mientras una variable se encuentre entre 2 determinados parámetros. While: Ejecuta un código mientras se cumpla la condición que solicita. Funciones Se crearon para evitar tener que repetir constantemente fragmentos de código. Una función podría considerarse como una variable que encierra código dentro de si. Sintaxis La sintaxis de un lenguaje de programación describe las combinaciones posibles de los símbolos que forman un programa sintácticamente correcto. El significado que se le da a una combinación de símbolos es manejado por su semántica (ya sea formal o como parte del código duro de la referencia de implementación). Dado que la mayoría de los lenguajes son textuales, este artículo trata de la sintaxis textual. Hoy, existen diversos tipos de lenguajes de programación, los cuales son escritos por los programadores, algunos de esos lenguajes son comprendidos por las computadoras y otros ayudan en forma de traductores. Normalmente se distingue entre los siguientes tipos de lenguaje de programación: Lenguajes de bajo nivel. Se trata de lenguajes de programación que están diseñados para un hardware específico y que por lo tanto no pueden migrar o exportarse a otros computadores. Sacan el mayor provecho posible al sistema para el que fueron diseñados, pero no aplican para ningún otro. Lenguajes de alto nivel. Se trata de lenguajes de programación que aspiran a ser un lenguaje más universal, por lo que pueden emplearse indistintamente de la arquitectura del hardware, es decir, en diversos tipos de sistemas. Los hay de propósito general y de propósito específico. Lenguajes de nivel medio. Este término no siempre es aceptado, que propone lenguajes de programación que se ubican en un punto medio entre los dos anteriores: pues permite operaciones de alto nivel y a la vez la gestión local de la arquitectura del sistema. Otra forma de clasificación a menudo es la siguiente: Lenguajes imperativos. Menos flexibles, dada la secuencialidad en que construyen sus instrucciones, estos lenguajes programan mediante órdenes condicionales y un bloque de comandos al que retornan una vez llevada a cabo la función. Lenguajes funcionales. También llamados procedimentales, estos lenguajes programan mediante funciones que son invocadas conforme a la entrada recibida, que a su vez son resultado de otras funciones. Algunas características del lenguaje de programación son las siguientes: Consisten generalmente en strings de números Cualquier computadora entiende directamente su propio lenguaje de máquina Son dependientes de máquina (puede ser usado en un tipo de computadora) Son complicadas para la lectura de códigos Simplicidad: el lenguaje debe ofrecer conceptos claros y simples que faciliten su aprendizaje y aplicación, de manera que sea sencillo de comprender y mantener. La simplicidad no significa que se le pueda restar el poder óptimo de funcionamiento. Naturalidad: se refiere a que su aplicación en el área para la que fue diseñado debe hacerse de forma natural, proporcionando operadores, estructuras y sintaxis para que los operadores trabajen eficientemente. Abstracción: consiste en la capacidad de definir y utilizar estructuras u operaciones complicadas ignorando algunos detalles. Esto influye en la capacidad de escritura. Eficiencia: los lenguajes de programación deben traducirse y ejecutarse eficientemente para no ocupar demasiado espacio en la memoria ni gastar mucho tiempo. Estructuración: permite que los programadores escriban sus códigos de acuerdo con los conceptos de programación estructurada, para evitar la creación de errores. Compacidad: con esta característica es posible expresar las operaciones con concisión, sin tener que escribir demasiados detalles. Localidad: se refiere a que los códigos se concentran en la parte del programa con la cual se está trabajando en un momento determinado. Compilado En un lenguaje compilado el código fuenteantes de ser ejecutado es convertido a lenguaje máquina (C, C++) aunque también puede ser convertido a representación intermedia que posteriormente es interpretada y convertida a lenguaje máquina JIT (Java, C#). El compilador puede detectar una gran cantidad de errores que en un lenguaje interpretado o de tipado dinámico se descubrirían en tiempo de ejecución. Wikipedia. Interpretado En un lenguaje interpretado el código fuente es compilado a código máquina en el momento de su ejecución Orientado a objetos Parte del éxito de los lenguajes orientado a objetos se debe a conceptos como la herencia que es una forma de reutilizar el código de la clase de la que se hereda, el polimorfismo con la que un mismo método puede estar implementado de diferente forma en función de la clase que lo implementa en la jerarquía de clases construida con la herencia, la sobrecarga usar un mismo método con diferentes parámetros y también igual o más importante la encapsulación con la que se ocultan los detalles internos del funcionamiento de la clase siendo únicamente posible manejar la clase a través de la interfaz (métodos) que ofrece. Tipado estático Ventajas de programar en lenguaje C 1- Por el tipo de estructura que utiliza: Ha sido diseñado para ser altamente transportable. Es un lenguaje relativamente sencillo y de gran flexibilidad. Usa funciones matemáticas propias del lenguaje y funciones suministradas por bibliotecas para el manejo de archivos. Es un lenguaje muy flexible, permite programar con múltiples estilos, uno de los estilos más usados es el estructurado. Es un sistema de tipos que impide operaciones sin sentido. Usa un grupo muy pequeño de palabras clave, lo cual facilita la memorización por parte del programador. 2- En el uso eficiente de la memoria: Utiliza punteros para direccionar el acceso a la memoria. Funciones y variables estáticas, son direccionadas en memoria mediante el uso de punteros. 3- En la forma de procesar Ejecuta interrupciones al procesador con uniones. El paso de parámetros a una función lo realiza por valores. El paso por referencia lo hace enviando explícitamente las direcciones de memoria de los parámetros. Es un lenguaje multiplataforma. Usa un lenguaje de pre-procesamiento para tareas, como definir macros e inclusión de múltiples archivos de código fuente. Desventajas de programar en lenguaje C: 1- Por el tipo de estructura: No es un lenguaje visual, no puede ser deducido de forma intuitiva, como por ejemplo el Visual Basic. Encapsulación. 2- Para el uso de funciones anidadas necesita de extensiones. No tiene instrucciones de entrada y salida, ni para el manejo de cadenas de caracteres. Por la forma de procesamiento: Carece de instrucciones que faciliten a los desarrolladores la programación multihilo. No cuenta con instrucciones para programación dirigida a objetos. Lenguajes de programación en la industria. Si eres programador/desarrollador es muy probable que conozcas los principales lenguajes de programación como Java, C++ y .NET y es que estos lenguajes son los que más requeridos y utilizados de la industria. Pero en el mundo de la programación hay una serie de lenguajes que, por diversas razones no son tan populares pero no quiere decir que sean menos importantes, un claro ejemplo es Cobol. Esta es una de las razones que se vuelve interesante el listado de Capacity Academy en el que descubriremos algunos de estos lenguajes. En primer lugar tenemos a Erlang es un lenguaje de programación utilizado en sistemas paralelos escalables de alto rendimiento. Este lenguaje fue originalmente desarrollado por la empresa Ericsson como un lenguaje especial para ejecutar tareas de telecomunicaciones. Eventualmente Erlang pasó a ser un proyecto Open Source. El lenguaje R tiene más de 20 años de vigencia. El lenguaje R fue desarrollado especialmente para trabajar con estadísticas. Aunque el campo de las estadísticas sigue siendo su “core”, muchos desarrolladores lo están utilizando para crear aplicaciones analíticas. Algunas empresas de dimensiones importantes (principalmente bancos de inversión en Wall Street) lo han estado utilizando por la facilidad que brinda aislar tendencias. Este lenguaje tiene unos fuertes fundamentos de matemáticas. El lenguaje D es un lenguaje orientado a objeto y multiparadigmas. Fue creado como una evolución de C++, pero en la práctica es un lenguaje totalmente distinto. C++ es un lenguaje extremadamente rápido. Dentro de Facebook tienen ya tiempo experimentando con el lenguaje D y algunos de sus ingenieros afirman que es mucho mejor que C++. El lenguaje D incorpora características de otros lenguajes como son Java, Python, Ruby, C# y Eiffel. El lenguaje Scala es una respuesta al lenguaje Java. Java fue desarrollado a principio de los 90’s y se convirtió rápidamente en un lenguaje muy popular. Recuerdo cuando entramos a la faculta de ingeniería en sistemas (1998), todos querían convertirse en gurúes en Java. En ese tiempo la programación orientada a objeto ya estaba de moda. La programación estructurada (COBOL) venía en decadencia pero aún era importante en ambientes corporativos y todavía se enseñaba en los ambientes académicos. Al día de hoy Java sigue siendo un lenguaje muy popular, pero está lejos de ser perfecto aún con todas las actualizaciones que le han hecho en los últimos años. En 2003, un grupo de hackers se reveló y decidió crear un Java mejor que el original sin ninguna de las fallas. A este nuevo lenguaje le llamaron Scala. El lenguaje F# fue desarrollado por Microsoft. Al comienzo Microsoft hizo mucha bulla alrededor de esta nueva tecnología. Con el tiempo la utilización del lenguaje no llenó las expectativas de sus creadores. La comunidad no lo adoptó como Microsoft esperaba. Pero en los últimos dos años los programadores que desarrollan para Windows han comenzado a utilizarlo nuevamente y el lenguaje a tomando un nuevo impulso. 10 Lenguajes de programación más usados: 1. JAVA Liderando el ranking encontramos a Java, el omnipresente. Ahora más reforzado con Android, el sistema operativo más utilizado del mundo. Un lenguaje de programación imprescindible, con el que no te faltará el trabajo. Según un estudio de LinkedIn, está dentro de las 20 habilidades más valoradas por los jefes. 2. PYTHON El segundo del top ten. El lenguaje multiplataforma y multiparadigma. Aplicado en el desarrollo web, extracción de datos, informática científica y aprendizaje automático. Soporta la orientación a objetos, la programación imperativa y funcional. Perfecto para principiantes. 3. JAVASCRIPT Más conocido como "el lenguaje de la web". Más del 95% de las webs de Internet son programadas con JavaScript, como Google Chrome, Firefox y Explorer. Además, presenta un enorme potencial de futuro a medida que el IoT y los dispositivos móviles se vuelven más populares. Esto le convierte en una habilidad indispensable para los desarrolladores. 4. C++ El favorito de los programadores de videojuegos y aplicaciones de banca electrónica. Nace en 1983 de C y es uno de los más estudiados en la actualidad, a pesar de su complejidad comparado con JavaScript o Python. Es empleado para crear software en aplicaciones y sistemas, juegos para PC, controladores y firmware incorporado. 5. C# Dominar esta variante de C es esencial para todo programador. Con C# se desarrollan las aplicaciones de Microsoft. La compañía lo creó para funcionar con .NET Framework y utilizar un lenguaje más rápido y fácil. Muy demandado en el mercado laboral por la cantidad de usuarios de Windows, lo que le convierte en competencia directa con macOS e iOS. 6. PHP Este lenguaje es otro de los más populares e incrustado a HTML se utiliza para desarrollar páginas webs. Lo encontramos instalado en más de 20 millones de sitios web y es considerado uno de los más flexibles gracias a su Código Abierto. Ideal para los que se inician en programación. 7. PERL Lenguaje muy práctico para extraer información de archivos de texto y generar informes a partir del contendido de los ficheros. De uso gratuito, a pesar de su continuo avance, la preferencia por esta habilidad ha bajado entre los desarrolladores.