sábado, 25 de febrero de 2017
1.5 Programación
La programación es el proceso de diseñar, escribir, depurar y mantener el código fuente de programas computacionales. El código fuente es escrito en un lenguaje de programación. El propósito de la programación es crear programas que exhiban un comportamiento deseado. El proceso de escribir código requiere frecuentemente conocimientos en varias áreas distintas, además del dominio del lenguaje a utilizar, algoritmos especializados y lógica formal. Programar no involucra necesariamente otras tareas tales como el análisis y diseño de la aplicación (pero sí el diseño del código), aunque sí suelen estar fusionadas en el desarrollo de pequeñas aplicaciones.
1.4 Programa
Es un conjunto de instrucciones que una vez ejecutadas realizarán una o varias tareas en una computadora. Sin programas, estas máquinas no pueden funcionar. Al conjunto general de programas, se le denomina software, que más genéricamente se refiere al equipamiento lógico o soporte lógico de una computadora digital.
En informática, se los denomina comúnmente binarios, (propio en sistemas Unix, donde debido a la estructura de este último, los ficheros no necesitan hacer uso de extensiones. Posteriormente, los presentaron como ficheros ejecutables, con extensión .exe, en los sistemas operativos de la familia Windows) debido a que una vez que han pasado por el proceso de compilación y han sido creados, las instrucciones que se escribieron en un lenguaje de programación que los humanos usan para escribirlos con mayor facilidad, se han traducido al único idioma que la máquina comprende, combinaciones de ceros y unos llamada código máquina. El mismo término, puede referirse tanto a un programa ejecutable, como a su código fuente, el cual es transformado en un binario cuando es compilado.
Generalmente el código fuente lo escriben profesionales conocidos como programadores. Se escribe en un lenguaje que sigue uno de los siguientes dos paradigmas: imperativo o declarativo y que posteriormente puede ser convertido en una imagen ejecutable por un compilador. Cuando se pide que el programa sea ejecutado, el procesador ejecuta instrucción por instrucción.
De acuerdo a sus funciones, se clasifican en software de sistema y software de aplicación. (véase tema 1.1 Clasificación del software de: sistemas y aplicación.) En los computadores actuales, al hecho de ejecutar varios programas de forma simultánea y eficiente, se le conoce como multitarea.
En informática, se los denomina comúnmente binarios, (propio en sistemas Unix, donde debido a la estructura de este último, los ficheros no necesitan hacer uso de extensiones. Posteriormente, los presentaron como ficheros ejecutables, con extensión .exe, en los sistemas operativos de la familia Windows) debido a que una vez que han pasado por el proceso de compilación y han sido creados, las instrucciones que se escribieron en un lenguaje de programación que los humanos usan para escribirlos con mayor facilidad, se han traducido al único idioma que la máquina comprende, combinaciones de ceros y unos llamada código máquina. El mismo término, puede referirse tanto a un programa ejecutable, como a su código fuente, el cual es transformado en un binario cuando es compilado.
Generalmente el código fuente lo escriben profesionales conocidos como programadores. Se escribe en un lenguaje que sigue uno de los siguientes dos paradigmas: imperativo o declarativo y que posteriormente puede ser convertido en una imagen ejecutable por un compilador. Cuando se pide que el programa sea ejecutado, el procesador ejecuta instrucción por instrucción.
De acuerdo a sus funciones, se clasifican en software de sistema y software de aplicación. (véase tema 1.1 Clasificación del software de: sistemas y aplicación.) En los computadores actuales, al hecho de ejecutar varios programas de forma simultánea y eficiente, se le conoce como multitarea.
1.3 Lenguaje de programación
En computación, un programa es una secuencia de instrucciones que permiten a un ordenador procesar una información conocida como datos de entrada (input) para producir una información de salida (ouput) o resultados.
Esas instrucciones pertenecen a (o están escritas en) un lenguaje de programación determinado.
Un lenguaje de programación es una construcción mental del ser humano para expresar programas. Está constituido por un grupo de reglas gramaticales, un grupo de símbolos utilizables, un grupo de términos monosémicos (es decir, con sentido único) y una regla principal que resume las demás. Para que ésta construcción mental sea operable en un computador debe existir otro programa que controle la validez o no de lo escrito. A éste se le llama traductor.
Los lenguajes pueden ser de alto o bajo nivel. En los de bajo nivel las instrucciones son simples y cercanas al funcionamiento de la máquina, como por ejemplo el código máquina y el ensamblador. En los lenguajes de alto nivel hay un alto grado de abstracción y el lenguaje es más próximo a los humanos, como por ejemplo Léxico, PASCAL, Cobol o Java .
con la extensión de nombre ".exe" (en sistemas Windows). En el segundo caso no se construye otra versión razón por la cual ha de distribuirse el programa original llamado código o programa fuente y el usuario debe poseer también la herramienta con la cual se ha programado y que interpreta ese código.
Ejemplo de lenguaje (java).
1.2 Algoritmo
Definiciones por algunos autores:
Podemos encontrar muchas definiciones completas o formales de algoritmo en los textos de algorítmica y programación, todas ellas muy similares:
Secuencia finita de instrucciones, reglas o pasos que describen de forma precisa las operaciones que un ordenador debe realizar para llevar a cabo un tarea en un tiempo mas finito.
[Donald E. Knuth, 1968]
Descripción de un esquema de comportamiento expresado mediante un repertorio finito de acciones y de informaciones elementales, identificadas, bien comprendidas y realizables a priori. Este repertorio se denomina léxico
[Pierre Scholl, 1988].
Un algoritmo es un conjunto finito de pasos definidos, estructurados en el tiempo y formulados con base a un conjunto finito de reglas no ambiguas, que proveen un procedimiento para dar la solución o indicar la falta de esta a un problema en un tiempo determinado.
[Rodolfo Quispe-Otazu, 2004].
Pasos para resolver un algoritmo.
A continuación te muestro 10 pasos o consejos útiles para la resolución de cualquier algoritmo:
1. Definir el Problema:Damos el enunciado del problema, el cual requiere una definición clara y precisa, en otras palabras definimos que pretendemos solucionar, un pequeño ejemplo:
¿Cual es el área del terreno de mi casa?.
2. Analizar el Problema: Debemos comprender lo que se desea desarrollar para luego aplicar alguna posible solución a problema dado, para esto debemos tener en cuenta con que datos de entrada contamos, los métodos con sus respectivas fórmulas que necesitamos para procesar los datos y cuál es la información que deseamos producir (datos de salida), ejemplo:
Datos de entrada: Largo, Ancho.
Método: Para este algoritmo realizaremos la medición del Largo por el Ancho del terreno para luego hacer una operación aritmética de multiplicación.
Datos de salida: Área del terreno.
3. Diseñar el Algoritmo: En esta nos adentramos en el diseño de los pasos a seguir secuencialmente para alcanzar nuestro objetivo proyectado, adicionalmente podemos aplicar algunas características para desarrollar un buen algoritmo, estos son:
Tener un punto particular de inicio, ejemplo: Encontrar el Área del terreno de mi casa.
Definir bien su estructura la cual no debe permitir dobles interpretaciones, ejemplo: Medir el Ancho y el Largo del terreno para encontrar el Área.
Debe ser general, es decir, soportar la mayoría de las variantes que se puedan presentar en la definición del problema, ejemplo: Si los datos ingresados al realizar la medición no son numéricos entonces volveremos a revisar los datos registrados.
Debe ser finito en tamaño y tiempo de ejecución, ejemplo: Al realizar la operación aritmética con los datos correctamente capturados el resultado debe ser un numero entero que nos informara el Área de nuestro terreno en tiempo récord.
4. Definir la Codificación: Es la acción de escribir la solución del problema de acuerdo a la lógica, en esta podemos usar un diagrama de flujo o un pseudocódigo en una serie de instrucciones detalladas.
5. Utilización de lenguaje preciso: En este paso debemos de acertar verazmente en la solución de un problema dado con nuestro algoritmo, utilizando un lenguaje que nos brinde eficiencia y eficacia en su tratamiento como es el uso del Pseudocódigo para la representación clara, precisa y muy económica en la solución al dilema expuesto.
6. Elaboración del algoritmo: En este paso debemos tener ya muy claro nuestra finalidad, los procesos que ya hemos estudiado, lo que pretendemos alcanzar y por fin hacer que nuestro problema ya esté resuelto. Este lo vamos a plasmar en un medio ya sea escrito o gráfico, los cuales nos permitirán ver los resultados después de haber ingresado nuestros datos, haberlos procesado cabalmente sin errores y posteriormente haber resuelto lo que inicialmente habíamos proyectado resolver.
7. Prueba y Depuración: Los errores humanos dentro de la programación y análisis de algoritmos son muchos y aumentan considerablemente con la complejidad del problema. El proceso para identificar y eliminar errores, dando paso a una solución sin errores se le llama depuración. La depuración o prueba resulta una tarea tan creativa como el mismo desarrollo de la solución, por ello se debe considerar con el mismo interés y entusiasmo.
8. Documentación: Es nuestra guía o comunicación escrita es sus variadas formas, ya sea en enunciados, procedimientos, dibujos o diagramas. A menudo un programa escrito por una persona en pseudocódigo, es usado por otra. Por esto la documentación nos sirve para ayudar a comprender o usar un programa o para facilitar futuras modificaciones (mantenimiento). La documentación se divide en tres partes:
9. Mantenimiento: Lo llevamos a cabo después de haber terminado el algoritmo o programa, detectando si es necesario hacer algún cambio, ajuste o complementación a este para que siga trabajando de manera correcta. Para poder realizar este trabajo se requiere que nuestro algoritmo este correctamente documentado.
10. Actualización e implementación de nuevos conceptos: Referente a los cambios teóricos constantes que se presentan a diario y que nos retan de nuevo a que planteemos una nueva forma de analizar el contexto en que resolvemos problemas utilizando herramientas de solución algorítmicas, esto siempre y cuando sea concebido en el individuo de una manera autónoma, responsable y compartidora.
Podemos encontrar muchas definiciones completas o formales de algoritmo en los textos de algorítmica y programación, todas ellas muy similares:
Secuencia finita de instrucciones, reglas o pasos que describen de forma precisa las operaciones que un ordenador debe realizar para llevar a cabo un tarea en un tiempo mas finito.
[Donald E. Knuth, 1968]
Descripción de un esquema de comportamiento expresado mediante un repertorio finito de acciones y de informaciones elementales, identificadas, bien comprendidas y realizables a priori. Este repertorio se denomina léxico
[Pierre Scholl, 1988].
Un algoritmo es un conjunto finito de pasos definidos, estructurados en el tiempo y formulados con base a un conjunto finito de reglas no ambiguas, que proveen un procedimiento para dar la solución o indicar la falta de esta a un problema en un tiempo determinado.
[Rodolfo Quispe-Otazu, 2004].
Pasos para resolver un algoritmo.
A continuación te muestro 10 pasos o consejos útiles para la resolución de cualquier algoritmo:
- Definir el problema.
- Analizar el problema.
- Diseñar el algoritmo.
- Definir la codificación.
- Utilización de lenguaje práctico.
- Elaboración de algoritmo.
- Prueba y depuración.
- Documentación.
- Mantenimiento.
- Actualización e implementación de nuevos conceptos.
1. Definir el Problema:Damos el enunciado del problema, el cual requiere una definición clara y precisa, en otras palabras definimos que pretendemos solucionar, un pequeño ejemplo:
¿Cual es el área del terreno de mi casa?.
2. Analizar el Problema: Debemos comprender lo que se desea desarrollar para luego aplicar alguna posible solución a problema dado, para esto debemos tener en cuenta con que datos de entrada contamos, los métodos con sus respectivas fórmulas que necesitamos para procesar los datos y cuál es la información que deseamos producir (datos de salida), ejemplo:
Datos de entrada: Largo, Ancho.
Método: Para este algoritmo realizaremos la medición del Largo por el Ancho del terreno para luego hacer una operación aritmética de multiplicación.
Datos de salida: Área del terreno.
3. Diseñar el Algoritmo: En esta nos adentramos en el diseño de los pasos a seguir secuencialmente para alcanzar nuestro objetivo proyectado, adicionalmente podemos aplicar algunas características para desarrollar un buen algoritmo, estos son:
Tener un punto particular de inicio, ejemplo: Encontrar el Área del terreno de mi casa.
Definir bien su estructura la cual no debe permitir dobles interpretaciones, ejemplo: Medir el Ancho y el Largo del terreno para encontrar el Área.
Debe ser general, es decir, soportar la mayoría de las variantes que se puedan presentar en la definición del problema, ejemplo: Si los datos ingresados al realizar la medición no son numéricos entonces volveremos a revisar los datos registrados.
Debe ser finito en tamaño y tiempo de ejecución, ejemplo: Al realizar la operación aritmética con los datos correctamente capturados el resultado debe ser un numero entero que nos informara el Área de nuestro terreno en tiempo récord.
4. Definir la Codificación: Es la acción de escribir la solución del problema de acuerdo a la lógica, en esta podemos usar un diagrama de flujo o un pseudocódigo en una serie de instrucciones detalladas.
5. Utilización de lenguaje preciso: En este paso debemos de acertar verazmente en la solución de un problema dado con nuestro algoritmo, utilizando un lenguaje que nos brinde eficiencia y eficacia en su tratamiento como es el uso del Pseudocódigo para la representación clara, precisa y muy económica en la solución al dilema expuesto.
6. Elaboración del algoritmo: En este paso debemos tener ya muy claro nuestra finalidad, los procesos que ya hemos estudiado, lo que pretendemos alcanzar y por fin hacer que nuestro problema ya esté resuelto. Este lo vamos a plasmar en un medio ya sea escrito o gráfico, los cuales nos permitirán ver los resultados después de haber ingresado nuestros datos, haberlos procesado cabalmente sin errores y posteriormente haber resuelto lo que inicialmente habíamos proyectado resolver.
7. Prueba y Depuración: Los errores humanos dentro de la programación y análisis de algoritmos son muchos y aumentan considerablemente con la complejidad del problema. El proceso para identificar y eliminar errores, dando paso a una solución sin errores se le llama depuración. La depuración o prueba resulta una tarea tan creativa como el mismo desarrollo de la solución, por ello se debe considerar con el mismo interés y entusiasmo.
8. Documentación: Es nuestra guía o comunicación escrita es sus variadas formas, ya sea en enunciados, procedimientos, dibujos o diagramas. A menudo un programa escrito por una persona en pseudocódigo, es usado por otra. Por esto la documentación nos sirve para ayudar a comprender o usar un programa o para facilitar futuras modificaciones (mantenimiento). La documentación se divide en tres partes:
- Documentación Interna: Son los comentarios o mensaje que se añaden al código fuente para hacer mas claro el entendimiento de un proceso.
- Documentación Externa: Se define en un documento escrito los siguientes puntos:
- Descripción del Problema
- Nombre del Autor
- Algoritmo (diagrama de flujo o pseudocódigo)
- Diccionario de Datos
- Código Fuente (programa)
- Manual del Usuario: Describe paso a paso la manera cómo funciona el programa, con el fin de que el usuario obtenga el resultado deseado.
9. Mantenimiento: Lo llevamos a cabo después de haber terminado el algoritmo o programa, detectando si es necesario hacer algún cambio, ajuste o complementación a este para que siga trabajando de manera correcta. Para poder realizar este trabajo se requiere que nuestro algoritmo este correctamente documentado.
10. Actualización e implementación de nuevos conceptos: Referente a los cambios teóricos constantes que se presentan a diario y que nos retan de nuevo a que planteemos una nueva forma de analizar el contexto en que resolvemos problemas utilizando herramientas de solución algorítmicas, esto siempre y cuando sea concebido en el individuo de una manera autónoma, responsable y compartidora.
1.1 Clasificación del software de: sistemas y aplicación.
Varios tipos de software se describen basándose en su método de distribución. Entre estos se encuentran los así llamados programas enlatados, el software desarrollado por compañías y vendido principalmente por distribuidores, el freeware y software de dominio público, que se ofrece sin costo alguno, el shareware, que es similar al freeware, pero suele con llevar una pequeña tasa a pagar por los usuarios que lo utilicen profesionalmente y, por último, el infame vapourware, que es software que no llega a presentarse o que aparece mucho después de lo prometido.
El software es la parte lógica de computadora, que permite el manejo de los recursos y la realización de tareas especificas, también denominados programas.
Se clasifica en 2 partes:
1. SOFTWARE DE SISTEMAS
2. SOFTWARE DE APLICACIÓN
1. SOFTWARE DE SISTEMAS: Son aquellos programas que permiten la administración de la parte física o los recursos de la computadora, es la que interactúa entre el usuario y los componentes hardware del ordenador. Se clasifican el Sistemas Operativos Monousuarios y Multiusuarios.
2.SOFTWARE DE APLICACIÓN: Son aquellos programas que nos ayudan a tareas especificas como edición de textos, imágenes, cálculos, etc, también conocidos como aplicaciones.
Software de Uso General
El software para uso general ofrece la estructura para un gran número de aplicaciones empresariales, científicas y personales. El software de hoja de cálculo, de diseño asistido por computadoras (CAD), de procesamiento de texto, de manejo de Bases de Datos, pertenece a esta categoría. La mayoría de software para uso general se vende como paquete; es decir, con software y documentación orientada al usuario ( manuales de referencia, plantillas de teclado y demás ).
Software de aplicaciones
El software de aplicación esta diseñado y escrito para realizar tareas específicas personales, empresariales o científicas como el procesamiento de nóminas, la administración de los recursos humanos o el control de inventarios. Todas éstas aplicación es procesan datos (recepción de materiales) y generan información (registros de nómina). para el usuario.
Software de Aplicación, programa informático diseñado para facilitar al usuario la realización de un determinado tipo de trabajo. Posee ciertas características que le diferencia de un sistema operativo (que hace funcionar al ordenador), de una utilidad (que realiza tareas de mantenimiento o de uso general) y de un lenguaje (con el cual se crean los programas informáticos). Suele resultar una solución informática para la automatización de ciertas tareas complicadas como puede ser la contabilidad o la gestión de un almacén. Ciertas aplicaciones desarrolladas ‘a medida’ suelen ofrecer una gran potencia ya que están exclusivamente diseñadas para resolver un problema específico.
Otros, llamados paquetes integrados de software, ofrecen menos potencia pero a cambio incluyen varias aplicaciones, como un programa procesador de textos, de hoja de cálculo y de base de datos.
El software es la parte lógica de computadora, que permite el manejo de los recursos y la realización de tareas especificas, también denominados programas.
Se clasifica en 2 partes:
1. SOFTWARE DE SISTEMAS
2. SOFTWARE DE APLICACIÓN
1. SOFTWARE DE SISTEMAS: Son aquellos programas que permiten la administración de la parte física o los recursos de la computadora, es la que interactúa entre el usuario y los componentes hardware del ordenador. Se clasifican el Sistemas Operativos Monousuarios y Multiusuarios.
2.SOFTWARE DE APLICACIÓN: Son aquellos programas que nos ayudan a tareas especificas como edición de textos, imágenes, cálculos, etc, también conocidos como aplicaciones.
Software de Uso General
El software para uso general ofrece la estructura para un gran número de aplicaciones empresariales, científicas y personales. El software de hoja de cálculo, de diseño asistido por computadoras (CAD), de procesamiento de texto, de manejo de Bases de Datos, pertenece a esta categoría. La mayoría de software para uso general se vende como paquete; es decir, con software y documentación orientada al usuario ( manuales de referencia, plantillas de teclado y demás ).
Software de aplicaciones
El software de aplicación esta diseñado y escrito para realizar tareas específicas personales, empresariales o científicas como el procesamiento de nóminas, la administración de los recursos humanos o el control de inventarios. Todas éstas aplicación es procesan datos (recepción de materiales) y generan información (registros de nómina). para el usuario.
Software de Aplicación, programa informático diseñado para facilitar al usuario la realización de un determinado tipo de trabajo. Posee ciertas características que le diferencia de un sistema operativo (que hace funcionar al ordenador), de una utilidad (que realiza tareas de mantenimiento o de uso general) y de un lenguaje (con el cual se crean los programas informáticos). Suele resultar una solución informática para la automatización de ciertas tareas complicadas como puede ser la contabilidad o la gestión de un almacén. Ciertas aplicaciones desarrolladas ‘a medida’ suelen ofrecer una gran potencia ya que están exclusivamente diseñadas para resolver un problema específico.
Otros, llamados paquetes integrados de software, ofrecen menos potencia pero a cambio incluyen varias aplicaciones, como un programa procesador de textos, de hoja de cálculo y de base de datos.
Suscribirse a:
Entradas (Atom)
