3
INTRODUCCIÓN
En un mundo desarrollado como este, las ciencias de la información son de
vital importancia para estar a la vanguardia de las nuevas tecnologías, por ello es
necesario comprender sus significados para poder adaptarse adecuadamente al
uso de estas herramientas necesarias.
El software hace parte en estas ciencias de la información, englobando un
mundo nuevo de avances tecnológicos que día a día avanza a pasos agigantados
desde las primeras grandes unidades computacionales que sólo procesaban
cálculos aritméticos y textos hasta los actuales microprocesadores, que son
capaces de reproducir información en varias dimensiones, en tiempo real y a
enormes velocidades.
El término “software” fue usado por primera vez en este sentido por John W.
Tukey en 1957. En la ingeniería de software y las ciencias de la computación, el
software es toda la información procesada por los sistemas informáticos:
programas y datos. El concepto de leer diferentes secuencias de instrucciones
(programa) desde la memoria de un dispositivo para controlar los cálculos fue
introducido por Charles Babbage como parte de su máquina diferencial. La teoría
que forma la base de la mayor parte del software moderno fue propuesta por Alan
Turing en su ensayo de 1936, “Los números computables”, con una aplicación al
problema de decisión.
4
Historia y evolución de la industria del software
� 1960-1970: Grandes computadores centrales (mainframes) dominaban
las grandes corporaciones. Los usuarios se limitaban a terminales sin poder
de procesamiento.
� Principio de los ‘80s : Se hace realidad tener un “computador de
escritorio” (PC: Personal Computer). Paralelamente nace el “software de
escritorio”, que promueve la productividad personal, como planillas de
cálculo y procesadores de texto.
� ‘80s : Los PCs se comienzan a conectar (Redes y Servidores). Se
comparten archivos, discos duros e impresoras. Se popularizan
aplicaciones como el correo electrónico y agendas compartidas.
� Principio de los ‘90s : Es el dominio de sistemas cliente/servidor.
� Mediados de los ‘90s : Irrumpe con fuerza la red global: Internet. En sus
inicios páginas estáticas entregan información, pero rápidamente se utiliza
como medio de acceder a aplicaciones dinámicas e interactivas. Hoy en día
las empresas extienden sus brazos sobre la red para eliminar
intermediarios y acercar los procesos a los usuarios internos (intranet) o
externos (extranet) a través de aplicaciones. Nacen nuevos negocios
basados en Internet: E-commerce.
� Principio de 2000s : Las redes inalámbricas, dispositivos móviles y
celulares irrumpen con fuerza en los campos del entretenimiento, la música
y los videos en Internet. Internet es usado normalmente para buscar
información a través de buscadores de Internet (Google, Yahoo! y otros) y
publicar información personal en Blogs. Es muy elemental el software en
nuestros computadores
5
Software
Es el soporte lógico e inmaterial que permite que la computadora pueda
desempeñar tareas inteligentes, dirigiendo a los componentes físicos o hardware
con instrucciones y datos a través de diferentes tipos de programas.
Paquetes
Un paquete de software es una serie de programas que se distribuyen
conjuntamente. Algunas de las razones suelen ser que el funcionamiento de cada
uno complementa a o requiere de otros, además de que sus objetivos están
relacionados como estrategia de mercadotecnia.
Muchos sistemas operativos modernos emplean sistemas de gestión de
paquetes que permiten que el administrador del sistema instale o desinstale
paquetes, sin que en ningún momento queden programas instalados que no
funcionen por falta de otros incluidos en su paquete. El sistema de gestión de
paquetes usualmente también se ocupa de mantener las dependencias entre
paquetes: si un paquete se recuesta en otro, el sistema se encarga de instalar
éste primero.
También encontramos paquetes de software en la distribución comercial de TV,
ya que se suelen ofertar paquetes de software; bien por ofrecer un precio menor
del que costaría cada programa por separado o bien porque sólo exista la oferta
conjunta.
Un paquete de datos es una unidad fundamental de transporte de información
en todas las redes de computadoras modernas. El término datagrama es usado a
veces como sinónimo.
Un paquete está generalmente compuesto de tres elementos:
una cabecera (header en inglés) que contiene generalmente la información
6
necesaria para trasladar el paquete desde el emisor hasta el receptor, el área de
datos (payload en inglés) que contiene los datos que se desean trasladar, y
la cola (trailer en inglés), que comúnmente incluye código de detección de errores.
Actualmente se considera que un paquete corresponde a la capa de red
del Modelo_OSI, por ejemplo en el caso del protocolo IP. Siendo el paquete
la unidad de datos de protocolo (PDU) de la capa de red.
Por lo general, cada capa emisora de un protocolo toma la PDU de una capa
superior, y lo codifica dentro del área de datos. A medida que se transmite, la capa
recibe la PDU de su capa par, recupera el área de datos y la transmite a una capa
superior, que procede de igual manera. Por esto, las PDU tienen encapsuladas en
su área de datos otras PDU.
Sistema de gestión de paquetes
También conocido como gestor de paquetes, es una colección de herramientas
que sirven para automatizar el proceso de instalación, actualización, configuración
y eliminación de paquetes de software. En estos sistemas, el software se
distribuye en forma de paquetes, frecuentemente encapsulado en un solo fichero.
Estos paquetes incluyen otra información importante, además del software
mismo, como pueden ser el nombre completo, una descripción de su
funcionalidad, el número de versión, el distribuidor del software, la suma de
verificación y una lista de otros paquetes requeridos para el correcto
funcionamiento del software.
7
Clasificación de software .
Si bien esta distinción es, en cierto modo, arbitraria, y a veces confusa, a los
fines prácticos se puede clasificar al software en tres grandes tipos:
� Software de sistema : Su objetivo es desvincular adecuadamente al usuario
y al programador de los detalles del sistema informático en particular que se
use, aislándolo especialmente del procesamiento referido a las características
internas de: memoria, discos, puertos y dispositivos de comunicaciones,
impresoras, pantallas, teclados, etc. El software de sistema le procura al
usuario y programador adecuadas interfaces de alto nivel, herramientas y
utilidades de apoyo que permiten su mantenimiento. Incluye entre otros:
� Sistemas operativos : (SO) es el programa o conjunto de programas
que efectúan la gestión de los procesos básicos de un sistema informático,
y permite la normal ejecución del resto de las operaciones.
� Controladores de dispositivos : es un programa informático que
permite al sistema operativo interactuar con un periférico, haciendo una
abstracción del hardware y proporcionando una interfaz -posiblemente
estandarizada- para usarlo.
� Herramientas de diagnóstico : es un software que permite monitorear y
en algunos casos controlar la funcionalidad del hardware, como:
computadoras, servidores y periféricos, según el tipo y sus funciones.
Estos dispositivos pueden ser, la memoria RAM, el procesador, los discos
duros, ruteadores, tarjetas de red, entre muchos dispositivos más. El
software permite monitorear temperatura, rendimiento, transferencia de
datos, etc.
� Herramientas de Corrección y Optimización.
� Servidores : es una computadora que, formando parte de una red,
provee servicios a otras computadoras denominadas clientes.
8
� Utilidades : es una herramienta que realiza: Tareas de mantenimiento,
soporte para la construcción, ejecución de programas y las tareas en
general.
� Software de programación : Es el conjunto de herramientas que permiten al
programador desarrollar programas informáticos, usando diferentes alternativas y
lenguajes de programación, de una manera práctica. Incluye entre otros:
� Editores de texto : es un programa que permite crear y modificar
archivos digitales compuestos únicamente por texto sin formato, conocidos
comúnmente como archivos de texto o texto plano.
� Compiladores : es un programa informático que traduce un programa
escrito en un lenguaje de programación a otro lenguaje de programación,
generando un programa equivalente que la máquina será capaz de
interpretar.
� Intérpretes : es un programa informático capaz de analizar y ejecutar
otros programas, escritos en un lenguaje de alto nivel.
� Enlazadores : es un programa que toma los objetos generados en los
primeros pasos del proceso de compilación, la información de todos los
recursos necesarios (biblioteca).
� Depuradores : es un programa usado para probar y depurar (eliminar
los errores) de otros programas (el programa "objetivo"). El código a ser
examinado puede alternativamente estar corriendo en un simulador de
conjunto de instrucciones (ISS).
� Entornos de Desarrollo Integrados (IDE) : Agrupan las anteriores
herramientas, usualmente en un entorno visual, de forma tal que el
programador no necesite introducir múltiples comandos para compilar,
interpretar, depurar.
� Software de aplicación : Es aquel que permite a los usuarios llevar a cabo
una o varias tareas específicas, en cualquier campo de actividad susceptible de
9
ser automatizado o asistido, con especial énfasis en los negocios. Incluye entre
otros:
� Aplicaciones para Control de sistemas y automa tización industrial :
el control de sistemas se aplican en esencia para los organismos vivos, las
máquinas y las organizaciones.
� Aplicaciones ofimáticas : es una recopilación de aplicaciones, las
cuales son utilizados en oficinas y sirve para diferentes funciones como
crear, modificar, organizar, escanear, imprimir, etc. archivos y documentos.
� Software educativo : al destinado a la enseñanza y el aprendizaje
autónomo y que, además, permite el desarrollo de ciertas habilidades
cognitivas.
� Software empresarial : se entiende generalmente cualquier tipo de
software que está orientado a ayudar a una empresa a mejorar su
productividad o a medirla.
� Bases de datos : es un conjunto de datos pertenecientes a un mismo
contexto y almacenados sistemáticamente para su posterior uso.
� Telecomunicaciones : Por ejemplo a través de Internet, se puede hacer
vídeo conferencias utilizando skype.
� Videojuegos : es un software creado para el entretenimiento en general
y basado en la interacción entre una o varias personas y un aparato
electrónico que ejecuta dicho videojuego.
� Software médico : se llama a aquellos programas informáticos que son
utilizados para fines médicos. Se utilizan muchos dispositivos médicos para
vigilar o controlar a los pacientes, en su mayoría controlados por software.
� Software de Cálculo Numérico y simbólico : es la rama de las
matemáticas que se encarga de diseñar algoritmos para, a través de
números y reglas matemáticas simples, simular procesos matemáticos más
complejos aplicados a procesos del mundo real.
10
� Software de Diseño Asistido (CAD) : es el uso de un amplio rango de
herramientas computacionales que asisten a ingenieros, arquitectos y a
otros profesionales del diseño en sus respectivas actividades.
� Software de Control Numérico (CAM) : implica el uso de computadores
y tecnología de cómputo para ayudar en todas las fases de la manufactura
de un producto.
Programación
Es el proceso por el cual se escribe, se prueba se compila y se muestra el
código, el código fuente de un programa informático. La palabra programación se
define como el proceso de creación de un programa de computadora, mediante la
aplicación de procedimientos lógicos, a través de los siguientes pasos:
� El desarrollo lógico del programa para resolver un problema en particular.
� Escritura 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.
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ómo deben ser almacenados o transmitidos y qué acciones debe
tomar bajo una variada gama de circunstancias. Todo esto, a través de un
lenguaje que intenta estar relativamente próximo al lenguaje humano o natural.
11
Una característica relevante de los lenguajes de programación es precisamente
que más de un programador pueda usar un conjunto común de instrucciones que
sean comprendidas entre ellos para realizar la construcción de un programa de
forma colaborativa.
Tipos de programación
Dependiendo del lenguaje de programación que se elija, se puede hablar del
tipo de programación que se va a realizar, puede ser:
Secuencial
Se considera programación secuencial a los programas que se diseñan con
instrucciones que van detrás de otras. Las líneas se ejecutan una a una en
secuencia ejemplos: tales como BASIC, cobol.
Estructurada
Se considera programación estructurada a la programación que se hace por
modulo. Cada modulo realiza alguna tarea específica y cuando se necesite esa
tarea simplemente se hace el llamado a ese modulo independiente de que se
tengan que ejecutar los demás.
Ejemplos tales como: Turbo pascal, c, c++.
12
Orientada a objeto
Se considera programación orientada a objetos aquellos lenguajes que
permitan la utilización de objetos dentro del diseño del programa y el usuario
puede pegar a cada objeto código de programa. Ejemplos de estos lenguajes se
puede mencionar el VISUAL BASIC de la Microsoft, C BUILDER de la BORLAND
internacional, java, XML entre otros.
Inteligencia artificial
Los programas de inteligencia artificial son programas que se acercan a la
inteligencia humana. Estos programas son capaces de desarrollar conocimiento.
Este tipo de lenguajes trabajan similar a la mente humana.
Los sistemas operativos más conocidos
� DOS: El famoso DOS, que quiere decir Disk Operating System (sistema
operativo de disco), es más conocido por los nombres de PC-DOS y MS-
DOS. MS-DOS fue hecho por la compañía de software Microsoft y es en
esencia el mismo SO que el PC-DOS. La razón de su continua popularidad
se debe al aplastante volumen de software disponible y a la base instalada
de computadoras con procesador Intel.
Cuando Intel liberó el 80286, DOS se hizo tan popular y firme en el
mercado que DOS y las aplicaciones DOS representaron la mayoría del
mercado de software para PC. En aquel tiempo, la compatibilidad IBM, fue
una necesidad para que los productos tuvieran éxito, y la "compatibilidad
IBM" significaba computadoras que corrieran DOS tan bien como las
13
computadoras IBM lo hacían. Aún con los nuevos sistemas operativos que
han salido al mercado, todavía el DOS es un sólido contendiente en la
guerra de los SO.
� Windows 3.1: Microsoft tomo una decisión, hacer un sistema operativo
que tuviera una interfaz gráfica amigable para el usuario, y como resultado
obtuvo Windows. Este sistema muestra íconos en la pantalla que
representan diferentes archivos o programas, a los cuales se puede
accesar al darles doble click con el puntero del mouse. Todas las
aplicaciones elaboradas para Windows se parecen, por lo que es muy fácil
aprender a usar nuevo software una vez aprendido las bases.
� Windows 95: En 1995, Microsoft introdujo una nueva y mejorada
versión del Windows 3.1. Las mejoras de este SO incluyen soporte
multitareas y arquitectura de 32 bits, permitiendo así correr mejores
aplicaciónes para mejorar la eficacia del trabajo.
� Windows NT: Esta versión de Windows se especializa en las redes y
servidores. Con este SO se puede interactuar de forma eficaz entre dos o
más computadoras.
� OS/2: Este SO fue hecho por IBM. Tiene soporte de 32 bits y su interfaz
es muy buena. El problema que presenta este sistema operativo es que no
se le ha dado el apoyo que se merece en cuanto a aplicaciones se refiere.
Es decir, no se han creado muchas aplicaciones que aprovechen las
características del SO, ya que la mayoría del mercado de software ha sido
monopolizado por Windows.
� Mac OS: Las computadoras Macintosh no serían tan populares como lo
son si no tuvieran el Mac OS como sistema operativo de planta. Este
sistema operativo es tan amigable para el usuario que cualquier persona
puede aprender a usarlo en muy poco tiempo. Por otro lado, es muy bueno
para organizar archivos y usarlos de manera eficaz. Este fue creado por
Apple Computer, Inc.
14
� UNIX: El sistema operativo UNIX fue creado por los laboratorios Bell de
AT&T en 1969 y es ahora usado como una de las bases para la
supercarretera de la información. Unix es un SO multiusuario y multitarea,
que corre en diferentes computadoras, desde supercomputadoras,
Mainframes, Minicomputadoras, computadoras personales y estaciones de
trabajo. Esto quiere decir que muchos usuarios puede estar usando una
misma computadora por medio de terminales o usar muchas de ellas.
Aplicaciones del sistema operativo.
� Aceptar todos los trabajos y conservarlos hasta su finalización.
� Interpretación de comandos : Interpreta los comandos que permiten al
usuario comunicarse con el ordenador.
� Control de recursos : Coordina y manipula el hardware de la
computadora, como la memoria, las impresoras, las unidades de disco, el
teclado o el Mouse.
� Manejo de dispositivos de E/S : Organiza los archivos en diversos
dispositivos de almacenamiento, como discos flexibles, discos duros, discos
compactos o cintas magnéticas.
� Manejo de errores : Gestiona los errores de hardware y la pérdida de
datos.
� Secuencia de tareas : El sistema operativo debe administrar la manera
en que se reparten los procesos. Definir el orden. (Quien va primero y quien
después).
� Protección : Evitar que las acciones de un usuario afecten el trabajo que
está realizando otro usuario.
� Multiacceso : Un usuario se puede conectar a otra máquina sin tener
que estar cerca de ella.
15
� Contabilidad de recursos : establece el costo que se le cobra a un
usuario por utilizar determinados recursos.
Lenguaje De Programación.
Un lenguaje de programación es un idioma artificial diseñado para expresar
computaciones 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 una máquina, para expresar algoritmos con
precisión, o como modo de comunicación humana. Está formado por un conjunto
de símbolos y reglas sintácticas y semánticas que definen su estructura y el
significado de sus elementos y expresiones. Al proceso por el cual se escribe, se
prueba, se depura, se compila y se mantiene el código fuente de un programa
informático se le llama programación.
También la palabra programación se define como el proceso de creación de
un programa de computadora, mediante la aplicación de procedimientos lógicos, a
través de los siguientes pasos:
� 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
16
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ómo deben ser almacenados o transmitidos y qué acciones debe
tomar bajo una variada gama de circunstancias. Todo esto, a través de
un lenguaje que intenta estar relativamente próximo al lenguaje humano o natural.
Una característica relevante de los lenguajes de programación es precisamente
que más de un programador pueda usar un conjunto común de instrucciones que
sean comprendidas entre ellos para realizar la construcción de un programa de
forma colaborativa.
Historia
Para que la computadora entienda nuestras instrucciones debe usarse un
lenguaje específico conocido como código máquina, el cual la máquina comprende
fácilmente, pero que lo hace excesivamente complicado para las personas. De
hecho sólo consiste en cadenas extensas de números 0 y 1.
Para facilitar el trabajo, los primeros operadores de computadoras decidieron
hacer un traductor para reemplazar los 0 y 1 por palabras o abstracción de
palabras y letras provenientes del inglés; éste se conoce como lenguaje
ensamblador. Por ejemplo, para sumar se usa la letra A de la palabra inglesa
ADD (sumar). El lenguaje ensamblador sigue la misma estructura del lenguaje
máquina, pero las letras y palabras son más fáciles de recordar y entender que los
números.
La necesidad de recordar secuencias de programación para las acciones
usuales llevó a denominarlas con nombres fáciles de memorizar y
asociar: ADD (sumar), SUB (restar), MUL (multiplicar), CALL (ejecutar subrutina),
17
etc. A esta secuencia de posiciones se le denominó "instrucciones", y a este
conjunto de instrucciones se le llamó lenguaje ensamblador. Posteriormente
aparecieron diferentes lenguajes de programación, los cuales reciben su
denominación porque tienen una estructuras sintáctica similar a los lenguajes
escritos por los humanos, denominados también lenguajes de alto nivel.
La primera programadora de computadora conocida fue Ada Lovelace, hija de
Anabella Milbanke Byron y Lord Byron. Anabella introdujo en las matemáticas a
Ada quien, después de conocer a Charles Babbage, tradujo y amplió una
descripción de su máquina analítica. Incluso aunque Babbage nunca completó la
construcción de cualquiera de sus máquinas, el trabajo que Ada realizó con éstas
le hizo ganarse el título de primera programadora de computadoras del mundo. El
nombre del lenguaje de programación Ada fue escogido como homenaje a esta
programadora.
A finales de 1953, John Backus sometió una propuesta a sus superiores
en IBM para desarrollar una alternativa más práctica al lenguaje ensamblador para
programar la computadora central IBM 704. El histórico equipo Fortran de Backus
consistió en los programadores Richard Goldberg, Sheldon F. Best, Harlan
Herrick, Peter Sheridan, Roy Nutt, Robert Nelson, Irving Ziller, Lois Haibt y David
Sayre.
El primer manual para el lenguaje Fortran apareció en octubre de 1956, con el
primer compilador Fortran entregado en abril de 1957. Esto era un compilador
optimizado, porque los clientes eran reacios a usar un lenguaje de alto nivel a
menos que su compilador pudiera generar código cuyo desempeño fuera
comparable al de un código hecho a mano en lenguaje ensamblador.
18
Lenguaje de alto nivel
Se caracteriza por expresar los algoritmos de una manera adecuada a la
capacidad cognitiva humana, en lugar de a la capacidad ejecutora de las
máquinas.
Los lenguajes de alto nivel se crearon para que el usuario común pudiese
solucionar un problema de procesamiento de datos de una manera más fácil y
rápida
Ventajas e inconvenientes
Ventajas
� Genera un código más sencillo y comprensible.
� Escribir un código válido para diversas máquinas y, posiblemente,
sistemas operativos.
� Inconvenientes
� Reducción de velocidad al ceder el trabajo de bajo nivel a la máquina.
� Algunos requieren que la máquina cliente posea una determinada
plataforma.
Lenguaje de bajo nivel
Un lenguaje de programación de bajo nivel es el que proporciona poca o
ninguna abstracción del microprocesador de un ordenador. Consecuentemente es
fácilmente trasladado a lenguaje de máquina.
19
La palabra “bajo” no implica que el lenguaje sea inferior a un lenguaje de alto
nivel; se refiere a la reducida abstracción entre el lenguaje y el hardware.
En general se utiliza este tipo de lenguaje para programar controladores
(drivers).
Lenguaje de medio nivel
Un lenguaje de programación de medio nivel se encuentra entre los lenguajes
de alto nivel y los lenguajes de bajo nivel.
Estos lenguajes se encuentran en un punto medio entre los dos anteriores.
Dentro de estos lenguajes podría situarse C ya que puede acceder a los registros
del sistema, trabajar con direcciones de memoria, todas ellas características de
lenguajes de bajo nivel y a la vez realizar operaciones de alto nivel.
Son precisos para ciertas aplicaciones como la creación de sistemas
operativos, ya que permiten un manejo abstracto (independiente de la máquina, a
diferencia del lenguaje ensamblador), pero sin perder mucho del poder y eficiencia
que tienen los lenguajes de bajo nivel.
Lenguajes de programación más usados
Visual Basic: Es el lenguaje quizás más difundido. Se puede programar en
este lenguaje prácticamente de todo. Aunque si vamos a ser grandes aplicaciones
como por ejemplo para procesar gran cantidad de datos se tendrá que elegir otro.
Lo mismo que si queremos hacer un video juego de los actuales. No obstante esta
bueno para empezar a aprender un lenguaje para programar. Está orientado a
objetos, lo cual significa que se arrastra un objeto por ejemplo un botón y luego se
20
le cambia alguna propiedad, y ya tenemos gran parte de una aplicación sencilla
hecha.
Luego se le agrega el código a los objetos que los precisen. Se destaca la
completa ayuda que está disponible para este programa. Y cantidad extra de
libros. Su lenguaje es amigable. Tiene la necesidad de precisar en el ejecutable (la
aplicación final lista para instalar) para poder usarlo en cualquier computadora que
no tenga instaladas las librerías bastantes Mb extras.
C: Es un lenguaje de programación creado en 1972 por Dennis M. Ritchie en
los Laboratorios Bell como evolución del anterior lenguaje B, a su vez basado en
BCPL. Al igual que B, es un lenguaje orientado a la implementación de Sistemas
Operativos, concretamente Unix. C es apreciado por la eficiencia del código que
produce y es el lenguaje de programación más popular para crear software de
sistemas, aunque también se utiliza para crear aplicaciones.
Se trata de un lenguaje débilmente tipificado de medio nivel pero con muchas
características de bajo nivel. Dispone de las estructuras típicas de los lenguajes de
alto nivel pero, a su vez, dispone de construcciones del lenguaje que permiten un
control a muy bajo nivel. Los compiladores suelen ofrecer extensiones al lenguaje
que posibilitan mezclar código en ensamblador con código C o acceder
directamente a memoria o dispositivos periféricos.
C++: Es un lenguaje muy potente. Se puede programar de todo. Pero también
hay que saber mucho de todo. No es nada amigable. No corrige los errores del
usuario a cada rato como Visual Basic, y obviamente también se puede hacer lo
que se quiera, o casi lo que se quiera, el tema es que después corra lo que se
hace. Las aplicaciones hechas aquí son más rápidas que en Visual siempre que
estén bien hechas y que compilen correctamente.
Acá no hay objetos, hay que hacer todo. Muchos juegos están hechos en este
lenguaje, es decir, se entiende que cuando se dicen “juegos” se refiere a la parte
inteligente del juego, la parte en 3D se desarrolla en programas específicos para
que sea más fácil. Este programa es altamente recomendable para
21
programadores expertos y en el caso de tener que desarrollar aplicaciones bien
remunerables en las cuales vale la pena hacer las aplicaciones optimizadas a full.
Delphi : Es la competencia de Visual es también orientado a objetos. Es muy
completo, incluye de todo. No es teóricamente tan rápido como C++ pero si
muchos más sencillo de utilizar, también sirve para empezar a programar aunque
Visual puede ser más sencillo a la hora de escribir código. Sin embargo no es un
programa tan difundido como Visual Basic que se encuentra información en todos
lados. La base de este programa es Pascal. Es de la empresa Borland. Cabe
destacar que algunas versiones de Linux están programadas en este lenguaje.
FoxPro : Muy bueno para desarrollo de bases de datos amplias y no tanto para
multimedia u otro tipo de aplicaciones. No se usa por ejemplo para hacer una
calculadora, o programitas por el estilo. Pero tiene muchas funciones para manejar
bases de datos amplias.
Principales aplicaciones
� Compilador : Aplicación informática que se usa para crear programas en
un cierto lenguaje de programación. Convierte los programas creados en un
lenguaje de programación al lenguaje interno del ordenador (código
máquina). En los compiladores, todo el programa original (fuente) se
convierte a código máquina en bloque, y el programa resultante (programa
ejecutable) se puede en otro ordenador usar sin necesidad de recurrir otra
vez al compilador.
� Intérpretes : el programa fuente se convierte a código máquina, línea por
línea, justo en el momento en que se pone a funcionar; no se crea ningún
ejecutable, y por eso es necesario distribuir el programa fuente pero
también el intérprete que es capaz de entenderlo.
22
Aplicabilidad de C
Hecho principalmente para la fluidez de programación en sistemas UNIX. Se
usa también para el desarrollo de otros sistemas operativos como Windows o
GNU/Linux. Igualmente para aplicaciones de escritorio como GIMP, cuyo principal
lenguaje de programación es C.
De la misma forma, es muy usado en aplicaciones científicas (para
experimentos informáticos, físicos, químicos, matemáticos, entre otros, parte de
ellos conocidos como modelos y simuladores), industriales (industria robótica,
cibernética, sistemas de información y base de datos para la industria petrolera y
petroquímica.
23
Conclusión
Hay infinidades de programas pero a medida que las computadoras se vuelven
más populares, los desarrolladores de software, constantemente están creando
programas para quitar las tediosas tareas personales y hacerlas más divertidas.
Estos programas pueden ser excelentes herramientas para la educación debido a
que si los niños disfrutan realizando las tareas jugando, sus habilidades
aumentarán.
Todos los días los desarrolladores perceptivos encuentran problemas para ser
solucionados con software más sofisticados y es que la tecnología ha avanzado
tanto que una persona puede realizar operaciones bancarias desde su casa,
enviar un correo electrónico a cualquier parte del mundo, etc.; todo esto por el
computador. Y esto es bueno ya que cada día la competencia por crear un mejor
software, fomenta a crearlos más inimaginables, mejores y a precios mas y mas
baratos.
El software se convirtió en una herramienta esencial en el ámbito laboral, tanto
para ordenar y almacenar información como para reproducirla en cualquier
manera, una herramienta que evoluciona diariamente con el objetivo de tratar de
hacer innecesaria la mano humana.
24
Referencias Bibliográfica
http://www.definicionabc.com/tecnologia/visual-basic.php
http://www.estudiargratis.com.ar/monografias-tutoriales-novelas/lenguajes-
programacion.htm
http://es.wikipedia.org/wiki/C_%28lenguaje_de_programaci%C3%B3n%29
http://usuarios.multimania.es/Resve/diccioninform.htm
25
26
Modelo de una interfaz gráfica de sistema operativo Windows
Modelo de una interfaz gráfica de sistema operativo Linux
27
Esquema de funcionamiento del sistema operativo
Imagen de un nuevo proyecto de programación en vis ual basic
28
Imagen de un programa compilado en Borland C++
Imagen de un nuevo proyecto de programación en Delp hi
29
Imagen de un nuevo proyecto de programación en FoxP ro