Documente Academic
Documente Profesional
Documente Cultură
la parte del Hardware que realiza este tipo de tareas es la Unidad Central de
Proceso (CPU). Luego de procesados los datos se pueden enviar a un monitor,
impresora, telfono celular o cualquier otro dispositivo.
El Hardware, por si solo, no estara en capacidad de ejecutar nada y requiere de
las instrucciones almacenadas en el software, estas instrucciones de mquina se
escriben en unlenguaje de programacin (Pascal, Java, etc.)
Los lenguajes tienen reglas denominadas Sintxis que deben seguirse para poder
ser utilizados, a menos que la sintxis sea correcta, la computadora no
interpretar nada.
Los circuitos electrnicos de las computadoras se pueden entender como miles de
millones de interruptores On/Off (operacin Digital, en contraposicin al
funcionamiento Analgico), estos a partir de las puertas lgicas (AND / OR /
NAND/ NOR /EXOR) se combinan formando estructuras cada vez ms
complejas (memorias biestables, registros de desplazamiento, memorias RAM /
ROM, contadores) hasta llegar a la estructura de los Microprocesadores.
Cada lenguaje de programacin usa un fragmento de software para traducir el
lenguaje de programacin especfico al lenguaje mquina, esto es, a lo que
pueden comprender los circuitos digitales antes mencionados. El lenguaje de
traduccin de software se llama compilador o intrprete.
Una vez que se han introducido instrucciones en una computadora y estas se han
traducido al lenguaje mquina, un programa est en condiciones de
ser arrancado oejecutado.
Fases de la Programacin
Los programadores escribimos instrucciones y este proceso se puede dividir en
pasos:
1. Comprender el problema
2. Plantear la lgica
3. Codificar el programa
4. Traducir el programa a lenguaje mquina
5. Prueba del programa
Comprender el problema
En la programacin profesional se escriben programas para satisfacer las
necesidades de otros, comprender que necesita el cliente, puede llegar a ser una
tarea complicada y si esta etapa no esta claramente resuelta, no se podr avanzar.
El usuario en general no sabe expresar bien lo que necesita y requiere la amplia
colaboracin del programador.
Un usuario puede requerir una base de datos para gestionar su empresa y por
ejemplo quiere tener siempre a mano una pgina web que despliegue la nmina
de empleados de su empresa que tengan ms de 5 aos de antiguedad y un sueldo
menor a $ 2000 y que a su vez no acumulen ms de 2 ausencias por ao y no
haber tenido sanciones disciplinarias, para sortear un viaje entre ellos.
Esta solicitud planteada por el usuario podra parecer suficiente informacin para
el programador, pero este podra consultar por ejemplo, si las ausencias se
debieron a enfermedades certificadas por el mdico de la empresas, esas personas
deben ser excluidas igualmente?, la salida de datos necesitan incorporar el
nmero de legajo?, la lista debe incluir a los empleados de media jornada?, todas
las categorias estn incluidas o independientemente de los ingresos hay
dependencia de las mismas y un muy largo etc. Estas consultas ayudan a poner en
claro al usuario en su definicin. No hay que olvidar que en el caso de una base
de datos pasada la etapa de normalizacin un cambio puede implicar comenzar
nuevamente el proyecto.
Planteo de la lgica
La esencia del proceso de programacin consiste en el planteo de la lgica del
programa. Aqu se plantean los pasos a incluir y el rden de los mismos. En
general se utilizan diagramas de flujo o pseudocdigo, esto implica un planteo
natural y sin preocupacin por la sintxis. Lo importante es determinar la
secuencia de sucesos que llevarn los datos de entrada a la salida deseada.
Codificar el programa
Una vez establecida la lgica del programa se podr elegir el lenguaje ms
adecuado para llevar a cabo la codificacin. Aqui si, hay que usar la sintxis
correcta. Todos estos pasos estn sujetos a la complejidad del programa, cuando
es muy sencillo se puede escribir como si fuese una carta a alguien, a medida que
archivo de que se trata. Es costumbre que los archivos, los cuales componen una aplicacin, se
almacenen en una misma carpeta o directorio que se denomina directorio de la aplicacin y que
contar con un nombre que haga alusin a la aplicacin.
La programacin o desarrollo de software, es
un el procedimiento que permite la creacin de
los programas. Como se muestra ms adelante
consiste de seis pasos. No se trata slo de
teclear las instrucciones en la computadora. La
creacin de programas involucra actividades de
anlisis y diseo, previas al paso en el cual se
traducir a un algoritmo, al lenguaje de
computacin, para entonces proseguir a
realizar pruebas de funcionamiento al cdigo
as obtenido.
Cuando, a solicitud del programa, el usuario introduce un nmero, ese dato se convierte en el valor
de la variable v_sueldo. Entonces de manera semejante como en lgebra o fsica, las variables
pueden ser usadas en programacin para realizar operaciones de informtica. Si el programa indica
la declaracin v_sueldo + 500 y el valor en v_sueldo = 1.000, el resultado para esta declaracin va a
ser 1.500.
Algoritmos:
Se denomina algoritmo a una serie finita de pasos o instrucciones mediante los cuales se resuelve
un problema o se ejecuta una tarea especfica. Ms formalmente los algoritmos se caracterizan
por:
Ser finitos, porque tienen un nmero determinado de pasos.
Ser definidos, lo que implica que cada vez que se siga se obtendr invariablemente el mismo
resultado.
Ser precisos, pues cada paso tiene un orden a seguir.
Los algoritmos especifican los pasos (instrucciones) que permiten llegar a la solucin de un
problema, sin importar si el proceso es manual o automatizado. De modo que no se encuentran
exclusivamente relacionados con la computacin. En la vida cotidiana son empleados en diversas
ocasiones. Por ejemplo, los pasos seguidos para retirar dinero de un cajero automtico de un banco
o cuando se sigue una receta de cocina. Se puede entenderlos entonces, como una especie de
receta que indica los pasos que permiten alcanzar la solucin de un problema.
Procedimientos y Funciones:
Los procedimientos y funciones son bloques de cdigo reusables, que pueden ser invocados en
cualquier parte de un programa, mediante expresiones que les representan. Son algoritmos
especficos en un lenguaje de programacin que resuelven un problema definido. Pueden ser usados
cada vez que es requerido, simplemente colocando la expresin que les invoca, sin necesidad de
reescribir todas las instrucciones que representan a tal procedimiento o funcin. Por ejemplo, si se
desea la raz cuadrada de un nmero, podra usarse la expresin Sqrt(x). La x dentro del
parntesis es llamada argumento, siendo el nmero del cual se desea la raz cuadrada. El argumento
permite especificar la entrada a la funcin cuando el programa se est ejecutando. Siendo x la
variable que almacena el nmero 12 para un programa, la funcin buscar la raz cuadrada de 12.
Cuando la funcin encuentra la raz cuadrada, devuelve el valor al programa que la invoc.
A los procedimientos y funciones en conjunto suele denominrseles tambin rutinas o subrutinas.
Dependiendo del lenguaje de programacin que se est utilizando y de acuerdo a cmo ste
implemente las rutinas, se pueden imponer algunas diferencias entre las funciones y los
procedimientos. Las funciones, en general, son rutinas que devuelven un valor como resultado a
partir de uno o ms argumentos. Es el caso de las funciones matemticas, que calculan el logaritmo
de un nmero, su raz cuadrada,... Los procedimientos por otro lado, son aquellas rutinas que no
devuelven un valor, sino que realizan una accin determinada, usando tal vez un grupo de
argumentos. Es el caso, por ejemplo, de un procedimiento para presentar por pantalla una
circunferencia, en la que tendra que suministrarse simplemente valores como la posicin en la
pantalla y el radio de la misma.
Enfoques de Programacin:
En los inicios de la programacin y hasta principios de los sesenta, no haban estructuras bien
definidas en la forma en que se escriba el cdigo. Se dispona una lnea tras otra de programacin
construyendo un nico e inmenso bloque, que constituira el programa. Pero el control del flujo a
travs de gran cantidad de lneas de instrucciones, resultaba difcil de seguir no slo por su
tamao, sino porque no siempre es posible programar siguiendo la secuencia de una lnea tras otra.
Por lo que se hizo frecuente el uso de la instruccin go to (vaya a) escrito como goto en el
programa.
Esta instruccin goto, identifica una lnea de programa, que puede estar varias lneas ms abajo e
incluso varias lneas ms arriba, a la cual salta para cambiar el control del flujo. Si se piensa en un
programa pequeo, tal vez no resulte tan engorroso el seguimiento de estos saltos. La cuestin
cambia, si se trata de un programa de miles de lneas donde se generaliza el uso del goto, de modo
que el programa va a presentar multitud de saltos. Entonces seguir el flujo del programa realmente
se torna muy complicado e incluso imposible, an para quien lo est desarrollando.
La programacin estructurada, surge como la prctica de construir programas usando un conjunto
de estructuras bien definidas. Esta programacin evoluciona en los aos sesenta y entre una de sus
metas se encuentra, la eliminacin de la instruccin goto dentro del cdigo. An cuando la
programacin estructurada brind mejoras, atribuyendo claridad y eficiencia en los programas,
continu existiendo la necesidad de hacer programas de manera ms rpida y eficiente. Se
reconoce en la reutilizacin del cdigo, como un camino a la solucin de acelerar la construccin de
los programas. Las subrutinas, bloques constructores en la programacin estructurada, son un paso
ms en la solucin de este problema.
En la programacin orientada a objetos, los bloques constructores son unos componentes
modulares y reusables, denominados objetos. Surge en los ochenta, afirmndose que llegar a ser
el enfoque dominante de la programacin. Este enfoque enriquece la programacin estructurada,
ms que sustituirla. Los objetos estn compuestos en s mismos, por piezas de programa
estructuradas, y la lgica de manipulacin de objetos tambin es estructurada.
Programacin estructurada:
La investigacin a travs del estudio de los cdigos logr demostrar que cualquier programa se
poda escribir, usando las tres estructuras siguientes de control:
1. La estructura secuencial: Est definida por el
flujo de control automtico de un programa. De
manera natural, a menos que otra cosa se indique,
la computadora ejecuta las lneas de cdigo en el
orden en que fueron escritas. El control del
Estructura secuencial
Objetos:
En general cuando se observa o se piensa sobre un objeto, por ejemplo un carro, siempre se le
percibe como un todo. No es comn enfocarse en sus componentes de acero, vidrio o plstico, sino
ms bien, la mente lo percibe como unidad completa, como un objeto, como un todo. Si se desea
describir el carro, se puede pensar en su color, tamao y forma. Como todos los objetos, el carro
posee atributos que permiten describirle. Se puede pensar adems en las cosas que el carro puede
hacer, como acelerar, retroceder, girar a derecha o izquierda,...
El carro tiene un conjunto de funciones que
puede realizar. Adems, es fcil notar que el
carro contiene elementos que le constituyen:
Los cauchos, el chasis, el sistema de traccin, y
otros. Pero esos elementos a su vez estn
formados por otros elementos. Como es el caso
del motor y de las partes que le forman. De
manera muy similar, en la POO se emplean
mdulos llamados objetos, que poseen atributos
y funciones. Los objetos encapsulan o
contienen otros objetos, que a su vez pueden
ser tambin contenedores de objetos.
Pasos
Descripcin
1.
Especificacin
2.
Diseo
3.
Codificacin
4.
Prueba
5.
Documentacin
6.
Mantenimiento
resolver un problema.