Clasificación de Software y Conceptos Básicos

23
FUNDAMENTOS DE PROGRAMACIÓN 1 INSTITUTO TECNOLÓGICO DE MÉRIDA DEPARTAMENTO DE INGENIERÍA ELÉCTRICA Y ELECTRÓNICA INGENIERÍA BIOMÉDICA MATERIA: FUNDAMENTOS DE PROGRAMACIÓN GRUPO: 1DM INVESTIGACIÓN: CLASIFICACIÓN DE SOFTWARE ALUMNO: JESÚS EDUARDO GARCÍA CANTO PROFESOR(A): LIC. TÓMAS HUMBERTO VILLAOBOS DÍAZ

description

software y programación basica

Transcript of Clasificación de Software y Conceptos Básicos

FUNDAMENTOS DE PROGRAMACIN1

INSTITUTO TECNOLGICO DE MRIDADEPARTAMENTO DE INGENIERA ELCTRICA Y ELECTRNICA

INGENIERA BIOMDICA

MATERIA:

FUNDAMENTOS DE PROGRAMACIN

GRUPO:

1DM

INVESTIGACIN:

CLASIFICACIN DE SOFTWARE

ALUMNO:

JESS EDUARDO GARCA CANTO

PROFESOR(A):

LIC. TMAS HUMBERTO VILLAOBOS DAZ

FECHA: 11 DE FEBRERO DE 2015

1) SoftwareSe 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, en contraposicin a los componentes fsicos del sistema (hardware).Clasificacin del softwareSi bien esta distincin es, en cierto modo, arbitraria, y a veces confusa, se puede clasificar al software de la siguiente forma:1.1 Software de sistema Es aquel que permite que el hardware funcione. Su objetivo es desvincular adecuadamente al programador de los detalles del computador en particular que se use, aislndolo especialmente del procesamiento referido a las caractersticas 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 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

1.2 Software de programacinEs 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: Editores de texto 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... Habitualmente cuentan con una avanzada interfaz grfica de usuario (GUI).

1.3 Software de aplicacinAquel 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: Aplicaciones de control y automatizacin industrial Aplicaciones ofimticas Software educativo Software mdico Software de Clculo Numrico Software de Diseo Asistido (CAD) Software de Control Numrico (CAM)

2) AlgoritmoPor algoritmo, se entiende a un conjunto finito de instrucciones que se deben seguir para resolver un problema. No obstante, desde el punto de vista de la programacin de ordenadores, la definicin del algoritmo como la especificacin de una serie de pasos, es incompleta. Debe observarse que los ordenadores son equipos que tienen limitaciones fsicas en cuanto a capacidad de almacenamiento y procesamiento. Por consiguiente debemos refinar un poco ms nuestra definicin de algoritmo para hacerla aplicable de manera efectiva en el mbito de la informtica.El algoritmo es un conjunto de pasos, instrucciones o acciones que se deben seguir para resolver un problema. Existen una gran cantidad de algoritmos, hay que tomar el ms efectivo. Hay dos tipos de algoritmos que son los cualitativos y cuantitativos.2.2 CualitativosSon todos aquellos pasos o instrucciones descritos por medio de palabras que sirven para llegar a la obtencin de una respuesta o solucin de un problema.2.3 CuantitativosSon todos aquellos pasos o instrucciones que involucran clculos numricos para llegar a un resultado satisfactorio.

3) ProgramacinLa programacin informtica, acortada como programacin, es el proceso de disear, codificar, depurar y mantener el cdigo fuente de programas computacionales. El cdigo fuente es escrito en un lenguaje de programacin. El propsito de la programacin es crear programas que exhiban un comportamiento deseado. El proceso de escribir cdigo requiere frecuentemente conocimientos en varias reas distintas, adems del dominio del lenguaje a utilizar, algoritmos especializados y lgica formal. Programar no involucra necesariamente otras tareas tales como el anlisis y diseo de la aplicacin (pero s el diseo del cdigo), aunque s suelen estar fusionadas en el desarrollo de pequeas aplicaciones.Del proceso de programacin surge lo que comnmente se conoce como software (conjunto de programas), aunque estrictamente este ltimo abarca mucho ms que slo la programacin.

3.2 ProgramaEl concepto de programa posee mltiples acepciones. Puede ser entendido como el anticipo de lo que se planea realizar en algn mbito o circunstancia; el temario que se ofrece para un discurso; la presentacin y organizacin de las materias de un cierto curso o asignatura; y la descripcin de las caractersticas o etapas en que se organizan determinados actos o espectculos artsticos.Un programa tambin consiste en una unidad temtica desarrollada durante una emisin televisiva o radial, adems de permitir nombrar al grupo de instrucciones que le posibilita a una computadora desarrollar diferentes funciones.3.3 Lenguaje de programacinLos lenguajes de programacin son herramientas que nos permiten crear programas y software. Entre ellos tenemos Delphi, Visual Basic, Pascal, Java, etc.Una computadora funciona bajo control de un programa el cual debe estar almacenado en la unidad de memoria; tales como el disco duro.Los lenguajes de programacin de una computadora en particular se conocen como cdigo de mquinas o lenguaje de mquinas.Estos lenguajes codificados en una computadora especfica no podrn ser ejecutados en otra computadora diferente.Para que estos programas funcionen para diferentes computadoras hay que realizar una versin para cada una de ellas, lo que implica el aumento del costo de desarrollo.Por otra parte, los lenguajes de programacin en cdigo de mquina son verdaderamente difciles de entender para una persona, ya que estn compuestos de cdigos numricos sin sentido nemotcnico.Los lenguajes de programacin facilitan la tarea de programacin, ya que disponen de formas adecuadas que permiten ser ledas y escritas por personas, a su vez resultan independientes del modelo de computador a utilizar.Los lenguajes de programacin representan en forma simblica y en manera de un texto los cdigos que podrn ser ledos por una persona. Los lenguajes de programacin son independientes de las computadoras a utilizar.Existen estrategias que permiten ejecutar en una computadora un programa realizado en un lenguaje de programacin simblico. Los procesadores del lenguaje son los programas que permiten el tratamiento de la informacin en forma de texto, representada en los lenguajes de programacin simblicos.Hay lenguajes de programacin que utilizan compilador. La ejecucin de un programa con compilador requiere de dos etapas:1) Traducir el programa simblico a cdigo mquina2) Ejecucin y procesamiento de los datos.Otros lenguajes de programacin utilizan un programa intrprete o traductor, el cual analiza directamente la descripcin simblica del programa fuente y realiza las instrucciones dadas.El intrprete en los lenguajes de programacin simula una mquina virtual, donde el lenguaje de mquina es similar al lenguaje fuente.La ventaja del proceso interprete es que no necesita de dos fases para ejecutar el programa, sin embargo su inconveniente es que la velocidad de ejecucin es ms lenta ya que debe analizar e interpretar las instrucciones contenidas en el programa fuente.

3.4 Paradigmas de ProgramacinUn paradigma de programacin es una 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. La resolucin de estos problemas debe suponer consecuentemente un avance significativo en al menos un parmetro que afecte a la ingeniera de software. Tiene una estrecha relacin con la formalizacin de determinados lenguajes en su momento de definicin. Un paradigma de programacin est delimitado en el tiempo en cuanto a aceptacin y uso ya que nuevos paradigmas aportan nuevas o mejores soluciones que la sustituyen parcial o totalmente.

4) Editores de textoUn editor de texto es un programa que permite crear y modificar archivos digitales compuestos nicamente por texto sin formato, conocidos comnmente como archivos de texto o texto plano. 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- u 8-bits en ASCII o UTF-8, rara vez EBCDIC.Por ejemplo, un editor ASCII de 8 bits que lee el nmero binario 0110 0001 (decimal 97 u hexadecimal 61) en el archivo lo representar en la pantalla por la figura a, que el usuario reconoce como la letra "a" y ofrecer al usuario las funciones necesarias para cambiar el nmero binario en el archivo.

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.El archivo creado por un editor de texto incluye por convencin en DOS y Microsoft Windows la extensin ".txt", aunque pueda ser cambiada a cualquier otra con posterioridad. Tanto Unix como Linux dan al usuario total libertad en la denominacin de sus archivos.Al trasladar archivos de texto de un sistema operativo a otro se debe considerar que existen al menos dos convenciones diferentes para sealar el trmino de una lnea: Unix y Linux usan slo retorno de carro en cambio Microsoft Windows usa al trmino de cada lnea retorno de carro y salto de lnea.Los editores de textos "planos" se distinguen de los procesadores de texto en que se usan para escribir slo texto, sin formato y sin imgenes, es decir sin diagramacin.Los procesadores de texto pueden en la mayora de los casos almacenar un texto plano en un archivo de texto plano, pero se le debe ordenar explcitamente que se desea esa opcin, de otra manera podra guardarlo con algn formato especial.

5) Compiladores e Intrpretes5.2 CompiladorUn compilador es un programa que traduce los programas fuente escritos en lenguaje de alto nivel a lenguaje mquina. La traduccin del programa completo se realiza en una sola operacin denominada compilacin del programa; es decir, se traducen todas las instrucciones del programa en un solo bloque. El programa compilado y depurado (eliminados los errores del cdigo fuente) se denomina programa ejecutable porque ya se puede ejecutar directamente y cuantas veces se desee; slo deber volver a compilarse de nuevo en el caso de que se modifique alguna instruccin del programa. De este modo el programa ejecutable no necesita del compilador para su ejecucin. Los traductores de lenguajes tpicos ms utilizados son: C, C++, Java, C#, Pascal, FORTRAN y COBOL.

5.3 IntrpreteUn intrprete es un traductor que toma un programa fuente, lo traduce y, a continuacin, lo ejecuta. Los programas intrpretes clsicos como BASIC, prcticamente ya no se utilizan, ms que en circunstancias especiales. Sin embargo, est muy extendida la versin interpretada del lenguaje Smalltalk, un lenguaje orientado a objetos puro. El sistema de traduccin consiste en traducir la primera sentencia del programa a lenguaje mquina, se detiene la traduccin, se ejecuta la sentencia; a continuacin, se traduce la siguiente sentencia, se detiene la traduccin, se ejecuta la sentencia y as sucesivamente hasta terminar el programa.

6) EjecutablesUn ejecutable es un archivo diseado para poder iniciar un programa. En su interior estn pues las instrucciones precisas para poder ejecutar un programa determinado o varios. Los ordenadores pueden realizar todo tipo de tareas, pero para ello debe indicrseles como. Son como un nio a quien debe decrsele paso a paso lo que hacer y cuando. En su memoria base suelen cargarse las instrucciones bsicas, y el sistema operativo carga comandos adicionales, que le permiten realizar las tareas ms simples. La tarea de un programador cuando hace un programa es decirle al ordenador como debe usar esos comandos bsicos que ya sabe para poder realizar lo que el programa quiere hacer, sea mostrar una imagen, escribir texto, guardar un documento... etc.Generalmente la extensin ms comn para los ejecutables es la .EXE en Windows (que viene de abreviar EXECUTABLE en ingls), pero tambin existen diversos tipos de ejecutables con extensiones distintas: por ejemplo, los .COM (que fueron los primeros), los .BAT (archivos de procesamiento de lotes, que permitan encadenar la ejecucin de varios programas sucesivamente), incluso algunas libreras como .DLL que contienen informacin adicional para el sistema operativo y pueden ser ejecutados por este.

7) Consola de Lnea de ComandosUna interfaz por lnea de comandos es un mtodo de interaccin con el computador, en el cual el usuario ingresa una serie de instrucciones textuales (secuencias de caracteres), bien sea por un teclado o un script. La idea principal de las interfaces por lnea de comando, a diferencia de las interfaces grficas, cuyos comandos funcionan con mover un puntero y apretar un botn, es ingresar en el ordenador una serie de caracteres, los cuales son reconocidos por el computador y dependiendo de dicha secuencia, el computador realiza una serie de operaciones (bien sea imprimir texto por pantalla, modificar archivos, etc.)Los ejemplos ms conocidos de implementacin de las interfaces por lnea de comandos son los Shell de Unix, el command.com de Microsoft, que es la interfaz del sistema operativo DOS.

BibliografaAguilar, L. J. (s.f.). Fundamentos de Programacin.Antonio Calderon Chagolla. (s.f.). Obtenido de http://www.antoniocalderonch.com/ique-es-un-editor-de-textosDefiniciones y Caracteristicas. (s.f.). Obtenido de http://www.antoniocalderonch.com/ique-es-un-editor-de-textosIThinkWeb. (s.f.). Obtenido de http://www.ithinkweb.mx/capacita/soft_ware.htmlLenguajes de Programacin. (s.f.). Obtenido de http://www.lenguajes-de-programacion.com/lenguajes-de-programacion.shtmlMaster Magazine. (s.f.). Obtenido de http://www.mastermagazine.info/termino/3904.php#ixzz3RPoq38n2MiTecnolgico.com. (s.f.). Obtenido de http://www.mitecnologico.com/Main/ClasificacionDelSoftwareWikipedia. (s.f.). Obtenido de http://es.wikipedia.org/wiki/Programaci%C3%B3n