Guía Profesional GESTIÓN DITORIAL Clemente Mora González Jefe del Departamento de Fomento Editorial Leticia Mejia García Coordinadora de Fomento Editorial Ulises Ramírez Hernández Coordinador de Diseño Gráfico Miguel Antonio González Vidales Gestión Administrativa Florita Domínguez Villareal Gestión Editorial Mayra Guzmán Gallego Diseño Gráfico DIRECCIÓN GENERAL Av. Panamá #199 Esquina con Buenos Aires. Col. Cuauhtémoc Sur Tels. 01 (686) 9 05 56 00 al 08 Correo Electrónico: [email protected] Página Web: www.cecytebc.edu.mx CICLO ESCOLAR 2012-2 Prohibida la reproducción total o parcial de esta obra incluido el diseño tipográfico y de portada por cualquier medio, electrónico o mecánico, sin el consentimiento por escrito del editor. Al personal Docente interesado en enriquecer el contenido del presente documento, le agradeceremos hacernos llegar sus comentarios o aportaciones a los siguientes correos: [email protected] [email protected] José Guadalupe Osuna Millán Gobernador del Estado de Baja California Javier Santillán Pérez Secretario de Educación y Bienestar Social del Estado CECYTE BC Adrián Flores Ledesma Director General del CECYTE BC Jesús Gómez Espinoza Director Académico Ricardo Vargas Ramírez Director de Administración y Finanzas Olga Patricia Romero Cázares Directora de Planeación Argentina López Bueno Directora de Vinculación Alberto Caro Espino Jefe del Departamento de Docencia MUNICIPIO DE MEXICALI Cristina de los Ángeles Cardona Ramírez Directora del Plantel Los Pinos Laura Gómez Rodríguez Encargada del Plantel San Felipe Carlos Zamora Serrano Director del Plantel Bella Vista Directorio Jesús Ramón Salazar Trillas Director del Plantel Xochimilco Rodolfo Rodríguez Guillén Director del Plantel Compuertas Abraham Limón Campaña Director del Plantel Misiones Francisco Javier Cabanillas García Director del Plantel Guadalupe Victoria Román Reynoso Cervantes Director del Plantel Vicente Guerrero MUNICIPIO DE TIJUANA Martha Xóchitl López Félix Directora del Plantel El Florido María de los Ángeles Martínez Villegas Directora del Plantel Las Águilas Amelia Vélez Márquez Directora del Plantel Villa del Sol Bertha Alicia Sandoval Franco Directora del Plantel Cachanilla Rigoberto Gerónimo González Ramos Director del Plantel Zona Río Jorge Ernesto Torres Moreno Director del Plantel El Niño Mónica Olivia García Brunn Directora del Plantel El Pacífico Efraín Castillo Sarabia Director del Plantel Playas de Tijuana Benito Andrés Chagoya Mortera Director del Plantel Altiplano Juan Martín Alcibia Martínez Director del Plantel La Presa MUNICIPIO DE ENSENADA Alejandro Mungarro Jacinto Director del Plantel Ensenada Emilio Rios Macias Director del Plantel San Quintín MUNICIPIO DE ROSARITO Manuel Ignacio Cota Meza Director del Plantel Primo Tapia Héctor Rafael Castillo Barba Director del Plantel Rosarito Bicentenario MUNICIPIO DE TECATE Guadalupe Castro Valenzuela Encargado del Plantel Tecate MENSAJE DEL GOBERNADOR DEL ESTADO Jóvenes Estudiantes de CECYTE BC: La educación es un valuarte que deben apreciar durante su estancia en el Colegio de Estudios Científicos y Tecnológicos del Estado de Baja California, considerando la formación y calidad educativa que les ofrece la Institución y sus maestros. Por ello, asuman el compromiso que el Gobierno del Estado hace para brindarles educación media superior, a fin de que en lo futuro tengan mejores satisfacciones de vida, y se conviertan en impulsores y promotores del crecimiento exitoso, con la visión que tiene nuestra entidad en el plano nacional. Esta administración tiene como objetivo crear espacios y condiciones apropiadas para que en un futuro inmediato, el campo laboral tenga profesionistas técnicos de acuerdo al perfil de la industria que cada día arriba a nuestra entidad; por lo que los invito a ser mejores en sus estudios, en su familia y en su comunidad. En ustedes se deposita la semilla del esfuerzo y dedicación que caracteriza a los bajacalifonianos. Son el estandarte generacional que habrá de marcar la pauta de nuestro desarrollo.Como Gobierno del Estado, compartimos el reto de ser formadores de los futuros profesionistas técnicos que saldrán del CECYTE BC. Unamos esfuerzos, Gobierno, Sociedad, Maestros y Alumnos, para brindar y recibir una mejor educación en Baja California, ser punta de desarrollo humano, crecimiento industrial y económico, y factor importante del progreso de México. MENSAJE DEL SECRETARIO DE EDUCACIÓN Alumno de CECYTE BC: La educación es una herramienta que aumenta tus oportunidades de desarrollo personal, y permite ampliar tu horizonte de posibilidades de progreso económico y social. Bajo esa perspectiva, el Gobierno del Estado de Baja California asume con responsabilidad su compromiso con los jóvenes en la tarea de crear espacios educativos en el nivel medio superior, y ofrecerles programas de estudios tecnológicos que les permitan integrarse con competencia a fuentes de trabajo y/o continuar estudios superiores. El Colegio de Estudios Científicos y Tecnológicos del Estado de Baja California, es un ejemplo de lo anterior. En las escuelas de esta Institución, los estudiantes pueden encontrar el camino de la superación, y el apoyo para alcanzar las metas que visualizan para forjar su futuro. Entre esos apoyos se encuentran la publicación y entrega de este material educativo, que el CECYTE BC distribuye, con el objetivo de que lo utilices en beneficio de tus estudios. La tarea que han desarrollado maestros, alumnos y autoridades aducativas en torno a CECYTE BC, han convertido a esta Institución en un modelo para la formación de generaciones de profesionistas técnicos que demanda el sector productivo que se asienta en la región. Además de eso, el Cole gio se ha destacado por alentar el acercamiento de los padres de familia con la escuela, como una acción tendiente a fortalecer los vínculos que deben existir entre ellos, los docentes y administrativos en el proceso educativo, por ser esta, una responsabilidad compartida. Por todo esto, te felicito por realizar tus estudios en un plantel del CECYTE BC. Te exhorto a valorar este esfuerzo que hace la sociedad a través de la Administración Estatal, y a que utilices con pertinencia los materiales que se te otorgan para apoyar tu formación profesional. PRESENTACIÓN El libro que tienes en tus manos representa un importante esfuerzo del Colegio de Estudios Científicos y Tecnológicos del Estado de Baja California, que a través de sus academias de profesores te proporciona material de calidad para el estudio de las distintas asignaturas que cursarás en tu preparación como Bachiller Técnico. Los contenidos corresponden a los programas establecidos para cada una de las asignaturas de acuerdo a la reforma integral de la educación media superior, y enriquecidos por las competencias comunes del Sistema Nacional de Bachillerato. Este ejemplar, encierra conocimientos, aprendizaje, análisis y habilidades que deberás de poner en práctica en tu vida diaria, convertida en una acción educativa más, que el Colegio te ofrece para obtener una mejor formación académica. Te invitamos a que valores y obtengas el mayor provecho a esta obra, que fue diseñada especialmente para lo más preciado del Colegio: sus Alumnos. Atentamente Adrian Flores Ledesma DIRECTOR GENERAL DEL CECYTE BC Software Submódulo II ••• MANIPULAR UNA BASE DE DATOS MEDIANTE INTERFASES GRÁFICAS ••• Matro. Alonso José Ricardo Lujambio Irazábal Secretario de Educación Pública Lic. Miguel Ángel Martínez Espinosa Subsecretario de Educación Media Superior Lic. Luis Francisco Mejía Piña Director General de Educación Tecnológica Industrial Lic. Martha Patricia Ibarra Morales Coordinadora Nacional de Organismos Descentralizados Estatales del CECyTE’s Lic. Armando Mendoza Cruz Responsable de Desarrollo Académico de los CECyTE’s Oscar David Bustos Torres Baja California Norte Roberto Rosales Baja California Norte Lic. Rosalba Reyes Rosales Responsable de normatividad académica Biol. Irasema G. Anaya Gálvez Responsable de planes y programas de estudio Ing. Armando Mendoza Cruz Área académica 14 14 Al término del módulo el estudiante es capaz de manipular una base de datos en java e implementar un sistema básico de control, mediante interfaces gráficas, logrando almacenar y acceder a información de forma estructurada conociendo que las bases de datos se usan a través de los llamados sistemas de gestión de bases de datos, o SGBD, , de los cuales podemos encontrar algunos ejemplos como son: Oracle o Sybase entre las bases de datos de pago, y PostgreSQL, MySQL o FireBird entre las libres y gratuitas. Habitualmente los SGBD se dividen en varias partes: un servidor, que se ejecuta en un ordenador determinado, y da acceso al espacio estructurado como una BD usando una variedad de interfaces diferentes, aparte de otra serie de servicios, como autentificación y autorización, y un cliente, que permiten al usuario o a los programas acceder a esos datos. El estudiante será capaz de laborar en áreas de empresas desarrolladoras de software multimedia, sector público, privado o educativo, etc. 15 16 Técnico en Programador de Software Módulo IV Aplicar los Fundamentos de Programación II y los Tópicos de Programación Web. Submódulo II Manipular una base de datos mediante interfaces gráficas. Competencia 1 Competencia 2 Instrumentar estructuras relacionales de mediana complejidad, mediante el manejo de variables, la generación de reportes, pantallas y bases de datos múltiples, para implementar aplicaciones más poderosas y agregar elementos que faciliten el manejo de la base a otros usuarios. Construir una base de datos sencilla, mediante su modificación, ordenación y realización de consulta, para desarrollar aplicaciones elementales. Atributos de la Competencia 9 9 Atributos de la Competencia 9 Realizar consultas de complejidad mediante los campos. Manejo del lenguaje HTML para el desarrollo de páginas web. Explorar una base de datos existente para visualizar su contenido y sus elementos principales. Saberes Saberes 9 9 9 9 9 Sentencias combinadas para consultas complejas. 9 Sentencias HTML. Creación de base de datos en Java. Tecnología Web. HTML. Elementos de Javascript. 9 Estructuras de control en Javascript. 17 18 Bienvenido hoy te presentamos tu guía didáctica de el Sub-módulo II “Manipular una base de datos mediante interfaces gráficas” del módulo IV “Aplicar los fundamentos de programación II y los tópicos de programación web” de tu carrera de técnico en programador de software y te servirá de apoyo para que logres desarrollar conocimientos, habilidades, destrezas y actitudes, que te permitirán lograr las competencias laborales para tu vida. Así mismo al término del módulo el estudiante será capaz de laborar en áreas de: Empresas desarrolladoras de software multimedia, sector educativo, desempeñarse profesionalmente en mercadotecnia, manufactura, finanzas, recursos humanos, administración, informática, planeación, estrategia en empresas de diversos giros económicos, tales como empresas del sector turístico, empresas industriales y de servicio, maquiladoras y entidades de gobierno. Aplicando los conocimientos, valores y conductas congruentes con los requerimientos que plantea el ejercicio de la función de un programador, apegada a los principios constitucionales de legalidad, eficiencia, profesionalismo y honradez. Debes tener presente que para lograr las competencias propuestas, se requiere de todo tu esfuerzo y dedicación, así como de una actitud y disciplina apropiada en las competencias que serán desarrolladas en el aula, taller y/o industria para ti. 19 20 Construir una base de datos sencilla, mediantesu modificación, ordenación y realización deconsulta, para desarrollar aplicacioneselementales. 1 1. Modelo Relacional. 2. Lenguaje de Definición de Datos. 3. Conceptos de del lenguaje SQL. 4. Crear bases de datos con MySql. 5. Borrado de datos con MySql 6. Actualizar base de datos. 7. Modificar en una base de datos. 8. Consultas. 9. Tecnología WEB. 10. Lenguajes para Internet. 11. Lenguaje HTML. 12. Breve historia de HTML. 13. Elementos de HTML. 14. Estructura de HTML. 15. Concepto de Web semántica. 16. ¿Para que nos sirve la Web semántica? 1. 2. 3. 4. 5. 6. 7. Modelo entidad relación. Ejemplo como crear una base de datos y la tabla. Actualizar una base de datos. Ejemplo de una consulta. Ejemplos de html. Ejemplo de web semántica en búsquedas. Ejemplo de web semántica en búsquedas. 21 1. 2. 3. 4. 5. 6. 7. 8. 9. Identificación grafica de un modelo entidad relación. Mapa Mental. Crear una base de datos. Elaboración de consultas. Diseño de página web. Diseño de estilos y efectos. Elaborar formularios Web. elaborar tablas Web. Cuestionario de la Web Semántica. 1. 2. 3. 4. 5. 6. 7. Creación de diagrama entidad relación. Elaboración de bases de datos desde el DDL. Elaboración de tablas en bases de datos desde un DDL. Registros de bases de datos desde el DDL. Elaboración de consultas en bases de datos desde el DDL. Creación de bases de datos sencillas desde MySql. Pagina Web. 22 Los Avances de la Ciencia y la Tecnología han puesto al hombre en un plano intermedio entre lo tangible e intangible computacionalmente hablando, es ahora tan común el convivir con un computador diariamente que cada vez se hace más imperativo la mejor interacción hombre-máquina a través de una adecuada interfaz (Interfaz de Usuario), que le brinde tanto comodidad, como eficiencia. El presente guía didáctica es una introducción al mundo de las Interfaz de Usuarios, en el están los conceptos y nociones básicas que permitirán en adelante adentrarnos más en este mundo fascinante. La idea fundamental en el concepto de interfaz es el de mediación, entre hombre y máquina. La interfaz es lo que "media", lo que facilita la comunicación, la interacción, entre dos sistemas de diferente naturaleza, típicamente el ser humano y una máquina como el computador. Esto implica, además, que se trata de un sistema de traducción, ya que los dos "hablan" lenguajes diferentes: verbo-icónico en el caso del hombre y binario en el caso del procesador electrónico. De una manera más técnica se define a Interfaz de usuario, como conjunto de componentes empleados por los usuarios para comunicarse con las computadoras. El usuario dirige el funcionamiento de la máquina mediante instrucciones, denominadas genéricamente entradas. Las entradas se introducen mediante diversos dispositivos, por ejemplo un teclado, y se convierten en señales electrónicas que pueden ser procesadas por la computadora. Estas señales se transmiten a través de circuitos conocidos como bus, y son coordinadas y controladas por la unidad de proceso central y por un soporte lógico conocido como sistema operativo. Una vez que la UPC ha ejecutado las instrucciones indicadas por el usuario, puede comunicar los resultados mediante señales electrónicas, o salidas, que se transmiten por el bus a uno o más dispositivos de salida, por ejemplo una impresora o un monitor. Resumiendo entonces podemos decir que, una interfaz de software es la parte de una aplicación que el usuario ve y con la cual interactúa. Está relacionada con la subyacente estructura, la arquitectura, y el código que hace el trabajo del software, pero no se confunde con ellos. La interfaz incluye las pantallas, ventanas, controles, menús, metáforas, la ayuda en línea, la documentación y el entrenamiento. Cualquier cosa que el usuario ve y con lo cual interactúa es parte de la interfaz. Una interfaz inteligente es fácil de aprender y usar. Permite a los usuarios hacer su trabajo o desempeñar una tarea en la manera que hace más sentido 23 para ellos, en vez de tener que ajustarse al software. Una interfaz inteligente se diseña específicamente para la gente que la usará. Así mismo decimos que una base de datos es una colección de información organizada de forma que un programa de ordenador pueda seleccionar rápidamente los fragmentos de datos que necesite. Una base de datos es un sistema de archivos electrónico. En conclusión podemos decir que el conocimiento de estos puntos clave, nos permitirán enfocarnos mejor al estudio de este submodulo. Conociendo que las Interfaces de usuario, son como vínculo de inmersión del hombre en el entorno de trabajo tecnológico actual, realzan su importancia en el desarrollo de nuevos productos, más eficaces, eficientes e interactivos, que es lo que el mercado demanda. Puntos, cómo los históricos y evolutivos, deben ser abordados de manera más investigativa, recordemos que "conocer el pasado nos proyecta al futuro". Otras puntualizaciones de clasificación obligarán a que investiguemos y propongamos, nuevas distribuciones clasificatorias, útiles a futuro en una carrera de desarrollo de software. 24 ATRIBUTOS DE LA COMPETENCIA RESULTADO DE APRENDIZAJE 9 Realizar consultas de complejidad mediante los campos. 9 Manejo del lenguaje HTML para el desarrollo de páginas web. Al término del módulo el estudiante realiza una aplicación Web, eligiendo las tecnologías más adecuadas en función del tipo de aplicación a realizar. . El encuadre grupal es importante para que el docente dé a conocer al estudiante los contenidos del sub-módulo, las competencias a desarrollar, criterios de evaluación y la forma de cómo se obtendrán los desempeños esperados mediante la co-evaluación, autoevaluación y heteroevaluación, durante el desarrollo del semestre de la asignatura en cuestión, así como el reglamento interno del grupo, la integración de equipos, etc. Ayudara a dar un juicio objetivo en tu evaluación. Es muy importante en este apartado saber los conocimientos previos que el estudiante posee, para que el docente visualice de donde partir en el submódulo correspondiente. Es muy importante el encuadre grupal ya que es aquí donde conoce el estudiante como va hacer evaluado. 25 Nombre Modelo Relacional. No. 1 Instrucciones Elaborar un diagrama entidad-relación para el Alumno 9 Saberes a adquirir Sentencias combinadas para consultas complejas. Manera Didáctica de Lograrlos Investiga las figuras para la representación grafica del modelo entidad relación. Modelo entidad-relación Los diagramas o modelos entidad-relación (denominado por su siglas, ERD “DiagramEntityrelationship”) son una herramienta para el modelado de datos de un sistema de información. Estos modelos expresan entidades relevantes para un sistema de información, sus interrelaciones y propiedades. El Modelo de Entidad Relación es un modelo de datos basado en una percepción del mundo real que consiste en un conjunto de objetos básicos llamados entidades y relaciones entre estos objetos, implementándose en forma gráfica a través del Diagrama Entidad Relación. Hablamos de ejemplares cuando nos referimos a una clase de objetos con características similares Se puede definir cono Entidad a cualquier objeto, real o abstracto, que existe en un contexto determinado o puede llegar a existir y del cual deseamos guardar información Ejemplares = registros Entidad = Tabla Ejemplares de información similar se agrupan en entidades 26 Nombre Instrucciones para el Alumno Competencias Genéricas a Desarrollar Manera Didáctica de Lograrlas Modelo entidad relación. No. 1 Identifica gráficamente el modelo entidad relación. Escucha, interpreta y emite mensajes pertinentes en distintos contextos mediante la utilización de medios, códigos y herramientas apropiados. Observa como esta diseñado el modelo entidad relación. 27 Nombre Instrucciones para el Alumno Competencias Genéricas a Desarrollar Manera Didáctica de Lograrlas Identificación grafica de un modelo entidad relación. No. 1 Sobre la línea escribe la palabra verdadero si corresponde al modelo entidad relación de lo contrario escribe falso. Escucha, interpreta y emite mensajes pertinentes en distintos contextos mediante la utilización de medios, códigos y herramientas apropiados. Mediante la observación identifica el modelo entidad relación. _____________ _______________________ 28 Nombre Competencia a Desarrollar Creación de diagrama entidad relación. No. 1 Construir una base de datos sencilla, mediante su modificación, ordenación y realización de consulta, para desarrollar aplicaciones elementales. Atributos de la competencia 9 Realizar consultas de complejidad mediante los campos. Instrucciones Elabora un diagrama entidad relación para el departamento de recursos humanos para el Alumno de un hotel. Instrucciones para el Docente Proporcionar la información así como el software necesario para que los estudiantes elaboren la practica solicitada. Recursos materiales de apoyo Computadora, dispositivos de almacenamiento, impresora, hojas blancas, lápiz, borrador, colores. Competencias Genéricas a Desarrollar Manera Didáctica de Lograrlas Desarrolla innovaciones y propone soluciones a problemas a partir de métodos establecidos. El estudiante muestra su interés y participa de manera entusiasta para desarrollar el trabajo asignado. 29 Nombre Lenguaje de Definición de Datos No. 2 Instrucciones Analiza la información referente al DDL para el Alumno Saberes a adquirir 9 Sentencias combinadas para consultas complejas. Manera Didáctica de Lograrlos Mediante el análisis de la información crea y construye su propio concepto del DDL. Un lenguaje de definición de datos (Data Definition Language, DDL por sus siglas en inglés) es un lenguaje proporcionado por el sistema de gestión de base de datos que permite a los usuarios de la misma llevar a cabo las tareas de definición delas estructuras que almacenarán los datos así como de los procedimientos o funciones que permitan consultarlos. Ya sea a usuarios específicos o a un rol credo dentro de la base de datos. La principal herramienta de una base de datos, el sistema gestor de bases de datos (DBMS). A través de éste se realizan todas las operaciones con los datos (consultas y transacciones), de forma que al DBA no le atañe la manera en que los datos se encuentran almacenados físicamente, pudiéndose concentrar en los aspectos conceptuales en cuanto a diseño, desarrollo y mantenimiento. Un DBMS típico integra los siguientes componentes: 9 9 9 9 Un lenguaje de definición de datos (DDL: Data Definition Language). Un lenguaje de manipulación de datos (DML: Data Manipulation Language) Un lenguaje de consulta (QL: Query Language). De forma accesoria, pero ya casi obligada, los DBMS modernos añaden un interfaz de usuario gráfico (GUI: Graphical User Interface). 9 consultas mediante ejemplo (posiblemente gráficas) ((G)QBE: (Graphical) Query By Example) El QL por excelencia es el llamado Structured Query Language (SQL), que, aun con muchas modificaciones y adiciones, es un estándar de las DBMS relacionales (RDBMS: Relational Data base Management System). Hoy en día, sin embargo, con la llegada de las DBMS orientadas a objetos (ODBMS: Object Data base Management System), otros estándar de consulta se han hecho necesarios; así ha nacido otro estándar, OQL (Objec tQuery Language), como resultado de una de las primeras implementaciones de ODBMSs 30 (O2, de O2 Technologies). Además, una base de datos puede ser consultada y modificada mediante técnicas "externas", es decir, mediante lenguajes de programación de propósito general, típicamente de tercera generación (3GL). Hoy en día, estas técnicas se hallan muy avanzadas, existiendo estándares que simplifican el acceso a diferentes DBMSs de forma transparente, tales como ODBC (Open Database Connectivity), que garantizan el acceso a los datos de bases, posiblemente remotas, de distintas compañías. ¿Qué es MySQL? MySQL es el servidor de bases de datos relacionales más popular, desarrollado y proporcionado por MySQL AB. MySQL AB es una empresa cuyo negocio consiste en proporcionar servicios en torno al servidor de bases de datos MySQL. MySQL es un sistema de administración de bases de datos Una base de datos es una colección estructurada de datos. La información que puede almacenar una base de datos puede ser tan simple como la de una agenda, un contador, o un libro de visitas, ó tan vasta como la de una tienda en línea, un sistema de noticias, un portal, o la información generada en una red corporativa. Para agregar, accesar, y procesar los datos almacenados en una base de datos, se necesita un sistema de administración de bases de datos, tal como MySQL. MySQL es un sistema de administración de bases de datos relacionales Una base de datos relacional almacena los datos en tablas separadas en lugar de poner todos los datos en un solo lugar. Esto agrega velocidad y flexibilidad. Las tablas son enlazadas al definir relaciones que hacen posible combinar datos de varias tablas cuando se necesitan consultar datos. La parte SQL de "MySQL" significa "Lenguaje Estructurado de Consulta", y es el lenguaje más usado y estandarizado para accesar a bases de datos relacionales. MySQL es Open Source Open Source significa que la persona que quiera puede usar y modificar MySQL. Cualquiera puede descargar el software de MySQL de Internet y usarlo sin pagar por ello. Inclusive, cualquiera que lo necesite puede estudiar el código fuente y cambiarlo de acuerdo a sus necesidades. MySQL usa la licencia GPL (Licencia Pública General GNU), para definir qué es lo que se puede y no se puede hacer con el software para diferentes situaciones. Sin embargo, si uno está incómodo con la licencia GPL o tiene la necesidad de incorporar código de MySQL en una aplicación comercial es posible comprar una versión de MySQL con una licencia comercial ¿Por qué usar MySQL? El servidor de bases de datos MySQL es muy rápido, seguro, y fácil de usar. Si eso es lo que se está buscando, se le debe dar una oportunidad a MySQL. Se pueden encontrar comparaciones de desempeño con algunos otros manejadores de bases de datos en la página de MySQL. 31 El servidor MySQL fue desarrollado originalmente para manejar grandes bases de datos mucho más rápido que las soluciones existentes y ha estado siendo usado exitosamente en ambientes de producción sumamente exigentes por varios años. Aunque se encuentra en desarrollo constante, el servidor MySQL ofrece hoy un conjunto rico y útil de funciones. Su conectividad, velocidad, y seguridad hacen de MySQL un servidor bastante apropiado para accesar a bases de datos en Internet. Algunos detalles técnicos de MySQL El software de bases de datos MySQL consiste de un sistema cliente/servidor que se compone de un servidor SQL multihilo, varios programas clientes y bibliotecas, herramientas administrativas, y una gran variedad de interfaces de programación (APIs). Se puede obtener también como una biblioteca multihilo que se puede enlazar dentro de otras aplicaciones para obtener un producto más pequeño, más rápido, y más fácil de manejar. 32 Nombre Mapa Mental. No. 2 Instrucciones para el Alumno Elabora un mapa mental acerca de MySql. Competencias Genéricas a Desarrollar Escucha, interpreta y emite mensajes pertinentes en distintos contextos mediante la utilización de medios, códigos y herramientas apropiados. Manera Didáctica de Lograrlas Analiza y desarrolla información para realizar un mapa mental de MySql. Para realizar esta actividad es muy importante haber comprendido para que te puede servir el conocer MySql. 33 Nombre Conceptos de del lenguaje SQL No. 3 Instrucciones Investigar los conceptos de los elementos del lenguaje SQL: SELECT, FROM, para el Alumno WHERE,ALTER, TABLE, ADD, BETWEEN, CREATE,DATABASE, ETC. Saberes a adquirir 9 Sentencias combinadas para consultas complejas. Manera Didáctica de Lograrlos Investiga, analiza e interpreta los comandos de SQL Investigar los conceptos de los elementos dellenguaje SQL: SELECT, FROM, WHERE,ALTER, TABLE, ADD, BETWEEN, CREATE,DATABASE, ETC. Investiga los comandos como por ejemplo: CREATE, DROP, ALTER, SELECT, INSERT, DELETE, UPDATE. Investiga clausulas tales como: FROM, WHERE, GROUP BY, HAVING, ORDER BY. Así como tambiénte recomendamos investigar los operadores lógicos, operadores de comparación y por ende las funciones de agregado. Con esto podrás conocer y diseñar bases de datos desde el lenguaje de definición de datos de manera eficiente así como también podrás comprender a profundidad cada concepto, comando y clausula investigada. De cualquier otra forma te presentamos en la siguiente sección, referente a esto, lo cual te servirá de ayuda en la compresión de esta actividad, te recordamos que esta información es básica y deberás realizar tu investigación complementaria. 34 Comandos DLL Comando Descripción CREATE Utilizado para crear nuevas tablas, campos e índices DROP Empleado para eliminar tablas e índices ALTER Utilizado para modificar las tablas agregando campos o cambiando la definición de los campos. Comandos DML Comando Descripción SELECT Utilizado para consultar registros de la base de datos que satisfagan un criterio determinado INSERT Utilizado para cargar lotes de datos en la base de datos en una única operación. UPDATE Utilizado para modificar los valores de los campos y registros especificados DELETE Utilizado para eliminar registros de una tabla de una base de datos Cláusulas Las cláusulas son condiciones de modificación utilizadas para definir los datos que desea seleccionar o manipular. Cláusula FROM WHERE GROUP BY HAVING ORDER BY Descripción Utilizada para especificar la tabla de la cual se van a seleccionar los registros Utilizada para especificar las condiciones que deben reunir los registros que se van a seleccionar Utilizada para separar los registros seleccionados en grupos específicos Utilizada para expresar la condición que debe satisfacer cada grupo Utilizada para ordenar los registros seleccionados de acuerdo con un orden específico 35 Operadores Lógicos Operador Uso AND Es el "y" lógico. Evalúa dos condiciones y devuelve un valor de verdad sólo si ambas son ciertas. OR Es el "o" lógico. Evalúa dos condiciones y devuelve un valor de verdad si alguna de las dos es cierta. NOT Negación lógica. Devuelve el valor contrario de la expresión. Operadores de Comparación Operador Uso < Menor que > Mayor que <> Distinto de <= Menor ó Igual que >= Mayor ó Igual que = Igual que BETWEEN Utilizado para especificar un intervalo de valores. LIKE In Utilizado en la comparación de un modelo Utilizado para especificar registros de una base de datos 36 Nombre Crear bases de datos con MySql. No. 4 Instrucciones Analiza la información que se presenta para el Alumno Saberes a adquirir 9 Sentencias combinadas para consultas complejas. Manera Didáctica de Lograrlos Analiza y comprende los comandos de un DDL para la creación de bases de datos. Una vez que conoces los comandos, es el momento de acceder a una base de datos. Suponga que en su hogar posee varias mascotas y desea registrar distintos tipos de información sobre ellas. Puede hacerlo si crea tablas para almacenar sus datos e introduce en ellas la información deseada. Entonces, podrá responder una variedad de preguntas acerca de sus mascotas recuperando datos desde las tablas. Esta sección le muestra como: 9 9 9 9 9 Crear una base de datos Crear una tabla Introducir datos en la tabla Recuperar datos desde la tabla de varias maneras Emplear múltiples tablas 37 Nombre Ejemplo como crear una base de datos y la tabla. No. 2 Analiza el siguiente código y sus comandos para la creación de una base de datos Instrucciones desde su inicio con su respectiva tabla. para el Alumno Competencias Genéricas a Desarrollar Manera Didáctica de Lograrlas Escucha, interpreta y emite mensajes pertinentes en distintos contextos mediante la utilización de medios, códigos y herramientas apropiados. Analiza e interpreta la información que a continuación se presenta. Si te estás preguntando ¿Cómo crear una base de datos en mysql? pero no tienes la menor idea, aquí te ayudaremos a solucionarlo Para todos aquellos que nunca han creado una base de datos en mysql y se preguntan cuál es su estructura aquí está un ejemplo muy simple de base de datos en mysql: create database if not exists `ejemplode`; use `ejemplode`; CREATE TABLE `basedatosmysql` ( `id` smallint(7) unsigned NOT NULL auto_increment, `nombre` varchar(50) NOT NULL default '', `categoria` varchar(50) NOT NULL default '', `descripcion` text NOT NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1 PACK_KEYS=0 AUTO_INCREMENT=8140 ; O bien dela siguiente forma: Creación de la base de datos Una vez dentro de MySQL, el primer paso es crear la base de datos: Createdatabase postal; 38 Nombre Instrucciones para el Alumno Crear una base de datos. No. 3 Observa la siguiente tabla de perfumería, y realiza como ejercicio la creación de una base de datos con MySql utilizando las cláusulas correspondientes sabiendo que pertenece a la base de datos Sears. Competencias Genéricas a Desarrollar Escucha, interpreta y emite mensajes pertinentes en distintos contextos mediante la utilización de medios, códigos y herramientas apropiados. Manera Didáctica de Lograrlas Desarrolla, analiza y aplica la creación de bases de datos en su cuaderno como ejercicio. Feld Perfume Marca Depto Item X_cont_ml X_precio X_pais_origen Fecha Type Vachar(20) Vachar(20) Char(2) Int(4) Int(3) Float(6) Vachar(20) Date Null Key Yes Yes Yes Yes Yes Yes Yes Yes Default Extra Null Null Null Null Null Null Null Null Recuerda utilizar el comando USE de MySql ya que la base de datos ya fue creada. 39 Nombre Competencia a Desarrollar Elaboración de bases de datos desde el DDL No. 2 Construir una base de datos sencilla, mediante su modificación, ordenación y realización de consulta, para desarrollar aplicaciones elementales. Atributos de la competencia 9 Realizar consultas de complejidad mediante los campos. Instrucciones Elaborar una base de datos en MySql de una veterinaria. Creando la base de datos para el Alumno desde cero. Instrucciones para el Docente Proporcionar la información así como el software necesario para que los estudiantes elaboren la práctica solicitada. Recursos materiales de apoyo Computadora, impresora, dispositivo de almacenamiento, Lenguaje de definición de datos, hojas blancas. Competencias Genéricas a Desarrollar Manera Didáctica de Lograrlas Escucha, interpreta y emite mensajes pertinentes en distintos contextos mediante la utilización de medios, códigos y herramientas apropiados. Elaborando practicas manejado el lenguaje de definición de datos. 40 Nombre Competencia a Desarrollar Elaboración de tablas en bases de datos desde un DDL. No. 3 Construir una base de datos sencilla, mediante su modificación, ordenación y realización de consulta, para desarrollar aplicaciones elementales. Atributos de la competencia 9 Realizar consultas de complejidad mediante los campos. Instrucciones Crear las tablas necesarias para la base de datos de una veterinaria en MySql. para el Alumno Instrucciones para el Docente Proporcionar la información así como el software necesario para que los estudiantes elaboren la práctica solicitada. Recursos materiales de apoyo Computadora, impresora, dispositivo de almacenamiento, Lenguaje de definición de datos, hojas blancas. Competencias Genéricas a Desarrollar Manera Didáctica de Lograrlas Escucha, interpreta y emite mensajes pertinentes en distintos contextos mediante la utilización de medios, códigos y herramientas apropiados. Elaborando practicas manejado el lenguaje de definición de datos. 41 Nombre Borrado de datos con MySql No. 5 Instrucciones Analiza la información que se presenta para el Alumno Saberes a adquirir 9 Sentencias combinadas para consultas complejas. Manera Didáctica de Lograrlos Analiza y comprende la sentencia de borrado de un registro por un DDL dentro de una de bases de datos. Borrado de datos. La sentencia DELETE. Para borrar datos de una tabla, debemos utilizar la sentencia DELETE. La sintaxis de la sentencia DELETE es la siguiente: DELETE FROM <nombre_tabla> [ WHERE<condicion>]; Cuando trabajemos con la sentencia DELETE debemos tener en cuenta las siguientes consideraciones: • • Solo podemos borrar datos de una única tabla. Cuando borramos datos de una vista, los estamos borrando también de la tabla. Las vistas son solo una forma de ver los datos, no una copia. 42 Nombre Actualizar base de datos. No. 6 Instrucciones Analiza la información que se presenta para el Alumno Saberes a adquirir 9 Sentencias combinadas para consultas complejas. Manera Didáctica de Lograrlos Analiza y comprende la sentencia de actualizar datos desde un DDL dentro de una de bases de datos. Normalmente, las informaciones presentes en una base de datos no son estáticas, sino que evolucionan en el tiempo. Existe, por tanto, la necesidad no sólo de añadir nuevos datos, sino de modificar los que están ya incluidos en las tablas de la base de datos. Las instrucciones SQL que se usan para este fin son UPDATE y DELETE. La primera modifica los valores presentes en una o más columnas de una o más líneas de una tabla. La segunda elimina una o más líneas de una tabla. La sintaxis de UPDATE es la siguiente: UPDATE nombre_tabla SET lista_asignaciones [ WHEREexpresión_condicional ] Las asignaciones se especifican del modo: nombre_columna = expresión_escalar La instrucción UPDATE actualiza las columnas de la tabla que se han especificado en la cláusula SET, utilizando los valores que son calculados por las correspondientes expresiones escalares. Si se expresa también la cláusula WHERE, se actualizan sólo las líneas que satisfacen la expresión condicional. Véase que la expresión escalar usada para actualizar una columna puede ser también el resultado de una query escalar, es decir una query que devuelve una sola línea y una sola columna. 43 Nombre Actualizar una base de datos. No. 3 Analiza la sintaxis del código de SQL e interpreta la manera de actualizar en Instrucciones MySql para el Alumno Competencias Genéricas a Desarrollar Manera Didáctica de Lograrlas Escucha, interpreta y emite mensajes pertinentes en distintos contextos mediante la utilización de medios, códigos y herramientas apropiados. Analiza la sintaxis de MySql para actualizar un registro dentro de una base de datos Veamos un ejemplo: UPDATE Person SET given_names = 'Stefano' WHERE surname = 'Spaccapietra' La instrucción anterior cambia el valor de la columna given_name de la tabla Person en las líneas (en nuestro caso es una sola) en que la columna surname tiene valor 'Spaccapietra'. La sintaxis de DELETE es: DELETE FROM nombre_tabla [ WHEREexpresión_condicional ] La instrucción delete elimina de una tabla todas las líneas que satisfacen la expresión condicional de la cláusula WHERE. Si WHERE no se especifica, se cancelan todas las líneas de la tabla. Si en la definición de la tabla se han especificado las cláusulas ON UPDATE u ON DELETE, en el momento en que se ejecutan estas operaciones también se ejecutan las que habían estado previstas en las columnas referenciadas (CASCADE, SET DEFAULT o SET NULL). 44 Nombre Modificar en una base de datos. No. 7 Instrucciones Analiza la información que se presenta para el Alumno Saberes a adquirir 9 Sentencias combinadas para consultas complejas. Manera Didáctica de Lograrlos Analiza y comprende la sentencia de modificar un registro de un DDL dentro de una de bases de datos. Cómo modificar los datos ya presentes en la base de datos. A veces, sin embargo, no basta con modificar los datos, sino que es necesario actualizar la estructura misma de la base de datos para conseguir que se puedan representar nuevas informaciones. Desde el momento en que la estructura de la base de datos se da sustancialmente por la unión de las tablas que la componen, su actualización corresponde a la eliminación de tablas o al cambio de sus características. Para eliminar una tabla de una base de datos la orden SQL que hay que usar es DROP TABLE: DROP TABLE nombre_tabla{ RESTRICT | CASCADE } nombre_tabla es el nombre de la tabla que tiene que será eliminada.Si se especifica la cláusula CASCADE, se eliminan automáticamente los vínculos de integridad y las vistas (view) en que la tabla está implicada. Y viceversa: si se especifica la cláusula RESTRICT y existen vínculos de integridad o vistas que se refieran a la tabla, la operación fracasa. 45 Nombre Competencia a Desarrollar Registros de bases de datos desde el DDL. No. 4 Construir una base de datos sencilla, mediante su modificación, ordenación y realización de consulta, para desarrollar aplicaciones elementales. Atributos de la competencia 9 Realizar consultas de complejidad mediante los campos. Instrucciones Utiliza las opciones de actualizar, modificar y eliminaren una base de datos deuna para el Alumno veterinaria con MySql. Instrucciones para el Docente Proporcionar la información así como el software necesario para que los estudiantes elaboren la práctica solicitada. Recursos materiales de apoyo Computadora, impresora, dispositivo de almacenamiento, Lenguaje de definición de datos, hojas blancas. Competencias Genéricas a Desarrollar Manera Didáctica de Lograrlas Escucha, interpreta y emite mensajes pertinentes en distintos contextos mediante la utilización de medios, códigos y herramientas apropiados. Elaborando practicas manejado el lenguaje de definición de datos. 46 Nombre Consultas. No. 8 Instrucciones Analiza la información que se presenta para el Alumno Saberes a adquirir 9 Sentencias combinadas para consultas complejas. Manera Didáctica de Lograrlos Comprende el concepto de una consulta en una base de datos ¿Qué es una consulta? Básicamente, una consulta (query) es una forma de buscar, encontrar y exhibir determinada información, extrayéndola del cúmulo de datos que almacena la base. Los datos que responderán a la consulta pueden provenir de una o varias tablas. En la figura 1.2 el recuadro griseado titulado "Una vista del cliente" es un formulario que toma los datos de una consulta, la que agrupa información proveniente de las tablas de clientes, de provincias, de categorías IVA y de vendedores. A la respuesta de la consulta se la denomina hoja de respuestas dinámicas. Se le llama dinámica porque cualquier dato que se modifique en la mencionada hoja (que podrían ser, por ejemplo, los del recuadro gris de la figura), es actualizado en la(s) tabla(s) correspondientes. 47 Nombre Instrucciones para el Alumno Competencias Genéricas a Desarrollar Manera Didáctica de Lograrlas Ejemplo de una consulta. No. 4 Analiza los ejemplos de consultas en una base de datos Escucha, interpreta y emite mensajes pertinentes en distintos contextos mediante la utilización de medios, códigos y herramientas apropiados. Analiza la forma de saber que es una consulta en una base de datos Como ejemplo, diremos que con una consulta podremos: 9 Localizar inmediatamente el nombre y la dirección de una determinada persona. 9 Imprimir cartas y etiquetas dirigidas a residentes de determinada provincia. 9 Extender una orden de reposición para productos que hayan llegado a un límite predetermina-do de sus existencias. 9 Imprimir un resumen total de ventas, con subtotales por productos o fechas. 9 Imprimir cartas recordatorias de vencimientos a 30, 60 o más días. Recuerda: Las consultas son las que trabajamos en la pantalla del monitor; de esta manera podremos ingresar y modificar los datos directamente en el formulario de la pantalla, formulario que habremos diseñado previamente según nuestra necesidad y en el que podremos incluir también material gráfico (fotos) y sonidos. 48 Nombre Elaboración de consultas. No. 4 Instrucciones para el Alumno Elabora una consulta en hojas blancas o en el cuaderno y presenta a tu maestro. Competencias Genéricas a Desarrollar Escucha, interpreta y emite mensajes pertinentes en distintos contextos mediante la utilización de medios, códigos y herramientas apropiados. Manera Didáctica de Lograrlas Desarrolla, analiza y aplica la elaboración de consultas en DDL. Considera lo siguiente: Las consultas de selección se utilizan para indicar al motor de datos que devuelva información de las bases de datos, esta información es devuelta en forma de conjunto de registros que se pueden almacenar en un objeto recordset. Este conjunto de registros es modificable. Consultas básicas La sintaxis básica de una consulta de selección es la siguiente: SELECT Campos FROM Tabla; En donde campos es la lista de campos que se deseen recuperar y tabla es el origen de los mismos, por ejemplo: SELECT Nombre, Telefono FROM Clientes; Esta consulta devuelve un recordset con el campo nombre y teléfono de la tabla clientes. 49 Nombre Competencia a Desarrollar Elaboración de consultas en bases de datos desde el DDL. No. 5 Construir una base de datos sencilla, mediante su modificación, ordenación y realización de consulta, para desarrollar aplicaciones elementales. Atributos de la competencia 9 Realizar consultas de complejidad mediante los campos. Instrucciones Elaborar por lo menos dos consultas de la base de datos de la veterinaria en para el Alumno MySql. Instrucciones para el Docente Proporcionar la información así como el software necesario para que los estudiantes elaboren la practica solicitada. Recursos materiales de apoyo Computadora, impresora, dispositivo de almacenamiento, Lenguaje de definición de datos, hojas blancas. Competencias Genéricas a Desarrollar Manera Didáctica de Lograrlas Escucha, interpreta y emite mensajes pertinentes en distintos contextos mediante la utilización de medios, códigos y herramientas apropiados. Elaborando practicas manejado el lenguaje de definición de datos MySql. 50 Nombre Competencia a Desarrollar Creación de bases de datos sencillas desde MySql. No. 6 Construir una base de datos sencilla, mediante su modificación, ordenación y realización de consulta, para desarrollar aplicaciones elementales. Atributos de la competencia 9 Realizar consultas de complejidad mediante los campos. Instrucciones Elaborar una base de datos sencilla de un consultorio dental en MySql. para el Alumno Instrucciones para el Docente Proporcionar la información así como el software necesario para que los estudiantes elaboren la práctica solicitada. Recursos materiales de apoyo Computadora, impresora, dispositivo de almacenamiento, Lenguaje de definición de datos, hojas blancas. Competencias Genéricas a Desarrollar Manera Didáctica de Lograrlas Escucha, interpreta y emite mensajes pertinentes en distintos contextos mediante la utilización de medios, códigos y herramientas apropiados. Elaborando practicas manejado el lenguaje de definición de datos MySql. Recuerda No olvidar tu dispositivo de almacenamiento para la realización de tus prácticas. 51 Nombre Tecnología WEB. No. 9 Instrucciones Analiza e Investiga sobre la tecnología web. para el Alumno Saberes a adquirir 9 Sentencias HTML. Manera Didáctica de Lograrlos Analiza la información sobre tecnología web. Web es un vocablo inglés que significa “red”, “telaraña” o “malla”. El concepto se utiliza en el ámbito tecnológico para nombrar a una red informática y, en general, a Internet (en este caso, suele escribirse como Web, con la W mayúscula). El término, de todas formas, tiene varios usos. Además de nombrar a Internet en general, la palabra web puede servir hacer mención a una página web, un sitio web o hasta un servidor web. Una página web es un documento que incluye un archivo HTML con texto, imágenes, videos, animaciones Flash, etc. Al conjunto de páginas web que suelen formar parte del mismo dominio o subdominio de Internet se lo conoce como sitio web. Dentro del sitio web, todas las páginas guardan alguna relación entre sí y están vinculadas mediante vínculos (también conocidos como enlaces, hipervínculos, hiperenlaces o links). El servidor web, por otra parte, es un programa creado para transferir páginas web a través de la implementación del protocolo HTTP. Por extensión, se denomina servidor a la computadora donde se ejecuta dicho tipo de software. Web 2.0, por otra parte, es un concepto que permite nombrar a las aplicaciones de Internet que facilitan la interacción de los usuarios. Los sitios que forman parte de la Web 2.0 posibilitan que los internautas compartan información y desarrollen tareas de forma mancomunada. 52 Entre los ejemplos de Web 2.0 pueden nombrarse a las redes sociales (como Facebook), los portales de alojamiento de videos (YouTube) e imágenes (Flickr) y los servicios wikis (Wikipedia). Analiza e investiga más acerca de tecnología Web. 53 Nombre Instrucciones para el Alumno Saberes a adquirir Lenguajes para Internet. No. 10 Analiza los diferentes lenguajes que podrás encontrar para el desarrollo de tecnología web. 9 Sentencias HTML. Manera Didáctica de Lograrlos Analiza y comprende las sintaxis de los diferentes lenguajes de Internet. Actualmente existen diferentes lenguajes de programación para desarrollar en la web, estos han ido surgiendo debido a las tendencias y necesidades de las plataformas. En la presente guía didáctica se pretende mostrar las ventajas y desventajas de los lenguajes más conocidos. Desde los inicios de Internet, fueron surgiendo diferentes demandas por los usuarios y se dieron soluciones mediante lenguajes estáticos. A medida que paso el tiempo, las tecnologías fueron desarrollándose y surgieron nuevos problemas a dar solución. Esto dio lugar a desarrollar lenguajes de programación para la web dinámica, que permitieran interactuar con los usuarios y utilizaran sistemas de Bases de Datos. A continuación daremos una introducción a los diferentes lenguajes de programación para la web. Lenguaje HTML Desde el surgimiento de internet se han publicado sitios web gracias al lenguaje HTML. Es un lenguaje estático para el desarrollo de sitios web (acrónimo en inglés de Hyper TextMarkup Language, en español Lenguaje de Marcas Hipertextuales). Desarrollado por el World Wide Web Consortium (W3C). Los archivos pueden tener las extensiones (htm, html). 54 Sintaxis: <html> (Inicio del documento HTML) <head> ( Cabecera ) </head> <body> ( Cuerpo ) </body> </html> <b></b> Negrita <p></p> Definir parrafo <etiqueta> Apertura de la etiqueta </etiqueta> Cierre de la etiqueta Ventajas: 9 9 9 9 9 9 9 Sencillo que permite describir hipertexto. Texto presentado de forma estructurada y agradable. No necesita de grandes conocimientos cuando se cuenta con un editor de páginas web o WYSIWYG. Archivos pequeños. Despliegue rápido. Lenguaje de fácil aprendizaje. Lo admiten todos los exploradores. Desventajas: Lenguaje estático. La interpretación de cada navegador puede ser diferente. Guarda muchas etiquetas que pueden convertirse en “basura” y dificultan la corrección. 9 El diseño es más lento. 9 Las etiquetas son muy limitadas. 9 9 9 Lenguaje Javascript Este es un lenguaje interpretado, no requiere compilación. Fue creado por Brendan Eich en la empresa Netscape Communications. Utilizado principalmente en páginas web. Es similar a Java, aunque no es un lenguaje orientado a objetos, el mismo no dispone de herencias. La mayoría de los navegadores en sus últimas versiones interpretan código Javascript. El código Javascript puede ser integrado dentro de nuestras páginas web. Para evitar incompatibilidades el World Wide Web Consortium (W3C) diseño un estándar denominado DOM (en inglés Document Object Model, en su traducción al español Modelo de Objetos del Documento). Sintaxis: <script type="text/javascript"> ... </script> 55 Ventajas: 9 9 9 Lenguaje de scripting seguro y fiable. Los script tienen capacidades limitadas, por razones de seguridad. El código Javascript se ejecuta en el cliente. Desventajas: 9 9 9 Código visible por cualquier usuario. El código debe descargarse completamente. Puede poner en riesgo la seguridad del sitio, con el actual problema llamado XSS (significa en inglés Cross Site Scripting renombrado a XSS por su similitud con las hojas de estilo CSS). Lenguaje PHP Es un lenguaje de programación utilizado para la creación de sitio web. PHP es un acrónimo recursivo que significa “PHP Hypertext Pre-processor”, (inicialmente se llamó Personal Home Page). Surgió en 1995, desarrollado por PHP Group. PHP es un lenguaje de script interpretado en el lado del servidor utilizado para la generación de páginas web dinámicas, embebidas en páginas HTML y ejecutadas en el servidor. PHP no necesita ser compilado para ejecutarse. Para su funcionamiento necesita tener instalado Apache o IIS con las librerías de PHP. La mayor parte de su sintaxis ha sido tomada de C, Java y Perl con algunas características específicas. Los archivos cuentan con la extensión (php). Sintaxis: La sintaxis utilizada para incorporar código PHP es la siguiente: <? $mensaje = “Hola”; echo $mensaje; ?> También puede usarse: <?php $mensaje = “Hola”; echo $mensaje; ?> Ventajas: Muy fácil de aprender. Se caracteriza por ser un lenguaje muy rápido. Soporta en cierta medida la orientación a objeto. Clases y herencia. Es un lenguaje multiplataforma: Linux, Windows, entre otros. Capacidad de conexión con la mayoría de los manejadores de base de datos: MysSQL, PostgreSQL, Oracle, MS SQL Server, entre otras. 9 Capacidad de expandir su potencial utilizando módulos. 9 9 9 9 9 56 Posee documentación en su página oficial la cual incluye descripción y ejemplos de cada una de sus funciones. 9 Es libre, por lo que se presenta como una alternativa de fácil acceso para todos. 9 Incluye gran cantidad de funciones. 9 No requiere definición de tipos de variables ni manejo detallado del bajo nivel. 9 Desventajas: 9 9 9 9 9 9 Se necesita instalar un servidor web. Todo el trabajo lo realiza el servidor y no delega al cliente. Por tanto puede ser más ineficiente a medida que las solicitudes aumenten de número. La legibilidad del código puede verse afectada al mezclar sentencias HTML y PHP. La programación orientada a objetos es aún muy deficiente para aplicaciones grandes. Dificulta la modularización. Dificulta la organización por capas de la aplicación. Seguridad: PHP es un poderoso lenguaje e intérprete, ya sea incluido como parte de un servidor web en forma de módulo o ejecutado como un binario CGI separado, es capaz de acceder a archivos, ejecutar comandos y abrir conexiones de red en el servidor. Estas propiedades hacen que cualquier cosa que sea ejecutada en un servidor web sea insegura por naturaleza. PHP está diseñado específicamente para ser un lenguaje más seguro para escribir programas CGI que Perl o C, y con la selección correcta de opciones de configuración en tiempos de compilación y ejecución, y siguiendo algunas prácticas correctas de programación. Lenguaje ASP Es una tecnología del lado de servidor desarrollada por Microsoft para el desarrollo de sitio web dinámicos. ASP significa en inglés (Active Server Pages), fue liberado por Microsoft en 1996. Las páginas web desarrolladas bajo este lenguaje es necesario tener instalado Internet Information Server (IIS). ASP no necesita ser compilado para ejecutarse. Existen varios lenguajes que se pueden utilizar para crear páginas ASP. El más utilizado es VBScript, nativo de Microsoft. ASP se puede hacer también en Perl and Jscript (no JavaScript). El código ASP puede ser insertado junto con el código HTML. Los archivos cuentan con la extensión (asp). Sintaxis: <%@ Page Language="VB" %> <html> <body> <form runat="server"> </form> </body> 57 </html> Ventajas: 9 9 9 Usa Visual Basic Script, siendo fácil para los usuarios. Comunicación óptima con SQL Server. Soporta el lenguaje JScript (Javascript de Microsoft). Desventajas: 9 9 9 9 Código desorganizado. Se necesita escribir mucho código para realizar funciones sencillas. Tecnología propietaria. Hospedaje de sitios web costosos. Lenguaje ASP.NET Este es un lenguaje comercializado por Microsoft, y usado por programadores para desarrollar entre otras funciones, sitios web. ASP.NET es el sucesor de la tecnología ASP, fue lanzada al mercado mediante una estrategia de mercado denominada .NET. El ASP.NET fue desarrollado para resolver las limitantes que brindaba tu antecesor ASP. Creado para desarrollar web sencillas o grandes aplicaciones. Para el desarrollo de ASP.NET se puede utilizar C#, VB.NET o J#. Los archivos cuentan con la extensión (aspx). Para su funcionamiento de las páginas se necesita tener instalado IIS con el Framework .Net. Microsft Windows 2003 incluye este framework, solo se necesitará instalarlo en versiones anteriores. Sintaxis: <%@ Page Language="VB" %> <html> <body> <form runat="server"> </form> </body> </html> Ventajas: 9 9 9 9 9 9 9 Completamente orientado a objetos. Controles de usuario y personalizados. División entre la capa de aplicación o diseño y el código. Facilita el mantenimiento de grandes aplicaciones. Incremento de velocidad de respuesta del servidor. Mayor velocidad. Mayor seguridad. 58 Desventajas: 9 Mayor consumo de recursos. Lenguaje JSP Es un lenguaje para la creación de sitios web dinámicos, acrónimo de Java Server Pages. Está orientado a desarrollar páginas web en Java. JSP es un lenguaje multiplataforma. Creado para ejecutarse del lado del servidor. JSP fue desarrollado por Sun Microsystems. Comparte ventajas similares a las de ASP.NET, desarrollado para la creación de aplicaciones web potentes. Posee un motor de páginas basado en los servlets de Java. Para su funcionamiento se necesita tener instalado un servidor Tomcat. Sintaxis: Características: 9 9 9 9 9 Código separado de la lógica del programa. Las páginas son compiladas en la primera petición. Permite separar la parte dinámica de la estática en las páginas web. Los archivos se encuentran con la extensión (jsp). El código JSP puede ser incrustado en código HTML. Elementos de JSP Los elementos que pueden ser insertados en las páginas JSP son los siguientes: 1) Código: se puede incrustar código “Java”. 2) Directivas: permite controlar parámetros del servlet. 3) Acciones: permite alterar el flujo normal de ejecución de una página. Ventajas: 9 9 9 9 9 9 9 Ejecución rápida del servlets. Crear páginas del lado del servidor. Multiplataforma. Código bien estructurado. Integridad con los módulos de Java. La parte dinámica está escrita en Java. Permite la utilización se servlets. Desventajas: 9 Complejidad de aprendizaje. 59 Lenguaje Python Es un lenguaje de programación creado en el año 1990 por Guido van Rossum, es el sucesor del lenguaje de programación ABC. Python es comparado habitualmente con Perl. Los usuarios lo consideran como un lenguaje más limpio para programar. Permite la creación de todo tipo de programas incluyendo los sitios web. Su código no necesita ser compilado, por lo que se llama que el código es interpretado. Es un lenguaje de programación multiparadigma, lo cual fuerza a que los programadores adopten por un estilo de programación particular: 9 9 9 9 Programación orientada a objetos. Programación estructurada. Programación funcional. Programación orientada a aspectos. Sintaxis: Ejemplo de una clase en Phyton: defdibujar_muneco(opcion): ifopcion == 1: C.create_line(580, 150, 580, 320, width=4, fill="blue") C.create_oval(510, 150, 560, 200, width=2, fill='PeachPuff') Ventajas: 9 9 9 9 9 9 9 9 Libre y fuente abierta. Lenguaje de propósito general. Gran cantidad de funciones y librerías. Sencillo y rápido de programar. Multiplataforma. Licencia de código abierto (Opensource). Orientado a Objetos. Portable. Desventajas: 9 Lentitud por ser un lenguaje interpretado. Lenguaje Ruby Es un lenguaje interpretado de muy alto nivel y orientado a objetos. Desarrollado en el 1993 por el programador japonés Yukihiro “Matz” Matsumoto. Su sintaxis está inspirada en Phyton, Perl. Es distribuido bajo licencia de software libre (Opensource). Ruby es un lenguaje dinámico para una programación orientada a objetos rápida y sencilla. Para los que deseen iniciarse en este lenguaje pueden encontrar un tutorial interactivo de ruby. Se encuentra también a disposición de estos usuarios un sitio con informaciones y cursos en español. 60 Sintaxis: puts "hola" Características: 9 9 9 9 Existe diferencia entre mayúsculas y minúsculas. Múltiples expresiones por líneas, separadas por punto y coma “;”. Dispone de manejo de excepciones. Ruby puede cargar librerías de extensiones dinámicamente si el (Sistema Operativo) lo permite. 9 Portátil. Ventajas: 9 9 9 Permite desarrollar soluciones a bajo Costo. Software libre. Multiplataforma. 61 Nombre Lenguaje HTML. No. 11 Instrucciones Concepto de HTML para el Alumno Saberes a adquirir 9 Sentencias HTML. Manera Didáctica de Lograrlos Comprende el concepto de HTML. HTML es un lenguaje de programación que se utiliza para el desarrollo de páginas de Internet. Se trata de la sigla que corresponde a Hyper Text Markup Language, es decir, Lenguaje de Marcas de Hipertexto, que podría ser traducido como Lenguaje de Formato de Documentos para Hipertexto. Se trata de un formato abierto que surgió a partir de las etiquetas SGML (Standard Generalized Markup Language). Concepto traducido generalmente como “Estándar de Lenguaje de Marcado Generalizado” y que se entiende como un sistema que permite ordenar y etiquetar diversos documentos dentro de una lista. Este lenguaje es el que se utiliza para especificar los nombres de las etiquetas que se utilizarán al ordenar, no existen reglas para dicha organización, por eso se dice que es un sistema de formato abierto. EL HTML se encarga de desarrollar una descripción sobre los contenidos que aparecen como textos y sobre su estructura, complementando dicho texto con diversos objetos (como fotografías, animaciones, etc.). 62 Es un lenguaje muy simple y general que sirve para definir otros lenguajes que tienen que ver con el formato de los documentos. El texto en él se crea a partir de etiquetas, también llamadas tags, que permiten interconectar diversos conceptos y formatos. Para la escritura de este lenguaje, se crean etiquetas que aparecen especificadas a través de corchetes o paréntesis angulares: < y >. Entre sus componentes, los elementos dan forma a la estructura esencial del lenguaje, ya que tienen dos propiedades (el contenido en sí mismo y sus atributos). Por otra parte, cabe destacar que el HTML permite ciertos códigos que se conocen como scripts, los cuales brindan instrucciones específicas a los navegadores que se encargan de procesar el lenguaje. Entre los scripts que pueden agregarse, los más conocidos y utilizados son JavaScript y PHP. El marcado estructural es el que estipula la finalidad del texto, aunque no define cómo se verá el elemento. El marcado prestacional, por su parte, es el que se encarga de señalar cómo se verá el texto más allá de su función. Para conocer el código HTML que utiliza una página web, hay que seleccionar Ver código fuente en nuestro navegador (como Internet Explorer o Mozilla Firefox). Al elegir esta opción, se abrirá el editor de texto con el código HTML de la página que se está visualizando. 63 Nombre Breve historia de HTML. No. 12 Instrucciones Analiza la historia de HTML para el Alumno Saberes a adquirir 9 Sentencias HTML. Manera Didáctica de Lograrlos Analiza la historia de HTML. Breve historia del HTML Este lenguaje fue desarrollado por la Organización Europea de Investigación Nuclear (CERN) en el año 1945 con la finalidad de desarrollar un sistema de almacenamiento donde las cosas no se perdieran, que pudieran ser conectadas a través de hipervínculos. Primeramente crearon un dispositivo llamado “memex”, el cual era considerado como un suplemento para la memoria. Posteriormente, Douglas Engelbart, diseñó un entorno de trabajo por computadora que recibiría el nombre de oNLineSystem que poseía un catálogo para facilitar la tarea de búsqueda dentro de un mismo organismo. Recién en 1965, Ted Nelson acuñó el término hipervínculo, ideando una estructura que se encontraba conectada de forma electrónica y que más tarde permitiría la creación de la World Wide Web (1989), un sistema de hipertexto a través del cual era posible compartir una variada información sirviéndose de Internet (servía para la comunicación entre investigadores nucleares que formaran parte del CERN). El norteamericano Tim Berners-Lee fue el primero en proponer una descripción de HTML en un documento que publicó en 1991. Allí describía veintidós componentes que suponen el diseño más básico y simple del HTML. El tipo de codificación que se utilizó para el desarrollo de este sistema de hipervínculos debía ser comprendido, tanto por ordenadores tontos como por 64 mega-estaciones, por eso fue necesario crear uno absolutamente simples, tanto en lo que respectaba al lenguaje de intercambio (HTML), como el que hacía referencia al protocolo de red (HTTP). Al día de hoy existen los Editores Web que permiten que los diseñadores, a través de herramientas gráficas que reciben el nombre de WYSIWYG puedan crear páginas web sin conocer el código html, este se crea de forma automatizada, dándole estructura a la web y permitiendo que sea más allá del ordenador donde es creada. Entre los recursos que pueden enlazarse al código HTML se encuentran fotografías, vídeos, archivos de otras webs o incluso de la misma y todo tipo de contenido que se encuentre subido a la red. 65 Nombre Elementos de HTML. No. 13 Instrucciones Identifica los elementos de HTML para el Alumno Saberes a adquirir 9 Sentencias HTML. Manera Didáctica de Lograrlos Conoce e identifica los elementos de HTML. A las instrucciones que forman el lenguaje HTML las denominaremos elementos. Se distinguen dos tipos de elementos: Elementos llenos: Estos elementos se forman mediante una marca de inicio y otra de final. En HTML las marcas se delimitan con los signos < (inferior a) y > (superior a). La marca de fin es idéntica a la inicial pero con el añadido de la barra inclinada, /, justo antes del nombre de la misma. Un texto marcado tendrá por tanto este aspecto: ...texto normal <marca> texto afectado por la marca </marca> resto del texto... Por ejemplo, para resaltar un texto en negrita, se emplea la marca <B> de la siguiente forma: ...texto normal <B> texto en negrita </B> resto del texto... Si en este ejemplo nos hubiésemos olvidado de la marca de final, el resto de la página estaría también en negrita. Elementos vacíos: Estos elementos no requieren de la marca final, ya que normalmente no producen un efecto sobre el texto en sí, sino que definen separadores. 66 Por ejemplo el elemento <HR> que sirve para mostrar una línea horizontal en la pantalla, se escribirá: <HR> Elementos con argumentos: Algunos elementos tienen argumentos, los cuales son denominados atributos. Cada uno de estos atributos podrá tener un valor el cual irá entre comillas, si es alfanumérico: <marca atributo1 atributo2=numerico atributo3="alfanumetrico"> Ejemplos: <HR NOSHADE> <TABLE WIDTH=300> ... </TABLE> <A HREF="/home/default.html"> ... </A> Si se quieren utilizar caracteres como < o > en el texto normal, habrá que acudir a un artificio para que el browser no intente interpretarlos como marca. Estos caracteres así como otros símbolos utilizados en el código HTML se reemplazarán por los siguientes grupos de caracteres: 9 9 el carácter < será reemplazado por &lt; el carácter > será reemplazado por &gt; 67 Nombre Instrucciones para el Alumno Competencias Genéricas a Desarrollar Manera Didáctica de Lograrlas Ejemplos de html. No. 5 Analiza las imágenes de código para la creación de paginas web Escucha, interpreta y emite mensajes pertinentes en distintos contextos mediante la utilización de medios, códigos y herramientas apropiados. Analiza la sintaxis del HTML para la creación de paginas web 68 Nombre Estructura de HTML. No. 14 Instrucciones Conoce la estructura de HTML para el Alumno Saberes a adquirir 9 Sentencias HTML. Manera Didáctica de Lograrlos Conoce la estructura del como debe estar la estructura de HTML para la creación de paginas web Estructura de una página HTML Estructura básica 9 9 9 9 Cada página comienza con: < HTML >. A continuación viene la cabecera, delimitada por < HEAD >y < /HEAD >. Después, el comando < BODY >, que indica el comienzo del cuerpo de la página. Las instrucciones HTML se escribirán a continuación, y finalizarán con < /BODY >. La página acabará con < /HTML >. Es decir: <HTML> <HEAD> Definiciones de la cabecera </HEAD> <BODY> Instrucciones HTML </BODY> </HTML> 69 Cabecera La cabecera de un documento está delimitada por las etiquetas < HEAD >y </HEAD > Sus componentes son opcionales. El más importante es <TITLE>, que permite escribir el título del documento. El título no se muestra en la página, sino en la parte superior de la ventana del visualizador, como identificador en los bookmarks y en la historylist. Se utiliza de la siguiente forma: <HEAD> <TITLE>Título del documento HTML</TITLE> </HEAD> Cuerpo Es la parte delimitada por <BODY> y < /BODY >. Puede llevar los siguientes atributos: • BACKGROUND="imagen": define el fondo. Más adelante veremos más sobre imágenes. • BGCOLOR="######": color del fondo (sólo si no se define una imagen de fondo, o si ésta imagen no puede obtenerse.. Más adelante veremos más sobre colores. Por ahora nos basta saber que para los colores básicos se puede utilizar su nombre en inglés: white, blue, red, green ... • TEXT="######": color del texto. Por defecto será negro. • LINK="######": color de los links. Por defecto será azul. • VLINK="######": color de los links visitados. Por defecto será violeta. 70 Nombre Instrucciones para el Alumno Competencias Genéricas a Desarrollar Manera Didáctica de Lograrlas Ejemplo de Web semántica en búsquedas. No. 6 Identifica la sintaxis del HTML. Escucha, interpreta y emite mensajes pertinentes en distintos contextos mediante la utilización de medios, códigos y herramientas apropiados. Identifica la sintaxis de HTML para la creación de página web con código HTML. 71 Nombre Diseño de página web. No. 5 Instrucciones para el Alumno Diseña en papel la estructura que tendría tu página web. Competencias Genéricas a Desarrollar Escucha, interpreta y emite mensajes pertinentes en distintos contextos mediante la utilización de medios, códigos y herramientas apropiados. Manera Didáctica de Lograrlas Elabora en papel como podrías elabora una página web con lo aprendido hasta ahora. Recuerda contar con hojas blancas para el desarrollo de esta actividad. 72 Nombre Diseño de estilos y efectos No. 6 Instrucciones para el Alumno Diseña en papel la estructura que tendría tu página web. Competencias Genéricas a Desarrollar Escucha, interpreta y emite mensajes pertinentes en distintos contextos mediante la utilización de medios, códigos y herramientas apropiados. Manera Didáctica de Lograrlas Analiza y desarrolla la creación de algunas estilo para el desarrollo de pagina web. Así quedaría…. <html> <head> <title> estilos y efectos </title> </head> <body> <p> --- E S T I L O S --</p> <p> Este es un <em>estilo</em> <br/> Este es un <strong>estilo</strong> <br/> Este es un <code>estilo</code> <br/> Este es un <abbr>estilo</abbr> <br/> Este es un <acronym>estilo</acronym> <br/> Este es un <dfn>estilo</dfn> <br/> Este es un <kbd>estilo</kbd> <br/> Este es un <samp>estilo</samp> <br/> Este es un <var>estilo</var> <br/> </p> </body> </html> 73 Nombre Instrucciones para el Alumno Competencias Genéricas a Desarrollar Manera Didáctica de Lograrlas Elaborar formularios Web. No. 7 Elabora un formulario como se muestra en la figura y código que se te presenta, puedes realizar cambios según formulario quieras mostrar. Escucha, interpreta y emite mensajes pertinentes en distintos contextos mediante la utilización de medios, códigos y herramientas apropiados. Analiza y desarrolla la creación de formularios web. Asi Quedaria …. <html> DAME TUS DATOS <br/><br/> <b>Nombre:</b><br/> <input type="text" name="nombre"><br/><br/> <b>Edad:</b><br/> <input type="text" name="edad"><br/><br/> <b>Sexo:</b><br/> <input type="radio" name="sexo" value="masculino"/>Masculino<br/> <input type="radio" name="sexo" value="masculino"/>Femenino<br/><br/> <b>Pasatiempos:</b><br/> <input type="checkbox" name="pasatiempo1" value="Futbol"/>Futbol<br/> <input type="checkbox" name="pasatiempo2" value="Cine"/>Cine<br/> <input type="checkbox" name="pasatiempo3" value="Java"/>Bailar<br/> <input type="checkbox" name="pasatiempo4" value="Bailar"/>Cantar<br/><br/> <input type="submit" value="Guardar"> </html> 74 Nombre Instrucciones para el Alumno Competencias Genéricas a Desarrollar Manera Didáctica de Lograrlas Elaborar tablas Web. No. 8 Elabora tablas como se muestra en la figura y código que se te presenta, puedes realizar cambios según formulario quieras mostrar. Escucha, interpreta y emite mensajes pertinentes en distintos contextos mediante la utilización de medios, códigos y herramientas apropiados. Analiza y desarrolla la creación de tablas dentro de tu pagina web. Asi Quedaria … <html> <head> <title> TABLAS </title> </head> <body> <table border="2"> <caption> N I E V E S </caption> <tr> <th> tipo </th><th> precio </th><th> foto </th> </tr> <tr> <td> limon </td> <td> ch - 10 <br> md - 15 <br> gr - 20 </td> <td><img src="img1.jpg"> </td> </tr> <tr> <td> fresa </td> <td> ch - 10 <br> md - 15 <br> gr - 20 </td> <td><img src="img2.jpg"> </td> </tr> <tr> <td> chocolate </td> <td> ch - 10 <br> md - 15 <br> gr - 20 </td> <td><img src="img3.jpg"> </td> </tr> </table> </body> </html> 75 Nombre Concepto de Web semántica. No. 15 Instrucciones Conoce el significado de la web semántica. para el Alumno Saberes a adquirir Sentencias HTML. Manera Didáctica de Lograrlos Analiza y comprende el concepto de web semántica. La Web Semántica es la nueva generación de la Web, que intenta realizar un filtrado automático preciso de la información. Para ello, es necesario hacer que la información que reside en la Web sea entendible por las propias máquinas. Especialmente su contenido, más allá de su simple estructura sintáctica. Con lo cual, podemos determinar que la Web Semántica trata sobre diferentes ámbitos, por un lado es un conjunto de lenguajes y procedimientos para poder añadir esa semántica a la información para que sea entendible por los agentes encargados de procesarla. Y por el otro lado trata, el desarrollo y la construcción de los agentes encargados de procesar esa información y filtrar la que es útil para los usuarios o para agentes que tienen que realizar una determinada función. Con este fin, los agentes deben recuperar y manipular la información pertinente, lo que requiere una integración sin fisuras con la Web y aprovechar totalmente las infraestructuras existentes. Al dotar a la Web por lo tanto, de semántica, se pueden obtener soluciones a problemas habituales en la búsqueda de información gracias a la utilización de una infraestructura común, mediante la cual, es posible compartir, procesar y transferir información de forma sencilla. Como punto adicional, la Web Semántica también trata la forma en la cual se implementan servicios web fiables e interoperables a gran escala, creando una web de servicios interpretables e interoperables que agentes inteligentes puedan descubrir, ejecutar y componer automáticamente 76 Nombre ¿Para que nos sirve la Web semántica? No. 16 Instrucciones Conoce el significado de la web semántica. para el Alumno Saberes a adquirir Sentencias HTML. Manera Didáctica de Lograrlos Comprende y conoce para que nos sirve la web semántica en la elaboración de consultas web. La Web Semántica La Web Semántica es una Web extendida, dotada de mayor significado en la que cualquier usuario en Internet podrá encontrar respuestas a sus preguntas de forma más rápida y sencilla gracias a una información mejor definida. Al dotar a la Web de más significado y, por lo tanto, de más semántica, se pueden obtener soluciones a problemas habituales en la búsqueda de información gracias a la utilización de una infraestructura común, mediante la cual, es posible compartir, procesar y transferir información de forma sencilla. Esta Web extendida y basada en el significado, se apoya en lenguajes universales que resuelven los problemas ocasionados por una Web carente de semántica en la que, en ocasiones, el acceso a la información se convierte en una tarea difícil y frustrante. ¿Para qué sirve? La Web ha cambiado profundamente la forma en la que nos comunicamos, hacemos negocios y realizamos nuestro trabajo. La comunicación prácticamente con todo el mundo en cualquier momento y a bajo coste es posible hoy en día. Podemos realizar transacciones económicas a través de Internet. Tenemos acceso a millones de recursos, independientemente de nuestra situación geográfica e idioma. Todos estos factores han contribuido al éxito de la Web. Sin embargo, al mismo tiempo, estos factores que han propiciado el éxito de la Web, también han originado sus principales problemas: sobrecarga de información y heterogeneidad de fuentes de información con el consiguiente problema de interoperabilidad. 77 La Web Semántica ayuda a resolver estos dos importantes problemas permitiendo a los usuarios delegar tareas en software. Gracias a la semántica en la Web, el software es capaz de procesar su contenido, razonar con este, combinarlo y realizar deducciones lógicas para resolver problemas cotidianos automáticamente. Funcionamiento de la web semántica. Supongamos que la Web tiene la capacidad de construir una base de conocimiento sobre las preferencias de los usuarios y que, a través de una combinación entre su capacidad de conocimiento y la información disponible en Internet, sea capaz de atender de forma exacta las demandas de información por parte de los usuarios en relación, por ejemplo, a reserva de hoteles, vuelos, médicos, libros, etc. PRINCIPALES COMPONENTES: Entre los principales componentes de la Web Semántica podemos encontrar XML, XML Schema, RDF, RDF Schema y OWL. La descripción de OWL en inglés “Ontology Web Language” describe las funciones y relaciones de cada componente de la Web Semántica: 9 9 9 9 9 XML: Provee una sintaxis elemental para las estructuras de contenidos dentro de documentos. XML Schema: Es un lenguaje para proporcionar y restringir la estructura y el contenido de los elementos contenidos dentro de documentos XML. RDF: Es un lenguaje simple para expresar modelos de los datos, que refieren a los objetos “recursos” y a sus relaciones. Un modelo de RDF-based se puede representar en sintaxis de XML. RDF Schema: Es un vocabulario para describir propiedades y clases de recursos RDF-based, con semántica para generalizar-jerarquías de las propiedades y clases. OWL: Es un mecanismo para desarrollar temas o vocabularios específicos en los que podamos asociar esos recursos. 78 Nombre Instrucciones para el Alumno Competencias Genéricas a Desarrollar Manera Didáctica de Lograrlas Ejemplo de web semántica en búsquedas. No. 7 Identifica el ejemplo de la web semántica , Escucha, interpreta y emite mensajes pertinentes en distintos contextos mediante la utilización de medios, códigos y herramientas apropiados. Identifica por medio de un ejemplo como se puede utilizar la web semántica en búsquedas. Por ejemplo, para encontrar todos los vuelos a Praga para mañana por la mañana, obtendría unos resultados exactos sobre su búsqueda. Sin embargo la realidad es otra. La figura 1 muestra los resultados inexactos que se obtendrían con el uso de cualquier buscador actual, el cual ofrecería información variada sobre Praga pero que no tiene nada que ver con lo que realmente el usuario buscaba. El paso siguiente por parte del usuario es realizar una búsqueda manual entre esas opciones que aparecen, con la consiguiente dificultad y pérdida de tiempo. Con la incorporación de semántica a la Web los resultados de la búsqueda serían exactos. La figura 2 muestra los resultados obtenidos a través de un buscador semántico. Estos resultados ofrecen al usuario la información exacta que estaba buscando. La ubicación geográfica desde la que el usuario envía su pregunta es detectada de forma automática sin necesidad de especificar el punto de partida, elementos de la oración como "mañana" adquirirían significado, convirtiéndose en un día concreto calculado en función de un "hoy". Algo semejante ocurriría con el segundo "mañana", que sería interpretado como un momento determinado del día. Todo ello a través de una Web en la que los datos pasan a ser información llena de significado. El resultado final sería la obtención de forma rápida y sencilla de todos los vuelos a Praga para mañana por la mañana. 79 Buscador Actual Vuelos a praga para mañana por la mañana Buscar Resultados de la búsqueda: Toda la magia de Budapest y Praga ... Suplementos Gran Premio Fórmula 1 en Budapest para las salidas del ... con Ferias y/o Congresos en Praga del 9 ... Más información de los vuelos ... LA VANGUARDIA DIGITAL - Praga, testigo de la historia europea ... Para emergencias el teléfono de la policía es el 150, el de las ambulancias el ... 46) y Praga tres días por semana. Los vuelos salen de Madrid (Tel ... Foros sobre Europa República Checa Pragainkietante ... solo decirte que me llamó la atención tu alias (aunque no me llamo Raula) y que me voy mañana mismo para Praga ... buscador de vuelos ... ofertas de espectáculos, viajes y hoteles al mejor precio ... autoridades que tienen tres copas gigantes para entregar a ... mañana creo que cogeremos el bus mañana ... En Atrápalo puedes también reservar vuelos ... Figura 1 - Resultados obtenidos con un buscador normal 80 Buscador Semántico Vuelos a praga para mañana por la mañana Buscar Resultados de la búsqueda: viajaconnosotros.com - viajes a Praga ... todos los vuelos a Praga desde tu ciudad que saldrán mañana por la mañana, ordenados según su hora de salida ... viajes a Praga - vuelos disponibles ... lista de vuelos. Horarios de salida y llegada ... Ofertas especiales - vuelos a Praga ... ofertas especiales de vuelos a Praga ... Figura 2 - Resultados obtenidos con un buscador semántico La forma en la que se procesará esta información no sólo será en términos de entrada y salida de parámetros sino en términos de su SEMÁNTICA. La Web Semántica como infraestructura basada en metadatos aporta un camino para razonar en la Web, extendiendo así sus capacidades. No se trata de una inteligencia artificial mágica que permita a las máquinas entender las palabras de los usuarios, es sólo la habilidad de una máquina para resolver problemas bien definidos, a través de operaciones bien definidas que se llevarán a cabo sobre datos existentes bien definidos. Analiza bien los dos ejemplos anteriores, para que puedas comprender la web semántica. 81 Otra tecnología que ofrece la Web Semántica para enriquecer los contenidos de la Web tradicional es RDFa. Mediante RDFa se pueden representar los datos estructurados visibles en las páginas Web (eventos en calendarios, información de contacto personal, información sobre derechos de autor, etc.), a través de unas anotaciones semánticas incluidas en el código e invisibles para el usuario, lo que permitirá a las aplicaciones interpretar esta información y utilizarla de forma eficaz. Por ejemplo, una aplicación de calendario podría importar directamente los eventos que encuentra al navegar por cierta página Web, o se podrían especificar los datos del autor de cualquier foto publicada, así como la licencia de cualquier documento que se encuentre. Para extraer el RDF se podría utilizar GRDDL, una técnica estándar para extraer la información expresada en RDF desde documentos XML, y en particular, de las páginas XHTML. Figura 3 - Ilustración del ejemplo de consulta de eventos de calendario El objetivo es satisfacer las expectativas de búsqueda de usuarios que requieren respuestas precisas. El encuadre grupal ayuda a comprender la importancia de lograr la competencia eficientemente. 82 Nombre Cuestionario de la Web Semántica. No. 6 Instrucciones para el Alumno Contesta a cada pregunta que a continuación aparecen correctamente. Competencias Genéricas a Desarrollar Escucha, interpreta y emite mensajes pertinentes en distintos contextos mediante la utilización de medios, códigos y herramientas apropiados. Manera Didáctica de Lograrlas Resolviendo el siguiente cuestionario podrás entender a un mas acerca de la web semántica ¿Qué es la Web Semántica? _________________________________________________________________________________ _________________________________________________________________________________ _________________________________________________________________________________ _________________________________________________________________________________ ¿Para qué sirve la Web Semántica? _________________________________________________________________________________ _________________________________________________________________________________ _________________________________________________________________________________ _________________________________________________________________________________ ¿Cómo funciona la Web Semántica? _________________________________________________________________________________ _________________________________________________________________________________ _________________________________________________________________________________ _________________________________________________________________________________ _________________________________________________________________________________ ¿Cómo surge la Web Semántica? _________________________________________________________________________________ _________________________________________________________________________________ _________________________________________________________________________________ _________________________________________________________________________________ _________________________________________________________________________________ 83 ¿Cuál es su objetivo? _________________________________________________________________________________ _________________________________________________________________________________ _________________________________________________________________________________ _________________________________________________________________________________ _________________________________________________________________________________ ¿Cuáles son sus principales componentes? _________________________________________________________________________________ _________________________________________________________________________________ _________________________________________________________________________________ _________________________________________________________________________________ _________________________________________________________________________________ Bien Ahora se realizara al evaluación de tus respuestas. 84 Nombre Competencia a Desarrollar Atributos de la competencia Instrucciones para el Alumno Instrucciones para el Docente Recursos materiales de apoyo Competencias Genéricas a Desarrollar Manera Didáctica de Lograrlas Pagina Web. No. 7 Construir una base de datos sencilla, mediante su modificación, ordenación y realización de consultas, para desarrollar aplicaciones elementales. 9 Realizar consultas de complejidad mediante los campos. 9 Manejo del lenguaje HTML para el desarrollo de páginas web. Realiza la implementación de una página web donde puedas incluir temas vistos con lenguaje de programación web. Proporciona el equipo necesario, el IDE y su respectivo DDL. Computadora, Internet, dispositivo de almacenamiento. 9 Escucha, interpreta y emite mensajes pertinentes en distintos contextos mediante la utilización de medios, códigos y herramientas apropiados. 9 Desarrolla innovaciones y propone soluciones a problemas a partir de métodos establecidos. Implementando la página como herramienta tecnológica. 85 Como te habrás dado cuenta En esta primera competencia conociste y aprendiste el lenguaje de definición de datos así como la creación de bases de datos desde MySql, dominaste también lo de web dentro del submodulo Manipular una base de datos mediante interfaces gráficas. Llevándote por el interesante mundo del programador y conociendo las bases de datos con interfaces graficas, así como se te facilito esta primera competencia esperamos sigas preparándote día a día por el mundo de la informática. Te felicitamos porque si tú llegaste hasta aquí significa que sigues avanzando, y esperamos que nada ni nadie te detenga. Te invitamos a que continúes, pregunta a tu maestro todas las dudas que tengas y verás que el futuro dentro de la carrera de técnico programador de software será mucho mejor para ti. Date cuenta ahora, tú sabes utilizar un lenguaje de definición de datos y sobre todos utilizarlo en interface grafica. Continua así y veraz lo que podrás lograr en la siguiente competencia FELICIDADES!!!! Y TE INVITAMOS A QUE AHORA APRENDAS A UTILIZAR LAS LISTAS ENLAZADAS DE DATOS ASI COMO LOS ARBOLES….. 86 Instrumentar estructuras relacionales de mediana complejidad, mediante el manejo de variables, la generación de reportes, pantallas y bases de datos múltiples, para implementar aplicaciones más poderosas y agregar elementos que faciliten el manejo de la base a otros usuario. 2 1. 2. 3. 4. 5. Modelo Vista Controlador. Javascript. Características de Javascript. Elementos de JavaScript. Actividad 5 1. Votos. 2. Javascript. 3. Ejemplo de elementos de JavaScript. 1. 2. 3. 4. Sopa de letras. Mapa mental JavaScript. Ejercitando en Papel. Elementos de JavaScript. 1. Elabora tu propia página web. 2. Elabora una base de datos. 3. 87 Hoy en día los gráficos por computadora son el principal medio de comunicación entre usuarios y computadoras, debido a su facilidad de uso. Pues los diferentes recursos disponibles de representan con imágenes que pueden controlarse con dispositivos de entrada tales como teclado, mouse, pantallas sensitivas al contacto etc. Ya que es el punto de entrada en la interacción del usuario con la computadora y sirve de ayuda que se tenga un desarrollo de un interfaz grafica adecuada en nuestras aplicaciones. Las bases de datos espaciales se han convertido en una alternativa a los software tradicionales y SQL es el lenguaje que utilizan los SGBD para gestionar sus bases de datos tanto alfanuméricas como espaciales. Dentro del mundo del software libre PostgreSQL y su extensión espacial PostGIS se han convertido en el sistema gestor de bases de datos (SGDB) más extensamente utilizado a nivel mundial, siendo empleado en multitud de proyectos y aplicaciones tanto de escritorio como web. En esta competencia que nos familiarizarnos con el uso del lenguaje SQL en general, así como dar a conocer su potencia y funcionalidad y adentrarse especialmente en su componente especial y consecuentemente en las funciones para el tratamiento y manipulación de los datos podremos realizar una interfaz segura y su vista ya sea en el modelo vista contralor o en una interfaz de HTML veras como se desarrollan bases de datos eficientes y con vista atractiva para el usuario y el programador. 88 ATRIBUTOS DE LA COMPETENCIA RESULTADO DE APRENDIZAJE 9 Explorar una base de datos existente para visualizar su contenido y sus elementos principales. Al término del módulo el estudiante realiza una aplicación Web, eligiendo las tecnologías más adecuadas en función del tipo de aplicación a realizar. . Como primera actividad es muy importante realizar un encuadre grupal para que el estudiante comprenda las posibles tecnologías web y las bases de datos existentes en su contenido y sobre todo los elementos. El docente muestra las tecnologías web y como puede utilizar las bases de datos de forma adecuada demás de realizar actividades para poder identificar loes elementos y características que tiene esta tecnología en el mundo actual. 89 Nombre No. Modelo Vista Controlador. 1 Instrucciones Mediante el análisis podrás comprender el concepto de MVC para el Alumno 9 Saberes a adquirir Creación de base de datos en Java. Manera Didáctica de Lograrlos Mediante el análisis de la información podrás comprender el tema de modelo vista controlador. La arquitectura MVC (Model/View/Controller), fue diseñada para reducir el esfuerzo de programación necesario en la implementación de sistemas múltiples y sincronizados de los mismos datos. Sus características principales son que el Modelo, las Vistas y los Controladores se tratan como entidades separadas; esto hace que cualquier cambio producido en el Modelo se refleje automáticamente en cada una de las Vistas. Este modelo de arquitectura se puede emplear en sistemas de representación gráfica de datos, como se ha citado, o en sistemas CAD, en donde se presentan partes del diseño con diferente escala de aumento, en ventanas separadas. En la figura siguiente, vemos la arquitectura MVC en su forma más general. Hay un Modelo, múltiples Controladores que manipulan ese Modelo, y hay varias Vistas de los datos del Modelo, que cambian cuando cambia el estado de ese Modelo. 90 Este modelo de arquitectura presenta varias ventajas: Hay una clara separación entre los componentes de un programa; lo cual nos permite implementarlos por separado. Hay un API muy bien definido; cualquiera que use el API, podrá remplazar el Modelo, la Vista o el Controlador, sin aparente dificultad. La conexión entre el Modelo y sus Vistas es dinámica; se produce en tiempo de ejecución, no en tiempo de compilación. Al incorporar el modelo de arquitectura MVC a un diseño, las piezas de un programa se pueden construir por separado y luego unirlas en tiempo de ejecución. Si uno de los Componentes, posteriormente, se observa que funciona mal, puede remplazarse sin que las otras piezas se vean afectadas. Este escenario contrasta con la aproximación monolítica típica de muchos programas Java. Todos tienen un Frame que contiene todos los elementos, un controlador de eventos, un montón de cálculos y la presentación del resultado. Ante esta perspectiva, hacer un cambio aquí no es nada trivial. Definición de las partes El Modelo es el objeto que representa los datos del programa. Maneja los datos y controla todas sus transformaciones. El Modelo no tiene conocimiento específico de los Controladores o de las Vistas, ni siquiera contiene referencias a ellos. Es el propio sistema el que tiene encomendada la responsabilidad de mantener enlaces entre el Modelo y sus Vistas, y notificar a las Vistas cuando cambia el Modelo. La Vista es el objeto que maneja la presentación visual de los datos representados por el Modelo. Genera una representación visual del Modelo y muestra los datos al usuario. Interactúa con el Modelo a través de una referencia al propio Modelo. El Controlador es el objeto que proporciona significado a las órdenes del usuario, actuando sobre los datos representados por el Modelo. Cuando se realiza algún cambio, entra en acción, bien sea por cambios en la información del Modelo o por alteraciones de la Vista. Interactúa con el Modelo a través de una referencia al propio Modelo. Vamos a mostrar un ejemplo concreto. Consideremos como tal el sistema descrito en la introducción a este capítulo, una pieza geométrica en tres dimensiones, que representamos en la figura siguiente: 91 En este caso, la pieza central de la escena en tres dimensiones es el Modelo. El Modelo es una descripción matemática de los vértices y las caras que componen la escena. Los datos que describen cada vértice o cara pueden modificarse (quizás como resultado de una acción del usuario, o una distorsión de la escena, o un algoritmo de sombreado). Sin embargo, no tiene noción del punto de vista, método de presentación, perspectiva o fuente de luz. El Modelo es una representación pura de los elementos que componen la escena. La porción del programa que transforma los datos dentro del Modelo en una presentación gráfica es la Vista. La Vista incorpora la visión del Modelo a la escena; es la representación gráfica de la escena desde un punto de vista determinado, bajo condiciones de iluminación determinadas. El Controlador sabe que puede hacer el Modelo e implementa lainterfaz de usuario que permite iniciar la acción. En este ejemplo, un panel de datos de entrada es lo único que se necesita, para permitir añadir, modificar o borrar vértices o caras de la figura. 92 Nombre Instrucciones para el Alumno Competencias Genéricas a Desarrollar Manera Didáctica de Lograrlas Votos. No. 1 Analiza el ejemplo y comprende para que nos sirviera el modelo vista controlador. Escucha, interpreta y emite mensajes pertinentes en distintos contextos mediante la utilización de medios, códigos y herramientas apropiados. Mediante un ejemplo podrás comprender para que nos sirve el MVC Un ejemplo Tomemos como ejemplo una aplicación hecha para almacenar y procesar los datos de las elecciones municipales. El modelo del dominio sería bastante simple: Un conjunto de votos, un conjunto de mesas y un conjunto de departamentos. Cada voto almacenaría la selección hecha por el votante y la mesa donde emitió su voto. Cada mesa contendría información sobre el lugar de votación y el departamento donde estaría ubicada. El conjunto de vistas sobre el modelo también sería sencillo: Se podría obtener un gráfico estadístico de votos por departamento en barras, otro grafico de votos por departamento mostrado como torta, el conjunto de votos totales en una tabla, el conjunto de votos totales en barras o en torta, etc. Como se puede ver, aunque todas las vistas estarían mostrando la información de diferente manera, todas estarían asociadas al mismo modelo del dominio. El controlador se encargaría de mostrar las vistas que el usuario desearía ver y de permitir al usuario introducir información de votos. Si el usuario desearía ver una vista, el controlador crearía la vista solicitada, esta vista obtendría la información necesaria del modelo y la desplegaría. Si el usuario aumentaría información de votos al sistema, el controlador se encargaría de actualizar la información contenida en el modelo del dominio que, al ser modificado, anunciaría al modelo de la aplicación la existencia de cambios y ´este notificaría a todas sus vistas asociadas para que se actualicen. De esta manera, las vistas estarían siempre actualizadas mostrando exactamente la misma información contenida en el modelo. 93 Nombre No. Javascript. 2 Instrucciones Comprende el siguiente concepto de javascript. para el Alumno 9 Saberes a adquirir Creación de base de datos en Java. Manera Didáctica de Lograrlos Analiza la información proporcionada e investiga cómo puedes aplicar es concepto en un proyecto. JavaScript es un lenguaje de programación que se utiliza principalmente para crear páginas web dinámicas. Una página web dinámica es aquella que incorpora efectos como texto que aparece y desaparece, animaciones, acciones que se activan al pulsar botones y ventanas con mensajes de aviso al usuario. Técnicamente, JavaScript es un lenguaje de programación interpretado, por lo que no es necesario compilar los programas para ejecutarlos. En otras palabras, los programas escritos con JavaScript se pueden probar directamente en cualquier navegador sin necesidad de procesos intermedios. Javascript es un lenguaje que puede ser utilizado por profesionales y para quienes se inician en el desarrollo y diseño de sitios web. No requiere de compilación. Como síntesis se pude decir que Javascript es un lenguaje interpretado, basado en prototipos, mientras que Java es un lenguaje más orientado a objetos. Javascript permite a los desarrolladores crear acciones en sus páginas web. 94 Nombre Sopa de letras. No. 1 Instrucciones para el Alumno Resuelve la sopa de letras. Competencias Genéricas a Desarrollar Escucha, interpreta y emite mensajes pertinentes en distintos contextos mediante la utilización de medios, códigos y herramientas apropiados. Manera Didáctica de Lograrlas Resolviendo la sopa de letras podrás conocer algunos conceptos Resuelve la sopa de letras en todos los sentidos 95 J J E D Z E E S S A Z M H A A K Z Z R G N V A C C I O N E S E N O I C A M I N A R E E E V E S S W U D U I A R R J S M R O Z E L R N A V U E I E D E S A R R O L L A D O R E S T E A B Ñ Q T O X E P T W K D L A U Z O N E Q J I E O U E I R F O S O Ñ E L O X A U G S E Q P S O E X Q O A I E W M F M P A X F U O V E O I I G T A B S U R Z N E N P O E D A N E R K L U Z O Q T Q Y O X B F B R A T S J I N T O L L O R R A S E D C V G V O B G A E L T U K T Y R U R E E I A V C U C G U E I G E A S J C T R S U X N T M B X U X R A R N N F N JAVA VENTANAS LENGUAJE LINK PROGRAMACION DESARROLLO PAGINAS BOTONES WEB ACCIONES DINAMICAS DESARROLLADORES DISEÑO PROGRAMADORES I H E R T E I A O R A N Z I Z A F A L E A A M G R E I R M A C P R O G R A M A C I O N S A F T W R I A E X E G U T E A A D T N S E A V D Y Q C R F R Q B O T O N E S S I K G C S E S U A A M A L U W R I I W A S A F I E Z N G A S A S A L A O Q P A M E Q T Q Z K Q A A SITIOS PROGRAMAS TEXTO ANIMACIONES 96 Nombre No. Características de JavaScript. 3 Instrucciones Analiza y conoce las características de JavaScript. para el Alumno 9 Saberes a adquirir Creación de base de datos en Java. Manera Didáctica de Lograrlos Analiza la información proporcionada e investiga cómo puedes aplicar es concepto en un proyecto. Javascript es muy fácil de aprender para quien ya conoce lenguajes similares como el C++ o Java, pero, dada su simplicidad sintáctica y su manejabilidad, no es tampoco difícil para quien se acerca por primera vez a este lenguaje. Sin embargo, esto puede ser un arme de doble filo porque la simplicidad se basa en una disponibilidad de objetos limitada, por lo que algunos procedimientos, aparentemente muy sencillos, requieren script bastante complejos. La característica principal de Javascript, de hecho, es la de ser un lenguaje de scripting, pero, sobre todo, la de ser el lenguaje de scripting por excelencia y, sin lugar a dudas, el más usado. Esta particularidad conlleva una notable serie de ventajas y desventajas según el uso que se le deba dar y teniendo en cuenta la relación que se establece entre el mecanismo cliente-servidor. Para explicar con pocas palabras dicha relación, podemos decir que el servidor envía los datos al cliente y estos datos pueden llegar en en dos formatos diversos: en formato texto (o ASCII) o en formato binario (o código máquina: El cliente sabe cómo comprender sólo el formato binario (es decir, la secuencia de 1 y 0), por lo que si los datos llegan en este formato son inmediatamente ejecutables (y, por desgracia, no dejan abierta la posibilidad de efectuar controles), mientras que si el formato es diverso tienen que ser interpretados y traducidos al formato binario y, por tanto, el cliente necesitará un filtro, o mejor dicho, un intérprete que sepa leer estos datos y los pueda traducir al binario. Los datos en formato texto son visibles al usuario como simples combinaciones de caracteres y de palabras y son, por tanto, fáciles de manipular, si bien requieran más tiempo para su interpretación a causa de los distintos pasos y de las transformaciones a las que deben someterse para que el cliente pueda comprenderlos: Los datos en formato binario, sin embargo, son difíciles de comprender por el usuario, pero inmediatamente ejecutables por el cliente ya que no requieren fases intermedias. Sentada esta premisa, podemos dividir los lenguajes que suelen utilizarse en el web en cuatro tipologías: 97 1. HTML: está en formato texto y no es un lenguaje en el sentido tradicional, sino un empaginador para consentir colocar los objetos en la página con las características indicadas. Naturalmente, por esta peculiaridad, tiene un carácter estático y no interactúa con el usuario ni puede tomar decisiones sino por lo que se refiere a los formularios. Para su interpretación necesita un navegador; 2. lenguajes compilados: son lenguajes bastante complejos en los que la fuente (un file de texto con las operaciones que hay que ejecutar) se compila en código máquina y se empaqueta en un ejecutable que puede utilizarse sólo de la forma y para las operaciones para las que se ha proyectado; 3. lenguajes semicompilados: en realidad, a esta clase pertenece tan sólo Java porque es un lenguaje compilado en un formato intermedio entre los file ASCII y el file binario. Dicho formato se llama bytecode y es interpretado en el cliente por una máquina virtual llamada Java Virtual Machene. De esta manera, a la recepción, dicha máquina completa la compilación y hace que el file sea ejecutable; 4. lenguajes interpretados: son los que resultan muy similares al HTML, pero que tienen mayores potencialidades porque permiten efectuar controles y operaciones complejas. Se envían en en file ASCII y, por tanto, con código en claro que el navegador interpreta y ejecuta línea por línea en modalidad runtime. El concepto de script queda bien expresado con una comparación que podemos leer en el texto de Michael Moncur sobre Javascript, recientemente publicado en Italia por Tecniche Nuove. La explicación es muy eficaz y merece citarse: script en inglés significa "guión". De hecho, el uso es exactamente éste: el navegador lee una línea, la interpreta y la ejecuta, después pasa a la sucesiva y hace lo mismo, y así hasta el cierre del script. 98 Nombre Instrucciones para el Alumno Competencias Genéricas a Desarrollar Manera Didáctica de Lograrlas JavaScript. No. 2 Analiza la información proporcionada por medio de imágenes. Escucha, interpreta y emite mensajes pertinentes en distintos contextos mediante la utilización de medios, códigos y herramientas apropiados. Analizando la información por medio de las imágenes de JavaScript. 99 Nombre Mapa mental JavaScript. No. 2 Instrucciones para el Alumno Elabora un mapa mental referente a JavaScript. Competencias Genéricas a Desarrollar Escucha, interpreta y emite mensajes pertinentes en distintos contextos mediante la utilización de medios, códigos y herramientas apropiados. Manera Didáctica de Lograrlas Elabora un mapa mental para comprensión del tema. Investigado el tema podrás desarrollar este mapa mental 100 Nombre Instrucciones para el Alumno Competencias Genéricas a Desarrollar Manera Didáctica de Lograrlas Ejercitando en Papel. No. 3 Elabora una página don de tu consideres que utilizaras JavaScript para el diseño de tu página. Escucha, interpreta y emite mensajes pertinentes en distintos contextos mediante la utilización de medios, códigos y herramientas apropiados. Realizando el ejercicio en papel de una pagina web. 101 Nombre Competencia a Desarrollar Atributos de la competencia Elabora tu propia página web. No. 1 Instrumentar estructuras relacionales de mediana complejidad, mediante el manejo de variables, la generación de reportes, pantallas y bases de datos múltiples, para implementar aplicaciones más poderosas y agregar elementos que faciliten el manejo de la base a otros usuario. 9 Explorar una base de datos existente para visualizar su contenido y sus elementos principales. Instrucciones Elabora tu propia pagina con tecnología web para el Alumno Instrucciones para el Docente Recursos materiales de apoyo Competencias Genéricas a Desarrollar Manera Didáctica de Lograrlas Proporciona el equipo necesario, el IDE y su respectivo DDL. Computadora, lenguaje de programación, lenguaje de definición de datos y su respectivo dispositivo de almacenamiento. 9 Escucha, interpreta y emite mensajes pertinentes en distintos contextos mediante la utilización de medios, códigos y herramientas apropiados. 9 Desarrolla innovaciones y propone soluciones a problemas a partir de métodos establecidos. Elaborando prácticas creativas donde aplique los conocimientos adquiridos. 102 Nombre Elementos de JavaScript. No. 4 Instrucciones Analiza y comprende los elementos con los que cuenta JavaScript. para el Alumno 9 Saberes a adquirir Elementos de JavaScript. Manera Didáctica de Lograrlos Analiza los elementos de JavaScript. JavaScript nos permite modificar los elementos HTML de una pagina, por ejemplo, podemos cambiar de forma dinámica las características del body (color de fondo, tipo de letra) o de un elemento div entre otros. 103 Nombre Instrucciones para el Alumno Competencias Genéricas a Desarrollar Manera Didáctica de Lograrlas Ejemplo de elementos de JavaScript. No. 3 Analiza e identifica los elementos con los que cuenta JavaScript Escucha, interpreta y emite mensajes pertinentes en distintos contextos mediante la utilización de medios, códigos y herramientas apropiados. Analiza los elementos de JavaScript por medio de imágenes. En este ejemplo, se creara un script el cual mediante un formulario con un campo de texto permita cambiar el color de fondo de la página por el color que seleccionemos en un formulario. 104 Nombre Instrucciones para el Alumno Competencias Genéricas a Desarrollar Manera Didáctica de Lograrlas Elementos de JavaScript. No. 4 Elabora un formulario de los elementos de java script que cambie el color de un formulario por medio de un botón. Escucha, interpreta y emite mensajes pertinentes en distintos contextos mediante la utilización de medios, códigos y herramientas apropiados. Elabora en un formulario el cambio de color por medio de un botón. <head> < script type="text/javascript"> function modificarElemento() { document.bgColor = document.formulario.color.value; } < /script> < /head> < body> < form name="formulario"> < input type="button" value="Modificar Color" onclick="modificarElemento()"> < input name="color" type="text"> < /form> < /body> Éste código está dividido en dos partes, por un lado tenemos en el head el codigo Javascript con la función que hará el cambio de color, por otro lado tenemos en el body un formulario con un boton y un campo de texto, al apretar el boton se cambiará el color de fondo de la página por el color que hayamos escrito en el campo de texto. 105 El código javascript Éste código únicamente tiene una función javascript. Podemos ver dentro de la función lo siguiente document.bgColor = document.formulario.color.value; document.bgColor indica que queremos trabajar con el elemento body de nuestra pagina y su atributo bgColor. Si quisieramos trabajar con otro elemento de nuestro documento como una tabla, deberiamos indicar a dicha tabla un atributo id y hacer referencia utilizando tablaID.atributo = valor . Lo veremos mejor en el segundo ejemplo de este artículo document.formulario.color.value; formulario hace referencia al valor del atributo name del formulario color hace refencia al atributo name del campo de texto del formulario. value hace referencia al valor del campo de texto En este caso hemos utilizado el valor de un elemento para establecer el color. Tabién podríamos indicar el nuevo valor diréctamente poniendolo entre comillas document.bgcolor = "red" Por lo tanto podríamos decir que en este código Javascript estamos indicando que el atributo bgcolor de nuestro body sea igual al valor que tengamos escrito en el campo de texto del formulario. Por ultimo, nuestro boton del formulario tiene un atributo onclick con el que hacemos la llamada a nuestra funcion javascript <input type="button" value="Modificar Color" onclick="modificarElemento()" > Posiblemente este sea un caso poco practico, ya y que rara vez vamos a necesitar cambiar el color de una pagina, pero lo que importa aquí es que entiendas como funciona este código y que sepas que de igual modo que ahora he modificado el elemento body de nuestro documento podemos modificar casa cual otro elemento de nuestro pagina, como una tabla, una capa... En la siguiente pagina vemos como trabajar con una capa y su atributo style para modificar sus propiedades CSS 106 Nombre Competencia a Desarrollar Atributos de la competencia Instrucciones para el Alumno Instrucciones para el Docente Recursos materiales de apoyo Competencias Genéricas a Desarrollar Manera Didáctica de Lograrlas Elabora una base de datos No. 2 Instrumentar estructuras relacionales de mediana complejidad, mediante el manejo de variables, la generación de reportes, pantallas y bases de datos múltiples, para implementar aplicaciones más poderosas y agregar elementos que faciliten el manejo de la base a otros usuario. 9 Explorar una base de datos existente para visualizar su contenido y sus elementos principales. Elabora una base de datos donde puedas aplicar una interfaz grafica con la implantación de una base de datos. Proporciona el equipo necesario, el IDE y su respectivo DDL. Computadora, lenguaje de programación, lenguaje de definición de datos y su respectivo dispositivo de almacenamiento. 9 Escucha, interpreta y emite mensajes pertinentes en distintos contextos mediante la utilización de medios, códigos y herramientas apropiados. 9 Desarrolla innovaciones y propone soluciones a problemas a partir de métodos establecidos. Elaborando prácticas creativas donde aplique los conocimientos adquiridos. 107 Nombre Bases de Datos y Modelo Vista Controlador con Java. No. 1 Construir una base de datos sencilla, mediante su modificación, ordenación y realización de consultas, para desarrollar aplicaciones elementales. Competencia a Desarrollar Atributos de la competencia Instrumentar estructuras relacionales de mediana complejidad, mediante el manejo de variables, la generación de reportes, pantallas y bases de datos múltiples, para implementar aplicaciones más poderosas y agregar elementos que faciliten el manejo de la base a otros usuario. 9 Explorar una base de datos existente para visualizar su contenido y sus elementos principales. Instrucciones Elabora una base de datos y realiza una conexión de la base de datos para el Alumno Instrucciones para el Docente Proporciona el IDE, DDL y el uso del laboratorio de computo.u Recursos materiales de apoyo Computadora, Dispositivo de Almacenamiento, IDE y DDL. Competencias Genéricas a Desarrollar Manera Didáctica de Lograrlas Escucha, interpreta y emite mensajes pertinentes en distintos contextos mediante la utilización de medios, códigos y herramientas apropiados. Desarrolla innovaciones y propone soluciones a problemas a partir de métodos establecidos. Elaborando prácticas e implementado diseño creativo en tus programa con bases de datos y aplicando un Modelo Vista Controlador 108 Como te habrás dado cuenta las bases de datos con una interfase grafica te ayuda a la implementación de sistemas con un diseño especializado resultando interesante y por tal motivo te seguiremos llevando por el mundo del desarrollo del software. Por lo te felicitamos porque si tú llegaste hasta aquí significa que sigues avanzando, y esperamos que nada ni nadie te detengas. Te invitamos a que continúes, pregunta a tu maestro todas las dudas que tengas y verás que el futuro será mucho mejor para ti. Date cuenta ahora, tú sabes crear, diseñar, a más de realizar consultas en un entorno de programación al mismo tiempo de la utilización de un lenguaje de definición de datos y sobre todo aplicado en un modelo vista controlador. FELICIDADES!!!! Y TE INVITAMOS A QUE AHORA EMPRENDAS EL VIAJE AL MUNDO DE LA PROGRAMACION Y PUEDAS IMPLEMENTAR LO HASTA AQUÍ APRENDIDO… 109 Esta guía fue concebida como un medio de aprendizaje en la educación técnica de nivel medio superior, y de ninguna manera se pretende que sea un sustituto del docente, por el contrario, se busca que sirva como un medio de apoyo a la dinámica del proceso de enseñanza aprendizaje, al orientar la actividad del estudiante en el aprendizaje desarrollador, a través de situaciones problemáticas y tareas que garanticen la apropiación activa, crítico - reflexiva y creadora de los contenidos, con la adecuada dirección y control de sus propios aprendizajes. La guía está integrada por dos competencias: 1. Construir una base de datos sencilla, mediante su modificación, ordenación y realización de consulta, para desarrollar aplicaciones elementales. 1. Instrumentar estructuras relacionales de mediana complejidad, mediante el manejo de variables, la generación de reportes, pantallas y bases de datos múltiples, para implementar aplicaciones más poderosas y agregar elementos que faciliten el manejo de la base a otros usuarios. El desarrollo de estas competencias permite cubrir básicamente con el Resultado de Aprendizaje del Submódulodos, que es el deManipular una base de datos mediante interfaces gráficas. La forma de evaluar el presente Submódulo es en primer término considerando los instrumentos de evaluación, los cuales determinan el producto y el desempeño, derivados de cada una de las prácticas plasmadas en la guía. 110 9 Diseño de bases de datos con java. RINEHART, MARTIN (aut.) Editorial McGraw-Hill /Interamericana de España, S.A. 9 Java 2. Interfaces gráficas y aplicaciones para internet 3ª Edición. CEBALLOS SIERRA, FRANCISCO JAVIER (aut) Editorial Ra-Ma. 9 Java 2: Lenguaje y aplicaciones. SIERRA, FRANCISCO JAVIER (aut) Editorial Ra-Ma. 9 Comunicaciones y bases de datos con java a través de ejemplos. BOBADILLA SANCHO, JESÚS; SANCHO HERNÁNDEZ, ADELA (aut.). Editorial Ra-Ma. 9 Fundamentos de base de datos, Silberschatz/korth/Sudarshan, editorial McGraw Hill 111 JAVASCRIPT: Es un lenguaje interpretado, es decir, que no requiere compilación, utilizado principalmente en páginas web, con una sintaxis semejante a la del lenguaje Java y el lenguaje C. COMENTARIOS: La sintaxis de los comentarios es la misma de C++, comentarios de bloque delimitados por «/*» y «*/», y comentarios de línea delimitados por «//» y el fin de línea. SINTASIX DEL LENGUAJE: JavaScript es case sensitive, o lo que es lo mismo, diferencia mayúsculas y minúsculas. Es diferente, por tanto, una variable llamada Foode otra llamada foo. VARIABLES: Son espacios de memoria dentro del navegador del cliente a los que se les asigna un nombre de acceso para todo el programa. Se pueden eliminar con el operador delete. Únicamente se pueden borrar las variables declaradas implícitamente (sin el operador vardelante). Están asociados a un valor, un objeto o a una función. Hay varios tipos de variables: string, number, object, function, array, boolean... OPERADORES: Existen de varios tipos: asignación, aritméticos, lógicos, especiales y alfanuméricos (este ultimo fusiona numéricos y alfabéticos). Operador de asignación:El operador de asignación en el lenguaje JavaScript es el símbolo igual, =. Operadores aritméticos:Los aritméticos son los matemáticos: suma(+), resta(-), multiplicación(*), división(/), y resto de división o módulo (%). El operador + también puede ser utilizado para concatenar strings. 112 GUIA DE OBSERVACION: TPS-05/M4S2/001 Nombre del alumno: Campos de aplicación Carrera: Técnico en Programador de Software. Actividades de ingreso y egreso en adulto mayor en: MóduloIV:. Aplicar los Fundamentos de Programación II y los 1. Empresas privadas Tópicos de Programación Web. SubmóduloII: Manipular una base de datos mediante interfaces gráficas. 2. Empresas publicas o gubernamentales Evidencia por desempeño: carpeta de evidencia con los programas y prácticas donde está aplicando su proyecto. Evidencia de actitud asociada: orden, disciplina y 3. Escuelas públicas y privadas. honestidad Instrucciones para el estudiante: Implementa bases de datos con interface grafica. CRITERIOS CUMPLIO SI NO OBSERVACIONES 1 ¿Utilizó manual de usuario en su proyecto? 2 ¿Aplicó el lenguaje de definición de datos indicado? 3 ¿Aplicó el lenguaje de programación solicitado? 4 ¿Aplicó su proyecto en alguna empresa publica o privada? 5 ¿Aplicó la tecnología web? Observaciones generales Evaluó (Nombre y Firma) Lugar y fecha de la aplicación 113 CUESTIONARIO PARA VISITAS GUIADAS. 1.- ¿Escribe el nombre del sistema de aplicación que viste? __________________________________________________________________________ __________________________________________________________________________ __________________________________________________________________________ __________________________________________________________________________ 2.- ¿Escribe una lista de los lenguajes de programación que utilizan? __________________________________________________________________________ __________________________________________________________________________ __________________________________________________________________________ __________________________________________________________________________ 3.- Describe para quienes o que empresas elaboran programas y/o sistemas la que visitaste. __________________________________________________________________________ __________________________________________________________________________ __________________________________________________________________________ __________________________________________________________________________ 4.- Describe en qué parte del proceso de la programación te gustaría desarrollarte. __________________________________________________________________________ __________________________________________________________________________ __________________________________________________________________________ __________________________________________________________________________ 5.- Cuantas computadoras pudiste localizar que son las dedicadas exclusivamente para la creación de programas y sistemas de aplicación. __________________________________________________________________________ __________________________________________________________________________ __________________________________________________________________________ __________________________________________________________________________ 6.- Describe que fue lo que más te intereso en la visita guiada. __________________________________________________________________________ __________________________________________________________________________ __________________________________________________________________________ __________________________________________________________________________ 114 Nombre del Estudiante: Materia: Lista de Cotejo Carpeta de Evidencia a Estudiantes Cumplió Aplica No Aplica Portada Misión y Visión Índice Desarrollo de temas Incluyo temas extras desarrolladas Contiene Exámenes Calificados Ejercicios en clase Contiene Prácticas y/o Reportes de los laboratorios Incluye tareas y trabajos investigación Incluye su Proyecto Incluye Conclusión Observaciones: Oscar David Bustos Torres Firma del estudiante Docente 115