Programación:En computación, la programación es el proceso de escribir -en un lenguaje de programación- elcódigo fuente de...
de los datos que van a introducirse y procesarse, incluyendo su tipo y tamaño. Interna: Consiste encomentarios y descripci...
Objetivos de la programación: La programación debe perseguir laobtención de programas de calidad. Para ello se establece u...
Se sitúa, por tanto, en la parte central del ciclo de desarrolloFunciones de un Entorno de ProgramaciónComo se ha dicho, l...
Un lenguaje de programación es un idioma artificial diseñado para expresarcomputaciones que pueden ser llevadas a cabo por...
la acción que realizará la computadora en respuesta a los comandos del programa. Elprograma tiene como finalidad el cálcul...
comandos básicos del ensamblador. Estos      lenguajes hacen más fácil la lectura,escritura y comprensión de los programas...
- C, desarrollado a principios de los sesenta por Brian Kernighan y Dennis Ritchie, quienesbuscaban un mejor lenguaje de i...
Próxima SlideShare
Cargando en…5
×

Conceptos básicos programaciön

181 visualizaciones

Publicado el

0 comentarios
0 recomendaciones
Estadísticas
Notas
  • Sé el primero en comentar

  • Sé el primero en recomendar esto

Sin descargas
Visualizaciones
Visualizaciones totales
181
En SlideShare
0
De insertados
0
Número de insertados
1
Acciones
Compartido
0
Descargas
3
Comentarios
0
Recomendaciones
0
Insertados 0
No insertados

No hay notas en la diapositiva.

Conceptos básicos programaciön

  1. 1. Programación:En computación, la programación es el proceso de escribir -en un lenguaje de programación- elcódigo fuente de un software para indicarle a este qué tiene que hacer y como realizarlo. Untérmino más amplio de programación puede incluir no sólo a escribir, sino a analizar, probar,depurar y mantener el código programado.El fin último de la programación es crear programas o software, que luego será ejecutado por otroprograma o directamente por el hardware de la computadora.La programación es una parte del Ciclo de vida del software. Los modelos de análisis y desarrollogeneral de software son estudiados por la ingeniería del software.La programación se realiza mediante el uso de algoritmos, que son secuencias finitas, ordenadas yno ambiguas de instrucciones que deben seguirse para resolver un problema.Una vez que el programa informático ya se encuentra escrito, es necesario compilar el código paraque pueda ser ejecutado por la computadora.El propósito de la programación es crear programas que exhiban un comportamiento deseado.Características de la ProgramaciónExactitud y precisión: Un programa debe aceptar datos, procesarlos y generar resultados sinerrores de sintaxis o de lógica; de ahí la necesidad de exactitud y precisión. Integridad ocompletitud: Un programa es completo sólo si ejecuta todas las operaciones que el usuario esperaal procesar un conjunto de datos.Generalidad: La generalidad se entiende en dos sentidos: Un programa bien diseñado se puedegeneralizar; es decir puede procesar conjuntos de datos que varían en el número de transaccionesy en la naturaleza de los datos mismos. Las instrucciones se deben elaborar para que no se limitena un número específico de transacciones en el conjunto de datos. No debe suponerse que unaparte específica de datos siempre sea de igual tamaño. El programa contiene diferentes opcionesque pueden o no ser aplicadas durante una corrida. Los usuarios pueden seleccionar la opciónadecuada cada vez.Eficiencia: Debe asegurarse que las instrucciones para procesar datos se selecciones tan rápida yfácilmente como sea posible. La rapidez y la eficiencia del procesamiento de datos puede variardebido a: modo como se introducen los datos, orden en que se procesan los datos, instruccionesparticulares que se empleen para controlar el proceso, etc.Documentación: Consiste en la inclusión de auxiliares que explican con claridad como ocurre elprocesamiento de los datos en un programa. La documentación incluida en un programa es de dostipos: externa: No está incluida en el programa mismo sino que va por separado. Comprende:diagrama de flujo que muestre los pasos y los procedimientos y el orden en el cual tienen lugar;explicación que describa en el lenguaje común cómo es el procesamiento de los datos; descripción
  2. 2. de los datos que van a introducirse y procesarse, incluyendo su tipo y tamaño. Interna: Consiste encomentarios y descripciones que se insertan entre los enunciados ejecutables de un programa.Explica la sucesión de los pasos del procesamiento y los objetivos de los diferentes grupo deenunciados del programa
  3. 3. Objetivos de la programación: La programación debe perseguir laobtención de programas de calidad. Para ello se establece una serie de factores quedeterminan la calidad de un programa. Corrección. Un programa es correcto si hace lo que debe hacer tal y como se estableció en las fases previas a su desarrollo. Para determinar si un programa hace lo que debe, es muy importante especificar claramente qué debe hacer el programa antes de desarrollarlo y, una vez acabado, compararlo con lo que realmente hace. Claridad. Es muy importante que el programa sea lo más claro y legible posible, para facilitar así su desarrollo y posterior mantenimiento. Al elaborar un programa se debe intentar que su estructura sea sencilla y coherente, así como cuidar el estilo en la edición; de esta forma se ve facilitado el trabajo del programador, tanto en la fase de creación como en las fases posteriores de corrección de errores, ampliaciones, modificaciones, etc. Eficiencia. Se trata de que el programa, además de realizar aquello para lo que fue creado (es decir, que sea correcto), lo haga gestionando de la mejor forma posible los recursos que utiliza. Normalmente, al hablar de eficiencia de un programa, se suele hacer referencia al tiempo que tarda en realizar la tarea para la que ha sido creado y a la cantidad de memoria que necesita, pero hay otros recursos que también pueden ser de consideración al obtener la eficiencia de un programa, dependiendo de su naturaleza (espacio en disco que utiliza, tráfico de red que genera, etc.). Portabilidad. Un programa es portable cuando tiene la capacidad de poder ejecutarse en una plataforma, ya sea hardware o software, diferente a aquélla en la que se elaboró. La portabilidad es una característica muy deseable para un programa, ya que permite, por ejemplo, a un programa que se ha desarrollado para sistemas GNU/Linux ejecutarse también en la familia de sistemas operativos Windows. Esto permite que el programa pueda llegar a más usuarios más fácilmente.Entorno de programación: Es el banco de trabajo del programador Da soporte a las actividades de la fase de codificación (preparación del código y prueba de unidades) Los mismos productos sirven también para el diseño detallado y para las pruebas de integración.
  4. 4. Se sitúa, por tanto, en la parte central del ciclo de desarrolloFunciones de un Entorno de ProgramaciónComo se ha dicho, la misión de un Entorno de Programación es dar soporte a la preparaciónde programas, es decir, a las actividades de codificación y pruebas. Las tareas esenciales de la fase de codificación son: o Edición (creación y modificación) del código fuente o Proceso/ejecución del programa  Interpretación directa (código fuente)  Compilación (código máquina) - montaje - ejecución  Compilación (código intermedio) - interpretación Otras funciones: o Examinar (hojear) el código fuente o Analizar consistencia, calidad, etc. o Ejecutar en modo depuración o Ejecución automática de pruebas o Control de versiones o Generar documentación, reformar código o ... y otras muchas más ...
  5. 5. Un lenguaje de programación es un idioma artificial diseñado para expresarcomputaciones 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 unamáquina, para expresar algoritmos con precisión, o como modo de comunicación humana.1Está formado por un conjunto de símbolos y reglas sintácticas y semánticas que definen suestructura y el significado de sus elementos y expresiones. Al proceso por el cual seescribe, se prueba, se depura, se compila y se mantiene el código fuente de un programainformático se le llama programación.También la palabra programación se define como el proceso de creación de un programa decomputadora, mediante la aplicación de procedimientos lógicos, a través de los siguientespasos: 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. Existe un error común que trata por sinónimos los términos lenguaje de programación y lenguaje informático. Los lenguajes informáticos engloban a los lenguajes de programación y a otros más, como por ejemplo HTML (lenguaje para el marcado de páginas web que no es propiamente un lenguaje de programación, sino un conjunto de instrucciones que permiten diseñar el contenido de los documentos).Permite especificar de manera precisa sobre qué datos debe operar una computadora, cómodeben ser almacenados o transmitidos y qué acciones debe tomar bajo una variada gama decircunstancias. Todo esto, a través de un lenguaje que intenta estar relativamente próximoal lenguaje humano o natural. Una característica relevante de los lenguajes deprogramación es precisamente que más de un programador pueda usar un conjunto comúnde instrucciones que sean comprendidas entre ellos para realizar la construcción de unprograma de forma colaborativa.Uso de los lenguajes de programación:Una vez que se identifica una tarea y se conoce el algoritmo para resolverla, el programadordebe codificarlo en una lista de instrucciones, propias de algún lenguaje de computación.Los programas pueden ser escritos en cualquier lenguaje de la amplia gama disponibles. Laescogencia del más adecuado, dependerá de factores como la experiencia del programadorcon un lenguaje, determinar cuál producirá el programa menos complicado, la flexibilidad yla compatibilidad del programa como resultado del lenguaje usado.A continuación se presenta como ejemplo un sencillo programa fuente, escrito en C, elcual, es un lenguaje de programación que llegó a ser muy popular, y justo al lado se explica
  6. 6. la acción que realizará la computadora en respuesta a los comandos del programa. Elprograma tiene como finalidad el cálculo del promedio de una lista de cinco números.En computación se suele hablar de niveles y generaciones de los lenguajes deprogramación. Respecto al nivel, se clasifican en lenguajes de bajo y alto nivel. Loslenguajes de bajo nivel, son aquellos que se asemejan al lenguaje empleado por lacomputadora, mientras que los lenguajes de alto nivel, son aquellos que se asemejan allenguaje humano.Los lenguajes de alto nivel son resultado de una evolución, desde los lenguajes de bajonivel. La computadora sólo es capaz de comprender su lenguaje máquina. Pero para laspersonas no es fácil entender y manejar este código máquina de combinaciones binarias.Las investigaciones dieron un primer paso que llevó a la evolución desde las hileras denúmeros binarios del código máquina, a un lenguaje ensamblador, que las representabacomo una serie de comandos más entendibles. Los lenguajes de nivel superior estánorientados más hacia lo que se quiere realizar, que en la manera como se ejecutarán loscomandos.Generaciones de los lenguajes de programaciónPrimera generación: Lenguaje máquina Son los lenguajes más básicos. Los lenguajes demáquina se representan en bytes, los cuales, están compuestos de bits, que son númerosbinarios o que consisten únicamente de ceros (0) o unos (1). Estos valores puedencorresponder a que la electricidad esté encendida o apagada en la máquina, o a la presenciao ausencia de carga magnética en un medio de almacenamiento. A partir de estos dosestados se forman los esquemas de codificación (como el código ASCII) que permitengenerar letras, números, signos de puntuación y caracteres especiales. Una computadorasólo es capaz de comprender su lenguaje máquina original, el conjunto de instruccionespara realizar sus operaciones elementales.Segunda generación: lenguajes ensambladores: Están constituidos por nemotécnicos similares a palabras en idioma inglés. En primerlugar, se crea un archivo fuente con las instrucciones que se desea que la computadoraejecute, usando un editor, que es una especie de procesador de palabras. El códigofuente es traducido al lenguaje máquina mediante programas traductores(compiladores). Los programadores rara vez escriben programas de tamaño relevanteen este tipo de lenguajes, debido a que, a pesar que es mucho más fácil que utilizarcódigo de máquina, siguen siendo altamente detallados (instrucciones muybásicas). Sólo se hace en los casos donde la velocidad es clave (como en laprogramación de juegos de video) y para afinar partes importantes de los programas queson escritos en lenguajes superiores. • Tercera generación: Lenguajes de alto nivel: Son llamados de alto nivel porque se asemejan más al lenguaje que utilizan loshumanos al comunicarse. Fueron desarrollados con la finalidad de facilitar el procesode programación. Cuentan con comandos que se acercan más a las palabras de usocomún en lugar de tener que usar combinaciones binarias del código máquina o los
  7. 7. comandos básicos del ensamblador. Estos lenguajes hacen más fácil la lectura,escritura y comprensión de los programas, aunque de manera semejante a los lenguajesensambladores, deben ser convertidos a lenguaje máquina, para poder ser usados en lacomputadora.Los programas de la tercera generación son capaces de soportar programación estructurada,es decir, permiten el uso de estructuras de programación específicas para ramificaciones yciclos en el flujo del programa. Por otro lado, resultan más claros puesto que usan palabraso comandos semejantes al lenguaje normal, lo que permite compartir el desarrollo entrediferentes programadores. Los programadores que conforman un equipo pueden leer elcódigo realizado por los demás y comprender la lógica y el flujo de control del programa.Entre los lenguajes de tercera generación se incluyen:- FORTRAN (Traductor de Fórmulas: Formula TRANslator), diseñado específicamentepara programas matemáticos y de ingeniería, motivo por el cual, no fue de amplio uso encomputadoras personales. Su uso se dirige especialmente a equipos de cómputodedicados a la investigación y la educación. La versión más actual (1990) fuedenominada FORTRAN-90.- COBOL (Lenguaje simbólico de programación, orientado hacia aplicaciones comercialesy de gestión: Common Business Oriented Languaje) desarrollado en 1960, con el fin desolucionar las incompatibilidades de los fabricantes de computadoras. Ganó ampliaaceptación como lenguaje estandarizado llegándose a utilizar ampliamente en losnegocios, pero perdió seguidores en la pasada década. Motivado al problema del año2000 fueron requeridos programadores especializados en este lenguaje para reprogramarlas millones de líneas de código escritas en COBOL para que tales programascontinuasen funcionando.- BASIC (Código de instrucción simbólica universal para principiantes: BegginnersAllpurpose Symbolic Instruction Code) comienza como una herramienta para enseñarsobre programación a estudiantes. Fue desarrollado por Jhon Kemeny y Thomas Kurtzen 1964. Por su simplicidad se volvió ampliamente popular y usado en educación y entrelos programadores aficionados, pero no ha llegado a ser un lenguaje viable paraaplicaciones comerciales. Esto último se debe a que no posee un amplio repertorio deherramientas como el que ofrecen otros lenguajes. Además, sus compiladores noproducen archivos ejecutables tan compactos, rápidos y eficientes como los que producen otros lenguajes.- PASCAL, nombrado en honor del inventor francés Blas Pascal, es introducido porNiklaus Wirth en 1971. El Pascal, buscaba superar las limitaciones de los otros lenguajesde programación y demostrar la manera adecuada de implementar un lenguaje decómputo. Ha llegado a considerarse un excelente lenguaje de enseñanza. Las personasque se inician en la programación le consideran fácil para implementar algoritmos, sucompilador es estricto con el uso de programación estructurada, asegurándose de que loserrores sean señalados al principio.
  8. 8. - C, desarrollado a principios de los sesenta por Brian Kernighan y Dennis Ritchie, quienesbuscaban un mejor lenguaje de integrar con el sistema operativo UNIX, para que losusuarios pudiesen hacer modificaciones y mejoras con facilidad. El código ejecutableobtenido del lenguaje C, es rápido y eficiente. El C es poderoso, puesto que brinda lalibertad de conseguir que se realice casi cualquier cosa en una computadora. Esta es unade las razones por la cual se ha vuelto tan popular entre quienes desarrollan software paraaplicaciones comerciales profesionalmente. Su dificultad estriba, en que no es tansencillo de aprender en comparación con otros lenguajes.- C++, Es un lenguaje de principios de los ochenta desarrollado por Bjarne Stroustrup. Es extremadamente poderoso y eficiente igual que el C. Su aprendizaje implica aprendertodo acerca de C y además aprender sobre la programación orientada a objetos y suaplicación mediante el C++. Desde su origen ha ido ganando terreno entre quienesdesarrollaban en C.- Java (1991) es desarrollado por Sun Microsistema. Cuando Internet comenzó a ganarpopularidad como red de comunicaciones a mediados de los noventa, Sun redirige a Javapara convertirlo en un ambiente de programación que permitiese crear sistemasinteractivos y dinámicos (denominados applets) para las páginas Web. La complejidad deJava es similar a C++, pero ha ido ganando popularidad por la demanda de aplicacionespara páginas Web, incluso se estima que puede llegar a desplazar a C++ como ambientede programación.Las cinco generaciones de lenguajes de programación Generación Nombre Particularidad Específico para cada microprocesador, uso de Primera De máquina código binario Uso de nemotécnicos que abstraen del lenguaje Segunda Ensamblador máquina. Lenguajes estructurados con comandos Tercera De procedimientos cercanos al lenguaje común. Cuarta Orientados a procesos Programas orientados a problemas específicos. Incluye inteligencia artificial y sistemas Quinta Natural expertos.

×