1. Capitulo 0
En este capitulo preliminar vamos analizar el
campo de las ciencias de la computación , a
exponer una perspectiva histórica del mismo y a
establecer las bases a partir de las cuales
iniciaremos nuestro estudio.
2. Partes del capitulo 0
• 0.1 el papel de los algoritmos
• 0.2 la historia de la computación
• 0.3 la ciencia de los algoritmos
• 0.4 abstracción
• 0.5 un resumen de nuestro estudio
• 0.6 repercusiones sociales
3. Introducción
La ciencia de la computación o informática es la disciplina que trata establecer una base científica
para temas tales como diseño asistido por la computadora
0.1 El papel de los algoritmos
comenzamos con el concepto mas fundamental de las ciencias de la computación: el concepto de
algoritmo , informalmente , un algoritmo es un conjunto de pasos que define como hay que
realizar una tarea
Para que una maquina como una computadora pueda llevar a cabo una tarea , es preciso diseñar y
representar un algoritmo de realización de dicha tarea y en una forma que sea compatible con la
maquina . La representación de un algoritmo se le denomina Programa: por comodidad de los
seres humanos , los programas informáticos suelen imprimirse en papel o visualizarse en las
pantallas de la computadora, sin embargo para comodidad de las maquinas, los programas se
codifican de una manera compatible con la tecnología a partir de la cual este construida la
maquina .
El proceso de desarrollo de un programa , de codificarlo en un formato compatible con la maquina
y de introducirlo en una maquina se denomina Programación . Los programas y los algoritmos
que representan se denominan colectivamente software . Por contraste con la propia maquina que
se conoce con el nombre Hardware.
El estudio de los algoritmos comenzó siendo un tema del campo de las matemáticas .
4. • 0.2 La historia de la computación
Las computadoras actuales tienen una genealogía muy extensa uno de los primeros dispositivos
de computación fue el ábaco. La historia nos dice que sus raíces se hunden, muy probablemente,
en la antigua china y fue utilizado por las antiguas cavilaciones griega y romana. Dicha maquina
es muy simple estando compuesta por una serie de cuentas ensartadas en varillas que a su vez se
montan sobre un marco rectangular.
En el periodo posterior ala edad moderna se sentaron las bases para la búsqueda de maquinas de
computación mas sofisticadas. Unos cuantos inventores comenzaron a experimentar con la
tecnología de los engranajes, entre ellos estaban Blaise Pascal (1623-1662) en Francia Gottfried
Wilhelm Leibniz (1646-1716) en Alemania y Charles Babbage (1792-1871) en Inglaterra estas
maquinas representaban los datos mediante posicionamiento con engranaje, introduciéndose los
datos mecánicamente por el procedimiento de establecer las posiciones iniciales de esos
engranajes, por lo que respecta ala capacidad de seguir un algoritmo , podemos ver una cierta
progresión en la flexibilidad de estas maquinas.
En 1981 IBM presento su primera computadora de sobremesa , denominada computadora
personal o PC (personal computer) y cuyo software subyacente había sido desarrollado por una
empresa de reciente creación de nombre Microsoft ,el PC tubo éxito instantáneo y dio
legitimidad ala computadora de sobremesa como producto de consumo en la mente de la
comunidad empresarial .
Hoy en día se emplea ampliamente el termino PC para hacer referencia a todas esas maquinas de
diversos fabricantes , cuyo diseño a evolucionado a partir de la computadora personal inicial de
IBM Y la mayoría de ellas se ponen en el mercado con el software de Microsoft .
6. 0.3 La ciencia de los algoritmos
En las primeras maquinas de la computación la complejidad de los algoritmos utilizados estaba
restringida por limitaciones tales como la capacidad de almacenamiento de datos y lo intrincado y
tedioso de los procedimientos de programación
A medida que los intentos de expresar estas tareas en forma algorítmica comenzaron a plantear
problemas ala capacidad de la mente humana.
Actualmente las ciencias de la computación se han consolidado como ciencia de los algoritmos , el
ámbito de esta ciencia es muy amplio ,abarcando campos tan diversos como la matemática ,la
ingeniería , la psicología , la biología , la administración empresarial y la lingüística.
Por tanto una introducción ala ciencias de la computación debe incluir una diversidad de temas, que
es la tarea ala que vamos a dedicarnos en los siguientes capitulos.
7.
8. 0.4 La abstracción
El concepto de abstracción hasta el punto del estudio de las ciencias de la computación y el
diseño de los sistemas de computadoras, que nos vemos obligados a tenerlo en cuenta en este
capitulo preliminar, el termino abstracción tal como lo estamos utilizando aquí .
Hace referencia ala distinción entre las propiedades externas de una entidad y los detalles de
la composición
En cada nivel de abstracción , contemplamos el sistema en términos de una serie de
componentes denominados herramientas abstractas cuya composición ignoramos.
Es la abstracción que nos permite la que nos permite ignorar los detalles internos de un
dispositivo complejo tal como una computadora, un automóvil o un microondas y emplearlo
como una única unidad
Conviene recalcar que el concepto de abstracción no esta limitado a los campos de la ciencia
y la tecnología, se trata de una técnica importante de simplificación .
Conviene recalcar que el concepto de abstracción no esta limitado a los campos de la ciencia
y la tecnología , se trata de una técnica importante de simplificación , gracias a la cual nuestra
sociedad a creado un estilo de vida que seria imposible si no usáramos ese concepto .
9. 0.5 Un resumen de nuestro estudio
Este texto sigue un enfoque de abajo-arriba para el estudio de las ciencias de la computación, comenzando con
temas tan concretos como el hardware de computadoras y ascendiendo hacia los temas mas abstractos como la
complejidad algorítmica y la computabilidad.
Comenzamos considerando los temas de diseño y construcción de maquinas para la ejecución de algoritmos.
En el capitulo
1. (almacenamiento de datos) examinamos como se codifica y almacena la información.
2. (tratamiento de datos) investigamos el funcionamiento básico
de una computadora sencilla
3. (sistema operativo) estudiamos el software que permite controlar el funcionamiento global de una
computadora .
4 .(redes e internet) estudiamos como se conecta entre si las computadoras para formar redes de
computadoras y como estas redes se conectan para formar para formar interedes
5 .(algoritmos) presenta el estudio de los algoritmos desde una perspectiva mas formal
6. (lenguaje de programación) analizaremos el tema de la representación de algoritmos y el proceso de
desarrollo de programas
7. (ingeniería del software) introduce la rama de las ciencias de la computación conocida con el nombre de
ingeniería del software, que se ocupa de los problemas con que nos encontramos ala hora de desarrollar
sistemas de software.
8. (abstracciones de datos) presentamos las técnicas tradicionalmente empleadas para organizar los datos
en la memoria principal de una computadora .
9. (sistema de base de datos) consideramos los métodos tradicionalmente empleados para organizar los
datos dentro de los sistemas de almacenamiento masivo de una computadora .
10 .(gráficos por computadora) exploramos el tema de los gráficos y la animación ,
10. 11. (inteligencia artificial) aprendemos que para poder desarrollar maquinas mas útiles las
ciencias de la computación han centrado su atención en el estudio de la inteligencia humana.
12. (teoría de la computación) investigando los fundamentos teóricos de las ciencias de la
computación
En cada capitulo, nuestro objetivo es explorar cada tema concreto hasta una profundidad que
nos permita comprender verdaderamente la materia.
11. 0.6 Repercusiones sociales
El progreso en el campo de las ciencias de la computación esta haciendo que se difuminen muchas
distinciones en la que nuestra sociedad ha basado sus decisiones en el pasado, y esta poniendo en
cuestión muchos de los principios largamente sostenidos en nuestra sociedad.
En el campo de la ética genera numerosas opciones que desafían los principios tradicionales en los
que se basa el comportamiento social .
En el campo de la acción de gobierno genera debates relativos al grado con el que habría que
regular la tecnología informática y sus aplicaciones.
Aunque no son parte de la ciencia de la computación son temas, estos temas son importantes para
aquellos que estén pensando en desarrollar su carrera en el campo de la computación o en algún
campo relacionado.
La capacidad de tratar con los dilemas planteados por los avances en la tecnología de computadoras
también es importante para aquellos que no están directamente involucrados en esos avances.
Además a menudo no existe ninguna respuesta definitivamente correcta a un problema y muchas
soluciones validas suelen ser compromisos entre puntos de vista opuestos.