Está en la página 1de 5
Pagina 1 de 49 Introducci6n a la programacion. Caso practico La evolucién de Intemet y de las nuevas tecnologias, asi coma las diferentes positilidades para establecer nuevas Y 4 lineas de negocio para la empresa BK Programacién, han hecho que Ada haya decidido abrir una via de innovacion Para ello, su empresa deberd realizar el desarrollo de sus aplicaciones a traves de Jenguajes y tecnicas de programacién modernos, aunquo con una cficioncia y exiblidad contrastades. Maria y Juan, ayudados y orientados por Ada, recordardn y ampliaran sus conccimientos relacionados con la programacién, permitiéndoles crear software que pueda adaptarse a nuevas situaciones, como el Tuncionamiento en diferentes plataformas (PDA, Méviles, Web, etc.) 0 la interaccién con bases de datos. Todo ello sin perder de vista de donde parten y hacia dénde quieren redirigir sus esfuerzos. Estas innovacionas, junto a la predisposicién para adaptarse y evolucionar que BK Programacion esta potenciando en todas aus areas, repercutiran en una mayor capacidad de respuesta ante las necesidades de sus posibles clientes. En defintiva, conseguir mayor compettividad, Materiales formativos de FP Online propiedad del Ministerio de Educacion, Cultura y Deporte. ‘aviso Legal 08/07/2013, Pagina 2 de 49 1 _.Cuantas acciones de las que has realizado hoy, crees que estén relacionadas con la programacion? Hagamos un repaso de los primeros instantes del dia: te ha despertado la alarma de tu teléfono mévil o radic-despertader, has preparado el desayuno utllzando el mictoondas, mientras desayunabas has visto u oido las lliimas noticias a través de tu receptor de television digital terrestre, te has vestido y puede que hayas utllzado el ascensor para bajar al portal y salir a la calle, ete. Quizd no es necesario que continuomes més para damos cuenta de que casi todo lo que nos rodea, en alguna medida, esta relacionade con la programacién, los programas y el tratamiento de algin tipo de informacién. Introduccion El volumen de datos que actualmente manejamos y sus innumerables posibilidades do tratamiento constituyen un vasto tertitoro en el que los programadores tienen mucho que deci. En esta primera unidad realizaremes un recorride por los conceptos fundamentales de la programacion de aplicaciones. Iniciaremos nuestro camino conociendo con qué vamos a trabajar. qué ‘técnica podemos emplear y qué es lo que pretendemes conseguir. Continuando con el andlisis de las diferentes formas de programacién ex’stentes, identificaremos qué fases conforman el desarrollo de un programa, avanzaremos detallande las caracteristicas relevantes de cada uno de los lenguajes de programacién disponibles, para posteriommente, realizar una visién general del lenguaje de programacién Java Finalmente, tendremos la oportunidad de conocer con qué heframientas pedriamos desarrallar nuestros programas, escogiendo entre una de ellas para ponernos manos a la obra utiizando el lenguaje Java, 08/07/2013, ‘Pagina 3 de 49 2.- Programas y programacion Caso practico Ada conoce bien lo que significa tener que llevar a cabo el proceso completo de creacién de software y sabe que, en ocasiones, no se le da la importancia que deberia a las fases iniciales do osto proceso. Quiore quo Juan, quo dosarrolla programas casi sin darse cuenta, recuerde las ventalas que porta un buen anslisis inicial de los problemas a solucionar y que no aborde el desarrollo de sus programas senténdose directamente ante el ordenador a teclear codigo. Juan le comenta a Ada y 2 Maria: —La verdad es que cuando conoces bien un lenguaje de programacién crees que puedes hacer cualquior programa direstamento sobre el ordenador, poro al final te das cuenta de que daberias haberte parado a planificar tu trabajo. Muchas vecas tenes. que volver atras, racodificar y en ocasionas, rehacer gran parte dal programa porque lo que tienes no esté bien planteado. Maria, que permanoce atenta a lo que dicen Ada y Juan, quiore aprender bien desdo ol principio y lendrd la ventaja de tener a su lado dos expertos, 08/07/2013, Pagina 4 de 49 2.4.- Buscando una solucion. Generalmente, la primera razén que muave a una persona hacia al aprendizaje de la programacion es utilizar el ordenedor como herramienta para resolver problemas concretas Como en la vida real, la bilsqueda y obtencién de una solucién a un problema determinado, utlizando medios informaticos, se lleva a cabo siguiendo unos pasos fundamentales. En la siguiente tabla podemos ver estas analogias. Resolucion de problemas En la vida real... En Programacién... Anilisis del problema: requiere que el problema sea definide y comprendido claramente para que pueda ser anelizado con todo detalle. Observacién dela situacion 0 problema Pensamos en una 0 varias posiles Disefio 0 desarrollo de algoritmos: procedimiento aso a paso para solucionar el problema dado. Resolucién del _algoritmo elegido en la computadora: consiste en convartir el algoritmo en programa, ejecutarlo y comprobar que soluciona verdaderamante el problema Aplicamos la solucién que estimames mas adecuads. Que virtudes deberia tener nuestra solucion? Correcci6n y eficacta: si resuelve el problema adecuadamente. Eficiencia: silo hace en un tiempo minime y con un uso éptimo de los recursos del sistema Para conseguitio, cuando affontemos la construccién de la solucion tendremos que tener en cuenta los siguientes conceptos: 1. Abstraccion: se trata de realizar un analisis dal problema para descomponerlo en problemas mas pequefios y de menor complejidad, describiendo cada uno de ellos de manera precisa. Divide y venceras, esta suele ser consideraca una filosofia general para resolver problemas y de aqui que su nombre no sélo forme parte del vocabulario informatico, sino que también se utiliza en muchos otros ambitos. 2. Encapsulacién: consiste en ocultar la informacién para poder implomentarla de diferontes manoras sin que esto influya en el resto de elementos, 3. Modularidad: estructuraremos cada parte en médulos independientes, cada uno de ellos tendra su funcién correspondiente. Citas para pensar Roger Pressman. “El comienzo de la sabiduria para un ingeniero de software es reconocer la diferencia ontre hacer quo un programa funcione y conseguir quo lo haga comrectamente.” 08/07/2013, Pagina 5 de 49 2.2.- Algoritmos y programas. Después de analizar en detalle el problema a solucionar, hemos de disefiar y desarrollar el algoritmo adecuado. Pero, ¢Qué es un algoritmo? Algoritmo: secuencia ordenada de pasos, descita sin ambigiedades, que conducen a la solucién de un problema dado Los algoritmos con indapendientes do los lenguajes de programacién y de las computadoras donde se ejecutan. Un mismo algoritmo puede ser expresado en diferentes lenguajes de programacién y podria ser ejecutado en diferentes dispositivos. Piensa en una ‘eceta de cocina, ésta puede ser expresada en castellano, inglés o francés, podria ser cocinada en fagan 0 vittocerémica, por un cocinero 0 mas, etc. Pero independientemente de todas estas circunstancias, el plato se prepararé siguiendo los mismos pasos. La diferencia fundamental entre algoritmo y programa es qua, en al segundo, los pasos que permiten resolver el problema, deben esctibirse en un determinado lenguaje de programacion para que puedan ser ejecutados en el ordenador y asi obtener la solucion, Los lenguajes de programacién son sélo un modio para expresar el algoritmo y el ordenader un procesador para ejecutalo. El cise’to de los algorimmos seré una tarea que necesitard de la cteatividad y conocimientos de las técnicas de programacién. Estilas distintos, de distintos programadores ala hora de obtener la salucién del problema, daran lugar a algoritmos diferentes, igualmente validos. En esencia, todo problema se puede describir por medio de un algoritmo y las caracteristicas fundamentales que éstos deben cumplir son. Debe ser preciso e indicar el orden de realizacién peso a paso Debe estar definido, sise ejecuta dos o mas veces, debe obtener el mismo resultado cada vez Debe ser finito, debe tener un numero finito de pasos. Pero cuando los problemas son complejos, es necesario descomponer éstos en subproblemas mas simples y, a Su vez, en olfos mas pequefios. Estas estrategias reciben el nombre de diselio descendente 0 disefio modular (tap.dewn dasign). Este sistema se basa en al lema divide y venceras Para representar graficamente los algortmos que vamos a diseflar, tenemos a nuestra disposicién diferentes herramiontas que ayudardn a doseribir cu comportamionto de una forma precisa y genérica, para luego poder codificarlos con el lenguaje que nos interese. Ente otras tenemos. jiagramas de flujo: Esta técnica utilize simbelos gréfices para la representacién del algoritmo. Suele utlizarse en las fases de analisis Peoudocddigo: Esta técnica so basa on ol uso do palabras clave on lenguajo natural, _constantos, variables, ottos objetos, Instrucciones y estructuras de programacion que expresan de forma escrita la solucién dal problema. Es la técnica mas utiizada actualmente. Tablas de decision: En una tabla son representadas las posibles conciciones del problema con sus respectivas acciones. Suele ser una técnica de apoyo al pseudacadigo cuando existen siuaciones condicionales complejas. Debes conocer Acontinuacién te ofrecemos dos enlaces muy interesantes: En el primer video puedes ver los elementos grifices fundamenteles que se utlizan para la generacisn de diagramas de tlujo. En el segundo video so realiza la construccién do un diagrama de fiujo con una herramienta gialica y su transformacion a pseudacédigo 08/07/2013

También podría gustarte