PROGRAMA Y LENGUAJE
Programa: Es una secuencia de instrucciones u órdenes, con cierta lógica funcional escritos bajo un lenguaje de programación (de alto nivel o de bajo nivel) o bajo el ambiente de un programa de aplicación y está orientado a la solución de algún problema. Cada instrucción le dice a la computadora que ejecute alguna operación básica.
Puede ser desarrollado por el usuario, o bien por alguna compañía de software con el objetivo de auxiliar en la solución de tareas comunes en diversos ámbitos de trabajo.
Realizamos una clasificación de la gama de programas o software existente en el mercado en sus divisiones principales:
o Programas de desarrollo por el usuario,
o Software de aplicación.
Del Usuario: El software desarrollado por el usuario consiste de programas orientados a la solución de problemas propios. Para que pueda desarrollar sus aplicaciones necesita conocer un lenguaje de programación.
I- LENGUAJE DE PROGRAMACIÓN
Es un conjunto de símbolos y palabras v claves que se ordenan bajo un formato de instrucciones estandarizadas que están definidas por una serie de reglas sintácticas y semánticas.
II. TIPOS DE LENGUAJE DE PROGRAMACION
a) Lenguajes de bajo nivel
Están orientados a un manejo directo de los recursos de la computadora. Son dos:
1. Lenguaje de Maquina. Es el lenguaje que utiliza directamente la computadora. Se funda en el código simbólico de ceros y unos (Código Binario).Cualquier programa escrito en algún lenguaje de máquina para su procesamiento (recuerde que la computadora solo entiende este código).
2. Lenguaje Ensamblador. La dificulta presentada al programar en lenguaje de máquina, planteo la posibilidad de que surgiera un lenguaje que se ejecutara igualmente en forma rápida, confiable y que fuese más fácil de programar. Así surgió el Lenguaje de ensamblador, el cual utiliza un lenguaje simbólico basado en palabras claves (mnemónicos) y una sintaxis definida.
b) Lenguajes de alto nivel. Los lenguajes de bajo nivel citados anteriormente son difíciles de aplicar por el programador común, debido a que requieren un conocimiento especializado sobre le funcionamiento de la computadora.
Ese problema se ha superado gracias al desarrollo de los Lenguajes de Alto Nivel, que son sencillos de aprender y solo requieren conocimientos básicos de computación y la utilización de ciertas técnicas de programación, siendo lo más importante, la lógica del programador.
Tienen el formato estándar, es decir , un conjunto de instrucciones básicas que son admitidas por cualquier equipo de cómputo y permite que un programa escrito para una computadora especifica pueda procesar en otra distinta, aunque es común en la actualidad, sobre todo en las versiones para microcomputadoras, encontrar que se han añadido ciertas funciones especiales a cada lenguaje de programación como manejo de Gráficos, manejo de Archivos, definición del número máximo de caracteres utilizados para representar una variable, etc. Por ello es necesario conocer el conjunto de instrucciones disponibles y su sintaxis antes de utilizar un compilador especifico. Asimismo debe tenerse cuidado en no confundir los paquetes de aplicación y sistemas operativos para micros, minis o macro computadoras, lo cual significa que, un paquete como LOTUS 1-2-3 solo podrá ejecutarse en micros, pero no en minis o en macros.
Los Lenguajes de Alto Nivel más conocidos son:
ü PHP: Es un lenguaje que se ejecuta en el servidor.
Un lenguaje de servidor es: aquel que se ejecuta en el servidor donde están alojadas las páginas, al contrario que otros lenguajes que son ejecutados en el propio navegador.
La principal ventaja es: que al ejecutarse el código en el servidor, todas nuestras páginas van a poder ser vistas en cualquier ordenador, independientemente del navegador que tenga,. En cambio el gran problema de que se ejecute el código en el navegador es que muchos navegadores no son capaces de entender todo el código, lo que presentaría errores al mostrar los resultados de las páginas.
Pero principalmente se trata de un Lenguaje de Programación Gratuito y por tanto todo el mundo puede utilizarlo sin ningún coste, frente a otros lenguajes cuyo software es necesario comprar par a su utilización.
ü MySQL: Es por otro lado la base de datos elegida por la gran mayoría de programadores en PHP. Soporta el lenguaje SQL y la conexión de varios usuarios, pero en general, se utiliza para aplicaciones de tamaño pequeño-medio.
Al igual que PHP, su principal ventaja reside en que es una base de datos gratuita.
ü BASIC: Beginnerls All Purpose Symbolic Instruction Code. (Código Simbólico de Propósitos General para Enseñanza a Principiantes). Desarrollado a principios de la década de 1960 para ser usado por los estudiantes. Es un lenguaje interactivo. Tiene un formato simple y es fácil de aprender. Existen variables de este lenguaje como Turbo Basic, Q Basic, Visual Basic, etc.
ü RPG: Report Program Generator (Programa Generador de Reportes).Es utilizado en empresas en las que se requiere una presentación de informes más que capacidad de proceso.
ü PASCAL: Es un lenguaje de programación popular que se rige bajo los principios lógicos de la programación estructurado.
ü FORTRAN: Formula Translatión (Traducción de Formulas).Desarrollado por IBM en 1956.Esta orientado a aplicaciones científicas y procedimientos. Emplea un formato similar a las formulas algebraicas. Ampliamente utilizado por científicos e ingenieros.
ü COBOL: Common Bussines Oriented Languaje (Lenguaje Orientado a los Negocios). Desarrollados en 1959, Está orientado a a aplicaciones administrativas. Se escribe basado en sentencias breves escritas en idioma Ingles, aunque requiere de muchas palabras para establecer una instrucción. Una de sus máximas atracciones es su manejo de archivos y datos y operaciones de E/S.
ü PL/1: Programing Languaje /1 (Lenguaje de Programación 1).Combina las principales características de Fortran y Cobol. Maneja grandes cantidades de datos y realiza sofisticados análisis estadísticos.
ü C: Es un lenguaje de programación que por sus características no puede ser clasificado como lenguaje de bajo nivel ni como lenguaje de alto nivel. Está en una posición intermedia. No es tan fácil de aprender, y requiere conocimientos más avanzados de programación.
ü LISP: Es un lenguaje utilizados por investigadores en inteligencia artificial. Su formato de programación difiere de los tradicionales.
ü PROLOG: Programing Logical. Es un lenguaje orientado a aplicaciones de sistemas expertos. Su manera de trabajar difiere ampliamente de los lenguajes de programación tradicionales.
Lenguaje de Alto Nivel |
Lenguaje de Bajo Nivel |
Es documentable. |
Es difícil de documentar . |
Es independiente de la computadora. |
Es dependiente de la computadora. |
Usa un compilador. |
Puede usar un ensamblador. |
Se rige bajo un formato estandarizado. |
Su ejecución es más rápida. |
Su ejecución es más lenta. |
Una instrucción en lenguaje ensamblador equivale a varias instrucciones en lenguaje de máquina. |
Una instrucción equivale a varias instrucciones en lenguaje de máquina. |
Lógica del programa difícil de seguir. |
Es más fácil de seguir. |
Aplicaciones específicas. |
Es de aplicaciones generales. |
Difíciles de depurar. |
Es más fácil de corregir . |
Conocimiento amplio d ela arquitectura del equipo de cómputo. |
Conocimiento de la organización interna de las computadoras no necesarias. |
|
|
Compiladores e Intérpretes: Un compilador es un programa que traducen un grupo de instrucciones escritas en un lenguaje de alto nivel (programa fuente)a un grupo de instrucciones correspondientes en lenguaje maquina (programa objeto)a partir de la verificación de la sintaxis del programa.
Programa Ejecutable: Es una secuencia de instrucciones en formato del lenguaje maquina a cuyo contenido se han añadido las rutinas del sistema operativo que también está en el formato de lenguaje de maquina solicitadas por el programa original para realizar aquellas funciones que requieran la utilización de los recursos del sistema de cómputo. Este programa está listo para ejecutarse.
III. Ejecución de un Programa.
El programador debe seguir una metodología específica para que su programa pueda darle los resultados esperados. Esta metodología involucra desde visualizar el problema y plantearlo hasta escribir el programa y ejecutarlo.
Los pasos que conforman esta metodología son:
1. Definir el problema a resolver. En esta fase, el programador visualiza y define el problema. Plante a objetivos y proyecta resultados.
2. Crear el algoritmo para solucionarlo. Con base en lo objetivos planteados y con las técnicas de programación conocidas se define una secuencia lógica de pasos a seguir para su consecución.
3. Elegir el lenguaje de programación y por ende el compilador o intérprete adecuado. De acuerdo a als funciones de cálculo y a los procesos planteados se selecciona el lenguaje de programación. Esto es, según las características de los cálculos y procesos se puede seleccionar un lenguaje de programación enfocado a problemas administrativos, científicos, etc.
4. Editar el programa. Se trasladan las ideas planteadas en el algoritmo a instrucciones del lenguaje de programación y se capturan en un editor de textos que puede estar incluido en el compilador para generar el programa fuente.
5. Ejecutar el programa para observar los resultados. Posteriormente se ejecuta el programa. Al trabajar con un intérprete se generan mensajes de error (si los hay) cada vez que se ejecute una instrucción. Hasta que estos errores sean corregidos se continuara con la ejecución del programa. Cuando el programa esté libre de errores se mostraran los resultados obtenidos del proceso.
o Aplicaciones Software.
Los programas escritos para resolver problemas del usuario se conocen como Programa de Aplicación. Dentro de la gama del Software de aplicación se encuentran:
· Compiladores e Intérpretes.
· Procesador de Texto y Editores.
· Hojas Electrónicas o de Cálculo.
· Manejadores de Bases de Datos.
· Graficadores.
· Aplicaciones Comerciales.
· Ambientes Integrados.
· Otros.
Últimamente el software de aplicación se desarrolla permitiendo que el usuario o usuarios aprovechen sus características a través de una serie de opciones que se seleccionan basándose en menús.