Trabajo de introducción a la informática uneg · Es el soporte lógico e inmaterial que permite...

27
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.

Transcript of Trabajo de introducción a la informática uneg · Es el soporte lógico e inmaterial que permite...

Page 1: Trabajo de introducción a la informática uneg · Es el soporte lógico e inmaterial que permite que la computadora pueda desempeñar tareas inteligentes, dirigiendo a los componentes

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.

Page 2: Trabajo de introducción a la informática uneg · Es el soporte lógico e inmaterial que permite que la computadora pueda desempeñar tareas inteligentes, dirigiendo a los componentes

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

Page 3: Trabajo de introducción a la informática uneg · Es el soporte lógico e inmaterial que permite que la computadora pueda desempeñar tareas inteligentes, dirigiendo a los componentes

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

Page 4: Trabajo de introducción a la informática uneg · Es el soporte lógico e inmaterial que permite que la computadora pueda desempeñar tareas inteligentes, dirigiendo a los componentes

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.

Page 5: Trabajo de introducción a la informática uneg · Es el soporte lógico e inmaterial que permite que la computadora pueda desempeñar tareas inteligentes, dirigiendo a los componentes

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.

Page 6: Trabajo de introducción a la informática uneg · Es el soporte lógico e inmaterial que permite que la computadora pueda desempeñar tareas inteligentes, dirigiendo a los componentes

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

Page 7: Trabajo de introducción a la informática uneg · Es el soporte lógico e inmaterial que permite que la computadora pueda desempeñar tareas inteligentes, dirigiendo a los componentes

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.

Page 8: Trabajo de introducción a la informática uneg · Es el soporte lógico e inmaterial que permite que la computadora pueda desempeñar tareas inteligentes, dirigiendo a los componentes

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.

Page 9: Trabajo de introducción a la informática uneg · Es el soporte lógico e inmaterial que permite que la computadora pueda desempeñar tareas inteligentes, dirigiendo a los componentes

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++.

Page 10: Trabajo de introducción a la informática uneg · Es el soporte lógico e inmaterial que permite que la computadora pueda desempeñar tareas inteligentes, dirigiendo a los componentes

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

Page 11: Trabajo de introducción a la informática uneg · Es el soporte lógico e inmaterial que permite que la computadora pueda desempeñar tareas inteligentes, dirigiendo a los componentes

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.

Page 12: Trabajo de introducción a la informática uneg · Es el soporte lógico e inmaterial que permite que la computadora pueda desempeñar tareas inteligentes, dirigiendo a los componentes

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.

Page 13: Trabajo de introducción a la informática uneg · Es el soporte lógico e inmaterial que permite que la computadora pueda desempeñar tareas inteligentes, dirigiendo a los componentes

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

Page 14: Trabajo de introducción a la informática uneg · Es el soporte lógico e inmaterial que permite que la computadora pueda desempeñar tareas inteligentes, dirigiendo a los componentes

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),

Page 15: Trabajo de introducción a la informática uneg · Es el soporte lógico e inmaterial que permite que la computadora pueda desempeñar tareas inteligentes, dirigiendo a los componentes

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.

Page 16: Trabajo de introducción a la informática uneg · Es el soporte lógico e inmaterial que permite que la computadora pueda desempeñar tareas inteligentes, dirigiendo a los componentes

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.

Page 17: Trabajo de introducción a la informática uneg · Es el soporte lógico e inmaterial que permite que la computadora pueda desempeñar tareas inteligentes, dirigiendo a los componentes

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

Page 18: Trabajo de introducción a la informática uneg · Es el soporte lógico e inmaterial que permite que la computadora pueda desempeñar tareas inteligentes, dirigiendo a los componentes

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

Page 19: Trabajo de introducción a la informática uneg · Es el soporte lógico e inmaterial que permite que la computadora pueda desempeñar tareas inteligentes, dirigiendo a los componentes

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.

Page 20: Trabajo de introducción a la informática uneg · Es el soporte lógico e inmaterial que permite que la computadora pueda desempeñar tareas inteligentes, dirigiendo a los componentes

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.

Page 21: Trabajo de introducción a la informática uneg · Es el soporte lógico e inmaterial que permite que la computadora pueda desempeñar tareas inteligentes, dirigiendo a los componentes

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.

Page 22: Trabajo de introducción a la informática uneg · Es el soporte lógico e inmaterial que permite que la computadora pueda desempeñar tareas inteligentes, dirigiendo a los componentes

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

Page 23: Trabajo de introducción a la informática uneg · Es el soporte lógico e inmaterial que permite que la computadora pueda desempeñar tareas inteligentes, dirigiendo a los componentes

25

Page 24: Trabajo de introducción a la informática uneg · Es el soporte lógico e inmaterial que permite que la computadora pueda desempeñar tareas inteligentes, dirigiendo a los componentes

26

Modelo de una interfaz gráfica de sistema operativo Windows

Modelo de una interfaz gráfica de sistema operativo Linux

Page 25: Trabajo de introducción a la informática uneg · Es el soporte lógico e inmaterial que permite que la computadora pueda desempeñar tareas inteligentes, dirigiendo a los componentes

27

Esquema de funcionamiento del sistema operativo

Imagen de un nuevo proyecto de programación en vis ual basic

Page 26: Trabajo de introducción a la informática uneg · Es el soporte lógico e inmaterial que permite que la computadora pueda desempeñar tareas inteligentes, dirigiendo a los componentes

28

Imagen de un programa compilado en Borland C++

Imagen de un nuevo proyecto de programación en Delp hi

Page 27: Trabajo de introducción a la informática uneg · Es el soporte lógico e inmaterial que permite que la computadora pueda desempeñar tareas inteligentes, dirigiendo a los componentes

29

Imagen de un nuevo proyecto de programación en FoxP ro