Programación 2-2 / Prof.
Euclides Lanz
Bachiller. José Javier Guatarasma Rivas
Introducción
Los ordenadores no hablan nuestro idioma, son
máquinas y, como tales, necesitan un lenguaje específico
pensado por el hombre para ellas. Además, necesitan
constantemente interpretar todas las instrucciones que
reciben. Dada la dificultad de comunicación entre el
computador y el programador, pronto aparecieron
lenguajes de programación que hacen posible la
comunicación con el microprocesador, utilizando términos
y símbolos relacionados con el tipo de problema que se
debe resolver, mediante el empleo de herramientas que
brinda la informática.
El objetivo de este trabajo es comprender la programación
como un proceso mediante el cual se codifican una serie
de instrucciones, en un determinado lenguaje, para ser
posteriormente decodificados y ejecutados por un sistema
computacional, todo ello con el fin de resolver un
problema y que debe ser entendida por todo estudiante de
educación superior.
Fundamentos de la programación
Conceptos principales
La computadora permite procesar datos para generar información, este proceso es
en forma automática, para lo cual realiza muchas operaciones. Según Trembay
(2011): Pero del mismo modo se puede diseñar procesos a medida, de ciertas
situaciones que nos apremian, los cuales pueden involucrar diversas operaciones sean
aritméticas o lógicas y procesos de decisión y/o repetitivas, o volúmenes muy
grandes de datos para su proceso
Programación Algoritmo Programa Lenguaje de
programación
Es un proceso mediante Conjunto de pasos Es una secuencia de Los lenguajes de
el cual se codifican una finitos y secuenciales instrucciones que una programación son una
serie de instrucciones, que permiten resolver computadora puede serie de comandos que
en un determinado un problema. El interpretar y ejecutar escritos
lenguaje, para ser nombre de algoritmos secuencialmente y
posteriormente deriva del matemático respetando la sintaxis
decodificados y Persa Alkhowarizmi en resuelven una situación
ejecutados por un el siglo XVIX. problemática en cuanto
sistema computacional, a información.
todo ello con el fin de
resolver un problema.
Es decir, implementar
desde un algoritmo
hacia un lenguaje de
programación y dar
solución a un problema
Lenguaje de programación
Los lenguajes de programación son una serie de comandos que escritos
secuencialmente y respetando la sintaxis resuelven una situación
problemática en cuanto a información.
Lenguajes de programación
Lenguaje de programación, se expresan mediante un conjunto de
instrucciones detalladas para una computadora digital. Dichas
instrucciones se pueden ejecutar directamente cuando están en la forma
numérica específica del fabricante de la computadora conocida como
lenguaje de máquina, después de un simple proceso de sustitución cuando
se expresa en un lenguaje ensamblador correspondiente, o después de la
traducción de algún lenguaje de "nivel superior". Aunque hay muchos
lenguajes de computadora, relativamente pocos son ampliamente
utilizados. Los lenguajes de máquina y ensamblaje son de "bajo nivel", lo
que requiere que un programador administre explícitamente todas las
características idiosincráticas de almacenamiento y operación de datos de
una computadora. Por el contrario, los lenguajes de alto nivel protegen al
programador de preocuparse por tales consideraciones y proporcionan
una notación que los programadores escriben y leen más fácilmente
¿Cuáles son los principios básicos de la
programación?
La mayoría contestaríamos dando la definición de:
La declaración de variables, flujos de decisión, los ciclos, etc. Es
decir, los principios de los lenguajes de programación.
Estos son muy importantes, pero no son los principios básicos de
la programación, porque ¿De que te sirve saber un lenguaje si no
se es capaz de determinar qué es lo que debes programar en este
lenguaje?
La respuesta a esa pregunta es: Absolutamente de nada.
Punto de inicio Tipos de datos
Todo programa contiene una Los lenguajes manejan varios
instrucción principal que da tipos de datos, como enteros,
inicio a la ejecución de decimales, cadenas de texto, etc.
instrucciones. En c es la función Estos pueden ser declarados
main(), por ejemplo. explícitamente (le decimos a la
computadora que tipo de datos
vamos a usar) o pueden ser
inferidos implícitamente (la
computadora “adivina” que tipo
de dato estamos usando).
La utilidad de los principios básicos de los lenguajes se explota
una vez que se han aplicado los principios básicos de la
programación. Ahora , los principios básicos de los lenguajes de
programación son los siguientes:
Variables Ciclos Funciones Las listas o
arreglos
Los programas, Son tipos de Una función Son
para almacenar instrucciones es método o colecciones
información que nos procedimiento, de
temporalmente que permiten un pequeño variables,
puede variar, repetir otras programa una serie de
utilizan nombres instrucciones dentro del valores a
simbólicos. Estas una y otra vez, principal que los que
son las variables, mientras una realiza una accedemos
son almacenamiento condición se serie de mediante
s temporales en cumpla. Esta instrucciones y una sola
memoria RAM, es es la verdadera devuelve un referencia.
decir, la fuerza de las resultado, por Con este
computadora se computadoras, ejemplo, una conjunto de
acuerda en ese los trabajos suma ( tal y instruccione
instante en que está iterativos. como lo vimos s podemos
funcionando el en el crear
programa. paradigma cualquier
funcional ). programa,
Nos sirve para desde una
ahorrarnos calculadora
código, ya que sencilla,
la podemos pasando por
utilizar dentro lectura y
de nuestro escritura de
programa cada archivos,
que la hasta un
necesitemos. videojuego.
Palabras Reservadas
Las palabras reservadas son palabras que los lenguajes utilizan
exclusivamente y que no puedes utilizar para nombrar variables. Por
ejemplo: “if”, “for”, “function” y “this”. Estas palabras las utiliza el lenguaje
para hacer referencia a funciones y bloques de código, por ejemplo.
Los Componentes
Vamos a introducir el concepto de componentes.
Un sistema (en informática) es un conjunto de partes interconectadas entre sí
con el objetivo de realizar un proceso informático específico.
Esto significa un grupo de partes que se comunican entre sí para llevar a
cabo una tarea.
Cada parte de un sistema informático es un componente.
Esto en español es un grupo de partes que se comunican entre sí para llevar a
cabo una tarea.
Podemos detectar los componentes de nuestro sistema:
• El usuario somos nosotros mientras usamos el sistema.
• El sistema operativo que utilizamos para comunicarnos con
las aplicaciones.
• El intérprete, que ejecuta nuestro programa.
• Nuestra aplicación, el conjunto de instrucciones que le
damos a la computadora.
Cada uno de estos componentes realiza diferentes acciones y se
comunica con otros mediante llamadas. Pues bien, dentro de la
computadora, todo es una llamada.
Como usuarios llamamos a las aplicaciones, lo hacemos
mediante el sistema operativo para que “escuche” nuestras
peticiones a través del teclado y las envíe a un programa que
interpreta las instrucciones que programamos y nos devuelve una
respuesta.
¿Podemos ahora visualizar los principios de la programación en el
sistema?
Todo es comunicación, una entrada, un proceso y una salida.
Como vemos, todo se puede reducir a los principios básicos.
Pues bien, dentro de nuestro programa aplican de nuevo los
mismos principios, y también en la existencia de componentes y
las llamadas.
La sintaxis
La sintaxis son las reglas para unir las palabras y formar oraciones.
Bien; Los lenguajes tienen reglas. Nuestro español, el idioma inglés, el
alemán, etc. Todos tienen reglas de cómo deben ir ordenadas las
palabras para formar oraciones, como deben escribirse y los símbolos
que deben utilizarse.
Así también, o de la misma manera los lenguajes informáticos no son
la excepción. Tienen una sintaxis específica que debemos respetar, caso
contrario podemos tener errores en el programa y no funcionarán o no
lo harán correctamente.
Lenguajes de programación y su evolución
El primer lenguaje de programación, el de Ada
Lovelace
Entre 1842 y 1843, Ada Lovelace se propuso traducir las
memorias del matemático italiano Luigi Menabrea y, mientras lo
hacía, creó un lenguaje de programación a mano para calcular la
serie de números de Bernoulli con la máquina de Babbage. El
primer lenguaje de programación, el de Ada Lovelace
Años más tarde, y nuevos lenguajes de programación
mediante, Turing revolucionó la computación con su Máquina de
Turing. Se trata de una máquina que demostraba que, con un
algoritmo, podían resolver cualquier problema matemático.
Si había un algoritmo, la máquina podía resolver el problema
En el 57, John W. Backus inventa el primer lenguaje de
programación de alto nivel, el primero que utilizaron los
programadores reales, Fortran. Fue un lenguaje que surgió como
vía de escape de Backus para ''trabajar menos'' en su tarea de
calcular trayectorias de misiles, ya que el lenguaje, y el
compilador, eran capaces de hacer el trabajo mucho más rápido.
Tras Fortran como primer compilador, llegó COBOL. El
objetivo de este lenguaje de programación universal era que
pudiera ser usado en cualquier ordenador ya que en los años 60
había distintos ordenadores que no eran compatibles entre sí, y de
esta manera las empresas podían fichar talentos sin tener que
enseñar cómo usar los compiladores y diferentes lenguajes que se
usaban en sus empresas, si es que eran distintos.
Además, permitió modernizar la informática de gestión.
En 1964 nació BASIC: Beginner's All-purpose Symbolic
Instruction Code, o BASIC, es una familia de lenguajes de
programación de alto nivel que se desarrolló como una
herramienta de enseñanza, pero gracias a su popularidad, se
comenzó a adoptar en otros sistemas hasta el punto de que, a día
de hoy, sigue siendo muy importante, con programas como
Gambas o Visual Basic que se siguen utilizando. Uno de los
puntos más importantes de la historia de los lenguajes de
programación.
1970, Pascal: Niklaus Wirth fue un profesor que creó Pascal
como, igual que BASIC, herramienta de enseñanza de
programación, pero pronto trascendió como lenguaje de
programación para crear todo tipo de aplicaciones. De
hecho, aunque hoy se sigue usando, su presencia en aplicaciones
es menor, pero sí se ve en escuelas de programación junto al
compilador Free Pascal.
1972, llega C ,y C++ en 1979: El primero es un lenguaje de
programación de bajo nivel que con el tiempo a sido muy valioso
como lenguaje de programadores para programadores. Y C++ es
uno de los lenguajes de programación más utilizados... para todo.
la intención de Bjarne Stroustrup fue la de extender al lenguaje de
programación C mecanismos para manipular objetos. Un punto
clave en la historia de los lenguajes de programación.
1991: HTML, Python y Visual Basic: Tras años con compiladores
y lenguajes de programación enfocados a objetos, llegó la década
de Internet. Aquí se produjo un gran crecimiento de lenguajes de
programación, y aunque no se ''inventó nada nuevo'', sí se
maduraron ideas del pasado.
Luego vino en 1995: Java, JavaScript y PHP, otros tres de los
lenguajes que han definido la manera en la que entendemos el
mundo debido a que, básicamente, están presentes en el 50% de
las páginas web y en muchísimas aplicaciones. Aunque se ha
intentado dejar de lado a favor de nuevos lenguajes, tanto Java
como JavaScript siguen siendo importantísimos.
Con la llegada de la década de los 2000, llegaron nuevos
lenguajes de programación, como Action Script. Sin embargo, fue
en 2001 cuando llegaron C# y Visual Basic .NET. Junto a los
años anteriores con Java y HTML, C# culmina el mejor momento
de la historia de los lenguajes de programación.
El primero se ha consolidado como uno de los lenguajes de
programación más importante para crear todo tipo de programas.
El segundo es un lenguaje orientado a objetos que se asocia a
Visual Basic, pero que es totalmente distinta y está implementado
sobre el framework .NET de Microsoft.
Seguimos con Scratch en 2006: la ''revolución'' de los lenguajes
de programación. Este es lenguaje de programación visual
desarrollado por el MIT que consiste en un lenguaje desarrollado
para que niños, adolescentes y adultos aprendan a programar de
manera visual sin tener demasiada idea de código
En 2012 Kotlin: es uno de los lenguajes de programación de
moda no por ser el más fácil, sino porque Google lo ha ''marcado''
como el mejor lenguaje de programación para Android.
Swift, en 2013: Estos últimos años, no ha habido una evolución
de los lenguajes de programación, pero sí se han creado diferentes
lenguajes específicos para agilizar la programación. Kotlin es uno
de ellos y Swift, otro. Creado por Apple, es un lenguaje de
programación clave para programar en iOS.
Estos son algunos de los momentos más resaltantes en la historia
de la programación.
Lenguajes de programación: tipos y características
¿Qué es un lenguaje de programación?
Un lenguaje de programación consiste en un vocabulario que
contiene un conjunto de reglas gramaticales (son el conjunto de
normas que utiliza cualquier idioma para marcar la pauta a seguir
para que el mensaje que se emita sea entendido por el receptor.
Fuente: destinadas a girar instrucciones a un ordenador o
dispositivo informático para que ejecuten tareas específicas.
Existen diferentes tipos de lenguaje como ya hemos visto con
anterioridad en este mismo trabajo y cada uno de ellos posee un
conjunto único de palabras clave junto con una sintaxis especial
para organizar las instrucciones del software.
• NOTA: En informática cuando se habla de sintaxis, se
refiere al conjunto de reglas que establecen cómo deben
estar dispuestos los símbolos que componen el lenguaje de
programación o instrucción ejecutable del ordenador.
• Otro concepto seria: Las normas a las que debemos
atenernos para darle las instrucciones a un programa
u ordenador. En otras palabras, sobre cómo debemos
organizar las instrucciones para transmitírselas a un
ordenador y generar en él una respuesta adecuada.
El lenguaje natural es el que hablan las personas, mientras que
el lenguaje de programación se destina a las máquinas. Ambos
lenguajes presentan importantes similitudes, como la
diferenciación que hacen entre sintaxis y semántica, su propósito
de comunicar y la existencia de una composición base en los dos.
De forma general se observan varias semejanzas y puntos en
común, pues los dos tipos fueron creados para comunicar ideas,
expresiones e instrucciones.
Principales características de los lenguajes de
programación
• 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.
Tipos de lenguajes 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 máquina
Es el único lenguaje que entiende directamente el ordenador. Por
esta razón, su estructura está totalmente adaptada a los circuitos de
la máquina y muy alejada de la forma de expresión y análisis de los
problemas propios de los humanos. Esto hace que la programación
en este lenguaje resulte tediosa y complicada, requiriéndose un
conocimiento profundo de la arquitectura física del ordenador.
Las principales características del lenguaje máquina son las
siguientes:
Las instrucciones se expresan en el alfabeto binario (están
codificadas en binario como cadenas de ceros y unos), pudiéndose
utilizar códigos intermedios (octal y hexadecimal). Esta
característica hace que un programa en lenguaje máquina sea difícil
de entender y, como consecuencia, difícil de modificar.
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.
Un lenguaje de programación de alto nivel se caracteriza por
expresar los algoritmos de una manera adecuada a la
capacidad cognitiva humana, en lugar de la capacidad con que los
ejecutan las máquinas. Estos lenguajes permiten una máxima
flexibilidad al programador a la hora de abstraerse o de ser literal.
Lenguajes de nivel medio: Este término no siempre aceptado,
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.
El lenguaje de medio nivel como por ejemplo el lenguaje C, que
se encuentran entre los lenguajes de alto nivel y los lenguajes de
bajo nivel, permiten ciertos manejos de bajo nivel también, es
preciso para ciertas aplicaciones como la creación de sistemas
operativos, ya que permite un manejo abstracto (independiente de
la máquina, a diferencia del ensamblador), pero sin perder mucho
del poder y eficiencia que tienen los lenguajes de bajo nivel.
Una característica distintiva, por ejemplo, que convierte a C en un
lenguaje de medio nivel es que en el primero es posible manejar
las letras como si fueran números.
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.
Utilidad de los lenguajes de programación
La función principal de los lenguajes de programación es escribir
programas que permiten la comunicación usuario-máquina.
El campo de la programación es muy amplio, por lo que la utilización
de un determinado lenguaje dependerá de los objetivos que se quieran
lograr.
Depende del lenguaje de programación se puede realizar las siguientes
actividades:
• Desarrollo de programas y aplicaciones.
• Desarrollo de inteligencia artificial.
• Desarrollo de bases de datos.
• Desarrollo de videojuegos.
• Desarrollo de controladores e interfaz de hardware.
• Desarrollo de internet y páginas web.
• Desarrollo de guiones
Conclusión
En los últimas décadas y todavía más en los últimos años
la humanidad ha ido adaptándose a los diferentes cambios
que han venido con el uso de la tecnología que ahora más
que nunca parece indispensable en cada faceta de la vida
en general, y aunque no puedo expresar con estas pocas
palabras la totalidad de lo que significa este inmenso
recurso; y cuando escribo significa no me refiero solo al
mero concepto, si no a lo que representa este, repito,
recurso que llamamos o hacemos mención de ello como
ERA DIGITAL. También es necesario decir dado que lo
anterior es así desde mi punto de vista, que ha sido
provechoso leer y escribir acerca del tema que se
desarrolla en las diferentes diapositivas; me refiero a la
Programación, y es que si, 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 profesionales futuros de esta área, es importante
conocer los conceptos básicos del tema, los tipos de
lenguajes que se utilizan para el desarrollo y su
funcionamiento, así como para dar solución a los
problemas que pudieran presentarse.
Actualmente la globalización exige estar preparados en
esto debido a que en el trabajo como en la educación se
vienen implementando cada día herramientas tecnológicas
de computación con el objetivo de efectivizar las tareas.