Вы находитесь на странице: 1из 18

Tarea 1:

Investigar la clasificacin del software Software de Aplicacin Software de Sistema

1.1 Clasificacin del Software:


Para poder clasificar el SW, primero debemos poder definirlo. Software se refiere al equipamiento lgico o soporte lgico de un computador digital, comprende el conjunto de los componentes lgicos necesarios para hacer posible la realizacin de una tarea especfica. Software de Sistema: Programas informticos que sirven para controlar e interactuar con el sistema operativo, realizan diversas tareas, como la transferencia de datos entre la memoria RAM y los dispositivos de almacenamiento. Integra las capacidades de una computadora, pero generalmente no se usa directamente en tareas llevadas a cabo por el usuario. Su objetivo es desvincular adecuadamente al programador de los detalles del computador en particular que se use, aislndolo del procesamiento referido a las caractersticas internas tanto de la memoria, discos, puertos, dispositivos de comunicaciones, impresoras, pantallas, teclados, etc. El software de sistema le procura al usuario y programador adecuadas interfaces de alto nivel y utilidades de apoyo que permiten su mantenimiento. Incluye entre otros: Sistemas operativos Controladores de dispositivo Herramientas de diagnstico Herramientas de Correccin y Optimizacin Servidores Utilidades

Clases de software de sistema son:

Cargadores de programas Sistemas operativos (y sus componentes, muchos de los cuales pueden considerarse como software de sistema) Controladores de dispositivos Herramientas de programacin: compiladores, ensambladores, enlazadores, etc. Programas utilitarios Entorno de escritorio / Interfaz grfica de usuario (que pueden incluir Gestores de ventanas) Lnea de comandos BIOS

Software de Programacin: Es el conjunto de herramientas que permiten al programador desarrollar programas informticos, usando diferentes alternativas y lenguajes de programacin, de una manera prctica. Incluye entre otros:

Compiladores Intrpretes Enlazadores Depuradores Entornos de Desarrollo Integrados (IDE): Agrupan las anteriores herramientas, usualmente en un entorno visual, de forma que el programador no necesite introducir mltiples comandos para compilar, interpretar, depurar, etc.
Los IDE proveen un marco de trabajo amigable para la mayora de los lenguajes de programacin tales como C++, PHP, Python, Java, C#, Delphi, Visual Basic, etc. Algunos entornos son compatibles con mltiples lenguajes de programacin, como Eclipse o NetBeans

Software de Aplicacin: Aquel que permite a los usuarios llevar a cabo una o varias tareas especficas, en cualquier campo de actividad susceptible de ser

automatizado o asistido, con especial nfasis en los negocios. Incluye entre otros: o Aplicaciones ofimticas Procesadores de texto: Microsoft Word, OpenOffice.org Writer, Corel WordPerfect. Programas de Presentacin Grafica: Microsoft Power Point, Persuacion, Corel Presentations. Hoja de Clculo: Microsoft Excel, Corel Quattro Pro, OpenOffice.org Calc Sistemas Administradores de BD: MySQL, Access, Dbase. o Programas de edicin Grafica: CorelDraw, Photo-Paint, PhotoShop, Paint o Programas de Comunicacin de Datos: Firefox, Internet Explorer, Yahoo, MSN. o Programas Multimedia: MPlayer, Reproductor de Windows, Winnap, Quick Time. o Software educativo: Tutoriales, Objetos de Aprendizaje o Software mdico o Software de Clculo Numrico o Video Juegos o Software de Diseo Asistido (CAD) Autocad, Linuxcad, Microstation. o Software de Control Numrico (CAM)

El software de Aplicacin es aquel que hace que el computador coopere con el usuario en la realizacin de tareas tpicamente humanas, tales como gestionar una contabilidad o escribir un texto. Los programadores de aplicaciones, a diferencia de los programadores de sistemas, no necesitan conocer a fondo el modo de funcionamiento interno del hardware. > Procesadores de texto. (Bloc de Notas) > Editores. (PhotoShop para el Diseo Grfico)

> > > > >

Hojas de Clculo. (MS Excel) Sistemas gestores de bases de datos. (MySQL) Programas de comunicaciones. (MSN Messenger) Paquetes integrados. (Ofimtica: Word, Excel, PowerPoint) Programas de diseo asistido por computador. (AutoCAD)

Tarea 2 Investigar el concepto de: 1. Algoritmo 2. Lenguaje de Programacin 3. Programa 4. Programacin

1.2 Algoritmo

Listas organizada de instrucciones para resolver un problema especifico, es decir, que un nmero finito de pasos convierten los datos de un problema (entrada) en una solucin (salida).

En la vida cotidiana, se emplean algoritmos frecuentemente para resolver problemas. Algunos ejemplos son los manuales de usuario, que muestran algoritmos para usar un aparato, o las instrucciones que recibe un trabajador por parte de su patrn.

La descripcin de un algoritmo usualmente se hace en tres niveles:

Descripcin de alto nivel. Se establece el problema, se selecciona un modelo matemtico y se explica el algoritmo de manera verbal, posiblemente con ilustraciones y omitiendo detalles. Descripcin formal. Se usa pseudocdigo para describir la secuencia de pasos que encuentran la solucin. Implementacin. Se muestra el algoritmo expresado en un lenguaje de programacin especfico o algn objeto capaz de llevar a cabo instrucciones.

Las caractersticas ms relevantes son: Finito. Un algoritmo debe siempre terminar despus de un nmero de pasos. Definido: Cada paso debe ser definido en forma precisa, estableciendo las acciones que se van a efectuar. Entradas: Es decir cantidades que se entregan inicialmente al algoritmo antes de su ejecucin. Salidas: Un algoritmo tiene una o ms salidas. Efectivo: Que todas las operaciones han de ser realizadas en el algoritmo deben ser lo suficientemente bsicas de modo que puedan ser llevadas a cabo en forma exacta y en un periodo finito.

Lenguajes Algortmicos: Es una serie de smbolos y reglas que se utilizan para describir de manera explcita un proceso, estos lenguajes pueden ser: Grficos: Los diagramas de flujo son descripciones grficas de algoritmos; usan smbolos conectados con flechas para indicar la secuencia de instrucciones.

No Grficos: El pseudocdigo de forma descriptiva emplea una mezcla de lenguaje natural con algunas convenciones sintcticas propias de lenguajes de programacin, como asignaciones, ciclos y condicionales.

1.3 Lenguaje de Programacin

Conjunto de smbolos y reglas sintcticas y semnticas que definen su estructura y el significado de sus elementos y expresiones, y es utilizado para controlar el comportamiento fsico y lgico de una Mquina. Un lenguaje de programacin permite especificar de manera precisa sobre qu datos debe operar una computadora, cmo estos datos deben ser almacenados o transmitidos y qu acciones debe tomar bajo una variada gama de circunstancias. Todo esto, a travs de un lenguaje que intenta estar relativamente prximo al lenguaje humano

Lenguaje artificial que puede ser usado para controlar el comportamiento de una mquina, especialmente una computadora. Estos se componen de un conjunto de reglas sintcticas y semnticas que permiten expresar instrucciones que luego sern interpretadas

Clasificacin:

un lenguaje de programacin puede acercarse a la forma humana de expresarse y, por eso, este tipo de lenguajes es llamado de alto nivel. Esto significa que utilizan palabras y formas en sus estructuras que se asemejan al lenguaje natural (especialmente al ingls). En cambio, aquellos lenguajes que se aproximan ms a la forma en la cual la computadora se maneja, son

llamados lenguajes de bajo nivel. Esto significa que lo que el programador deba escribir se acercar al lenguaje mquina, que es, en definitiva, lo que las computadoras pueden interpretar.

Clasificacin: Lenguaje de Bajo Nivel: Estn escritos en cdigos (cdigo mquina) directamente inteligibles por la computadora, siendo sus instrucciones de cadenas binarias (0 y 1). La programacin en un lenguaje de bajo nivel tiene como ventajas una mayor adaptacin al equipo, adems de la posibilidad de obtener la mxima velocidad con el mnimo uso de memoria. Sin embargo tiene importantes inconvenientes, como la imposibilidad de escribir cdigo independiente de la mquina y la mayor dificultad en la programacin y en la comprensin de los programas.

Lenguaje de Alto Nivel: Los lenguajes de programacin de alto nivel se caracterizan por expresar los algoritmos de una manera adecuada a la capacidad cognitiva humana, en lugar de estar orientados a su ejecucin en las mquinas. Los lenguajes de muy alto nivel se crearon para que el usuario comn pudiese solucionar ciertos problemas sencillos de procesamiento de datos de una manera ms fcil y rpida.

1.4 Programa:

Conjunto de instrucciones que se ejecutan de modo secuencial, las cuales producirn la ejecucin de una determinada tarea. Existen varias facetas que tienen que llevarse a cabo para que el programa sea tal. Lo primero es el anlisis, es decir la definicin de cul es el es problema, y recin entonces se desarrollar el algoritmo o secuencia lgica de los pasos a seguir para resolverlo. Una vez que se prueba el algoritmo y se demuestra que logra los objetivos planteados, entonces s se produce la conversin de este algoritmo al lenguaje de programacin, lo que se conoce como codificacin. Finalmente se introduce el programa en la mquina, se ejecuta y se terminan de hacer las ltimas modificaciones correspondientes para que este todo a punto.

1.5 Programacin:

Proceso por el cual un programador escribe en un lenguaje de programacin, el cdigo fuente de un software. Este cdigo indicar qu tiene que hacer y cmo realizarlo.
El programador se encarga de escribir, probar, depurar y mantener el cdigo fuente. En este sentido, los modelos de desarrollo de software se enmarcan en una disciplina de la informtica conocida como ingeniera de software.

Tarea 3:
Paradigmas de Programacin:

Paradigmas de Programacin:

Propuesta tecnolgica que es adoptada por una comunidad de programadores cuyo ncleo central es incuestionable en cuanto a que unvocamente trata de resolver uno o varios problemas claramente delimitados. Probablemente el paradigma de programacin que actualmente es el ms usado a todos los niveles es la orientacin a objeto.

Imperativo o por procedimientos:


Consiste en una serie de comandos que una computadora ejecutar. Estos comandos detallan de forma clara y especifica el cmo hacer las cosas y llevarn al programa a travs de distintos estados. Los elementos ms importantes son:

El trmino imperativo en este caso, no diere esencialmente del modo gramtico imperativo del espaol, donde una oracin como: ______, Deja de estarte durmiendo y pon atencin a la clase! En este caso se le esta indicando a un sujeto, distrado, que realice la actividad que se supone que debera de estar haciendo.

Los elementos ms importantes de este paradigma son: Variables: Son objetos cuyo valor depende de una localidad de memoria y que puede cambiar a lo largo de la ejecucin del programa. La definicin de este paradigma sera imposible sin estos elementos fundamentales, ya que los estados de un programa son representados y diferenciados por su conjunto de variables y sus contenidos. Tipos de datos: Son abstracciones que representan un conjunto de valores junto con las operaciones y relaciones que son aplicables a ellos. Algunos tipos comunes en varios lenguajes son:

integer, que define parcialmente el conjunto de los nmeros enteros, oat, que representa nmeros reales y boolean, que generalmente especifica al pequeo conjunto conformado por true y false. Es importante recalcar que estos no son los nicos tipos de datos y que muchos lenguajes permiten la implementacin de muchos otros. Expresiones: Aunque son la forma fundamental de programar instrucciones, en la programacin imperativa su papel ms importante est en las sentencias de asignacin. Una sentencia de asignacin sirve para modicar el valor de una variable y as cambiar el estado de un programa. Esto puede ser algo muy sencillo como copiar el valor de una variable a otra localidad de memoria o involucrar algo ms complicado como realizar operaciones sobre las variables antes de relocalizarlas en la memoria. Los operadores empleados pueden ser matemticos, lgicos o una combinacin de ambos. Estructuras de Control: Las estructuras de control son mecanismos que un lenguaje requiere para realizar dos tareas indispensables: 1. Seleccionar una opcin entre algunos flujos de control alternativos (Su forma ms sencilla es el condicional, if), 2. Iterar la ejecucin de una serie de sentencias (ejecutan un bloque de sentencias desde cero hasta un nmero tericamente infinito de veces).

est representado, por ejemplo, por C, BASIC o Pascal

Paradigma Orientado a Objetos: Programar bajo este paradigma es como tratar de simular o modelar los objetos del mundo real. Este tipo de programacin

posee como idea principal encapsular estado y operaciones en objetos. Estos objetos pueden comunicarse entre si, poseen clases y herencia. Se puede destacar como ventaja la facilidad de reutilizacin de cdigo. Algn ejemplo de algunos lenguajes orientados a objetos pueden ser: Java, C++, PHP, Visual Basic .NET, etc.

Programacin Declarativa:

Basado en el desarrollo de programas especificando o "declarando" un conjunto de propiedades que describen el problema y detallan su solucin. La solucin es obtenida mediante mecanismos internos de control, sin especificar exactamente cmo encontrarla (tan slo se le indica a la computadora que es lo que se desea obtener o que es lo que se est buscando). Existen varios tipos de lenguajes declarativos: o Los lenguajes lgicos, como Prolog. o Los lenguajes algebraicos, como Maude y SQL o Los lenguajes funcionales, como Haskell y Lisp

Funcional:

El paradigma funcional considera al programa como una funcin matemtica, donde el dominio representara el conjunto de todas las entradas posibles (inputs) y el rango sera el conjunto de todas las salidas posibles (outputs). La forma en que funciona puede ser entendida como una caja negra:

Podra pensarse que cualquier tipo de programacin podra ser clasificada como programacin funcional, sin embargo entre algunas caractersticas podemos encontrar que en los lenguajes funcionales no existe el concepto de variables y tampoco existen operaciones de asignacin. Aunque podra parecer que los parmetros de una funcin se comportan como una variable (puesto que pueden llevar un nombre y su uso es de hecho parecido al de las variables), esto es incorrecto: El valor de los parmetros es dado como fijo al inicio de la funcin.

Fuente: Paradigmas de Programacin Hctor Zrate Rea.


http://es.scribd.com/doc/9174723/Paradigmas-de-Programacion

Tarea 4.

Editores de texto en la programacin Compiladores e intrpretes Ejecutables

1.7 Editores de Texto

Programa que permite crear y modificar archivos digitales compuestos nicamente por texto sin formato, conocidos comnmente como archivos de texto o texto plano(se usan para escribir slo texto, sin formato y sin imgenes). El programa lee el archivo e interpreta los bytes ledos segn el cdigo de caracteres que usa el editor. Hoy en da es comnmente de 7- 8-bits en ASCII Los editores de texto son incluidos en el sistema operativo o en algn paquete de software instalado y se usan cuando se deben crear o modificar archivos de texto como archivos de configuracin, scripts o el cdigo fuente de algn programa. Algunas funciones tpicas: o Marcar regin. Es la funcin que marca, visualmente o no, una parte del texto para ser elaborada con otras funciones. La regin puede contener varias lneas del texto (regin horizontal) o bien varias columnas adyacentes del texto (regin vertical). o Bsqueda y reemplazo. El proceso de bsqueda de una palabra o una cadena de caracteres, en un texto plano y su reemplazo por otra. Existen diferentes mtodos: global, por regin, reemplazo automtico, reemplazo con confirmacin, bsqueda de texto o bsqueda de una Expresin regular. o Copiar, cortar y pegar. Sirve para copiar, trasladar o borrar una regin marcada o Formatear. Los editores de texto permiten automatizar las nicas funciones de formateo que utilizan: quebrar la lnea, indentar , formatear comentarios o formatear listas. Tabulaciones, negritas, vietas, etc. o Deshacer y rehacer. Consiste en que el programa editor va almacenando cada una de las operaciones hechas por el usuario hasta un nmero configurable. Si el usuario se arrepiente de algn cambio, por muy anterior que sea, el editor le permite revertir

todos los cambios hechos hasta el nmero configurado. Rehacer es por consiguiente, revertir algo revertido. o Importar. Agregar o insertar el contenido de un archivo en el archivo que se est editando. Algunos editores permiten insertar la salida o respuesta a un programa cualquiera ejecutado en la Lnea de comandos al archivo que se est editando. o Filtros. Algunos editores de texto permiten hacer pasar las lneas del texto o de una regin por algn programa para modificarlas u ordenarlas. Por ejemplo, para ordenar alfabticamente una lista de nombres o sacar un promedio de una lista de nmeros. o Acceso remoto. Un editor para trabajar en la administracin de una red de computadoras debe ofrecer la funcionalidad de editar archivos en mquinas remotas, ya sea por medio de ftp, ssh o algn otro Protocolo de red. Emacs lo puede hacer mediante el Plugin tramp (ampliamente configurable con ssh, ftp, scp, sftp, etc), Ultraedit, del ambiente Windows, lo hace mediante ftp.

Fuente: wikipedia

1.8 Compiladores e Interpretes

Existen dos tipos principales de traductores de los lenguajes de programacin de alto nivel: Compilador e intrprete o Traductor: desde un punto de vista general, es un proceso que convierte un programa escrito o texto en un lenguaje fuente a un texto o programa escrito en un lenguaje de destino. Incluyen tanto a los compiladores como a los intrpretes.

o Compilador: Proceso de traduccin que convierte un programa fuente escrito en un lenguaje de alto nivel, a un programa objeto en cdigo de mquina, listo por tanto para su ejecucin en el computador. o Intrprete: Ejecuta una a una las instrucciones de un programa de alto nivel. La entrada es un archivo en un lenguaje de alto nivel, la diferencia con un compilador es que la salida es una ejecucin. Ventaja: fcil depuracin. Desventaja: lentitud y consumo de recursos (pues el intrprete ocupa tiempo y memoria).

Ensamblador: Compilador sencillo Compilador sencillo el lenguaje fuente tiene una estructura, el lenguaje fuente tiene una estructura simple que permite una traduccin de una sentencia fuente a una instruccin en cdigo mquina Compilador cruzado: Compilador que traduce un lenguaje fuente a objeto, el objeto es para un ordenador distinto del que compila.

1.9 Archivos Ejecutables:

Los archivos ejecutables estn creados para funcionar por si mismos. Son archivos interpretados que muestran un resultado, que puede ser una aplicacin, y suelen tener una extensin de:.exe, .com, .bat. Tienen la capacidad de poder ser ejecutados de forma independiente, o en otras palabras, que no necesitan ser ejecutados por una aplicacin externa.

1.7 Consola de lnea de comandos:

Tambin conocida como Interfaz de Lnea de Comandos (CLI). Es un mtodo que permite a las personas dar instrucciones a algn programa informtico por medio de una lnea de texto simple. Esta interfaz existe casi desde los comienzos de la computacin, superada en antigedad solo por las tarjetas perforadas y mecanismos similares.

Вам также может понравиться