Informatica 11er

Page 1

Informática

11er. Semestre Educación Media Técnica

Te damos la bienvenida a este nuevo semestre, donde continuarás aprendiendo a utilizar las herramientas de la informática para resolver problemas de la cotidianidad. En los semestres anteriores aprendiste a manipular los componentes de las computadoras, su reparación, mantenimiento preventivo y correctivo.

También tuviste la oportunidad de utilizar las herramientas y diferentes dispositivos para el diseño e instalación de una red de área local (LAN) y te paseaste por diversos conceptos básicos de programación, algoritmos, diagramas de flujo y pseudocódigo, entre otros. En este semestre vas a tener la posibilidad de profundizar en otros temas, tales como: lenguajes de programación, estructura de datos y base de datos, para completar los tres módulos que conforman la mención Informática de la especialidad de Comercio y servicios administrativos. Queda de tu parte profundizar en cada uno de estos temas, para consolidar las competencias que te permitirán desenvolverte de una manera efectiva en el ejercicio de tu profesión, en el campo laboral o si decides avanzar a nivel de estudios superiores.

283


284


Los algoritmos Semana 1 Los algoritmos

Semana 1

¡Empecemos! Estimado participante, bienvenido a este nuevo semestre en el que esperamos mucha dedicación y apertura de tu parte para enfrentar los nuevos retos que se te presentan. A estas alturas del partido, como diríamos en el béisbol, son muchas las cosas que dominas del tema sobre programación. En las últimas semanas del 10mo semestre aprendimos sobre el concepto de algoritmo con sus respectivos diagramas de flujo y cómo elaborarlos a partir de problemas sencillos de la cotidianidad. Esta semana vamos a repasar los conceptos y procedimientos respectivos.

¿Qué sabes de...? ¿Qué significa la palabra algoritmo?, ¿has realizado alguno?, ¿lo has representado gráficamente? Para entender de programación, es importante que manejes esto.

El reto es... Antes de entrar de lleno en el tema de los algoritmos y su representación gráfica, te invitamos a realizar algunos ejercicios que te permitirán tener un acercamiento al tema. Diariamente estamos realizando actividades, cuyos procesos desarrollamos de manera automática; por ejemplo, asistir al trabajo, ir al mercado, ir el día sábado al CCA, etc. Para ello, no anotamos los pasos que vamos a dar, pues ya están grabados en nuestra mente. En vista de esto, te proponemos que escojas un problema tomado de tus actividades cotidianas y realices, junto a tus compañeros, una lista ordenada de los pasos para lograr la solución. 285


Semana 1

Los algoritmos

Para entender bien lo que es un algoritmo y aprender a representarlo gráficamente, anímate a revisar el concepto en varias fuentes y a ejercitarte permanentemente.

Vamos al grano En el diccionario de la Real Academia Española (http://www.rae.es/) encontramos la siguiente definición de algoritmo: 1.m. Conjunto ordenado y finito de operaciones que permite hallar la solución de un problema. 2.m. Método y notación en las distintas formas del cálculo. Por su parte, en WordReference.com (http://li.co.ve/zbd) se define algoritmo como: 1.m. Conjunto ordenado y finito de operaciones que permiten hallar la solución de un problema: por el algoritmo de Euclides se calcula el máximo común divisor de dos números. 2. Método y notación en las distintas formas del cálculo: “ax2 + bx + c = 0” es un algoritmo. En ambos casos, nos hablan de pasos ordenados y finitos para resolver un problema. Entonces, si nos planteamos, por ejemplo, exponer el tema sobre algoritmos, deberíamos cumplir con los pasos siguientes: revisar el tema relacionado con los algoritmos; preguntarme si lo que sé sobre algoritmos es suficiente para lo que voy a exponer; si es suficiente, continúo con los pasos siguientes; si no, me tocará investigar lo que no domino; preparar la exposición, exponer y finalizar. 286

La lámpara no funciona

¿Está enchufada?

NO

Enchufarla

SI ¿Foco quemado? NO Comprar nueva lámpara

SI

Reemplazar el foco


Los algoritmos

Semana 1

¿Será suficiente con esta definición para entender y elaborar un algoritmo? A simple vista pareciera que sí, pero ampliemos el concepto. Un algoritmo es un conjunto finito de instrucciones o pasos que sirven para ejecutar una tarea o resolver un problema. De un modo más formal, un algoritmo es una secuencia finita de operaciones realizables, no ambiguas, cuya ejecución da una solución de un problema. Cuando se habla de pasos finitos, sencillamente se refiere a una cantidad de pasos definidos, que podemos contar; por ejemplo, para ir al banco a retirar dinero hacemos lo siguiente: 1. Vamos al banco 2. Llenamos la planilla o forma 3. Hacemos la cola 4. Entregamos la planilla o forma 5. Retiramos el dinero 6. Fin del proceso Como el problema era retirar el dinero del banco, lo que suceda de allí en adelante, será parte de otro u otros procesos. Por otro lado, las instrucciones no son ambiguas, no dejan dudas para su ejecución; por ejemplo, para sacar dinero del banco, no hay dudas acerca de que debo dirigirme a la taquilla y esperar la entrega del efectivo para retirarme de la misma. Cabe destacar que algunos algoritmos no necesariamente tienen que terminar o resolver un problema en particular. En general, los algoritmos tienen tres propiedades, siempre y cuando no consideremos algoritmos paralelos. 1. Tiempo secuencial: un algoritmo funciona en tiempo discreto –paso a paso–, definiendo así una secuencia de estados “computacionales” por cada entrada válida (la entrada son los datos que se le suministran al algoritmo antes de comenzar). 2. Estado abstracto: cada estado computacional puede ser descrito formalmente utilizando una estructura de primer orden y cada algoritmo es independiente de su implementación (los algoritmos son objetos abstractos) de manera que, en un algoritmo, las estructuras de primer orden son invariantes bajo isomorfismo. 3. Exploración acotada: la transición de un estado al siguiente queda completamente determinada por una descripción fija y finita; es decir,

287


Semana 1

Los algoritmos

entre cada estado y el siguiente solamente se puede tomar en cuenta una cantidad fija y limitada de términos del estado actual. Los algoritmos pueden ser expresados de muchas maneras, incluyendo al lenguaje natural, pseudocódigo, diagramas de flujo y lenguajes de programación, entre otros. Las descripciones en lenguaje natural tienden a ser ambiguas y extensas. Mientras que, usar pseudocódigos y diagramas de flujo, evita muchas ambigüedades propias del lenguaje natural. Dichas expresiones son formas más estructuradas para representar algoritmos; no obstante, se mantienen independientes de un lenguaje de programación específico. En resumen, un algoritmo es cualquier cosa que funcione paso a paso, donde cada paso se pueda describir sin ambigüedad y sin hacer referencia a una computadora en particular y, además, debe tener un límite fijo en cuanto a la cantidad de datos que se pueden leer/escribir en un solo paso. Esta amplia definición abarca, tanto los algoritmos prácticos como aquellos que solo funcionan en teoría; por ejemplo, el método de Newton y la eliminación de Gauss-Jordan funcionan, al menos en principio, con números de precisión infinita; sin embargo, no es posible programar la precisión infinita en una computadora, y no por ello dejan de ser algoritmos.

Para saber más… Para profundizar en el interesante tema de esta semana, anímate a consultar otras fuentes, como libros de texto y/o diferentes sitios web, entre los que te recomendamos los siguientes: http://li.co.ve/zDz

http://li.co.ve/zD0

http://li.co.ve/zbc

Disfruta el video “Qué es un algoritmo” disponible en esta dirección web: http://li.co.ve/zDy

Aplica tus saberes Para poner en práctica lo aprendido, te proponemos las siguientes actividades: 1. Elabora un algoritmo para cada una de las actividades listadas a continuación. a) Investiga en internet un tema relacionado con los algoritmos. b) Elabora una presentación en cualquiera de las aplicaciones existentes para explicar el tema sobre algoritmos. 288

c) Escoge una actividad que realices de forma cotidiana y elabora su algoritmo.


Los algoritmos

Semana 1

2. ¡Pon a prueba tus saberes y diviértete con el multimedia de este semestre! a) Identifica en la sopa de letras las palabras relacionadas con el tema de algoritmos. b) Completa el algoritmo, colocando en la secuencia el paso faltante.

Comprobemos y demostremos que… 1. Elabora un informe donde se refleje lo siguiente: a) Problemática presentada en la sección “El reto es …” b) Proceso utilizado para llegar a la solución del problema. c) Resultados. 2. Elabora una presentación de tu informe y exponlo en el CCA.

289


Semana Semana22

Diagramas de flujo y pseudocódigos

Diagramas de flujo y pseudocódigos ¡Empecemos! ¡Bienvenidos! Estamos en una fase de repaso de lo estudiado en las últimas semanas del 10mo semestre, sólo con la intención de reafirmar los saberes y refrescar los principios básicos de programación, tópico que comenzaremos a estudiar a partir de la semana 3. Esta semana vamos a seguir repasando los algoritmos, específicamente su representación gráfica.

¿Qué sabes de...? ¿Alguna vez has realizado un diagrama de flujo? ¿Sabes lo que son pseudocódigos? Inicio A, B S

Comienzo del diagrama Entrada de datos a la computadora desde el exterior

A+B

Operaciones hechas por la computadora

S

Salida de datos a la computadora desde el exterior

Fin

Fin del diagrama

El reto es...

290

Con tus saberes y experiencia de vida, te invitamos a idear un sistema de símbolos que te permita graficar un algoritmo. Para esto debes, en primer lugar, escoger una actividad rutinaria de la cotidianidad familiar, laboral o del CCA y elegir los símbolos a utilizar; pueden ser figuras geométricas o imágenes, siempre y cuando tengan cierta afinidad.


Diagramas de flujo y pseudocódigos

Semana 2

Vamos al grano Un diagrama de flujo o flujograma, como también se conoce, es sencillamente un dibujo que indica, mediante símbolos, la dirección del flujo de la información y la secuencia de pasos de un algoritmo; por eso se habla de la representación gráfica del mismo. Este sistema de símbolos está regido por la Organización Internacional de Estandarización ISO. Cada una de las instrucciones de un algoritmo representan acciones diferentes; por ejemplo, hay instrucciones que representan lectura de datos, escritura de datos o toma de decisiones, entre otras. Estas acciones se ubican de forma secuencial, según el orden del algoritmo, en un gráfico denominado diagrama de flujo, que permite ver con mayor precisión cada una de las acciones. Los símbolos utilizados son una convención aceptada por todos los desarrolladores de programas (ver tabla 1). Tabla 1 Representa el inicio y el fin del proceso. Representa la realización de una actividad en el proceso; ejemplos: llenar la forma para retirar dinero, asignar un valor inicial, realizar una suma. Representa entrada de datos: leer número, leer una fórmula. Representa salida de datos, resultados, sumas, áreas, etc. Representa la continuidad del diagrama de flujo en otra página. Representa la dirección del flujo de información. Representa una acción consistente en la toma de decisiones cerradas, cuyas opciones sean sí o no. Aplicando estos símbolos al ejemplo de ir al banco a retirar dinero, podríamos hacer un diagrama como el que se muestra (ver figura 1).

291


Semana 2

Diagramas de flujo y pseudocódigos

Inicio

Inicio Ir al banco Hacer la cola Entregar la forma Retirar efectivo

Al diagrama de la izquierda le podemos introducir una acción de decisión; por ejemplo, ¿el personal del banco está laborando? usando el símbolo respectivo.

Ir al banco

¿El banco está laborando?

Ir a otro banco

Hacer la cola Entregar la forma

Fin

Retirar efectivo Fin Figura 1 En el diagrama de la izquierda el algoritmo está bien diagramado, se entiende que el banco está en funcionamiento. En el de la derecha, introducimos una duda que complejiza el procedimiento, pues hay que tomar una decisión antes de continuar con el proceso. Estos cambios también los puedes introducir a modo de ejercicio, para ver qué sucede; lo que sí debe estar claro es que, a la hora de la traducción al lenguaje informático, no haya ambigüedades.

El pseudocódigo

Para ir avanzando hacia la comprensión de los algoritmos como elementos básicos de programación, introducimos el pseudocódigo, un “pre-lenguaje” para establecer la comunicación con la computadora. 292

El pseudocódigo consiste en una serie de instrucciones escritas, ya no en lenguaje natural, sino combinando este con algunas estructuras informáticas.


Semana 2

Diagramas de flujo y pseudocódigos

Se trata de una traducción previa entendible de un algoritmo; por ejemplo, para hallar el área (A) de un triángulo rectángulo de base igual 9cm (B = 9cm) y altura 5cm (h = 5cm) se escribe el algoritmo, tal como se muestra en la tabla 2. Tabla 2 Algoritmo

Diagrama de flujo

1. Inicio

Inicio

2. Leer la base (B) B

3. Leer la altura (h)

h

4. Leer el área (A) 5. Escribir el área (A)

9

A

6. Fin.

5 B*h/2

Pseudocódigo

Interpretación

Inicio

Inicio

B

9

h

5

B 9 (se asigna el valor 9 a B)

A

B*h/2

A Fin

A Fin

h 5 (se asigna al valor 5 a h) A B*h/2 (se lee la fórmula para calcular el área) A (se escribe el área calculada) Fin

Para saber más… Te invitamos a ver dos interesantes videos para profundizar en el tema de esta semana, disponibles en las siguientes direcciones web: http://li.co.ve/zHp

http://li.co.ve/zHr

También puedes revisar las semanas 13 y 14 del 10mo semestre.

Aplica tus saberes 1. Elabora un algoritmo con su respectivo diagrama de flujo del proceso de estudiar la mención de Informática. 2. Elabora un algoritmo y el pseudocódigo correspondiente para calcular el volumen de un cubo. La fórmula para calcular el volumen de un cubo es V= l3 3. Escribe verdadero (V) o falso (F), según sea el caso, en las siguientes afirmaciones.

293


Semana 2

Diagramas de flujo y pseudocódigos

a) El pseudocódigo es la representación gráfica de un algoritmo ( ) b) Una instrucción en un algoritmo no debe ser ambigua ( ) c) El pseudocódigo es una combinación del lenguaje natural y el informático ( ) d) El flujograma nos permite ver con claridad el flujo de la información en un algoritmo ( ) e) La forma rectangular en un diagrama de flujo significa “tomar una decisión” ( )

Comprobemos y demostremos que… Con las siguientes actividades elabora una tabla donde se refleje el algoritmo, el diagrama de flujo y el pseudocódigo. 1. Calcula el monto a pagar por un artículo, cuyo precio es de Bs. 800,00, si se le hace un descuento del 30%. 2. Calcula el promedio de edad de los participantes del 11er semestre. Consulta las edades de tus compañeros y compañeras de clase para realizar esta actividad. 3. Elabora una presentación, en PowerPoint u otra aplicación de tu preferencia, de alguna de las actividades anteriores y exponla en el CCA.

294


Diagramas Semana 3 de flujo y pseudocódigos Datos

Semana 2

¡Empecemos! Apreciados participantes, ya hemos avanzado en este nuevo semestre, adentrándonos en el maravilloso mundo de la informática. En la semana 1 y 2 repasamos el tema sobre algoritmos, su definición y representación gráfica; esta semana estudiaremos los datos y tipos de datos que se utilizan en programación. Esperamos de ti toda la disposición y atención que puedas prestar para entender este tema fundamental para tu formación como Técnico Medio. En el proceso formativo de esta semana harás uso de los saberes adquiridos durante el semestre pasado, vinculados con la estructura de datos; así que, muchos de los conceptos que abordaremos te resultarán familiares, pues son parte esencial de la informática y de la programación.

¿Qué sabes de...? Te invitamos a reflexionar sobre las siguientes cuestiones: ¿Qué es un dato? ¿Qué es el tipo de dato informático? ¿Cuáles son los datos primitivos?

El reto es... Te invitamos a dar una mirada al entorno del CCA y hacer una lista de los datos que puedes encontrar en él.

Vamos al grano Todos conocemos sobre datos, nuestro día a día está lleno de ellos. Por ejemplo, en un partido de futbol, uno de los datos más destacados son los goles que anota cada equipo. 295


Semana 3

Datos

Los datos son lo que le dan sentido a un programa informático, por cuanto en él entran datos, que luego son procesados, de donde se genera un resultado, llamado información. Los datos son una representación simbólica (numérica, alfabética, algorítmica, espacial, etc.) de un atributo o variable. Los mismos describen hechos empíricos, sucesos y entidades. Se trata de un valor o referente que recibe el computador por diferentes medios y representa la información que el programador manipula en la construcción de una solución o en el desarrollo de un algoritmo. Los datos aisladamente pueden no contener información relevante. Sólo cuando un conjunto de datos se examina en un enfoque, hipótesis o teoría, se puede apreciar la información contenida en dichos datos. Los mismos pueden consistir en números, estadísticas o proposiciones descriptivas. Los datos se caracterizan por no contener ninguna información. Un dato puede significar un número, una letra, un signo ortográfico o cualquier símbolo que represente una cantidad, una medida, una palabra o una descripción. La importancia de los datos está en su capacidad de asociarse dentro de un contexto para convertirse en información. Por si mismos los datos no tienen capacidad de comunicar un significado y, por tanto, no pueden afectar el comportamiento de quien los recibe. Para ser útiles, los datos deben convertirse en información, a fin de ofrecer un significado, idea o conclusión. Hasta el momento, hemos supuesto que los datos que maneja una aplicación no son tan voluminosos y, por lo tanto, caben en la memoria. Cuando recurrimos a archivos, se debe a la necesidad de conservar datos después de que termina un programa; por ejemplo, para apagar el computador. Sin embargo, existen problemas en donde el volumen de datos es tan grande que es imposible mantenerlos en la memoria. Entonces, los datos se almacenan en un conjunto de archivos, los cuales conforman una base de datos. 1. Tipo de dato informático: es un atributo de una parte de los datos que indica al ordenador y/o al programador algo acerca de la clase de datos sobre los que se va a procesar. Esto incluye imponer restricciones en los datos, como qué valores pueden tomar y qué operaciones se pueden realizar. 2. Tipos de datos primitivos: se refieren a tipos de datos básicos o elementales, a partir de los cuales se forman estructuras de datos. Los tipos de datos primitivos considerados en los lenguajes de programación, son: enteros, reales, lógicos y los caracteres. 296

a) El tipo entero (INTEGER) comprende un subconjunto de números enteros, cuyo tamaño puede variar entre los diversos sistemas de computación. Es un miembro del siguiente conjunto de números:


Semana 3

Datos

{ . . . , -(n+1), -n, -(n-1),. . . . , -2, -1, 0, 1, 2, . . . ., (n-1), n, (n+1),. . . .} Si una computadora utiliza n bits para representar un entero en complemento de 2, entonces los valores posibles de x están entre -2n-1 y 2n+1 -1. Las operaciones aritméticas sobre enteros se consideran exactas, es decir, el resultado es otro entero. b) El tipo real (REAL) representa un subconjunto de los números reales, denominado conjunto punto flotante. La aritmética de los números reales no produce resultados exactos, debido a los problemas de redondeo ocasionados por operaciones con números finitos de cifras. Para este tipo de datos, son válidas todas las operaciones aritméticas: suma, resta, multiplicación, división, potencia, etc. c) El tipo lógico (BOOLEAN) representa un dato que puede tener uno de dos estados posibles: verdadero y falso, si y no, activado y desactivado, etc. Estos valores se representan con las constantes: TRUE y FALSE (verdadero y falso). Las operaciones válidas sobre los datos lógicos o booleano se denominan comparaciones lógicas, las cuales son: conjunción (AND), disyunción (ORA) y negación (NO) lógica. d) El tipo carácter (Char) comprende un conjunto de caracteres imprimibles: las letras mayúsculas y minúsculas, los dígitos, el espacio en blanco, los caracteres de puntuación (+ - * / ! @ # $ % ^& _ = ...) y un conjunto de caracteres gráficos. e) El tipo cadena es una secuencia finita de símbolos tomados del tipo primitivo carácter, incluyendo la cadena nula o vacía. Por lo general, el inicio y el final de una cadena lo delimitaremos con un apóstrofe (’). Cada cadena tiene un atributo, llamado longitud, el cual es el número de caracteres en la misma. Los datos deben: • Representarse y almacenarse en cierta forma, para poder acceder a ellos posteriormente. • Organizarse de manera adecuada, para poder acceder a ellos selectiva y eficientemente. • Procesarse y presentarse, de tal manera que puedan apoyar eficientemente al usuario. • Protegerse y manejarse, para que no pierdan su valor.

297


Semana 3

Datos

Un dato por sí mismo no constituye información, es el procesamiento de los datos lo que proporciona información. Reflexiona sobre esta afirmación y escribe tu interpretación de la misma. Luego debate con tus compañeros en el CCA, teniendo presente que en la confrontación de ideas está buena parte del aprendizaje.

Para saber más… Revisa las direcciones web siguientes, para profundizar en el tema de esta semana: http://definicion.de/datos/ http://li.co.ve/zD1

Aplica tus saberes 1. Clasifica la siguiente lista de datos (tabla 3), según los tipos estudiados en esta semana. Tabla 3 Π (pi) 0,00024x103 6,78 678,67 &%$?¿##

ADS345 6 -7 000001 Si, no

2. Escribe verdadero (V) o falso (F), según sea el caso, en las siguientes afirmaciones. a) Datos es igual a información ( ) b) El valor 5,67 es un dato tipo entero ( ) c) El valor 100000 es un dato de tipo binario ( d) Verdadero o Falso son datos tipo Char (

)

)

e) Los datos primitivos son datos básicos elementales (

298

)


Datos

Semana 3

Comprobemos y demostremos que… 1. De la lista de datos conseguidos en el CCA, clasifícalos según los tipos estudiados con anterioridad. 2. Establece la diferencia entre dato e información con algunos ejemplos. 3. Elabora un informe con lo estudiado esta semana.

299


Semana Semana4 4

Estructura de datos

Estructura de datos ¡Empecemos! Estimados participantes, bienvenidos a esta nueva semana, en la que seguiremos estudiando temas básicos de programación. Veremos específicamente lo que tiene que ver con estructuras de datos, que tiene mucha relación con los procesos estudiados anteriormente, por cuanto existen para el manejo de datos. Presta mucha atención, dedícate y sé constante; así lograrás el éxito en cada una de tus metas.

¿Qué sabes de...? ¿Qué es una estructura de datos? Expresa tu opinión al respecto, tomando en cuenta que esta es la base para comprender los temas que vamos a trabajar esta semana y las siguientes.

El reto es... Construye, a partir de los datos que te puedan suministrar tus compañeros, una estructura de datos en lenguaje natural. Decide libremente sobre qué datos vas a trabajar.

Vamos al grano En primer lugar recordemos el concepto de dato. ¿Qué es para ti un dato?. Según el Diccionario de la Real Academia Española (DRAE), dato es: (Del lat. datum, lo que se da). 300


Estructura de datos

Semana 4

1. m. Antecedente necesario para llegar al conocimiento exacto de algo o para deducir las consecuencias legítimas de un hecho. 2. m. Documento, testimonio, fundamento. 3. m. Inform. Información dispuesta de manera adecuada para su tratamiento por un ordenador. Como ves, las tres definiciones tienen que ver con información. Por ejemplo, llenar una planilla con tus datos es, sencillamente, vaciar en ella información de tu persona, como, por ejemplo, edad, sexo, altura, nivel de instrucción, cantidad de hijos, estado civil, etc. Fíjate ahora que la tercera definición se refiere específicamente al área informática, la cual debe estar dispuesta de manera adecuada, pues, de otra manera, no habría comunicación con la computadora. Recuerda el tema de algoritmos, debe haber una secuencia, un orden.

Estructura de datos Es una forma de organizar un conjunto de datos elementales, con el objetivo de facilitar la información que se tiene en un sistema, definiendo la interrelación de estos y un conjunto de operaciones que se pueden realizar sobre los mismos. Las operaciones básicas son: 1. Alta, significa agregar un valor a la estructura. 2. Baja, significa borrar un valor de la estructura. 3. Búsqueda, significa encontrar un determinado valor en la estructura para realizar una operación con este valor, en forma secuencial o binaria (siempre y cuando los datos estén ordenados). Otras operaciones: 1. Ordenamiento, significa arreglar ordenadamente los datos. 2. Apareo, significa originar una nueva estructura que contenga las apareadas. Cada estructura ofrece ventajas y desventajas en relación a la simplicidad y eficiencia para la realización de cada operación. De esta forma, la elección de la estructura de datos apropiada para cada problema, depende de factores como la frecuencia y el orden en que se realiza cada operación sobre los datos. Veamos un ejemplo de estructura de datos sencilla y de uso cotidiano en un lenguaje natural (figura 2). Más adelante estudiaremos cómo codificar las estructuras de datos en lenguaje de programación.

301


Semana 4

Estructura de datos CCA

Personal Voluntario

I Lapso 13-14

II Lapso 12-13

I Lapso 12-13

II Lapso 11-12

II Lapso 13-14

Trujillo

I Lapso 13-14

Andes Mérida

II Lapso 12-13

Oficinas (Educación)

I Lapso 12-13

Región Estado

II Lapso 13-14 II Lapso 11-12

Datos Región / Oficina / Estado

M

T

Mérida

17 18 17 15 12 126 134 141 130 53 34

87

Valera

5

34

Total Andes

6

6

5

5

41

48

39

40

F

23 11

22 24 23 20 17 167 182 180 170 76 45 121

Figura 2 Esta estructura es sencillamente un arreglo con datos numéricos y alfabéticos, donde aparecen aspectos relacionados con la gestión del Instituto Radiofónico Fe y Alegría en la región Andes, visualizando variables como Estado, oficinas, cantidad de centros, cantidad de voluntarios, además de operaciones que se ejecutan entre ellas. Estas variables se disponen en celdas (direcciones), en las intersecciones de las filas (horizontales) y columnas (verticales). En la casilla señalada con la circunferencia de color verde, se define una operación de adición de los valores de las dos casillas superiores; por supuesto, este arreglo es el resultado del procesamiento de la información que hace la computadora, usando el lenguaje correspondiente, lo cual estudiaremos en semanas próximas, y te será útil para el diseño de estructuras sencillas. Una estructura es, en términos más sencillos, una forma, una manera de organizar elementos de un sistema. Por ejemplo, 10 personas agrupadas de forma desordenada en un consultorio médico, no nos dan ninguna información, pero, si les asignamos un número a cada una, del 1 al 10, sí nos dice algo. Así entendemos que hay un orden: el que tiene el número 1 será atendido en primer lugar y, así hasta el último, identificado con el número 10.

Para saber más… Encuentra más información acerca de las estructuras de datos en las direcciones web recomendadas. Si te topas con algunos lenguajes desconocidos, no te preocupes, pues la próxima semana estudiaremos los lenguajes de programación más utilizados. 302

http://li.co.ve/zH1

http://li.co.ve/zH2


Semana 4

Estructura de datos

Aplica tus saberes 1. Escribe verdadero (V) o falso (F), según sea el caso, en las siguientes afirmaciones. a) Una estructura de datos es un conjunto de datos organizados ( ) b) “Alta” significa agregar un valor a la estructura (

)

c) “Baja” significa eliminar una dato de la estructura (

)

2. Define con tus propias palabras lo que es una estructura de datos. 3. Con los datos siguientes elabora una estructura de datos sencilla: Personas: María, Pedro, José, Juan, Rafael y Josefina. Edades: 23 años, 45 años, 30 años, 56 años, 31años y 25 años.

Comprobemos y demostremos que… 1. Elabora un resumen de lo que es una estructura de datos. Hazlo en lenguaje natural, utiliza la siguiente estructura: introducción, definición, ejemplos, datos y tipos, importancia de una estructura de datos, conclusiones. 2. Elabora una presentación acerca de la estructura de datos, en cualquiera de las aplicaciones existentes (PowerPoint, Prezi, etc.) y exponla en el CCA.

303


Semana Semana55

Tipos de estructuras de datos

Tipos de estructuras de datos ¡Empecemos! ¡Bienvenidos y bienvenidas a esta nueva semana! Teniendo claro lo que es la estructura de datos, lo que son datos y los diferentes tipos que existen, estudiaremos ahora los tipos de estructura de datos, tocando un poco los lenguajes de programación.

¿Qué sabes de...? Para entender el tema que abordaremos esta semana, es fundamental tener claro qué son datos, su definición, ejemplos, tipos y las estructuras que se pueden configurar con los mismos; por eso te invitamos a volver sobre estos temas y reflexionar acerca de: ¿qué viene a tu mente cuando oyes la palabra “datos”?, ¿con qué otros términos relacionas dicha palabra?, ¿cuáles datos utilizas con frecuencia en la cotidianidad?

El reto es... Elabora una estructura con información de tus compañeros del 11er semestre, utilizando datos como, por ejemplo, edad, sexo, estatura, peso, entre otros. Además, indica qué tipo de estructura es. Para el reto de esta semana, apóyate en lo que has estudiado hasta ahora e indaga en otras fuentes. ¡Tú puedes!

Vamos al grano

304

Para tener más claro el concepto de estructura de datos, debemos recordar la definición de conjunto que, como sabes, se refiere a una colección de objetos de una misma especie. Estas son estructuras matemáticas y, por lo tanto, informáticas, donde se pueden definir diferentes operaciones.


Semana 5

Tipos de estructuras de datos

Veamos algunos ejemplos de conjuntos: los seres humanos del sexo femenino, los participantes del 11er semestre del IRFA, los números naturales, los números enteros, los números binarios, etc. Para repasar las maneras como se representan y se denotan los conjuntos, busca en tus apuntes de otros semestres, en libros de texto o en internet. Veamos ahora las diferentes estructuras de datos: 1. Pilas. Una pila (stack en inglés) es una lista ordinal o estructura de datos en la que el modo de acceso a sus elementos es de tipo LIFO (del inglés Last In First Out: último en entrar, primero en salir) que permite almacenar y recuperar datos. Esta forma se aplica en multitud de ocasiones en informática, debido a su simplicidad y ordenación implícita en la propia estructura. Otra similitud pudiese ser una caja donde introducimos una serie de láminas con datos específicos; la ubicación de estas láminas, lógicamente será 1º, 2º, 3º, 4º,…, Nº. Si buscamos el dato 1º (el primero), tendremos que revisar cada uno de los datos que están en ubicaciones contiguas empezando por Nº (el último). ¿Te ha pasado que te toca buscar un documento en una caja y tienes que sacar uno por uno hasta llega al primero? Por eso, la premisa es: “el primero en entrar es el último en salir”. 2. Cola. Colas FIFO (en inglés First In, First Out: primero en entrar primero en salir). Son aquellas que sólo tienen dos operaciones, Push (Inserción) y Pop (Eliminación). Push sólo se puede efectuar por un extremo llamado Frente y Pop por el extremo llamado Final. Sin embargo, se le pueden aplicar todas las operaciones al igual que a las listas. Esta estructura de datos se compara con una cola en la vida real; por ejemplo, en una cola para realizar una transacción bancaria, el primero que llega es el primero que sale. En este ejemplo, se pueden crear prioridades, otras colas, por ejemplo, de personas de la tercera edad, personas con discapacidad, etc. 3. Listas. ¿El término “lista” tendrá alguna relación con la palabra ya conocida por todos? ¡Claro que sí! Por ejemplo, si queremos hacer una lista de las personas que acuden a un consultorio, sencillamente escribimos sus nombres en forma secuencial: Pedro, María, Rosalba, Blanca, David, etc. Y, si le asignamos un código a cada persona, nos quedaría así: Pedro (01), María (02), Rosalba (03), Blanca (04), David (05).

305


Semana 5

Tipos de estructuras de datos

La atención de forma lógica y ordenada sería 01, 02, 03, 04, 05, 06. No se puede atender al 02, si antes no ha pasado el 01; no se puede atender al 03 antes que al 02. Las listas son secuencias de 0 (cero) o más elementos de un tipo de datos almacenados en la memoria. Son estructuras lineales, donde cada elemento tiene un predecesor, a excepción del primero y un sucesor, excepto el último. La figura 3 muestra la estructura gráfica de una lista simple. Y, de forma general, sería como muestra la figura 4. 01

02

03

04

05

Figura 3 X

Y Figura 4

3.1. Listas simples enlazadas La lista enlazada básica es la lista enlazada simple que tiene un enlace por nodo. Este enlace apunta al siguiente nodo en la lista, o al valor NULL (Nulo) o a la lista vacía, si es el último nodo. Una lista enlazada simple contiene dos valores: el valor actual del nodo y un enlace al siguiente nodo (figura 5). 12

99

99

Figura 5 3.2. Lista doblemente enlazada Un tipo de lista enlazada más sofisticado es la doblemente enlazada o lista enlazada de dos vías. Cada nodo tiene dos enlaces: uno apunta al nodo anterior, al valor NULL o a la lista vacía, si es el primer nodo; y otro apunta al siguiente nodo, al valor NULL o a la lista vacía, si es el último nodo (figura 6). 12

99 Figura 6

306

37


Semana 5

Tipos de estructuras de datos

Una lista doblemente enlazada contiene tres valores: el valor, el link al nodo siguiente y el link al anterior. En algún lenguaje de muy bajo nivel, se ofrece una vía para implementar listas doblemente enlazadas, usando una sola palabra para ambos enlaces, aunque esta técnica no suele utilizarse. 3.3. Listas enlazadas circulares En una lista enlazada circular, el primer y el último nodo están unidos (figura 7). Esto se puede hacer tanto para listas enlazadas simples como para las doblemente enlazadas. Para recorrer un lista enlazada circular, podemos empezar por cualquier nodo y seguir la lista en cualquier dirección, hasta que se regrese al nodo original. Desde otro punto de vista, las listas enlazadas circulares pueden ser vistas como que no tienen comienzo ni fin. Este tipo de listas es el más usado a fin de dirigir buffers para “ingerir” datos y para visitar todos los nodos de una lista a partir de uno dado. 12

99

37

Figura 7 3.3.1. Listas enlazadas circulares simples Cada nodo tiene un enlace, similar al de las listas enlazadas simples, excepto que el siguiente nodo del último apunta al primero. Como en una lista enlazada simple, los nuevos nodos pueden ser sólo eficientemente insertados después de uno que ya tengamos referenciado. Por esta razón, es usual quedarse con una referencia solamente al último elemento en una lista enlazada circular simple, esto nos permite rápidas inserciones al principio, y también accesos al primer nodo desde el puntero del último nodo. 3.3.2. Lista enlazada doblemente circular En una lista enlazada doblemente circular, cada nodo tiene dos enlaces similares a los de la lista doblemente enlazada, pero el enlace anterior del primer nodo apunta al último y el enlace siguiente del último nodo apunta al primero. Como en una lista doblemente enlazada, las inserciones y eliminaciones pueden ser hechas desde cualquier punto con acceso a algún nodo cercano. Aunque estructuralmente una lista circular doblemente enlazada no tiene ni principio ni fin, un puntero de acceso externo puede establecer el nodo apuntado que está en la cabeza o al nodo cola y así mantener el orden tan bien como en una lista doblemente enlazada.

307


Semana 5

Tipos de estructuras de datos

En la cotidianidad existen muchos ejemplos de tipos de estructuras de datos, que permiten entender cómo es el proceso de entrada y salida en un computador, porque, en definitiva, el procesamiento de la información se traduce en eso, entrada y salida de datos.

Para saber más… Para profundizar en los temas que hemos estudiado esta semana, te recomendamos revisar esta dirección web: http://li.co.ve/zDx donde encontrarás una presentación que explica detalladamente ¿qué es una estructura de datos tipo lista?

Aplica tus saberes Define con tus propias palabras cada una de las estructuras de datos estudiadas durante esta semana y da otros ejemplos de cada una de ellas. 1. Coloca verdadero (V) falso (F) en la siguientes afirmaciones, según sea el caso: a) En una estructura de datos tipo pila, el primer dato que entra es el primero que sale ( ) b) En una estructura de datos tipo cola, el primer dato que entra es el primer dato que sale ( ) c) Una lista enlazada simple tiene un enlace por nodo ( ) d) En una lista enlazada circular, los nodos primero y último están unidos ( ) e) Una lista doblemente enlazada tiene tres valores ( ) 2. Toma como ejemplo la fila que se hace para retirar dinero del banco y elabora una estructura de datos, mediante un gráfico, usando el lenguaje natural y determina de qué tipo es.

Comprobemos y demostremos que… 308

Toma una muestra de la población de tu CCA, elabora una estructura de datos de cualquier tipo, según lo visto esta semana y establece algunas operaciones básicas con los valores de la muestra.


Tipos de estructuras de datos Semana 6 Lenguajes de programación

Semana 5

¡Empecemos! Queridos participantes, esta semana estudiaremos los lenguajes de programación que existen y su evolución desde el lenguaje máquina hasta los lenguajes de alto nivel.

¿Qué sabes de...? ¿Sabes programar? ¿Qué es un lenguaje de programación? ¿Conoces algún lenguaje de programación?

El reto es... Durante esta semana vamos a entrar al mundo de los lenguajes informáticos. Seguramente ya has escuchado alguna referencia a los mismos, por eso te invitamos a debatir sobre el tema y explicar lo que es el lenguaje de programación.

Vamos al grano Un lenguaje de programación es un lenguaje formal diseñado para expresar procesos que pueden ser llevados a cabo por máquinas, como las computadoras. Los mismos pueden emplearse para crear programas que controlen el comportamiento físico y lógico de una máquina, para expresar algoritmos con precisión, o como modo de comunicación humana, mediante el uso de un conjunto de símbolos y reglas sintácticas y semánticas que definen su estructura, así como el significado de sus elementos y expresiones.

Generaciones de lenguaje de programación 1era generación: lenguaje máquina.

2da generación: primeros lenguajes ensambladores. 3era generación: primeros lenguajes de alto nivel: Ejemplo: Pascal, Cobol.

309


Semana 6

Lenguajes de programación

4ta generación: lenguajes capaces de generar códigos por si solos; son los llamados RAD, con los cuales se pueden realizar aplicaciones sin ser experto en lenguajes. Aquí también se encuentran los lenguajes orientados a objetos, haciendo posible la reutilización de partes del código para otros programas. Ejemplo: Visual, Natural Adabes. 5ta generación: lenguajes orientados a la inteligencia artificial, los cuales aun están en fase de desarrollo. Ejemplo: LISP.

Elementos

Variables: podrían calificarse como contenedores de datos y, por ello, se diferencian, según el tipo de dato que son capaces de almacenar. En la mayoría de lenguajes de programación, se requiere especificar un tipo de variable concreto para guardar un dato preciso. Por ejemplo, en Java, si deseamos guardar una cadena de texto, debemos especificar que la variable es del tipo String. Por otra parte, en lenguajes como el PHP, este tipo de especificación de variables no es necesario. Además, existen variables compuestas por varias variables, llamadas vectores. • Variables tipo Char: estas variables contienen un único carácter, es decir, una letra, un signo o un número. • Variables tipo Int: contienen un número entero. • Variables tipo Float: contienen un número decimal. • Variables tipo String: contienen cadenas de texto o, lo que es lo mismo, es un vector con varias variables del tipo Char. • Variables tipo Boolean: solo pueden contener un 0 o un 1. El cero es considerado para muchos lenguajes como el literal False, mientras que el 1 se considera True. Vectores: no son más que un conjunto de variables consecutivas en memoria y del mismo tipo guardadas dentro de una variable contenedor. Condicionantes: son estructuras de código que indican que, para que cierta parte del programa se ejecute, deben cumplirse determinadas premisas; por ejemplo, que dos valores sean iguales, que un valor exista, que un valor sea mayor que otro, etc. Estos condicionantes, por lo general, solo se ejecutan una vez a lo largo del programa. Los condicionantes más conocidos y empleados en programación son: • If: indica una condición para que se ejecute una parte del programa. • Else if: siempre va precedido de un “If” e indica una condición para que se ejecute una parte del programa, siempre que no cumpla la condición del if previo y si se cumpla con la que el “else if” especifique. 310

• Else: siempre precedido de “If” y, en ocasiones, de “Else If”. Indica que debe ejecutarse cuando no se cumplan las condiciones previas.


Lenguajes de programación

Semana 6

Bucles: son parientes cercanos de los condicionantes, pero ejecutan constantemente un código, mientras se cumpla una determinada condición. Los más frecuentes son: • For: ejecuta un código mientras una variable se encuentre entre dos determinados parámetros. • While: ejecuta un código mientras se cumpla la condición que solicita. Hay que decir que, a pesar de que existan distintos tipos de bucles, todos son capaces de realizar exactamente las mismas funciones. El empleo de uno u otro depende, por lo general, del gusto del programador. Funciones: se crearon para evitar tener que repetir constantemente fragmentos de código. Una función podría considerarse como una variable que encierra código dentro de sí. Por lo tanto, cuando accedemos a dicha variable (la función), en realidad lo que estamos es diciendo al programa que ejecute un determinado código, predefinido anteriormente. Todos los lenguajes de programación tienen algunos elementos de formación primitivos para la descripción de los datos y de los procesos o transformaciones aplicadas a estos datos (tal como la suma de dos números o la selección de un elemento que forma parte de una colección). Estos elementos primitivos son definidos por reglas sintácticas y semánticas que describen su estructura y significado respectivamente. Programar es diseñar un programa para comunicarnos con un público determinado y esto lo podemos hacer en un lenguaje natural, es decir, el que usamos a diario, cuando se trata de comunicarnos de tú a tú con el público. Pero, si se trata de un programa informático, utilizamos un lenguaje de programación de los que hemos mencionado. En ambos procesos, el objetivo es comunicar. Lo que cambia es el lenguaje, por lo que debes aprender otro lenguaje además del que ya conoces y ponerte en la situación de una persona que aprende a leer y escribir por primera vez.

311


Semana 6

Lenguajes de programación

Para saber más… En las direcciones web indicadas encontrarás otros puntos de vista acerca de los lenguajes de programación. Revísalas y compara con lo que hemos estudiado esta semana. http://li.co.ve/zHs

http://li.co.ve/zHt

Aplica tus saberes 1. Explica con tus propias palabras ¿qué es un lenguaje de programación? 2. ¿Qué es para ti una variable? 3. Luego de revisar los materiales recomendados en “Para saber más”, elabora una explicación del tema y presenta una exposición en el CCA.

Comprobemos y demostremos que… 1. Busca un diagrama de flujo cualquiera y exprésalo en lenguaje de programación. 2. Explica el procedimiento que seguiste y realiza un foro debate con tus compañeros en el CCA.

312


Semana Lenguajes7de programación Tipos de lenguajes de programación

Semana 6

¡Empecemos! Estimados participantes, bienvenidos a esta nueva semana, en la que estudiaremos los lenguajes de programación más utilizados. No olvides repasar los temas vistos anteriormente, pues son la base para lo que veremos a partir de ahora.

¿Qué sabes de...? ¿Consideras que ya manejas lo que es un lenguaje de programación? Y ¿podrías definir cuál es su importancia?

El reto es... Debate con tus compañeros y elabora una lista de los lenguajes de programación más utilizados, para qué sirven y dónde se aplican.

Vamos al grano Ya sabemos que el lenguaje de programación es una serie de símbolos que, debidamente codificados, sirve para comunicarnos con las computadoras, lo que permite, a su vez, resolver algunos problemas en cualquier área disciplinaria. Existen muchos lenguajes de programación ubicados en tres grandes grupos: lenguajes de bajo nivel, lenguajes de nivel medio y lenguajes de alto nivel.

Lenguajes de bajo nivel

Son aquellos totalmente dependientes de la máquina, es decir, el programa que se realiza con este tipo de lenguajes no se puede migrar o utilizar en otras máquinas. Al estar prácticamente diseñados para el hardware, aprovechan al máximo las características del mismo. Dentro de este grupo se encuentran:

313


Semana 7

Tipos de lenguajes de programación

• Lenguaje máquina: ordena a la máquina las operaciones fundamentales para su funcionamiento. Consiste en la combinación de 0´s y 1´s para formar las órdenes entendibles por el hardware de la máquina. Este lenguaje es mucho más rápido que los de alto nivel. La desventaja es que son bastante difíciles de manejar y usar, además de tener códigos fuente enormes, donde encontrar un error es casi imposible. • Lenguaje ensamblador: es un derivado del lenguaje máquina y está formado por abreviaturas de letras y números llamadas mnemotécnicos. Con la aparición de este lenguaje, se crearon los programas traductores, para poder pasar los programas escritos en lenguaje ensamblador a lenguaje máquina. Como ventaja con respecto al código máquina, los códigos fuentes eran más cortos y los programas creados ocupaban menos memoria. Por ejemplo, la estructura mostrada en la tabla 4 representa un lenguaje de bajo nivel. Tabla 4 Código de dirección 00010101 10000001 00010111 10000010 00010110 10000011

Significado de operación a) Cargar contenido de la dirección 129 en acumulador b) Sumar contenido de la dirección 130 al acumulador c) Almacenar contenido del acumulador en la dirección 131 d) 10000011 = 27+21+20 = 131

Recuerda que el sistema binario (sistema numérico de base 2) es el utilizado por las computadoras; está compuesto por cero (0) y uno (1) en sus infinitas combinaciones. La presencia de 0 o 1 indica la ausencia o presencia de un grupo considerado de bits, expresado en forma de potencia en base 2. En la columna de la izquierda de la tabla 4 está la dirección en el sistema binario, cuyo significado se expresa en la columna de la derecha de la misma tabla. El código 10000001 en el sistema binario, expresado en el sistema decimal queda como 129. Así, 10000001 = 27+26+25+24+23+22+21+20 = 128+0+0+0+0+0+0+1 = 129 Como ves, sólo hay dos grupos de bits expresados como 27 y 20. Al sumar ambos, tenemos: 128+1 = 129. Repasa el tema del sistema de numeración binario y potenciación, para entender un poco más el mismo, ya que es el modo rudimentario para comunicarse con la computadora a nivel de hardware. 314

Lenguajes de medio nivel

Estos lenguajes se encuentran en un punto medio entre los de bajo y los de alto nivel. Dentro de estos lenguajes podría situarse C, ya que puede acceder


Tipos de lenguajes de programación

Semana 7

a los registros del sistema, trabajar con direcciones de memoria, todas ellas características de lenguajes de bajo nivel y, a la vez, realizar operaciones de alto nivel. Bien, ya empiezan a aparecer nombres de lenguajes, como el C, el cual es sencillamente la manera de expresarse para comunicarse con la computadora, a nivel de hardware (parte física) y software (programas), no tan elevados como el de alto nivel que veremos posteriormente. Un algoritmo en lenguaje C, es el siguiente: Cálculo del promedio de una lista de los números 5, 8, 2, 7, 6 Tabla 5 Instrucciones en Lenguaje C int datos[ ] = { 5, 8, 2, 7, 6, 9 }; int nDatos = 6; int promedio () { int suma; int prom; int cont; suma = 0; for (cont=0; cont<nDatos; cont++) { suma += datos [cont]; } prom=suma/nDatos; return (prom);

Acción de la computadora 1. Define una matriz (datos) de números enteros y le asigna los valores 5, 8, 2, 7, 6, 9 2. Define la variable (nDatos) de tipo entero y le asigna el valor 6. 3. Define la función (promedio) que devuelve un número entero. 4. Define la variable (suma) de tipo entero. 5. Define la variable (prom) de tipo entero. 6. Define la variable (cont) de tipo entero. 7. Asigna a suma el valor 0. 8. Para cada elemento de la matriz datos, añade su valor a la variable suma.

9. Asigna a prom el resultado de dividir la variable suma por la variable nDatos. 10. Devuelve como resultado de la función el contenido de la variable prom.

} Fíjate que a la izquierda tenemos instrucciones en lenguaje C y, a la derecha, lo que haría la computadora obedeciendo a cada orden. Las instrucciones son, en su mayoría, en idioma inglés, por lo que te recomendamos tener un diccionario Inglés-Español a la mano. 315


Semana 7

Tipos de lenguajes de programación

Lenguajes de alto nivel

Son aquellos que se encuentran más cercanos al lenguaje natural que al lenguaje máquina. Están dirigidos a solucionar problemas mediante el uso de estructuras dinámicas de datos (EDDs). Estas son estructuras que pueden cambiar de tamaño durante la ejecución del programa y permiten crear estructuras de datos que se adapten a las necesidades reales de un programa. Se trata de lenguajes independientes de la arquitectura del ordenador. Por lo que, en principio, un programa escrito en un lenguaje de alto nivel, lo puedes migrar de una máquina a otra, sin ningún problema. Estos lenguajes permiten al programador olvidarse por completo del funcionamiento interno de la máquina para la que están diseñando el programa. Cualquiera sea el tipo de lenguaje que utilices, la máquina siempre entenderá un lenguaje de bajo nivel, por lo que se necesita un módulo que haga la interpretación y comunique a la computadora las instrucciones, es decir, este módulo actúa como traductor. A este traductor también se le denomina compilador. Ahora, mira esta acotación: Un programa escrito en un lenguaje de alto nivel, debe ser compilado o interpretado para traducir su código, en otro de bajo nivel (lenguaje máquina). Como ejemplo de lenguajes de alto nivel se tienen: Pascal, BASIC, FORTRAN, COBOL, Java, C y C++. En los lenguajes de alto nivel las instrucciones son independientes de la máquina, son más fáciles de aprender porque están formadas por elementos de lenguajes naturales (del inglés). En BASIC, comandos como “IF CONTADOR = 10 THEN STOP” son usados para ordenar a la computadora, que pare si CONTADOR es igual a 10. Pero, aunque las computadoras parecieran comprender el lenguaje natural, lo hacen de una manera bastante rígida y sistemática, lo cual podría parecer un poco frustrante e inspira la búsqueda de lenguajes más cercanos aún al natural. Tomado de: http://li.co.ve/z9n Analiza el ejemplo de un algoritmo para hallar el mayor de dos números (a y b) codificado en lenguaje C++ (ver tabla 6).

316


Semana 7

Tipos de lenguajes de programación Tabla 6 Pseudocódigo procedimiento principal() variables

C++ /* para mostrar en pantalla */ #include <iostream.h> void main(){

a:entero

int a; /* a es entera */

b:entero

int b; /* b es entera */

inicio

cout <<“Digite número:”;

escribir (“Digite número:”)

cin >> a;

leer (a)

cout <<“Digite número:”;

escribir (“Digite número”)

cin >>b;

leer (b)

if( a<b ){

si (a<b) entonces

cout <<“El mayor es:”;

escribir (“El mayor es:”)

cout << b;}

escribir( b)

else{

si no

cout <<“El mayor es:”;

escribir (“El mayor es:”) escribir (a) fin_si fin_procedimiento

cout << a; } }

Recuerda el tema sobre pseudocódigo estudiado en el 10mo semestre y en las primeras semanas de este semestre. Así como existen muchas lenguas o idiomas para comunicarse en el lenguaje natural, existen también diferentes lenguajes de programación. Pero, ¿por qué existen estos? Probablemente por la diversidad de desarrolladores disponibles actualmente y por las investigaciones que apuntan a una comunicación más directa y natural con las máquinas. Y tú, ¿qué piensas?

317


Semana 7

Tipos de lenguajes de programación

Para saber más… Te recomendamos visitar las direcciones web indicadas, para profundizar en el tema de esta semana. http://li.co.ve/zHq

http://li.co.ve/z9n

Aplica tus saberes 1. Escribe verdadero (V) o falso (F), según sea el caso, en las siguientes afirmaciones. a) Los lenguajes de programación se dividen en bajo nivel, nivel medio y alto nivel ( ) b) Los lenguajes de bajo nivel son los que están más cerca del lenguaje natural ( ) c) Los lenguaje de máquina o ensamblador son los encargados de dar instrucciones a la computadora ( ) d) Los lenguajes de alto nivel están dirigidos a resolver problemas utilizando estructuras dinámicas ( ) e) El lenguaje máquina se codifica usando el sistema binario ( ) 2. Define con tus propias palabras cada uno de los lenguajes de programación estudiados durante esta semana. 3. Identifica las siguientes expresiones en lenguaje de programación de bajo nivel o alto nivel según sea el caso: Tabla 7 Código 00010111 10000010 00010110 10000011 int a; /* a es entera */ if( a<b ){ cout << “El mayor es:”; cout << b;}

318

Tipo de lenguaje


Tipos de lenguajes de programación

Semana 7

Comprobemos y demostremos que… 1. Elabora un lista de los lenguajes de programación de bajo y alto nivel más utilizados y expresa para qué sirve cada uno. 2. Da al menos dos ejemplos de algoritmos codificados en cualquiera de los lenguajes definidos en la pregunta 1. 3. Lleva a tu CCA el trabajo realizado y presenta una exposición del mismo, de manera creativa.

319


Semana 88 Semana Base de datos

Base de datos

¡Empecemos! Bienvenidos a esta nueva semana, donde seguiremos profundizando en temas básicos para entender el proceso de programación. Esta semana estudiaremos lo qué es una base de datos y tipos de base de datos en el lenguaje natural, o como las vemos a diario. En las semanas siguientes aprenderás a construir una base de datos, utilizando las aplicaciones existentes. Sólo se requiere de tu disposición y toda la atención y participación para entender estos nuevos temas.

¿Qué sabes de...? Reflexiona sobre algunos tópicos relacionados con el tema de esta semana: ¿qué es para ti una base de datos?, ¿en cuáles situaciones cotidianas crees que se utilizan las bases de datos?

El reto es... Escoge un semestre cualquiera y, con los datos que se puedan obtener, elabora una base de datos en lenguaje natural. Las variables que puedes tomar en cuenta son, entre otras, edad, sexo, estatura, salario, gustos, etc.

Vamos al grano

320

Una base de datos es un conjunto de datos pertenecientes a un mismo contexto, que son almacenados sistemáticamente para su posterior uso. En este sentido, una biblioteca puede considerarse una base de datos compuesta, en su mayoría, por documentos y textos impresos en papel, indexados para su consulta. Actualmente, debido al desarrollo tecnológico de campos como la informática y la electrónica, la mayoría de las bases de datos están en formato digital, siendo este un componente electrónico; por ende, se ha desarrollado


Base de datos

Semana 8

y se ofrece un amplio rango de soluciones al problema del almacenamiento de datos. Ya no se trata de entregar una ficha de un determinado libro al bibliotecario para que lo busque de forma manual, sino de acceder a un sistema creado que permita acceder a los datos y utilizarlos según el interés que se tenga. Existen programas denominados Sistemas Gestores de Bases de Datos SGBD (en inglés, DBMS) que permiten almacenar y, posteriormente, acceder a los datos de forma rápida y estructurada. Las propiedades de estos SGBD, así como su utilización y administración, se estudian dentro del ámbito de la informática. Más adelante veremos este tema para la construcción de bases de datos sencillas. Las aplicaciones más usuales son para la gestión de empresas e instituciones públicas, pero también son ampliamente utilizadas en entornos científicos con el objeto de almacenar la información experimental.

Tipos de bases de datos Según su variabilidad

1. Bases de datos estáticas Son bases de datos de solo lectura, utilizadas primordialmente para almacenar datos históricos, que posteriormente se pueden utilizar para estudiar el comportamiento de un conjunto de datos a través del tiempo, realizar proyecciones, tomar decisiones y realizar análisis de datos para inteligencia empresarial. Por ejemplo, el Censo nacional de vivienda 2011, realizado en Venezuela, ofrece datos correspondientes a una etapa en el desarrollo social de la nación, que sirve de referencia para comparaciones posteriores. 2. Bases de datos dinámicas Éstas son bases de datos donde la información almacenada se modifica con el tiempo, permitiendo operaciones como actualización, borrado y edición de datos, además de los procedimientos fundamentales de consulta. Un ejemplo de esto puede ser la base de datos utilizada en un sistema de información de un supermercado; en una base de este tipo hay una permanente actualización de inventarios y de precios, entre otras variables.

Según el contenido

1. Bases de datos bibliográficas Sólo contienen un subrogante (representante) de la fuente primaria, que permite localizarla. Un registro típico de una base de datos biblio-

321


Semana 8

Base de datos

gráfica contiene información sobre el autor, fecha de publicación, editorial, título, edición, de una determinada publicación. Estas pueden contener un resumen o extracto de la publicación original, pero nunca el texto completo. 2. Bases de datos de texto completo Almacenan las fuentes primarias como, por ejemplo, todo el contenido de todas las ediciones de una colección de revistas científicas o de la prensa escrita (hemeroteca). 3. Directorios Un ejemplo de directorios son las guías telefónicas en formato electrónico, donde aparece información de los usuarios de una red telefónica determinada. En el caso de Venezuela, CANTV, además de las páginas amarillas de la misma telefónica, incluye en su directorio todos los comercios afiliados, con la finalidad de orientar a los consumidores y usuarios acerca de los servicios ofrecidos en el ámbito nacional. 4. Bases de datos o “bibliotecas” de información química o biológica Almacenan diferentes tipos de información, proveniente de la química, las ciencias de la vida o ciencias médicas. 5. Base de datos orientada a objetos Es una base de datos que incorpora todos los conceptos importantes del paradigma de objetos: • Encapsulación, propiedad que permite ocultar la información al resto de los objetos, impidiendo así accesos incorrectos o conflictos. • Herencia, propiedad a través de la cual los objetos heredan comportamientos dentro de una jerarquía de clases. • Polimorfismo, propiedad de una operación mediante la cual puede ser aplicada a distintos tipos de objetos. En este tipo de bases de datos, los usuarios pueden definir operaciones sobre los datos como parte de la definición de la base de datos. Una operación (llamada función) se especifica en dos partes. La interfaz (o signatura) de una operación incluye el nombre de la operación y los tipos de datos de sus argumentos (o parámetros). La implementación (o método) de la operación se especifica separadamente y puede modificarse sin afectar la interfaz. Los programas de aplicación de los usuarios pueden operar sobre los datos invocando dichas operaciones a través de sus nombres y argumentos, sea cual sea la forma en la que se han implementado. Esto podría denominarse independencia entre programas y operaciones.

322

Este último tipo de base de datos lo veremos en acción en las semanas finales de este semestre, cuando estudiemos la construcción de páginas web.


Semana 8

Base de datos

Los temas que hemos trabajado en este semestre se acercan mucho a la realidad, lo cual no es mera coincidencia, ya que la programación informática se utiliza para resolver problemas de la cotidianidad, en cualquiera de las áreas de conocimiento: educación, economía, política, ciencias sociales, etc.

Para saber más… Anímate a profundizar en el tema de esta semana, consultando las siguientes direcciones web: http://li.co.ve/zCK

http://li.co.ve/zCL

http://li.co.ve/zCM

Aplica tus saberes 1. Explica con tus propias palabras qué es una base de datos. 2. Escribe al menos dos ejemplos de bases de datos y enumera las variables manejadas. 3. Explica cómo es una base de datos orientada a objetos.

Comprobemos y demostremos que… 1. Elabora una cartelera descriptiva del tema base de datos y comparte tus saberes en el CCA. 2. De la base de datos construida en la sección “El reto es”, realiza una presentación utilizando PowerPoint o cualquier otra herramienta conocida por ti, para luego hacer una exposición en el CCA.

323


Semana 99 Semana Entidad-relación

Entidad-relación

¡Empecemos! Amigo y amiga participante, ya arribamos a la semana 9, aprendiendo los temas básicos de programación, manejando lo que son lenguajes de programación y su clasificación, entre otros aspectos importantes. Vamos ahora a seguir echando las bases para aprender a programar, conociendo qué es una entidad, sus atributos y las relaciones que se establecen entre entidades. Esperamos de ti toda la disposición, interés y participación, para lograr la adquisición de las competencias que sobre este tema se requieren.

¿Qué sabes de...? Antes de entrar a estudiar los temas asignados para esta semana, reflexiona sobre los siguientes planteamientos: ¿qué es para ti una entidad?, ¿qué son atributos? Explica la expresión “Rafael, tiene 34 años, pertenece al género masculino y pesa 55 kgs”. Debate con tus compañeros al respecto.

El reto es... Indaga en tu CCA y haz una lista de ejemplos de las entidades que observas allí, abstractas o concretas y menciona los atributos de cada una de ellas.

Vamos al grano

324

Un diagrama o modelo entidad-relación, a veces denominado, por sus siglas en inglés, E-R (Entity Relationship), o en español DER (Diagrama de Entidad Relación) es una herramienta para el modelado de datos, que permite representar las entidades relevantes de un sistema de información, así como sus interrelaciones y propiedades.


Entidad-relación

Semana 9

Modelo entidad-relación 1. Se elabora el diagrama (o diagramas) entidad-relación. 2. Se completa el modelo con listas de atributos y una descripción de otras restricciones que no se pueden reflejar en el diagrama. El modelado de datos no acaba con el uso de esta técnica. Son necesarias otras técnicas para lograr un modelo que puede implementarse directamente en una base de datos. Brevemente permite mostrar resultados entre otras entidades pertenecientes a las existentes, de manera que se encuentre la normatividad de archivos que se almacenarán: 1. Transformación de relaciones múltiples en binarias. 2. Normalización de una base de datos de relaciones (algunas relaciones pueden transformarse en atributos y viceversa). 3. Conversión en tablas (en caso de utilizar una base de datos relacional).

Base teórica conceptual El modelo de datos entidad-relación está basado en una percepción del mundo real que consta de una colección de objetos básicos, llamados entidades y de relaciones entre esos objetos.

Entidad Representa una “cosa” u “objeto” del mundo real con existencia independiente, es decir, se diferencia unívocamente de otro objeto o cosa, incluso siendo del mismo tipo o una misma entidad. Veamos algunos ejemplos: • Una persona se diferencia de cualquier otra persona, incluso siendo gemelos. • Un automóvil se diferencia de otro, aunque sean de la misma marca, el mismo modelo, etc. Cada uno tendrá sus atributos diferentes, por ejemplo, el número de chasis. • Una casa nunca es exactamente igual a otra; al menos en la dirección se diferenciarán. Una entidad puede ser un objeto con existencia física, como una persona, un animal, una casa, etc. (entidades concretas); o un objeto con existencia conceptual, no palpables, como un puesto de trabajo, una asignatura de clases, un nombre, etc. (entidades abstractas). 325


Semana 9

Entidad-relación

Una entidad está descrita y se representa por sus características o atributos. Por ejemplo, la entidad “persona” tiene estas características: nombre, apellido, género, estatura, peso, fecha de nacimiento, etc.

Atributos Los atributos son las características que definen o identifican a una entidad. Como pueden ser muchas, el diseñador sólo utiliza o implementa las que considere más relevantes. En un conjunto de entidades del mismo tipo, cada una tiene valores específicos asignados para cada uno de sus atributos; de esta forma, es posible su identificación unívoca. Veamos un ejemplo: A la colección de entidades “participantes”, con un conjunto de atributos en común (ID, nombre, edad, semestre), pertenecen las entidades: • (1, Sofía, 38 años, 2) • (2, Josefa, 19 años, 5) • (3, Carlos, 20 años, 2) • ... Cada una de las entidades pertenecientes a este conjunto se diferencia de las demás por el valor de sus atributos. Nótese que dos o más entidades diferentes pueden tener los mismos valores para algunos de sus atributos, pero nunca para todos. En particular, los atributos identificativos son aquellos que permiten diferenciar a una instancia de la entidad de otra distinta. Por ejemplo, el atributo identificativo que distingue a un participante de otro es su número de ID. El ID una identificación única que puede tener una persona dentro de un sistema. Dependiendo del sistema, el ID serán números, letras, nombre de la persona, número de documento, etc.

326

Para cada atributo, existe un dominio del mismo, este hace referencia al tipo de datos que será almacenado o a restricciones en los valores que el atributo puede tomar (cadenas de caracteres, números, solo dos letras, solo números mayores que cero, solo números enteros, etc.).


Entidad-relación

Semana 9

Cuando algún atributo correspondiente a una entidad, no tiene un valor determinado, recibe el valor nulo, bien sea porque no se conoce, porque no existe o porque no se sabe nada respecto del mismo.

Relación Describe cierta dependencia entre entidades o permite la asociación de las mismas. Por ejemplo, si tenemos dos entidades, “cliente” y “habitación”, podemos entender la relación entre ambas al tomar un caso concreto (ocurrencia) de cada una de ellas. Entonces podríamos tener la ocurrencia “habitación 502”, de la entidad “habitación” y la ocurrencia “Henry Johnson Mcfly Bogard”, de la entidad “cliente”, de donde es posible relacionar que la habitación 502 se encuentra ocupada por el huésped de nombre Henry Johnson Mcfly Bogar. O también, teniendo las entidades “participantes” e “IRFA” y las ocurrencias “María Uzcátegui” y “semestre 11ero”, se podría establecer la relación María Uzcátegui estudia en el semestre 11ero del IRFA.

Conjunto de relaciones Consiste en una colección o conjunto de relaciones de la misma naturaleza. Por ejemplo: dados los conjuntos de entidades “habitación” y “huésped”, todas las relaciones de la forma habitación-huésped, permiten obtener la información de los huéspedes y sus respectivas habitaciones. La dependencia o asociación entre los conjuntos de entidades, es llamada participación. En el ejemplo anterior, los conjuntos de entidades “habitación” y “huésped” participan en el conjunto de relaciones habitación-huésped. Se llama grado del conjunto de relaciones a la cantidad de conjuntos de entidades participantes en la relación. No es necesario que te descerebres mucho para identificar una entidad; con hacerte algunas preguntas sobre el ente en cuestión es suficiente; por ejemplo, ¿puedo tocarlo?, ¿puedo verlo?, ¿puedo sentirlo? Si las respuestas son afirmativas, se trata de entidades concretas (un libro, una persona, un instrumento musical, etc). Pero existen otras entidades abstractas, que no puedes percibir por medio de tus sentidos, pero si a través del intelecto; por ejemplo, un área de conocimiento, una enfermedad, un sentimiento (amor, odio, etc.), entre otras.

327


Semana 9

Entidad-relación

Para saber más… Para conocer otros enfoques acerca del tema de esta semana, te invitamos a visitar las siguientes direcciones web: http://li.co.ve/zLc

http://li.co.ve/zLb

http://li.co.ve/zLa

Aplica tus saberes 1. Define con tus propias palabras los términos entidad y atributo. 2. Elabora una tabla, con al menos cinco entidades conocidas y al menos cinco atributos por entidad. 3. Escribe verdadero (V) o falso (F) según sea el caso. a) Una entidad es una característica que define un objeto ( b) El nombre de una persona es un ejemplo de entidad (

) )

c) El número de identidad (C.I.) de una persona es un ejemplo de atributo ( ) d) El conjunto (5, María, 23 años) son atributos de una entidad ( e) Una relación describe cierta dependencia entre entidades (

) )

4. Escribe en las celdas o casillas vacías de la tabla 8 la relación que se establece entre las entidades. Tabla 8 Entidad / ocurrencia Participante / María Pedraza Orientador / Simón Rodríguez Hotel VENETUR / habitación 112 Cliente / Manuel Ramírez IRFA / CCA San José obrero

Relación

Entidad / ocurrencia Semestre / 11er semestre Área / Sociedad y Cultura Huésped / Carlos Madariaga Comida / Pabellón con baranda Estado Mérida / Mérida

5. Realiza la actividad interactiva de clasificación que encontrarás en el disco multimedia en la semana respectiva. 328


Entidad-relación

Semana 9

Comprobemos y demostremos que… 1. Elabora un ensayo del tema estudiado esta semana, donde se resalte lo visto y otros aportes producto de tu investigación. Recuerda que un ensayo es un escrito breve, de no más de dos hojas (o 4 cuartillas). 2. Partiendo del ensayo realizado, elabora una presentación en PowerPoint o algún otro programa y compártela en tu CCA.

329


Semana Semana10 10

Modelo entidad-relación

Modelo entidad-relación ¡Empecemos! ¡Bienvenidos a la semana 10! Ya conocemos lo que es una entidad, sus atributos y las relaciones entre entidades. Con estos temas todavía frescos en tu mente, estudiarás ahora el modelaje o diagramación de las relaciones entre entidades. ¡Concéntrate! Estos son temas abstractos que requieren de tu atención para comprenderlos.

¿Qué sabes de...? Reflexiona sobre las siguientes cuestiones: ¿qué es una entidad?, ¿existe alguna relación entre entidad y objetos de la vida real?, ¿es posible graficar las diferentes relaciones que se dan en la cotidianidad entre objetos? Propón algunos ejemplos.

El reto es... Haz una lista de entidades que interactúan en el CCA. Construye y representa relaciones entre ellas, apoyándote en lo que ya sabes sobre el tema. También puedes investigar en textos impresos o en internet.

Vamos al grano Ya tenemos claros algunos conceptos relacionados al modelo E-R; ahora vamos a representarlo gráficamente. Cabe destacar que, para todo proceso de modelado, siempre hay que tener claros los conceptos, para tener el saber necesario y fundamentar nuestro modelo al momento de presentarlo a terceros.

330

Formalmente, los diagramas E-R son un lenguaje gráfico para describir conceptos. Informalmente, son simples dibujos o gráficos que describen información que trata un sistema de información y el software que lo automatiza.


Semana 10

Modelo entidad-relación

Las entidades (ver semana 9) se representan por medio de un rectángulo. Pueden ser de tipo: maestras, transaccionales, históricas y temporales. Los atributos se representan mediante un círculo o elipse etiquetado con un nombre en su interior. Cuando un atributo es identificativo de la entidad, se suele subrayar dicha etiqueta. Por motivos de legibilidad, los atributos suelen no aparecer representados en el diagrama entidad-relación, sino descritos textualmente en otros documentos adjuntos. Las relaciones se representan mediante un rombo etiquetado en su interior con un verbo. Este rombo se debe unir mediante líneas con las entidades (rectángulos) que relaciona, para así saber cuál es la relación que tiene cada uno. Veamos un ejemplo: 1. Se debe realizar un modelo entidad-relación que permita gestionar los datos de una biblioteca, tomando en cuenta los siguientes parámetros: f ) Las personas socias de la biblioteca (usuarios) disponen de un código de socio y además necesitan almacenar su cédula de identidad, dirección, teléfono, nombre y apellidos. g) La biblioteca almacena libros que presta a los socios y socias, de los cuales registra su título, su editorial, el año en el que se escribió el libro, el nombre completo del autor (o autores), el año en que se editó, la editorial y el ISBN. ¿Cuáles serían las entidades a tomar en cuenta en este caso? Las entidades que intervienen son: usuario / libros / autores. ¿Cuáles serían las entidades que se relacionan? Usuarios / libros y autores / libros. Dirección

CI

USUARIOS

Apellidos

Código

Nombres

Titulo

Prestar

Teléfono

Editorial

LIBROS

ISBN

Escribir

Edición AUTORES

Figura 8

ID autor

Nombre

331


Semana 10

Modelo entidad-relación

Restricciones sobres los tipos de relación Los tipos de relación suelen tener ciertas restricciones que limitan las posibles combinaciones de entidades que pueden participar en los correspondientes tipos de relación. Estas restricciones se determinan a partir de la realidad, es decir ,del significado que tienen los tipos de entidad y tipos de relación en el mundo real, y no depende de los conjuntos de entidades o relación que, en un momento dado, se puedan estar considerando o almacenando en la base de datos. Por ejemplo, podríamos tener una empresa donde los empleados sólo puedan trabajar para un departamento. Se pueden distinguir dos tipos de restricciones asociadas a tipos de relación 1. Correspondencia de cardinalidad Dado un conjunto de relaciones en el que participan dos o más conjuntos de entidades, la correspondencia de cardinalidad indica el número de entidades con las que puede estar relacionada una entidad dada. Dado un conjunto de relaciones binarias (entre dos entidades) y los conjuntos de entidades A y B, la correspondencia de cardinalidades puede ser: a) Uno a Uno: (1:1) Un registro de una entidad A se relaciona con solo un registro en una entidad B. Por ejemplo, sean dos entidades, profesor y departamento, con llaves primarias (característica única que define a la entidad), codigo_profesor y jefe_dpto respectivamente. Un profesor sólo puede ser jefe de un departamento y un departamento solo puede tener un jefe. b) Uno a varios: (1:N) Un registro en una entidad A se relaciona con cero o muchos registros en una entidad B. Pero los registros de B solamente se relacionan con un registro en A. Por dos entidades, vendedor y ventas, con llaves primarias, codigo_vendedor y venta, respectivamente, un vendedor puede tener muchas ventas, pero una venta solo puede tener un vendedor. c) Varios a Uno: (N:1) Una entidad en A se relaciona exclusivamente con una entidad en B. Pero una entidad en B se puede relacionar con 0 o muchas entidades en A (ejemplo: empleado-centro de trabajo). d) Varios a Varios: (N:M) Una entidad en A se puede relacionar con 0 o con muchas entidades en B y viceversa. Por ejemplo, asociaciones-ciudadanos, donde muchos ciudadanos pueden pertenecer a una misma asociación y cada ciudadano puede pertenecer a muchas asociaciones distintas.

332


Modelo entidad-relación

Semana 10

Regresa tu mente unos años atrás y haz un esfuerzo por recordar la teoría de conjuntos. Seguro tendrás por allí, en un rincón de tu mente, las funciones que relacionan dos o más conjuntos: inyectivas, biyectivas y sobreyectivas. Recuerda además que los conjuntos se denominan con una letra mayúscula y están compuestos por elementos. Repasa estos temas. 2. Restricciones de participación Dado un conjunto de relaciones R en el cual participa un conjunto de entidades A, dicha participación puede ser de dos tipos: a) Total: cuando cada entidad en A participa en, al menos, una relación de R. b) Parcial: cuando, al menos, una entidad en A NO participa en alguna relación de R.

Claves Es un subconjunto del conjunto de atributos comunes en una colección de entidades, que permite identificar unívocamente cada una de las entidades pertenecientes a dicha colección. Asimismo, permite distinguir entre sí las relaciones de un conjunto de relaciones. Dentro de los conjuntos de entidades, existen los siguientes tipos de claves: 1. Superclave: es un subconjunto de atributos que permite distinguir unívocamente cada una de las entidades de un conjunto de entidades. Si se añade un atributo al anterior subconjunto, el resultado seguirá siendo una superclave. Por ejemplo, si tenemos un conjunto “empleados”, el número de cédula, número de seguro social y Registro de Información Fiscal (RIF) del subconjunto de atributos “identidad” es una superclave, ya que no hay dos personas con la misma identidad. 2. Clave candidata: dada una superclave, si ésta deja de serlo, quitando únicamente uno de los atributos que la componen, entonces ésta es una clave candidata. 3. Clave primaria: es una clave candidata, elegida por el diseñador de la base de datos, para identificar unívocamente las entidades en un conjunto de entidades. 333


Semana 10

Modelo entidad-relación

Los valores de los atributos de una clave, no pueden ser todos iguales para dos o más instancias. Para poder distinguir unívocamente las relaciones en un conjunto de relaciones R, se deben considerar dos casos: 1. R NO tiene atributos asociados: en este caso, se usa como clave primaria de R la unión de las claves primarias de todos los conjuntos de entidades participantes. 2. R tiene atributos asociados: en este caso, se usa como clave primaria de R la unión de los atributos asociados y las claves primarias de todos los conjuntos de entidades participantes. Si el conjunto de relaciones R, sobre el que se pretende determinar la clave primaria, está compuesto de relaciones binarias, con los conjuntos de entidades participantes A y B, se consideran los siguientes casos, según sus cardinalidades: 1. R es de muchos a uno de A a B, entonces sólo se toma la clave primaria de A, como clave primaria de R. 2. R es de uno a muchos de A a B, entonces se toma sólo la clave primaria de B, como clave primaria de R. 3. R es de uno a uno de A a B, entonces se toma cualquiera de las dos claves primarias, como clave primaria de R. 4. R es de muchos a muchos de A a B, entonces se toma la unión de los atributos que conforman las claves primarias de A y de B, como clave primaria de R.

Para saber más… Investiga otros tipos de restricciones que se aplican en las bases de datos, visitando las siguientes direcciones web: http://li.co.ve/0fJ

http://li.co.ve/0fK

Aplica tus saberes 1. Define con tus propias palabras: modelo entidad-relación, restricciones, clave. 334

2. Qué relaciones de cardinalidad se pueden establecer entre los siguientes pares de entidades.


Modelo entidad-relación

Semana 10

a) Facilitador(a) - áreas b) Participante - semestre c) Trabajador(a) - puesto de trabajo d) Autobús - pasajero(a) 3. Realiza la sopa de letras que encontrarás en el disco multimedia en la semana respectiva.

Comprobemos y demostremos que… Prepara una presentación en PowerPoint con los saberes más significativos de esta semana y realiza un foro o debate con la participación de los demás compañeros.

335


Semana Semana1111

Construcción de una base de datos

Construcción de una base de datos ¡Empecemos! Esta semana estarán a prueba tu disposición, interés y, sobre todo, tu capacidad para resolver situaciones problemáticas, a través del apoyo que brindan las herramientas informáticas. Tendrás la oportunidad de comprobar cómo una base de datos construida por ti puede representar una solución sencilla, permitiendo simplificar un determinado proceso, traduciéndose esto en el inicio de una sistematización. Confiamos en que podrás superar el reto de esta semana. ¡Éxito!

¿Qué sabes de...? Una de las principales herramientas de la informática son las bases de datos; por tal razón, es importante que tengas claros dos conceptos claves: 1. Sistematización de información: el ordenamiento y clasificación –bajo determinados criterios, relaciones y categorías– de todo tipo de datos. Por ejemplo, la creación de bases de datos. 2. Automatización de información: es un sistema donde se trasfieren tareas de producción, realizadas habitualmente por operadores humanos, a un conjunto de elementos tecnológicos. Por ejemplo, un proceso de inscripción vía web. Discute con tus compañeros del CCA estos dos conceptos y analicen entre todos en qué situaciones relacionadas con la vida diaria se pueden aplicar (seleccionen por lo menos 4 situaciones). Repasa lo visto durante la semana anterior, para aplicarlo esta semana.

336


Construcción de una base de datos

Semana 11

El reto es... Considerando el análisis de los dos conceptos anteriores y la relación con situaciones cotidianas comunes, te invitamos a poner en práctica tus saberes. ¿Has visto un programa comercial de facturación? Pues eso es una base de datos. Y ¿te gustaría diseñar tu propio programa de facturación, adaptado a tus necesidades e ir mejorándolo, según te vaya haciendo falta, sin necesidad de invertir grandes cantidades de dinero en costosos programas comerciales? Pues eso es Access. Esto es sólo un ejemplo de lo que puedes hacer. El reto es detectar alguna situación problemática y sistematizarla, a través de la construcción de una base de datos sencilla, utilizando Microsoft Access del paquete de aplicaciones que vienen en Office. Toda organización, independientemente de su tamaño y naturaleza, necesita tener un control de sus datos. Microsoft Access es una aplicación para manejo de bases de datos que facilita su uso, sin requerir de un conocimiento especializado de programación; sin embargo, hoy día existen en el mercado otras tantas aplicaciones o programas que permiten hacerlo. Escoger la indicada depende del uso, dominio y necesidades específicas.

Vamos al grano Microsoft Access es una de las aplicaciones que vienen incluidas en la suite ofimática Microsoft Office en su versión profesional. Y es una de esas aplicaciones que, por desconocimiento, la mayoría de las veces no abrimos pero, ¿realmente qué es, para qué sirve y qué podemos hacer con Microsoft Access? Access es una base de datos, que ejemplificamos de la siguiente forma: • Las cientos de recetas de cocina que tenemos en casa podemos guardarlas en una base de datos y, con un par de clic, buscar la que necesitemos. • El seguimiento de averías de nuestros vehículos se pueden guardar en una base de datos, para poder analizar rápido los costes de las mismas, la rentabilidad del vehículo, etc.

337


Semana 11

Construcción de una base de datos

• La gestión de nuestras cuentas bancarias (ingresos, gastos, recibos, préstamos) se pueden guardar en una base de datos, teniendo todo bien organizado, lo cual nos permitirá, de forma cómoda, introducir los datos y visualizar informes de nuestras cuentas. • El control del almacén (entradas, salidas, stock, facturas) podemos llevarlo con una base de datos. • Un centro de estudios puede gestionar los participantes, facilitadores, salones, cursos, evaluaciones, matrículas, recursos, eventos, nóminas, etc., todo desde una base de datos. Como ves, ese programa que tienes instalado en el computador, acaba de abrirte un abanico de posibilidades casi infinitas pero, ¿qué tan fácil será hacer todo esto?

Herramientas de Access 1. Tablas: son el objeto principal de una base de datos, por cuanto almacenan los datos de un asunto en particular y se componen de registros y campos. Un registro se denomina normalmente fila o instancia. Un campo contiene datos acerca de un aspecto de la tabla, el cual se denomina columna o atributo. 2. Consultas: se utilizan para visualizar, modificar y analizar datos de formas diferentes. Permiten dar respuesta a las preguntas que se pueden plantear acerca de los datos almacenados. Existen varios tipos: consultas de selección, de parámetros, referencias cruzadas, de acción y SQL. 3. Formularios: se utilizan para introducir, modificar, consultar y borrar registros de una tabla. Es la forma idónea de introducir y editar datos.

Figura 9 338


Construcción de una base de datos

Semana 11

Figura 10 4. Informes: se usan para visualizar, formatear y resumir datos; pueden ofrecer detalles sobre registro individuales, resúmenes de varios registros o ambos; también pueden crear etiquetas para correo o afines.

Figura 11 5. Macro: es una herramienta que permite automatizar tareas frecuentes; se puede utilizar en formularios, informes y controles. Una macro consta de acciones, las cuales, en su mayoría, requieren de argumentos. 6. Módulos: es una colección de declaraciones, instrucciones y procedimientos escritos en el lenguaje VBA (Visual Basic Application); permiten agregar funcionalidad a la base de datos y son utilizados por formula-

339


Semana 11

Construcción de una base de datos

rios, informes, entre otros. Pueden ser módulos de clase o módulos estándar.

Figura 12

Para saber más… Observa varios videos que explican, paso a paso, cómo construir una base de datos: http://goo.gl/dA7AW1

http://goo.gl/1kA3nb

http://goo.gl/rp7COa

Como sabes, existen software propietarios por los que hay que pagar cierta cantidad de dinero para su descarga; entre ellos, Access. Y otros, por los que no desembolsas nada para su utilización. Te invitamos a buscar en internet algún software libre que te permita construir una base de datos.

Aplica tus saberes 1. Determina qué tipo de datos pueden ser los atributos que aparecen en la tabla 9 y argumenta tu respuesta. Tabla 9 Campo

340

CI Nombre Apellido Dirección Sexo

Tipo de dato

Argumento


Construcción de una base de datos

Semana 11

Estado civil Fecha de nacimiento Correo electrónico Nota 1 Nota 2 2. Responde las siguientes preguntas con tus propias palabras: a) ¿Qué es un registro? b) ¿Cuál es la diferencia entre un formulario y un informe? c) ¿Para qué sirven las consultas? d) ¿Para qué usarías una base de datos? 3. Diviértete con las actividades interactivas (sopa de letras y completación) que encontrarás en el disco multimedia.

Comprobemos y demostremos que… Estructura un modelo entidad-relación y luego crea una base de datos en Access que permita a tu amiga, María, manejar un inventario sencillo de su mercancía.

341


Semana Semana12 12

Métodos de ordenamiento y almacenamiento

Métodos de ordenamiento y almacenamiento ¡Empecemos! Bienvenidos a una nueva semana, en la que estudiaremos los métodos de ordenamiento y almacenamiento, con base en lo visto en semanas anteriores, referente a estructura de datos y sus tipos. Estudiaremos cómo esa información ya estructurada puede ordenarse y almacenarse en una base de datos, según diferentes métodos a utilizar.

¿Qué sabes de...? Para tener una mejor comprensión del tema de esta semana, debemos tener claro: ¿qué es un dato?, ¿qué son las estructuras de datos?, ¿cuáles son los tipos de estructura de datos?

El reto es... El reto que debes enfrentar esta semana con los demás compañeros y compañeras, es trabajar con la base de datos natural que realizaron en la semana 8. Deben escoger un campo clave y ordenar los datos en forma ascendente o descendente.

Vamos al grano

342

Debido a que las estructuras de datos son utilizadas para almacenar información, a fin de recuperar esa información de manera eficiente, es importante que aquella esté ordenada.

No. 1 2 3 4 5 6

C.I. 19.479.467 19.861.309 20.180.532 20.315.621 20.729.531 23.428.400

APELIDOS Y NOMBRES I CORTE SOLORZANO A. ZULEIKA J. 02 0,2 10 RAMOS G. WUENDY J. 0 GALLARDO ANTHONY 20 2 20 DIAZ M. MARYORY A. 0 TORREALBA G. ANDRES J. 10 1 10 LOPEZ D. MARIA DE LOS S. 0 Aprobados 2 3 Porcentaje de Aprobados 33,33 50,00 Porcentje de Reprobados 66,67 50,00


Métodos de ordenamiento y almacenamiento

Semana 12

Existen varios métodos para ordenar las diferentes estructuras de datos básicas. En general, dichos métodos no son utilizados con frecuencia; en algunos casos, sólo una vez. Hay métodos muy simples de implementar, muy útiles en los casos dónde el número de elementos a ordenar no es grande (por ejemplo, menos de 500 elementos). Asimismo, hay métodos sofisticados, más difíciles de implementar, pero más eficientes en cuanto a tiempo de ejecución. Los métodos sencillos, por lo general, requieren de aproximadamente n x n pasos para ordenar n elementos. Ordenar significa reagrupar o reorganizar un conjunto de datos u objetos en una secuencia específica. Ordenar un grupo de datos significa mover los datos o sus referencias para que queden en una secuencia tal que represente un orden, el cual puede ser numérico, alfabético o, incluso, alfanumérico, ascendente o descendente.

Tipos de ordenamiento 1. Ascendente (menor a mayor) o 2. Descendente (mayor a menor). A su vez, los métodos de ordenación se clasifican en dos categorías: 1. Ordenación interna (de arreglos) y 2. Ordenación externa (de archivos). La ordenación interna o de arreglos, recibe este nombre ya que los elementos o componentes del arreglo se encuentran en la memoria principal de la computadora.

Tipos de ordenamiento 1. Burbuja: es el más simple y consiste en comparar dos elementos adyacentes, para determinar si se realiza un intercambio entre los mismos; esto en caso de que el primero sea mayor que el segundo (forma ascendente) o en caso de que el primero sea menor que el segundo (forma descendente). a) Se debe generar un ciclo que inicie desde uno hasta el número de elementos del arreglo. b) Se debe generar un segundo ciclo dentro del anterior, que inicie desde cero hasta el número de elementos del arreglo, menos dos. 343


Semana 12

Métodos de ordenamiento y almacenamiento

c) Dentro del segundo ciclo debe existir una comparación que determine el tipo de ordenamiento (ascendente o descendente) entre el primer elemento (posición generado por el segundo ciclo) y el segundo elemento (el que le sigue); si la respuesta a la condición es verdadera, se realiza un intercambio entre los dos elementos. d) Para realizar el intercambio, se genera un almacenamiento temporal, el cual guarda el dato del primer elemento, el segundo elemento toma el lugar del primero y, en el lugar del segundo, se coloca lo que contiene el almacenamiento temporal. Una vez que los ciclos terminan, la estructura debe quedar ordenada de forma ascendente o descendente, pero este procedimiento es considerado como el peor de los casos ya que, si el número de elementos de la estructura es de 100, se tienen que realizar 9900 comparaciones antes de terminar la ejecución del método.

QuickSort Es una técnica basada en otra conocida con el nombre “divide y vencerás”, que permite ordenar una cantidad de elementos en un tiempo proporcional a n2 en el peor de los casos, o a n log n en el mejor de los casos. El algoritmo original es recursivo, como la técnica en la que se basa. La descripción del algoritmo para el método de ordenamiento QuickSort es la siguiente: 1. Se debe elegir uno de los elementos del arreglo, al que llamaremos pivote. 2. Se deben acomodar los elementos del arreglo a cada lado del pivote, de manera que, del lado izquierdo queden todos los menores al pivote y del lado derecho los mayores al pivote; considera que en este momento el pivote ocupa exactamente el lugar que le corresponderá en el arreglo ordenado. 3. Colocado el pivote en su lugar, el arreglo queda separado en dos subarreglos, uno formado por los elementos del lado izquierdo del pivote y, otro, por los elementos del lado derecho del pivote. 4. Se debe repetir este proceso de forma recursiva para cada subarreglo mientras éstos contengan más de un elemento. Una vez terminado este proceso, todos los elementos estarán ordenados. Para elegir un pivote, se puede aplicar cualquiera de las siguientes opciones: 1. El pivote será el primer elemento del arreglo. 344

2. El pivote será el elemento que está a la mitad del arreglo, o


Métodos de ordenamiento y almacenamiento

Semana 12

3. El pivote se elige de entre tres elementos (cualesquiera) del arreglo, los cuales se deben comparar para seleccionar el valor intermedio de los tres y considerarlo como el pivote.

ShellSort Este método de ordenación es una versión mejorada del método por inserción directa, que se utiliza cuando el número de elementos es grande. Este método recibe su nombre gracias a su creador Donald L. Shell y también se conoce con el nombre “inserción con incrementos decrecientes”. ShellSort compara elementos separados por un espacio de varias posiciones. Esto permite que un elemento haga pasos más grandes hacia la posición que debe ocupar. Los pasos múltiples sobre los elementos se hacen con tamaños de espacio cada vez más pequeños y, el último paso del método, es un simple ordenamiento por inserción directa pero, para entonces, los elementos de arreglo ya casi están ordenados.

Para saber más… Para profundizar en el tema sobre almacenamiento y ordenamiento de datos, te recomendamos visitar las siguientes direcciones web: http://goo.gl/CFWnkX

http://goo.gl/4TwZeQ

http://goo.gl/IINmqS

Aplica tus saberes 1. ¿Qué entendiste de los métodos de ordenamiento y almacenamiento? 2. ¿Qué es un vector? Ejemplifica uno. 3. Ordena por el método de la QuickSort, 10 números de cédula que se encuentren desordenados en un vector de cadenas. 4. Ordena por el método ShellSort, 10 nombres que se encuentren desordenados en un vector de cadenas.

Comprobemos y demostremos que… Elabora una cartelera descriptiva del tema de métodos de ordenamiento y almacenamiento, con ejemplos de la vida diaria. Usa cualquier tipo de materiales, de manera creativa y exhibe tu cartelera en el CCA. 345


Semana Semana13 13

Páginas web

Páginas web ¡Empecemos! ¡Bienvenidos a una nueva sesión, llena de aprendizajes! En semanas anteriores estudiamos lo que son bases de datos, estructuras de datos y métodos de ordenamientos, todo lo cual es necesario para llegar a comprender lo que son las páginas web.

¿Qué sabes de...? ¿Qué es una página web?, ¿qué conoces al respecto?, ¿sabes crear una página web?

El reto es... Esta semana, junto con tus compañeros, crea manualmente una página web, tomando en cuenta los siguientes criterios: ¿qué elementos deseas que tenga? ¿de qué quieres que trate? Todo esto para tener una idea del análisis que se debe realizar, previo a la creación de una página web.

Vamos al grano Una página web se define como un documento electrónico, el cual contiene información textual, visual y/o sonora, que se encuentra alojado en un servidor al que se puede acceder mediante el uso de navegadores. Cada página forma parte de una colección de otras páginas, dando lugar a lo que se denomina sitio web, el cual se encuentra identificado bajo el nombre de un dominio, tema que será tratado en la semana 14 con mayor profundidad. La creación y desarrollo de una página web se realiza bajo un lenguaje de programación (HTML, PHP, ASP, JSP o RUBY), capaz de ser interpretado por los navegadores.

346

Al inicio de la era de internet accesible, en los años 90, era necesario el conocimiento de algún lenguaje de programación para el desarrollo de una web, por lo que resultaba ser una tarea exclusiva de personas con altos conoci-


Semana 13

Páginas web

mientos informáticos. Hoy en día contamos con software especializados, que pueden ser manejados por cualquier persona, como editores de texto, estilo Word, los cuales transforman toda la información en un lenguaje de programación, capaz de ser interpretado por los navegadores. Programas como Dreamweaver, Amaya, Sharepoint, Designer o Mozilla Composer son, entre otros, los denominados WYSIWYG (acrónimo del inglés “lo que ves, es lo que obtienes”) capaces de crear complejas páginas web con el entorno de un simple editor de texto.

radiofeyalegrianoticias.net

Servidores Una vez que hemos creado y desarrollado nuestras páginas web, es necesario alojarlas en un servidor, el cual se puede definir como un ordenador conectado constantemente a internet, cuyo objetivo es poder disponer de la página web a cualquier hora del día. Para acceder al servidor, es necesario el uso de programas denominados clientes FTP (File Transfer Protocol) o protocolos de transferencia de archivos, los cuales conectan el ordenador personal, donde se ha desarrollado la página, con el servidor donde se alojará; entre otros, se tiene: Filezilla, FileFTP y Cute FTP.

Navegadores Una vez alojadas las páginas web, estas son accesibles mediante el uso de navegadores, los cuales permiten visualizar correctamente la información alojada y desarrollada. Los más conocidos y utilizados son: Chrome, Mozilla, Internet Explorer y Safari. 347


Semana 13

Páginas web

Una página web es, en esencia, una tarjeta de presentación digital, ya sea para empresas, organizaciones o personas, así como una tarjeta de presentación de ideas, informaciones y de teorías. Y el servidor es una gigantesca biblioteca con capacidad para alojar grandes cantidades de sitios web.

En la revista online sobre tecnología “Tecnomegazine” se afirma lo siguiente: “Google posee alrededor de 1,8-2,4 millones de servidores en todo el planeta. Ahora bien, si cada uno de estos servidores posee unos 4TB de capacidad, entonces la capacidad total de todos los servidores de Google sería de unos 10EB (Exabytes) aproximadamente. ¿Y cuánto son 10EB? Unos 10TB^6 o 10PB^3. Sí, es una cantidad gigantesca, pero no debería sorprendernos que Google tenga tal capacidad, después de todo, la página del buscador es la más visitada del mundo”. Para entender mejor estas cantidades, expresémoslas en términos de GB que es la unidad más común hasta ahora. 1 EB = 106 TB = 109 GB, luego 10 EB = 1010 GB = 10.000.000.000 Es decir, diez mil millones de GB. Para ser más específicos, es equivalente a 500 millones de discos duros de 500 GB cada uno ¡Dato curioso! ¿No?

Clasificación de las páginas web Podemos agrupar o clasificar todas las páginas web en dos grandes grupos: estáticas y dinámicas. Las web estáticas son aquellas cuya información no varía a medio o a corto plazo, también se las reconoce puesto que no interactúan con el usuario, su lenguaje de programación está basado en HTML y están compuestas principalmente de textos e imágenes.

348

Estas web fueron el primer tipo que apareció durante el desarrollo y expansión de internet. Su creación y desarrollo es relativamente fácil, al disponer de programas estilo editores de texto, que permiten programarlas sin tener conocimiento ninguno sobre HTML, lo cual es una de las grandes ventajas que presentan este tipo de páginas. Por otro lado, cada vez que se necesite modificar


Semana 13

Páginas web

alguna parte de la web, es necesario conectarse al servidor donde está alojada y subir los documentos modificados, cosa que conlleva tiempo y esfuerzo. Las web dinámicas son aquellas capaces de interactuar con el usuario, dado que están conectadas con bases de datos que permiten el desarrollo de aplicaciones web. Su principal ventaja es la personalización de la web en función del usuario, así como la rapidez de modificación de los contenidos. Este tipo de web están desarrolladas bajo lenguajes de programación como PHP, ASP, JSP o RUBY; el manejo de dichos lenguajes requiere de ciertos conocimientos informáticos. Foros de opinión, redes sociales, tiendas virtuales, buscadores, gestores de emails o aplicaciones empresariales alojadas en la nube son, entre otros, ejemplos de web dinámicas. Estas dos categorías de páginas se clasifican además en privadas y públicas. Las privadas sólo permiten el acceso a un número limitado de personas que puedan ser identificadas y reconocidas por el sistema de acceso, mientras que las públicas son accesibles para cualquier persona que disponga de una conexión a internet. Hoy en día, dentro de un mismo sitio web, existen las cuatro clases de páginas descritas anteriormente; por ejemplo, cuando accedemos a nuestra cuenta bancaria, lo hacemos a través de una página dinámica, dado que el saldo disponible cambia instantáneamente cuando realizamos una compra. Pero es muy probable que ahí mismo encontremos páginas estáticas, como direcciones de contacto o información global sobre el sitio. A su vez, se trata de una página privada, por cuanto el acceso a cuentas y determinados servicios está restringido a las personas que puedan autentificarse mediante claves o password. No obstante, también son páginas públicas, en el sentido de que cualquier persona puede visitarlas y ver gran cantidad de información, sin necesidad de introducir contraseñas.

349 http://www.feyalegria.org/es


Semana 13

Páginas web

Para saber más… Profundiza en el tema de esta semana, visitando las siguientes direcciones web: http://li.co.ve/0e5

http://li.co.ve/0e4

http://li.co.ve/0e3

Aplica tus saberes 1. Expresa con tus propias palabras las cuestiones que se plantean a continuación: a) ¿Qué es una página web? b) ¿Cuál es la diferencia entre una página web dinámica y una estática? c) ¿Por qué se dice que una página no es un sitio? d) Haz una lista de al menos cinco (5) páginas web que hayas visitado la semana pasada e indica el explorador que usaste. 2. Realiza las actividades interactivas que encontrarás en el disco multimedia en la semana respectiva.

Comprobemos y demostremos que… Elabora una lista de 20 páginas web que conoces y clasifícalas en dinámicas o estáticas, según sus características.

350


Semana 13 Páginas web Semana 14 Construcción de una página web/blog ¡Empecemos! ¡Felicitaciones! Hoy, con mucha satisfacción, hacemos un reconocimiento a tu dedicación, disciplina y constancia. Sabemos que no ha sido fácil, por eso aplaudimos que hayas llegado hasta aquí. Esta semana trae grandes sorpresas, termina un ciclo y comienza otro nuevo. De ti depende hasta dónde llegar. El tema de hoy, aunque es el cierre del semestre, te abrirá un mundo de posibilidades, al poner en tus manos una forma de generar ingresos a través de los saberes adquiridos.

¿Qué sabes de...? Repasemos: ¿página web y sitio web son lo mismo?, ¿en qué se parecen o en qué se diferencian?

El reto es... Esta es una semana de retos, así que, ¡cerremos con broche de oro! En este tema encontrarás mucha terminología nueva y, en muchos casos, en inglés, por lo que te recomendamos generar un glosario de términos y acudir de manera regular a la investigación con los recursos que cuentes, pues de eso depende que puedas abordar el reto y cumplirlo con éxito. Debes hacer una mapa sobre lo que te gustaría que tuviera tu sitio web y precisar sobre qué tema lo desarrollarás. Asimismo, debes definir cuántas páginas web contendrá o si, para empezar, lo estructurarás con una sola página, que bien pudiera ser un blog.

351


Semana 14

Construcción de una página web/blog

En los blog, los lectores pueden escribir sus comentarios y el autor puede darles respuesta, por lo que es posible establecer un diálogo. El uso o tema de cada blog es particular; los hay de tipo periodístico, empresarial o corporativo, tecnológico, educativo (edublogs), políticos, personales y otros muchos temas. Si un tema te apasiona, no importa cual sea, ¡ya tienes lo necesario para crear tu propio blog!

Vamos al grano Cada sitio web tiene una página de inicio (en inglés, Home Page), que es el primer documento a la vista del usuario cuando entra en el sitio web, poniendo el nombre del dominio de ese sitio en un navegador. Cada sitio pertenece y es gestionado y por un individuo, una compañía o una organización y, normalmente, cada sitio tiene varios documentos (páginas web). Ahora bien, desglosemos su construcción en siete (7) pasos: 1. Para crear nuestra página o sitio web, debemos elegir un proveedor de alojamiento donde lo almacenaremos. Existen multitud de empresas dedicadas al alojamiento web, que nos brindarán numerosas ofertas; incluso, encontraremos empresas que nos darán alojamiento gratuito. 2. A la hora de elegir el alojamiento que vamos a contratar o usar, debemos tener en cuenta los siguientes factores: espacio web, accesibilidad, tasa de transferencia, así como la reputación y las condiciones de servicio del proveedor. Al respecto, los foros son un buen lugar para encontrar más información sobre la relación calidad-precio de los diferentes ISP de alojamiento. 3. Una vez tengamos seleccionado el alojamiento, debemos pensar el nombre del dominio que utilizaremos para acceder a nuestro dominio (Ejemplo: www.mipaginaweb.com). Es probable que el mismo proveedor que nos ha ofertado el alojamiento nos permita registrar dominios. 4. Cuando ya tenemos nuestro proveedor de dominio y alojamiento, empezamos a crear la página web; para ello, nos ayudaremos de un editor web de los muchos que existen en internet. Hay editores para crear páginas web gratuitas como Fresh HTML, Basic HTML, Netscape Composer, y programas más completos como Dreamweaver, Homesite y Frontpage. 352


Construcción de una página web/blog

Semana 14

5. Para incorporar imágenes a nuestra web, nos ayudaremos de programas de edición de fotografía y diseño, tales como Photoshop, Fireworks, Corel o algún software gratuito. Estos programas nos servirán para cortar o ajustar las imágenes que utilizaremos en nuestra página web. Los programas mencionados son útiles también para crear el diseño de nuestra página, que luego exportaremos al editor HTML. 6. Una vez que tengamos creada nuestra página web, tan sólo nos falta publicarla en el alojamiento web que hemos contratado o seleccionado. Para ello, nos ayudaremos de un cliente FTP como Filezilla o Cute FTP, para subir nuestra página web al servidor. No obstante, existen también ISP (proveedores de alojamiento) que tienen su propio sistema de carga de páginas (web FTP), con lo que no necesitaríamos el cliente FTP. 7. Si utilizas el cliente FTP, abre tu programa y accede al alojamiento con los datos que te ha proporcionado tu ISP (dirección, usuario y contraseña). Accede al directorio de tu página principal (tu ISP le dará esta información.) El directorio “dirección” es por lo general en forma de /pub/ nombre de usuario/, /www/, /HTML/, /website/. Ahora, sube cada una de las páginas y gráficos que has incluido en la página web, de acuerdo a las instrucciones específicas del programa de FTP. Ahora bien, básicamente, los sitios web se componen y estructuran de la siguiente manera: 1. Contenedor: esto es lo que definimos en la regla Body o en algún div, las cuales son sentencias o funciones genéricas de programas orientados a la realización de web, de nuestra estructura, que definen el cuerpo del contenido o divisiones de este. Dentro de este contenedor estarán todos los elementos del sitio: módulos, contenidos, imágenes, etc. Este contenedor puede tener un ancho fijo; el ancho será igual para todos los navegadores y dispositivos, o uno fluido que se adaptará al ancho de nuestra ventana. Si usamos web responsive (adaptable a cualquier dispositivo móvil, pc y tablet) podemos manejarlo con CSS sin problemas. 2. Logotipo: acá es dónde debemos dejar la imagen de la empresa, que identificará la marca en todo el sitio. Puede ser el logotipo de la empresa o el nombre. Al estar arriba, acompañará la navegación por todo el sitio, ayudando al reconocimiento de la marca o el nombre de su creador. 3. Navegación: la forma más aceptada y fácil para la navegación es el menú horizontal, que siempre tiene “a mano” lo más importante del sitio web. Los menús verticales pueden usarse como complementos o sub menús de los horizontales y siempre cerca de la línea horizontal del menú principal. Asimismo, deben ser visibles en el primer “pantallazo”, al entrar. 4. Contenido: es lo más importante y fundamental de una página. Si el contenido es malo o poco interesante, el usuario abandonará la página en pocos segundos. Para garantizar su calidad, el contenido debe estar

353


Semana 14

Construcción de una página web/blog

centralizado y enfocado, además de muy accesible. El mejor lugar debe ser para los contenidos. Por ejemplo, para Google, el contenido es el rey. 5. Footer: localizado al final del sitio, abajo generalmente, incluye la información de Copyright y números legales o menús secundarios. Aunque en los últimos años, este espacio suele usarse para incluir información de redes sociales, direcciones, noticias, entre otros. 6. Espacio negativo: este es tan importante como el espacio positivo. También llamado espacio blanco, es todo lo que no tiene información de ningún tipo, pero que cumple un rol importantísimo para la web; nos ayuda a tener espacios de “respiración”, que equilibran y dan balance a todo el diseño. Si eres novato, o tu cliente es ignorante en la materia, tratará de llenar esos espacios. Pero, ten en cuenta que, la saturación de contenidos, hace a una web ilegible e innavegable.

Para saber más… Para saber más acerca de los blog y cómo crearlos, te recomendamos visitar las siguientes direcciones web: http://goo.gl/j9Ms0B https://www.blogger.com http://goo.gl/IQOrXm Para crear tu página web, anímate a revisar estos enlaces: http://goo.gl/YHq385 http://es.wix.com/

www.webnode.com.ve http://goo.gl/h6idgC

www.mozello.com

Aplica tus saberes 1. Realiza un pequeño esquema sobre un sitio web que contenga, por lo menos, tres páginas web. 2. Investiga y responde las siguientes preguntas y da tres (3) ejemplos de cada una: a) ¿Qué es un Dominio? b) ¿Qué es una dirección URL? c) ¿Qué blog has leído? d) ¿Cuáles son tus páginas web favoritas?

Comprobemos y demostremos que… 354

De acuerdo con lo visto durante este semestre, elabora un blog o una página web. Recuerda que puedes hacerlo en forma cooperativa.


Referencias 7mo

¿Qué es Canaima GNU/Linux? Consultado el 25 de marzo de 2012, en http:// li.co.ve/0hs ¿Qué es el sistema operativo? Consultado el 23 de marzo de 2012, en http:// li.co.ve/0hi ¿Qué es el software? Consultado el 23 de marzo de 2012 en http://youtu.be/ pegiw2iVUY8 ¿Qué es el software? Consultado el 23 de marzo de 2012 en http://li.co.ve/0hp ¿Qué es un virus informático? Consultado el 05 de abril de 2012, en http://youtu.be/wbUVBZHsUZQ Clasificación de los Sistemas Operativos. Consultado el 23 de marzo de 2012, en http://youtu.be/hHFDRvyb0Vk De Suarez, María I. (2004). “Nociones de Informática”. Tercera edición, Caracas, Venezuela. Drivers o controladores. Consultado el 12 de abril de 2012, en http://li.co.ve/0hn El Nacional (2006). La enciclopedia del Estudiante N° 04: Tecnología e Informática. Editorial Santillana, Buenos Aires. El Nacional (2006). La enciclopedia del Estudiante N° 10: Aplicación Informática, Editorial Santillana, Buenos Aires. Funciones del sistema operativo. Consultado el 23 de marzo de 2012, en http:// li.co.ve/0hh Gaceta Oficial N° 39633 (2011). Resolución 025, sobre el uso obligatorio de Canaima GNU/Linux en los equipos de trabajo en la Administración Pública Nacional, Imprenta Nacional, Caracas, Venezuela. Instalación de Windows 7, consultado el 15 de abril de 2012, en www.seguridadpc.net/instalar_windows.htm Instalación de Windows 7. Consultado el 30 de marzo de 2006, en http://li.co. ve/0ho Instalar driver en el Sistema Operativo Windows. Consultado el 12 de abril de 2012, en http://li.co.ve/0hm Interfaz gráfica de Windows 7. Consultado el 30 de marzo de 2012, en http:// youtu.be/rWwhVTCzJU0

355


Referencias Lenguajes de programación. Consultado el 3 de abril de 2012, en http://li.co. ve/0ht Lenguajes de programación. Consultado el 3 de abril de 2012, en http://li.co. ve/0hu Los Sistemas operativos. Consultado el 23 de marzo de 20012, en http://youtu. be/NvsdOCawaSQ Mantenimiento de software. Consultado el 10 de abril de 2012, en http://youtu. be/K6ZkjqlYc8A Políticas de respaldo de información. Consultado el 10 de abril de 2012, en http://li.co.ve/0hl Respaldo de información. Consultado el 05 de abril de 2012, en http://li.co. ve/0hq Sistema operativo CANAIMA. Consultado el 25 de marzo de 2012, en http://youtu.be/KxuIddGByzo, Software de aplicación. Consultado el 25 de marzo de 2012, en http://li.co. ve/0hr Software libre o software propietario: ¿cuál elegir? Consultado el 25 de marzo de 2012, en http://li.co.ve/0hk Software libre vs Software propietario. Consultado el 25 de marzo de 2012, en http://youtu.be/JjKOZpjhzYo Software libre vs software propietario. Consultado el 25 de marzo de 2012, en http://li.co.ve/0hj Tanenbaum, Andrew S. (1997). Sistemas Operativos: Diseño e implementación. Editorial Prentice-Hall Hispanoamérica, México. Unidad de informática fundación para el desarrollo de la ciencia y tecnología de Yaracuy (2009). Guía: Canaima distribución GNU-Linux. Venezuela.

8vo

Cómo formatear un computador. Consultado el 19 de enero de 2013, en http:// li.co.ve/l6E Mantenimiento correctivo y preventivo. Consultado el 5 de mayo de 2013, en http://li.co.ve/l6D 356

Planificación. Consultado el 5 de mayo de 2013, en http://li.co.ve/l6G


Referencias Procesamiento digital de señales. Consultado el 19 de enero de 2013, en http:// li.co.ve/l6F

9no

Barcelo J. (2004). Redes computacionales “Software Libre”. Fundación de la Universidad Oberta de Catalunya. Barcelona. Cervantes F. (2002). Estudio de los medios de transmisión en redes computacionales mixtas alámbrica - inalámbrica). Universidad del Norte. Ibarra. Cómo crear presentaciones efectivas. Consultado en enero de 2014, en http:// li.co.ve/tYV Configuración de Router Inalámbrico. Consultado en enero de 2014, en http:// li.co.ve/tZc Díaz G. (s/f). Redes de Computadoras (documento PDF). Universidad de Los Andes, Facultad de Ingeniería, Escuela de Sistemas. Mérida, Venezuela. Internet protocol. Consultado en enero de 2014, en http://li.co.ve/tYY Manual sobre redes basadas en el Protocolo Internet (IP) y asuntos conexos. Consultado en enero de 2014, en http://li.co.ve/tYZ Pingarron R. (s/f). Redes y comunicaciones de datos. Arquitectura ICP/IP (documento en PDF). Protocolo TCP/IP. Consultado en enero de 2014, en http://li.co.ve/tZa ¿Qué es un router? Consultado en enero de 2014, en http://li.co.ve/r7W Router inalámbrico. Consultado en enero de 2014, en http://li.co.ve/tZd Unión internacional de telecomunicaciones (2005). Manual sobre redes basadas en el Protocolo Internet (IP) y asuntos conexos. Varela C. (2002). Redes Inalámbricas. Escuela Técnica Superior de Ingeniería Informática. Universidad de Valladolid.

10mo

Algorítmica para programación. Consultado el 14 de marzo de 2014, en http:// li.co.ve/w8i Cómo configurar una impresora por defecto en XP. Consultado en abril de 2014, en http://li.co.ve/w8o Cómo usar una impresora de red. Consultado en abril de 2014, en http://li.co. ve/w8n

357


Referencias Configuración de una red doméstica básica. Consultado en abril de 2014, en http://li.co.ve/w8j Configuración de una red inalámbrica. Consultado en abril de 2014, en http:// li.co.ve/w8m Configuración informática. Consultado en abril de 2014, en http://li.co.ve/w8l Díaz, Aureliano (2004). Guía práctica para manejar y reparar computadoras red. Imprelibros Cargraphics S.A. Décima edición. Medellín, Colombia. Grupo Océano (2008). Biblioteca de Aprendizaje Interactivo Mundo Hispano. Tomo 3. Barcelona, España. Introducción a la programación. Consultado en abril de 2014, en http://li.co.ve/ w8t Manual para configurar una red local en Windows 7. Consultado en abril de 2014, en http://li.co.ve/w8k Mendoza, Roberth (2001). Manual de cableado estructurado. RMG Consultores. Táchira, Venezuela. Mendoza, Roberth (2001). Manual de mantenimiento de redes. RMG Consultores. Táchira, Venezuela. Quintero, María Alejandra (2005). Introducción a la programación. Universidad de los Andes, Facultad de Ciencias Forestales. Mérida, Venezuela. Redes: montar un servidor FTP en un equipo con Windows 7. Consultado en abril de 2014, en http://li.co.ve/waG Rodríguez, Miguel Ángel (1991). Metodología de la programación. McGraw-Hill. Madrid, España. Seguridad de Redes LAN. Consultado en abril de 2014, en http://li.co.ve/w8r Servidor FTP. Consultado en abril de 2014, en http://servidorftp.es/ Sistemas informáticos multiusuario y en red - UNIDAD 6 C.P.R. Consultado en abril de 2014, en http://li.co.ve/w8g Vielma, Jesús (2011). Guía reparación de computadoras red informática. Universidad de los Andes. Facultad de Ciencias Forestales. Mérida, Venezuela.

11ero 358

Tipos de datos. Consultado en diciembre de 2014, en http://li.co.ve/0DY


Referencias Algoritmos. Consultado en diciembre de 2014, en http://li.co.ve/0DZ Los algoritmos. Consultado en diciembre de 2014, en http://li.co.ve/wpY Estructura de datos. Consultado en diciembre de 2014, en http://li.co.ve/zH1 Lenguajes de programación. Consultado en diciembre de 2014, en http://li.co. ve/0Eb Lenguajes de programación. Consultado en diciembre de 2014, en http://li.co. ve/0Ec Lenguajes de programación. Consultado en diciembre de 2014, en http://li.co. ve/0Ed Base de datos. Consultado en diciembre de 2014, en http://li.co.ve/0Ef Base de datos. Consultado en diciembre de 2014, en http://li.co.ve/zCL Página web. Consultado en diciembre de 2014, en http://li.co.ve/0Eg Tipo de datos. Consultado en diciembre de 2014, en http://li.co.ve/0Eh Métodos de ordenamiento y almacenamiento. Consultado en diciembre de 2014, en http://li.co.ve/0Ei

359


Notas


Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.