Presentado por Tania Katherine Gngora Huertas Cdigo 083252252011
Presentado a Gustavo Martnez
Universidad del Tolima
IDEAD Instituto De Educacin A Distancia Ingeniera de sistemas Ibagu Tolima 2016
PREGUNTAS GENERADORAS
1. Qu impacto puede tener el paradigma de programacin elegido
dentro de un proyecto de software? El impacto es muy positivo, si bien todava quedan muchas ms opciones por explorar. A continuacin listar algunos de los efectos positivos desencadenados: Mayor sencillez: Los lenguajes de programacin orientados a objetos ofrecen una metodologa ms cercana a la forma en la que funcionamos los seres humanos, con un manejo ms natural y una mayor estandarizacin. Ya no resulta imprescindible conocer a fondo el manejo de cada lenguaje de programacin. Mayor productividad: En los proyectos pueden usarse clases y componentes de otros proyectos, pudiendo utilizarlas tal cual o, mediante herencia, crear nuevas clases basadas en las anteriores, lo que supone un gran ahorro en tiempo de diseo y desarrollo. Mantenimiento de sistemas ms sencillo: Los procesos de mantenimiento y mejora de los sistemas son ms eficientes, gracias a la encapsulacin y a la modularidad. Ello se debe a que slo habr que redisear y reimplementar un conjunto de clases especficas, no el total de la aplicacin. Posibilita el desarrollo en cadena: Gracias a lo anterior, los sistemas informticos pueden fabricarse igual que un coche en una cadena de montaje, dado que se producen por componentes. As, se puede subcontratar el desarrollo de determinadas clases de componentes, pudiendo la empresa matriz dedicarse a disear el conjunto del sistema e integrar los componentes prefabricados. Interconexin de sistemas ms sencilla: Por definicin, un sistema informtico puede representarse a s mismo como un objeto, con todas sus diversas caractersticas. Por ello, es relativamente sencillo interconectar sistemas orientados a objetos entre s. 2. Cualquier lenguaje de programacin permite resolver cualquier tipo de problema? El lenguaje de programacin es el encargado de que la computadora realice paso a paso las tareas que el programador a diseado en el algoritmo. Se puede decir que un lenguaje de programacin es el intermediario entre la mquina y el usuario para que este ltimo pueda resolver problemas a travs de la computadora haciendo uso de palabras (funciones) que le traducen dicho programa a la Computadora para la realizacin de dicho trabajo.
Los lenguajes de computadora se utilizan para resolver problemas, y ha habido
miles de aos de trabajo en matemticas para este fin. Los lenguajes de programacin estn especificados por reglas para formar instrucciones correctas, organizndolas en mdulos, someterlas hacia un compilador, el cual traduce el cdigo en un lenguaje comprensible para una mquina en particular, y finalmente ejecutar el programa, es decir, someter la entrada hacia la computadora, la cual transforma en una salida de acuerdo con las instrucciones en el programa. Cuando usamos una computadora, estamos intentado resolver un problema. Puede ser un problema de negocios, que involucra ganancias y prdidas; un problema cientfico que emplea modelos de comportamiento fsico; una investigacin estadstica que evala la posibilidad de que ocurra algn evento; etc. se ha visto hasta ahora que los lenguajes de programacin son un simbolismo, que nos permite expresar en operaciones elementales (instrucciones) la solucin a nuestro problema. 3. Cmo es posible una mejor eleccin del lenguaje de programacin? Permite una mejor eleccin del lenguaje de programacin: El conocimiento de diversos lenguajes de programacin facilitan la eleccin del lenguaje ms adecuado para un proyecto determinado. Aplicaciones web primeros hemos de clasificar en que parte ir: Frontend (lado del usuario): Usaremos el lengaje HTML que servir como estructura para la interfaz. Hay que tener claro que es un lenguaje de marcado, no de programacin. Con l podremos poner ttulos, enlaces, negrita,etc. Para darle estilos usaremos el CSS, cn el le daremos la tipografa, colores, dimensiones, etc. Una plataforma que recomiendo mucho y facilita la programacin y el diseo web es Bootstrap. Viene con diseos que tu adaptas a tus priodidades y se trabaja de forma muy intutiva. Con el JavaScript podremos hacer la interaccin con los usuarios, aadir efectos y animaciones. Como complemento, una vez sepamos los conceptos bsicos, podemos usar libreras con funciones de JavaScript como JQuery para facilitar el trabajo. Sin duda, hay ms alternativas, pero estas son de las ms usadas. Backend (lado del servidor): Para este tipo de pginas necesitaremos un lenguaje de programacin que genere pginas dinmicas. En el Backend hay muchos enlaces y sera muchssimo trabajo crear una pgina para cada uno. Uno de los lenguajes ms comunes es el PHP, aunque dependiendo de que usemos nos ser ms viable usar otros como Python si usamos Django o Ruby si usamos Ruby on Rails.
A la hora de elegir para la base de datos tambin tenemos muchas opciones
muy fiables para elegir, entre ellas MySQL (es de las ms conocidas), SQlite y MongoDB. Hay diferentes lenguajes especficos para cada sistema operativo que slo servir para esa plataforma, pero sera una buena eleccin desarrollar con lenguajes multiplataforma, es decir, usar un lenguaje que se pueda usar en distintos sistemas. Este lenguaje nos permitir adaptar nuestro programa para una mayor variedad de plataformas. Hay una gran variedad de estos tipos de lenguajes, pero para alguien que empieza en el sector de la programacin le recomendara el lenguaje de programacin Python, bsicamente por su versatilidad y lo fcil que es aprenderlo. Se pueden hacer aplicaciones que se usen en una terminal o con interfaz grfica si lo combinamos con GTK+ o Qt.
4.Por qu es importante la abstraccin en el desarrollo de software?
Una vez que te das cuenta de que la informtica tiene que ver con la construccin, manipulacin y razonamiento acerca de abstracciones se hace evidente que un pre-requisito importante para la buena escritura de programas de computador es la capacidad para manejar abstracciones de manera precisa. stos modelos generales no son descripciones definitivas de los procesos del software ms bien son abstracciones de los procesos que se pueden utilizar para el desarrollo del software. Puede pensarse en ellos como marcos de trabajo del proceso y que pueden ser adaptados para crear procesos ms especficos . en la actualidad, el software es un comn denominador entre la gente, ya sea en un nivel educativo, profesional, laboral o personal. La informtica se ha vuelto indispensable en el vivir diario de la gente, esta importancia ha hecho que sea todava ms importante el desarrollo de software, esto debido a que cada da la gente demanda ms calidad en los servicios informticos, de tal manera que siempre se necesita estar actualizado en el software, para esto es indispensable estar en un continuo desarrollo de todo tipo de software existente. Se puede ver la importancia del desarrollo de software, en los sistemas que constantemente se estn actualizando, un ejemplo de ello es la gigante corporacin Microsoft, quien bajo el mando del que se puede decir es pionero en el desarrollo de software el seor Bill Gates, est en constante actualizacin de todas sus plataformas, o tambin se puede mencionar a la gigante Apple, quien actualmente estrena su IPhone 6, estos son solo algunos ejemplos, pero solo con eso ya podemos darnos cuenta de la importancia de estar actualizando el software y para esto obvio se necesita desarrollar software nuevo, entonces podemos darnos cuenta que el desarrollo de software es tan importante como las 3 comidas del da para cualquier persona.
5. La orientacin a objetos es una evolucin del paradigma de
programacin imperativa? El paradigma de programacin que actualmente es el ms utilizado es la "orientacin a objetos" (OO). El ncleo central de este paradigma es la unin de datos y procesamiento en una entidad llamada "objeto", relacionable a su vez con otras entidades "objeto". Programacin imperativa o por procedimientos: Es el ms usado en general, se basa en dar instrucciones al ordenador de como hacer las cosas en forma de algoritmos. La programacin imperativa es la ms usada y la ms antigua, el ejemplo principal es el Lenguaje de mquina. Ejemplos de lenguajes puros de este paradigma seran el C, BASIC o Pascal. La programacin Orientada a objetos (POO) es una forma especial de programar, ms cercana a como expresaramos las cosas en la vida real que otros tipos de programacin. Con la POO tenemos que aprender a pensar las cosas de una manera distinta, para escribir nuestros programas en trminos de objetos, propiedades, mtodos y otras cosas que veremos rpidamente para aclarar conceptos y dar una pequea base que permita soltarnos un poco con este tipo de programacin. Bueno, como ya he dicho anteriormente, la programacin orientada a objetos es una forma de programacin imperativa puesto que al programar orientando a objetos se describe la secuencia que debe seguir el programa para resolver un problema dado. La diferencia con otras formas de programacin imperativas como la programacin estructurada es que en la orientacin a objetos se hace uso de estructuras de datos llamadas objetos que aglutinan propiedades y mtodos conjuntamente con sus interacciones. Un objeto es una estructura abstracta que describe con la mayor fiabilidad posible un objeto del mundo real y como se relaciona o interacta con el resto del mundo que lo rodea a travs de interfaces. La programacin orientada a objetos se basa tambin en conceptos como la abstraccin de datos, la encapsulacin, los eventos, la modularidad, la herencia y el polimorfismo.
6.Qu constituye un entorno de programacin?
Las actividades mejor soportadas por herramientas de desarrollo son normalmente las centrales: codificacin y pruebas de unidades. El conjunto de herramientas que soportan estas actividades constituyen lo que se llama un entorno de programacin. A veces se utilizan las siglas IDE (Integrated Development Environment) para designar estos entornos, aunque no son un entorno de desarrollo completo, sino slo una parte de l.
Siguiendo la terminologa anterior, de niveles funcionales, es el banco
de trabajo del programador Da soporte a las actividades de la fase de codificacin (preparacin del cdigo y prueba de unidades) Los mismos productos sirven tambin para el diseo detallado y para las pruebas de integracin. Se sita, por tanto, en la parte central del ciclo de desarrollo