domingo, 21 de enero de 2018

Conceptos de la programación

Un proceso es la ejecución de un programa, es decir, los datos e instrucciones están cargados en la memoria principal, ejecutándose o esperando a hacerlo.
Un proceso no tiene porqué estar siempre en ejecución. Puede pasar por diferentes estados:
  • Preparado: Un proceso preparado es un proceso que está preparado para ejecutarse. Sólo le "falta" la CPU
  • En Ejecución: Un proceso en ejecución es un proceso que "tiene" CPU, se está ejecutando
  • Bloqueado: Un proceso bloqueado está esperando que ocurra un suceso antes de poder "usar" la CPU. Dicho suceso suele ser una operación de Entrada / Salida: pulsar una tecla, leer de disco... Pero también puede ser que esté esperando a que otro proceso haga algo:
  • 1. Creación del proceso. Está preparado para ejecutarse
  • 2. El proceso se ejecuta en CPU
  • 3. El proceso espera a que ocurra un suceso y se bloquea
  • 4. Ocurre el suceso por el que esperaba el proceso. Está preparado para ejecutarse
  • 5. El proceso "sale" de la CPU
  • 6. Fin de la ejecución del proceso
No es necesario que se cumplan todos los pasos, por ejemplo, podría ser que un proceso hiciera los pasos 1-2-6.
Desde el punto de vista del Hardware, dependiendo del número de CPU's, un sistema puede ser:
  • Sistema Monoprocesador
  • Sistema Multiprocesador
  • Sistema fuertemente acoplado
  • Sistema débilmente acoplado
Como su nombre indica, un sistema monoprocesador es aquel en el que sólo hay una CPU; y como todos habréis imaginado, un sistema multiprocesador es el que tiene varias CPU's. Éste último se divide en 2 tipos. Los sistemas fuertemente aclopados, en los que hay memoria común y los débilmente acoplados, en los que no hay memoria común. Un ejemplo de los fuertemente acoplados es un PC con varios procesadores, y otro de los débilmente acoplados es una red de ordenadores.
Desde el punto de vista del Software, también hay diferentes tipos de sistemas, atendiendo a cómo se ejecutan los procesos:
  • Sistema de Multiprogramación
  • Sistema de Multiprocesamiento
La Multiprogramación consiste en que todos los procesos se ejecuten en la misma CPU. Esto se consigue mediante la intercalación de la ejecución de los procesos.
En Multiprocesamiento cada proceso se ejecuta en una CPU. En este caso hay paralelismo real en la ejecución de los procesos.
Además de la programación imperativa o secuencial y la programación concurrente, hay otros paradigmas o enfoques de la programación.
La programación imperativa se centra en la transformación que hay que realizar para procesar los datos, pasando estos a un segundo plano. En cambio, la programación orientada a objetos gira en torno a un nuevo concepto: el objeto. Éste comprende tanto procesos como datos. Aunque pueda parecer más complejo, este tipo de programación se asemeja a la forma que tiene el ser humano de ver el mundo, frente a la programación imperativa que está orientada a la máquina. Para entenderlo mejor, un objeto es "una cosa con límites definidos", como por ejemplo, una pelota, que tiene características (datos como tamaño o color), asociadas a unas operaciones (procesos como botar o lanzar) aplicables sobre el objeto. Otras operaciones no son válidas. No puedes beberte una pelota... aunque el mundo es muy raro y hay de todo. Otra característica importante de la programación orientada a objetos es la herencia. Este mecanismo se utiliza para estructurar el programa en forma jerárquica.
La programación declarativa es otra visión de la programación, en la que no se describe cómo obtener los resultados, sino qué es lo que debemos obtener. Se divide en 2 tipos, la programación lógica y la programación funcional.

Tecnología 
Dentro del campo que nos interesa a nosotros, la tecnología tiene el objetivo de eliminar las tareas repetitivas, facilitando el trabajo y haciéndolo más eficiente así como aumentando la productividad y los beneficios de la empresa. 

Programación 
La programación es una de las etapas más importantes del ciclo de vida de un proyecto (explicaremos más adelante lo que es este termino), y requiere un método de trabajo. La programación es el resultado de dicho trabajo. 
La programación es el instrumento que permite la ejecución de las tareas automatizadas de un sistema informático. 
Las herramientas que utilizaremos para programar son los lenguajes de programación, a través de las cuales codificaremos los programas. 

Programa 
Conjunto de instrucciones entendibles por el ordenador que permiten realizar un trabajo o resolver un problema.
Un programa debe ser finito, es decir, tiene que tener un inicio y un fin. Tiene que estar bien confeccionado para que, al introducir un dato, salga una solución y si se volviese a introducir el mismo dato, saliese de nuevo la misma solución. 

Metodología de la programación 
Se entiende como metodología de la programación al conjunto de normas, métodos y anotaciones que nos indican la forma de programar. 
Cada lenguaje de programación sigue una metodología distinta. 

Lenguaje de programación 
Es un conjunto de reglas semánticas así como sintácticas que los programadores usan para la codificación de instrucciones de un programa o algoritmo de programación. 
Existen varios lenguajes de programación. 

Entorno de programación o entorno de desarrollo 
Es el conjunto de herramientas utilizadas para la elaboración de un programa. 

Recursos 
Conjunto de componentes hardware que utilizaremos para la elaboración de un programa (cpu, disco duro…..).  Una vez conocidos los conceptos básicos necesarios para el aprendizaje de la programación podemos empezar a ver los diferentes tipos de lenguajes de programación.


Fuentes:
  • http://www.ciberaula.com/articulo/conceptos 
  • https://desarrolloweb.com/articulos/2357.php

No hay comentarios.:

Publicar un comentario

Tablas de multiplicar

#include <iostream> using namespace std; int imprime_tabla(int opcion); int main() { int opcion=0; cout << "Tablas de...