Entornos de Desarrollo (GRADO SUPERIOR)
Por Carlos Casado
()
Información de este libro electrónico
Los contenidos incluidos en este libro abarcan los conceptos básicos de entornos de desarrollo. Se estudian como objetivo principal de la obra los entornos de desarrollo, aprendiendo todas las posibilidades que nos ofrecen. También se aprenderán a utilizar las herramientas disponibles para mejorar y optimizar el proceso de desarrollo de software. Se utiliza como base principal el IDE Visual Studio, uno de los entornos de desarrollo más avanzados y aclamados disponibles en el mercado. Para el correcto entendimiento de todo lo presentado en la obra, se aportan conocimientos de arquitectura de software, que será útil para todo desarrollador. En el transcurso de todo el libro se realiza un enfoque directo, dispuesto para garantizar un aprendizaje rápido y pragmático de todas las herramientas y opciones necesarias para el desarrollo de software, maximizando el uso de los entornos de desarrollo, sin dejar de aportar una base de conocimientos mejorando la calidad del aprendizaje ofrecido._x000D_
Los capítulos incluyen actividades y ejemplos con el propósito de facilitar la asimilación de los conocimientos tratados. Así mismo, se incorporan test de conocimientos y ejercicios propuestos con la finalidad de comprobar que los objetivos de cada capítulo se han asimilado correctamente._x000D_
Además, reúne los recursos necesarios para incrementar la didáctica del libro, tales como un glosario con los términos informáticos necesarios, bibliografía y documentos para ampliación de los conocimientos._x000D_
Relacionado con Entornos de Desarrollo (GRADO SUPERIOR)
Libros electrónicos relacionados
Planificación y Administración de Redes (GRADO SUP.) Calificación: 0 de 5 estrellas0 calificacionesServicios de Red e Internet (GRADO SUPERIOR) Calificación: 0 de 5 estrellas0 calificacionesDiseño de interfaces web (GRADO SUPERIOR) Calificación: 0 de 5 estrellas0 calificacionesServicios en Red (GRADO MEDIO) Calificación: 0 de 5 estrellas0 calificacionesProgramación de inteligencia artificial: Curso práctico Calificación: 0 de 5 estrellas0 calificacionesDomestica tu Mac: SISTEMAS OPERATIVOS Calificación: 0 de 5 estrellas0 calificacionesPython 3. Curso Práctico Calificación: 0 de 5 estrellas0 calificacionesSistemas Operativos en Red (GRADO MEDIO) Calificación: 0 de 5 estrellas0 calificacionesC/C++. Curso de programación. 5ª Edición Calificación: 0 de 5 estrellas0 calificacionesPHP: Programación web avanzada para profesionales Calificación: 0 de 5 estrellas0 calificacionesIniciación a la creación de páginas web Calificación: 0 de 5 estrellas0 calificacionesMicrocontroladores PIC con programación PBP Calificación: 0 de 5 estrellas0 calificacionesEnciclopedia de Microsoft Visual C# (4ª Edición) Calificación: 0 de 5 estrellas0 calificacionesApps HTML5 para móviles: Desarrollo de aplicaciones para smartphones y tablets Calificación: 0 de 5 estrellas0 calificacionesAplicaciones web (GRADO MEDIO) Calificación: 0 de 5 estrellas0 calificacionesConstrucción y diseño de páginas web con html, css y javascript Calificación: 0 de 5 estrellas0 calificacionesGestión de Bases de Datos Calificación: 0 de 5 estrellas0 calificacionesEl libro blanco del HACKER Calificación: 0 de 5 estrellas0 calificacionesCriptografia Esencial Calificación: 0 de 5 estrellas0 calificacionesInvestigación forense de dispositivos móviles Android Calificación: 0 de 5 estrellas0 calificacionesPython Práctico Calificación: 0 de 5 estrellas0 calificacionesProgramación Paginas Web JavaScript y PHP Calificación: 0 de 5 estrellas0 calificacionesHacking ético de redes y comunicaciones Calificación: 0 de 5 estrellas0 calificacionesElaboración de documentos web mediante lenguajes de marcas. IFCD0210 Calificación: 0 de 5 estrellas0 calificacionesCiencia de datos para la ciberseguridad Calificación: 0 de 5 estrellas0 calificacionesSelección, instalación y configuración del software de servidor de mensajería electrónica. IFCT0509 Calificación: 0 de 5 estrellas0 calificacionesLa programación JavaScript Calificación: 0 de 5 estrellas0 calificacionesIntroducción a la creación y administración web con Joomla: Curso paso a paso Calificación: 0 de 5 estrellas0 calificacionesAplicaciones web con PHP Calificación: 0 de 5 estrellas0 calificaciones
Enseñanza de ciencia y tecnología para usted
Inventar para aprender: Guía práctica para instalar la cultura maker en el aula Calificación: 4 de 5 estrellas4/5100 Circuitos de Proyectos Educacionales Calificación: 5 de 5 estrellas5/5La ciencia en el aula: Lo que nos dice la ciencia sobre cómo enseñarla Calificación: 3 de 5 estrellas3/5Neurociencias y educación: Guía práctica para padres y docentes Calificación: 5 de 5 estrellas5/5Las Ciencias 2 - Montessori paso a paso Calificación: 0 de 5 estrellas0 calificacionesQuiero Trabajar Desde Casa, ¿Cómo Empiezo?: Descubre Cómo es Posible Ganar Dinero o Empezar un Negocio desde la Comodidad de tu Hogar Calificación: 0 de 5 estrellas0 calificacionesInfluencers educativos Calificación: 0 de 5 estrellas0 calificacionesCómo Crear un Blog Gratis en Google Blogger Calificación: 5 de 5 estrellas5/5Herramientas digitales para la educación Calificación: 5 de 5 estrellas5/5Estrategias de comunicación en redes sociales: Usuarios, aplicaciones y contenidos Calificación: 0 de 5 estrellas0 calificacionesMetodologías cualitativas en la investigación educativa Calificación: 0 de 5 estrellas0 calificacionesBiología Hecha Realidad: Formas de Enseñar que Inspiran la Construcción de Significado Calificación: 5 de 5 estrellas5/5Prácticas pedagógicas con tecnologías de la información y la comunicación en educación superior Calificación: 5 de 5 estrellas5/5Genética general: Libro de texto Calificación: 4 de 5 estrellas4/5Java a fondo - estudio del lenguaje y desarrollo de aplicaciones - 2a ed. Calificación: 5 de 5 estrellas5/5Investigar en la clase de ciencias Calificación: 4 de 5 estrellas4/5Las Ciencias 1 - Montessori paso a paso Calificación: 0 de 5 estrellas0 calificacionesCuentos sobre STEAM para programar Calificación: 0 de 5 estrellas0 calificacionesAlbert Einstein: El genio tras la teoría de la relatividad Calificación: 0 de 5 estrellas0 calificacionesBig Data en Educación: El futuro digital del aprendizaje, la política y la práctica Calificación: 0 de 5 estrellas0 calificacionesDel sistema solar al ADN: Contar historias para enseñar las teorías científicas en la escuela Calificación: 5 de 5 estrellas5/5Ambientes virtuales de aprendizaje Calificación: 0 de 5 estrellas0 calificacionesComunicación, educación y tecnologías digitales: Tendencias actuales en investigación Calificación: 0 de 5 estrellas0 calificacionesAdministración de redes LAN. Ejercicios prácticos con GNS3 Calificación: 0 de 5 estrellas0 calificacionesAmbientes virtuales de aprendizaje.: Nuevos retos de la educación superior Calificación: 0 de 5 estrellas0 calificacionesInfancia y habilidades STEM: Herramientas para su desarrollo Calificación: 5 de 5 estrellas5/5Gamificacion en el aula.: Los videojuegos como herramienta para la enseñanza de la ciencia. Calificación: 0 de 5 estrellas0 calificaciones¿Cómo abordar la educación del futuro?: Conceptualización, desarrollo y evaluación desde la competencia digital docente Calificación: 0 de 5 estrellas0 calificacionesHabilidades para el Siglo XXI Calificación: 0 de 5 estrellas0 calificacionesEducar en tiempos sintéticos: Pasión por enseñar. Deseo de aprender Calificación: 0 de 5 estrellas0 calificaciones
Comentarios para Entornos de Desarrollo (GRADO SUPERIOR)
0 clasificaciones0 comentarios
Vista previa del libro
Entornos de Desarrollo (GRADO SUPERIOR) - Carlos Casado
Introducción
Este libro surge con el propósito de acercar al lector a los aspectos más importantes que encierran los entornos de desarrollo, aprovechando todas las facilidades y funcionalidades que ofrecen al programador. Con tal propósito, puede servir de apoyo también para estudiantes del Ciclo Formativo de Grado Superior de Informática y de Ingenierías Técnicas.
Hoy en día, existen muchos usuarios y profesionales de la Informática que discuten las ventajas e inconvenientes de algunos entornos de desarrollo y prefieren limitarse al uso exclusivo de uno de ellos. Se planteó que el contenido del libro fuese lo más genérico posible pero, teniendo en cuenta la necesidad de explicar el funcionamiento y uso concreto de determinadas herramientas CASE integradas o no en el entorno de desarrollo, se ha tenido que especificar un IDE como nuestra elección para seleccionar las diferentes herramientas y su manejo. Por ello, para ofrecer un conocimiento completo de su funcionamiento, el libro se centrará en el uso y estudio del Visual Studio 2010, utlizando en su mayoría conocimientos y aplicaciones del lenguaje de programación C#.
Para todo aquel que use este libro en el entorno de la enseñanza (Ciclos Formativos o Universidad), se ofrecen varias posibilidades: utilizar los conocimientos aquí expuestos para inculcar aspectos genéricos de los entornos de desarrollo o simplemente centrarse en preparar a fondo alguno de ellos. La extensión de los contenidos aquí incluidos hace imposible su desarrollo completo en la mayoría de los casos.
El objetivo principal del libro no es proporcionar conocimientos de programación o diseño, aunque se incluyan en su contenido, la información de este texto pretende enseñar el uso avanzado de los entornos de desarrollo para facilitar el desarrollo de software, aprovechando las extensiones y funcionalidades del mismo a la hora de codificar o completar una aplicación mientras se desarrolla.
Ra-Ma pone a disposición de los profesores una guía didáctica para el desarrollo del tema, que incluye las soluciones a los ejercicios expuestos en el texto. Puede solicitarla a [email protected], acreditándose como docente y siempre que el libro sea utilizado como texto base para impartir las clases.
1 Desarrollo de software
OBJETIVOS DEL CAPÍTULO
Reconocer los diferentes tipos de lenguajes de programación y las necesidades que cubren cada uno de ellos.
Comprender el proceso de desarrollo de un software y las diferentes tareas que se deben realizar en las diferentes fases.
Conocer las diferentes técnicas de arquitecturas de software, sus utilidades y las ventajas que ofrece cada una.
1.1 EL PROGRAMA INFORMÁTICO
Definición de programa informático: "Un programa informático es un conjunto de instrucciones que se ejecutan de manera secuencial con el objetivo de realizar una o varias tareas en un sistema".
Un programa informático es creado por un programador en un lenguaje determinado, que será compilado y ejecutado por un sistema. Cuando un programa es llamado para ser ejecutado, el procesador ejecuta el código compilado del programa instrucción por instrucción.
Se podría llegar a decir también que un programa informático es software, pero no sería una definición muy acertada, pues un software comprende un conjunto de programas.
1.1.1 INTERACCIÓN CON EL SISTEMA
El mejor modo para comprender cómo un programa interactúa con un sistema es revisando la funcionalidad básica y el programa básico, irnos directamente al concepto de programa y de sistema en su mínima expresión. Para ello, vamos a revisar el funcionamiento de una única instrucción dentro del conocido simulador von Neumann.
Como hemos comentado brevemente, el procesador ejecutará las instrucciones una a una, pero no solo eso, para cada instrucción realizará una serie de microinstrucciones para llevarla a cabo.
Vamos a realizar el recorrido que efectúa una instrucción de un modo conceptual, nada técnico, profundizando más y más dentro de la interpretación que hace el sistema de nuestro programa. Imaginemos que tenemos un programa extremadamente sencillo que pide por teclado dos números y los suma. La instrucción que realizará la operación de nuestro programa se podría corresponder con la siguiente línea:
c = a + b;
El ordenador tendrá reservada una cantidad de posiciones de memoria definidas por el tipo de variable que se corresponden con las variables de nuestra instrucción. Es decir, nuestras variables a
, b
y c
tendrán unas posiciones de memoria definidas que es donde el sistema almacenará los valores de las variables.
No obstante, el procesador no puede ejecutar esa instrucción por sencilla que sea de un solo golpe, la ALU (Aritmetic Logic Unit) tiene un número muy limitado de operaciones que puede realizar, usualmente SUMAR y RESTAR.
Para esta demostración en concreto, vamos a definir nuestra siguiente máquina de von Neumann:
images/img-12-1.jpgFigura 1.1. Máquina de von Neumann
Además, para nuestra demostración deberemos tener en cuenta una serie de reglas intrínsecas del sistema:
La ALU solo puede realizar una operación a la vez.
El registro temporal de la ALU, el bus y los registros solo pueden almacenar un dato a la vez.
Si definimos (para simplificar el modelo) que las posiciones de memoria de a
, b
y c
se corresponden con los registros R1, R2 y R3, las microinstrucciones que tendría que realizar nuestra máquina serían las siguientes:
R1 – Bus ; Bus – ALU-Temp ; R2 – Bus ; ALU_SUMAR ; ALU – Bus ; Bus – R3
Como es lógico, hoy en día, con los microprocesadores modernos, el funcionamiento, aunque muy similar en esencia, de cómo son interpretadas las instrucciones de nuestro programa por el sistema puede variar, sobre todo en lo que las reglas se refiere.
Sin embargo, hay cosas que no cambian, el programa se sigue almacenando en una memoria no volátil y se sigue ejecutando en la memoria de acceso aleatorio, al igual que todas las variables utilizadas.
La interacción con el sistema no es siempre una relación directa, no todos los programas tienen acceso libre y directo al hardware, es por ello que se definen los programas en dos clasificaciones generales: software de sistema y software de aplicación. Es el software de sistema el que se encarga de controlar y gestionar el hardware, así como de gestionar el software de aplicación, de hecho, en un software de sistema, como el sistema operativo, es en donde se ejecuta realmente el software de aplicación. Será el software de aplicación el que incorpore (gracias al compilador) las librerías necesarias para entenderse con el sistema operativo, y éste a su vez sería el que se comunicase con el hardware.
ACTIVIDADES 1.1
Suponiendo la existencia de una operación en la ALU llamada DECREMENTAR, que utilizase el valor de la ALU-TEMP y le restase 1, especifique cuáles serían las microinstrucciones que se realizarían para multiplicar el contenido de R1 y R2 guardando el resultado en R3.
1.2 LENGUAJES DE PROGRAMACIÓN
Definición de lenguaje de programación:
Un lenguaje de programación es un conjunto de instrucciones, operadores y reglas de sintaxis y semánticas, que se ponen a disposición del programador para que éste pueda comunicarse con los dispositivos de hardware y software existentes
.
El idioma artificial que constituyen los operadores, instrucciones y reglas tiene el objetivo de facilitar la tarea de crear programas, permitiendo con un mayor nivel de abstracción realizar las mismas operaciones que se podrían realizar utilizando código máquina.
En un principio, todos los programas eran creados por el único código que el ordenador era capaz de entender: el código máquina, un conjunto de 0s y 1s de grandes proporciones. Este método de programación, aunque absolutamente efectivo y sin restricciones, convertía la tarea de programación en una labor sumamente tediosa, hasta que se tomó la solución de establecer un nombre a las secuencias de programación más frecuentes, estableciéndolas en posiciones de memoria concretas, a cada una de estas secuencias nominadas se las llamó instrucciones, y al conjunto de dichas instrucciones, lenguaje