Академический Документы
Профессиональный Документы
Культура Документы
Capítulo 1 ............................................................................................................................................ 10
Sistematización ............................................................................................................................. 10
1.1 Concepto de Sistemas .......................................................................................... 10
1.2 Subsistemas ......................................................................................................... 10
1.2.1 Ejemplo de sistemas .......................................................................................... 11
1.2.2 Ejemplo de subsistemas .................................................................................... 12
1.2.3 Partes fundamentales de un sistema ................................................................. 13
1.2.4 Etapas de la Sistematización ............................................................................. 14
Capítulo 2 ............................................................................................................................................ 15
Información .................................................................................................................................... 15
2.1 Conceptos e Importancia ...................................................................................... 15
2.2 Características de la información y de sus datos................................................... 15
2.2.1 Niveles operativos de la información .................................................................. 16
2.2.2 Cómo se genera la información.......................................................................... 17
2.2.3 Seguridad Informática ........................................................................................ 22
Capítulo 3 ............................................................................................................................................ 25
Modelo Entidad Relación ............................................................................................................. 25
3.1 Las rutas de los sistemas de archivos: ........................................................................... 25
3.2 Simbología ............................................................................................................ 26
3.2.1 Reglas ................................................................................................................ 27
3.2.2 Relaciones ......................................................................................................... 29
3.2.3 Llave Primaria .................................................................................................... 31
3.2.4 Llave Candidata ................................................................................................. 33
Capítulo 4 ............................................................................................................................................ 34
Orientado a objetos UML ............................................................................................................. 34
4.1 Diagrama Casos de Uso ....................................................................................... 34
4.2 Diagrama de actividades ....................................................................................... 35
4.2.1 Diagrama de colaboración ................................................................................. 36
4.2.2 Lenguajes de programación ............................................................................... 41
4.2.4 Ciclo de vida del software .................................................................................. 44
4.2.5 Generación de Código ....................................................................................... 45
Capítulo 5 ............................................................................................................................................ 52
Acces .............................................................................................................................................. 52
5.1 ¿Que son las tecnologías de la información? ........................................................ 52
2|Página
5.2 Creación de la Primera Tabla ................................................................................ 52
5.2.1 Propiedades de los campos ............................................................................... 55
5.2.2 Añadir Descripción a una tabla........................................................................... 56
5.2.3 Como modificar la estructura de las tablas en Access........................................ 56
5.2.4 Guardar una tabla .............................................................................................. 57
5.2.5 Editar Registros En Access ................................................................................ 62
5.2.6 Insertar datos en una tabla Access. ................................................................... 65
Capítulo 6 ............................................................................................................................................ 73
Sistemas Operativos .................................................................................................................... 73
6.1¿Qué significa? ...................................................................................................... 73
6.2 Historia de los sistemas operativos ....................................................................... 73
6.3 Tipos de sistemas operativos ................................................................................ 76
6.3.1 Multiprogramados .............................................................................................. 77
6.4 Distribuidos de red ................................................................................................ 79
Capítulo 7 ............................................................................................................................................ 83
Sistemas de Archivos ................................................................................................................... 83
7.1 Sistema de archivos .............................................................................................. 83
Capítulo 8 ............................................................................................................................................ 88
Linux ................................................................................................................................................ 88
8.1 Historia de Linux ................................................................................................... 89
8.2 Partición del disco duro para instalar linux ............................................................ 90
8.3 Aplicaciones de Linux ........................................................................................... 93
8.4 Instalación del Sistema Operativo Linux ................................................................ 94
8.5 Bash...................................................................................................................... 98
8.6 Sistema de usuarios y manejo de clave en Linux .................................................. 98
8.7 Archivos y Permisos de Linux ............................................................................... 99
Capítulo 9 .......................................................................................................................................... 100
9.1 Creación de máquina virtual................................................................................................. 100
9.2 Montar sistema operativo .................................................................................... 102
Capítulo 10 ........................................................................................................................................ 108
Que son las tecnologías de la información ............................................................................. 108
10.1 Internet y Sus Servicios..................................................................................... 109
10.2 Intranet .............................................................................................................. 110
Capítulo 10 ........................................................................................................................................ 112
Software........................................................................................................................................ 112
3|Página
10.2...................................................................... Clasificación del software del sistema.
................................................................................................................................. 112
10.2.2 Software de programación ............................................................................. 114
10.2.3 Software de Aplicación ................................................................................... 115
Capítulo 11 ........................................................................................................................................ 117
Ofimática ...................................................................................................................................... 117
11.1 Concepto........................................................................................................... 117
11.2 Historia .............................................................................................................. 118
11.3 Herramientas .................................................................................................... 123
Capítulo 12 ........................................................................................................................................ 130
Unidades de medida en informática......................................................................................... 130
12.1 Concepto........................................................................................................... 130
12.2 Múltiplos ............................................................................................................ 133
Capítulo 13 ........................................................................................................................................ 135
Sistemas numéricos ................................................................................................................... 135
13.1 Concepto........................................................................................................... 135
13.2 Sistema de numeración binario ......................................................................... 135
13.3 Sistema de numeración octal ............................................................................ 136
13.4 Sistema de numeración hexadecimal ................................................................ 136
13.5 Conversiones .................................................................................................... 136
13.5 De sistema binario ............................................................................................ 136
13.5.2 De Sistema octal ............................................................................................ 140
13.5.3 De Sistema Hexadecimal ............................................................................... 141
Capítulo 14 ........................................................................................................................................ 147
Framework ................................................................................................................................... 147
14.1 Arquitectura de Framework ............................................................................... 147
14.2 Estructura del framework .................................................................................. 147
Capítulo 15 ........................................................................................................................................ 149
Introducción a SQL ..................................................................................................................... 149
15.1 DML (data manipulation language).................................................................... 149
15.2 Comando select ................................................................................................ 152
15.3 Cláusula from .................................................................................................... 153
15.3 Consultas basicas de sql................................................................................... 153
Capítulo 16......................................................................................................................................... 157
Java ............................................................................................................................................... 157
4|Página
16.1 Comandos básicos ............................................................................................................ 157
16.1.2 Programación orientada a objetos .................................................................. 157
16.1.2 Independencia de la plataforma: .................................................................... 157
7.1.3 En recolector de basura de Java ...................................................................... 158
16.2 Sintaxis ................................................................................................................................ 159
16.2.1 Aplicaciones Autónomas De Java .................................................................. 159
16.2.2 Applets ........................................................................................................... 160
16.2.3 Servlets .......................................................................................................... 161
16.3 Entornos De Funcionamientos ......................................................................................... 163
16.3.1 En Dispositivos Móviles y Sistemas Embebidos ............................................. 163
16.3.2 En Navegador Web ........................................................................................ 163
16.3.3 En Sistemas de Servidos ............................................................................... 164
16.3.4 En Aplicaciones De Escritorio ........................................................................ 164
16.3.5 Plataformas Soportadas ................................................................................. 165
16.4 Programación...................................................................................................................... 165
16.4.1 Expresiones ................................................................................................... 165
16.4.2 Operadores .................................................................................................... 166
16.4.3 Operadores A Nivel Bit ................................................................................... 169
16.4.3 Operadores De Procedencia .......................................................................... 170
16.4.5 Sentencias ..................................................................................................... 172
Capítulo 17 ........................................................................................................................................ 177
Programación básica en C# (Consola) .................................................................................... 177
17.1 Definición e Historia de C# ............................................................................................... 177
17.2 Programa de C# ................................................................................................................. 177
17.2.1 Sintaxis C# ..................................................................................................... 178
17.2.2 Palabras reservadas ...................................................................................... 178
17.2.3 Variables ........................................................................................................ 179
17.2.4 Constantes ..................................................................................................... 179
Capítulo 18 ........................................................................................................................................ 181
Tipos de dato primitivo ............................................................................................................... 181
18.1 Enteros ............................................................................................................. 181
18.2 Decimal ............................................................................................................. 181
Capítulo 19 ........................................................................................................................................ 182
Operadores aritméticos .............................................................................................................. 182
19.1 Suma: ............................................................................................................... 182
5|Página
19.2 Resta: ............................................................................................................... 182
19.3 Multiplicacion: ................................................................................................... 182
19.4 Division: ............................................................................................................ 182
19.5 Residuo: ............................................................................................................ 182
Capítulo 20 ........................................................................................................................................ 183
Operadores de igualdad y relacionales ................................................................................... 183
20.1 Operadores lógicos: &&, ||,! ............................................................................... 183
20.2 Operadores de igualdad: == y != ....................................................................... 184
Capítulo 21 ........................................................................................................................................ 186
Estructuras de decisión .............................................................................................................. 186
21.1 If-else ................................................................................................................ 186
21.2 If y sentencias compuestas ............................................................................... 187
21.3 Switch ............................................................................................................... 187
Capítulo 22 ........................................................................................................................................ 188
Estructura de Repetición............................................................................................................ 188
22.1 While ................................................................................................................. 189
22.2 Do While ........................................................................................................... 189
22.3 For .................................................................................................................... 190
Capítulo 23 ........................................................................................................................................ 191
Operadores Lógicos ....................................................................................................................... 191
23.1 And ................................................................................................................... 191
23.2 Or ...................................................................................................................... 192
23.3 Not .................................................................................................................... 193
Capítulo 24 ........................................................................................................................................ 194
Manejo de cadenas .................................................................................................................... 194
24.1 Declaración de una Cadena de Caracteres. ...................................................... 194
24.2 Búsqueda .......................................................................................................... 195
24.3 Concatenación .................................................................................................. 197
Capítulo 25 ........................................................................................................................................ 198
Programación en C# (POO) ...................................................................................................... 198
25.1 Sintaxis ............................................................................................................. 199
25.1.2 Conexión de Entrada y Salida ........................................................................ 200
25.1.3 Operaciones Básicas ..................................................................................... 201
25.1.4 Condiciones If: ............................................................................................... 201
6|Página
Capítulo 26 ........................................................................................................................................ 202
Manejo de Cadenas.................................................................................................................... 202
26.1 Concatenación .................................................................................................. 202
26.2 Comparación..................................................................................................... 203
Capítulo 27 ........................................................................................................................................ 204
Operaciones de Fecha y Hora .................................................................................................. 204
27.1 Resta y suma de fecha y hora ........................................................................... 204
27.2 Manejo del tipoDateTime.Date- DATE .............................................................. 206
27.3 Creación de ventanas ....................................................................................... 207
Capítulo 28 ........................................................................................................................................ 208
Eventos ......................................................................................................................................... 208
28.1 Concepto........................................................................................................... 208
28.2 Eventos básicos ................................................................................................ 208
Capítulo 29 ........................................................................................................................................ 209
Uso de controles ......................................................................................................................... 209
29.1 Text Box ............................................................................................................ 211
29.2 Etiquetas ........................................................................................................... 211
29.3 PictureBox......................................................................................................... 212
29.4 Button ............................................................................................................... 213
29.5 SoundPlayer ..................................................................................................... 213
29.6 ComboBox ........................................................................................................ 214
29.7 ListBox .............................................................................................................. 214
29.8 Calendario......................................................................................................... 215
29.9 RadioButton ...................................................................................................... 215
29.10 CheckBox........................................................................................................ 216
29.11 Timer ............................................................................................................... 217
29.12 Control Panel .................................................................................................. 217
29.14 Controles......................................................................................................... 218
Capítulo 30 ........................................................................................................................................ 222
Métodos ........................................................................................................................................ 222
30.1 Tipo de valor de retorno .................................................................................... 223
30.2 Variables Globales ............................................................................................ 225
30.3 Parámetros ....................................................................................................... 226
Capítulo 31 ........................................................................................................................................ 227
Access y conexiones a C#......................................................................................................... 227
7|Página
31.1 Introduccion a Access ....................................................................................... 227
31.2 Creación de una tabla ....................................................................................... 228
31.3 Añadir Campos ................................................................................................. 229
31.3.1 Propiedades de los campos ........................................................................... 230
31.4 Añadir descripción a una tabla .......................................................................... 230
31.5 Modificaciones dentro de la tabla ...................................................................... 231
31.6 Como modificar las estructuras de las tablas .................................................... 232
Capítulo 32 ........................................................................................................................................ 233
Conexión de C# a Base de Datos en Access......................................................................... 233
32.1 Sin Utilizar Origen de Datos .............................................................................. 233
32.2 Utilizando Origen de Datos ............................................................................... 236
32.2.1 Insertar datos en una tabla ............................................................................. 238
32.2.2 Actualizar datos.............................................................................................. 240
Capítulo 33 ........................................................................................................................................ 241
Diagramas de componentes ..................................................................................................... 241
33.1 UML .................................................................................................................. 241
33.1.1 Lectura de diagramas de componentes.......................................................... 241
Capítulo 34 ........................................................................................................................................ 244
Programación básica V.B (consola) Nivel 1............................................................................ 244
34.1 Definiciones e historia ....................................................................................... 244
34.2 Variables ........................................................................................................... 246
34.3 Constantes ........................................................................................................ 246
34.4 Tipos de dato primitivo ...................................................................................... 247
Capítulo 35 ........................................................................................................................................ 247
Operadores aritméticos .............................................................................................................. 247
35.1 Suma, resta, multiplicación, división y residuo................................................... 247
Capítulo 36 ........................................................................................................................................ 249
Operadores de igualdad y relacionales ................................................................................... 249
36.1 Menor que: ........................................................................................................ 249
36.2 Mayor que ......................................................................................................... 250
36.3 Mayor o igual que.............................................................................................. 251
36.4 Igualdad ............................................................................................................ 252
36.5 Son desiguales.................................................................................................. 253
36.6 Menor o igual que ............................................................................................. 254
Capítulo 37 ........................................................................................................................................ 255
8|Página
Estructuras de Condición ........................................................................................................... 255
37.1 If simple............................................................................................................. 255
37.2 if – else ............................................................................................................. 255
37.3 if -elseif:............................................................................................................. 256
37.4 Select Case....................................................................................................... 256
Capítulo 38 ........................................................................................................................................ 257
Ciclos repetitivos ......................................................................................................................... 257
38.1 While ................................................................................................................. 257
38.2 Do while ............................................................................................................ 257
38.3 For .................................................................................................................... 258
38.4 Switch ............................................................................................................... 259
Capítulo 39 ........................................................................................................................................ 260
Operadores Lógicos ................................................................................................................... 260
39.1 And ................................................................................................................... 260
39.2 Or ...................................................................................................................... 260
39.4 Not .................................................................................................................... 261
Capítulo 40 ........................................................................................................................................ 262
Manejo de Cadenas.................................................................................................................... 262
40.1 Creación de cadenas ........................................................................................ 262
40.2 Búsqueda de Cadenas ...................................................................................... 263
40.3 Concatenación de Cadenas .............................................................................. 264
9|Página
Capítulo 1
Sistematización
Una computadora
Está formada por partes (elementos)
Las partes están organizadas
Las partes interactúan entre si
Tienen un límite físico definido
Tienen un objetivo
1.2 Subsistemas
Son las partes, estructuras o bloques de piezas que forman un sistema. Cada sistema
está compuesto de "subsistemas", los cuales a su vez son parte de otros
subsistemas, cada subsistema es delineado por sus límites.
Las interconexiones y las interacciones entre los subsistemas se llaman interfaces.
Las interfaces ocurren en el límite y toman la forma de entradas y salidas.
10 | P á g i n a
Como vemos en la imagen está el procesamiento periódico de la nómina y se divide
en subsistemas que son los bloques de cálculo del sueldo total deducciones y sueldo
neto a pagar, preparación de los registros de nómina y de los controles, impresión de
cheques y registro de la nómina y controles de salida.
11 | P á g i n a
Ejemplos de sistemas informáticos:
Sistema de nómina
Es una solución informática diseñada para maximizar la productividad de las
personas encargadas de registrar y controlar correctamente todos los aspectos de
la nómina de los obreros y empleados de las empresas, permitiendo reducir las
cargas excesivas de trabajo y disminuyendo errores, considerando la legislación
fiscal y laboral vigente de cada país incluyendo los cálculos de impuestos locales y
retención de los mismos.
Sistema de contabilidad.
La Contabilidad es un sistema de información, ya que captura, procesa, almacena y
distribuye información vital para la correcta toma de decisiones en la empresa. El
papel fundamental que ha desempeñado la contabilidad es controlar y organizar las
diferentes actividades de la empresa con el fin de conocer la situación en que esta
se encuentra, de una manera ágil, oportuna y útil, para llevar a cabo los propósitos
que se quieren realizar y así cumplir con los objetivos.
Sistemas de Integrados de Administración Financiera
Los sistemas integrados de administración financiera (SIAF) son sistemas
informáticos que automatizan los procedimientos financieros necesarios para
registrar los recursos públicos recaudados y aplicarlos a la concreción de
los objetivos del sector público.
12 | P á g i n a
Sistema árbol
Otro ejemplo es un árbol visto como sistema natural.
Sistema principal: Árbol.
Componentes: hojas, corteza, ramas, troncos, agua, células vegetales, etc.
Entradas: dióxido de carbono, luz solar, agua, nutrientes, etc.
.
13 | P á g i n a
Estructura formal: Es una organización es la oficialmente establecida, el esqueleto
del sistema.
Estructura conceptual o ideal: Es la que podemos establecer en base a unas
necesidades concretas del sistema analizado o descrito.
14 | P á g i n a
Capítulo 2
Información
16 | P á g i n a
2.2.2 Cómo se genera la información
Han pasado décadas desde que la información se trabaja y se almacena de forma
digital. Si regresamos a 40 años atrás, las computadoras eran un maravilloso invento,
pero hay que recordar que antes de la aparición de las computadoras, toda la
información era guardada en cientos de libros. Gracias a un genio matemático
llamado “Claude Shannon” el cual puso todo su empeño y conocimiento en elaborar
una teoría que tratase de cómo tratar la información de manera digital.
La computadora solo maneja dos símbolos importantes actualmente, los cuales de
ellos son el “0” y el “1” estos dos tiene su funcionamiento gracias a un circuito
electrónico que es el medio por el cual la computadora capta el mensaje
Mensajes:
Un mensaje es un conjunto de ceros y unos. Un archivo, un paquete de datos
que viaja por una red y cualquier cosa que tenga una representación binaria
puede considerarse un mensaje. El concepto de mensaje se aplica también a
alfabetos de más de dos símbolos, pero debido a que tratamos con
información digital nos referiremos casi siempre a mensajes binarios.
18 | P á g i n a
En el ejemplo de arriba se puede visualizar una palabra normal para nuestro lenguaje,
pero ¿qué pasa cuando por medio de un correo le enviamos ese “hola” a alguien? al
momento que esa persona recibe el mensaje, su computadora realizará el proceso
inverso, el sistema leerá el mensaje en binario y le devolverá la respuesta en lenguaje
humano, ese mensaje será el “hola”.
Pero si en tal caso nos llegan a proporcionar la palabra completa la cual sea
“Desarrollar” podremos captar con más facilidad el propósito del mensaje.
1. Origen:
Consiste en recoger los datos iniciales. Un registro original de datos recibe el nombre
de "documento fuente".
Ejemplo:
Pruebas calificadas de los estudiantes. Debe observarse que si se presenta alguna
duda acerca de la nota final de un estudiante se puede regresar a los documentos
originales (hojas de exámenes) y observar si se ha cometido algún error durante el
procesamiento.
20 | P á g i n a
2. Entrada:
Los datos iniciales de entrada se clasifican en forma conveniente para su
procesamiento, dependiendo esto de la máquina que se emplee. Por ejemplo:
Cuando se usan dispositivos electromecánicos, los datos de entrada se perforan en
tarjetas y en las computadoras electrónicas los datos se registran en discos o cintas.
3. Procesamiento:
Durante el proceso se ejecutarán las operaciones necesarias para convertir los datos
en información. Cuando la información esté completa se ejecutará la operación de
salida, en la que se prepara un informe que servirá como base para tomar decisiones.
4. Salida:
Se recopila los resultados obtenidos en el proceso. La forma de los datos de salida
depende del empleo que se les vaya a dar a estos.Por ejemplo: Un resumen impreso
de ventas para la gerencia o simplemente datos que se deben almacenar para
procesamientos que se harán después.
5. Distribución:
Los registros de los datos de salida se denominan "Documentos de informe o
reporte".
Por ejemplo: Las hojas que se envían a registro técnico. Los documentos de
información pueden llegar a ser guardados para procesamientos futuros.
6. Almacenamiento:
Los resultados del proceso se almacenan para utilizarlos después como datos de
entrada. Un conjunto unificado de datos en almacenamiento se denomina "archivo".
"Una base de datos" es un conjunto estructurado de archivos.
1. Registro:
Tiene que ver con la transferencia de los datos a alguna forma de o documento
modelo es decir un tipo de documento principal. Ejemplo: un profesor anota en su
lista los puntos obtenidos por los estudiantes y al terminar el semestre calcula las
notas finales y las anota en su lista. Recibe un acta y coloca ahí las calificaciones
finales, las registra en la hoja de calificaciones que se envía al estudiante y luego
hace entrega del acta a la oficina respectiva.
2. Duplicación:
Consiste en reproducir los datos en muchos documentos o formas. Ejemplo: se puede
registrar un informe mecanografiándolo y al mismo tiempo sacar copias con papel
carbón. En otro caso ingresándolo en la computadora luego imprimir y fotocopiar en
documento.
21 | P á g i n a
3. Verificación:
Consiste en comprobar cuidadosamente los datos para evitar cualquier error.
Ejemplo: los informes escritos a máquina se pueden volver a leer para corregirlos.
4. Separación:
Se separa los datos en varias categorías como los más importantes secundarios y
los datos que solo complementar la información.
5. Clasifición:
En la organización de los datos en un orden especifico. Ejemplo: los nombres de la
lista telefónica se han clasificado en orden alfabético. En este caso, los datos son
clasificados sin separar. La clasificación también se puede efectuar después de la
separación. Otro ejemplo: un archivo de registro de empleados contiene nombre,
numero del seguro social y lugar de trabajo. Si hay que clasificar el archivo de
acuerdo con el orden alfabético de los nombres, al "campo del nombre" se le
denomina "CLAVE".
6. Intercalación:
Se toman dos o más conjuntos de datos que han sido clasificados con la misma clave
y se resumen para formar un solo conjunto de datos: Por ejemplo, Dos archivos de
una misma persona, pero con algunos datos diferentes se toman los datos y se
convierte en un solo archivo.
7. Calculo:
La palabra cálculo se refiere al cuenta o investigación que se hace de algo por medio
de operaciones matemáticas. Es la ejecución de cálculos numéricos sobre los datos.
8. Recuperación:
La recuperación de datos hace referencia a las técnicas empleadas para recuperar
archivos que han sido perdidos o eliminados de algún medio de almacenamiento.
22 | P á g i n a
La definición de seguridad de la información no debe ser confundida con la de
«seguridad informática», ya que esta última solo se encarga de la seguridad en el
medio informático, pero la información puede encontrarse en diferentes medios o
formas, y no solo en medios informáticos.
La seguridad informática es la disciplina que se encarga de diseñar las normas,
procedimientos, métodos y técnicas destinados a conseguir un sistema de
información seguro y confiable.
Tipos de Seguridad
1) Seguridad Activa:
Llamamos seguridad activa al conjunto de acciones encaminadas a proteger
el ordenador y su contenido. Algunos podrían ser:
-Instalación software de seguridad
-Contraseñas
-Certificados digítales
-Encriptación de datos
2) Seguridad Pasiva:
Llamamos seguridad pasiva a la que pretende minimizar el impacto de un
Posible daño informático. Algunos podrían ser:
-Copias de seguridad
-sistemas de alimentación interrumpida
3) Seguridad Física:
La seguridad física trata de proteger el hardware ante posibles desastres
naturales como incendios, inundaciones, robos, sobrecargas eléctricas.
Algunas medidas de protección podrían ser:
-Sistemas anti incendios y anti inundaciones
-Vigilancia para evitar robos
-Sistemas para evitar apagones o sobrecargas eléctricas.
23 | P á g i n a
4) Seguridad Lógica:
La seguridad lógica complementa la física y trata de proteger el software y
los datos de los usuarios.
Para esto es recomendable lo siguiente:
-Protección de la información ante robos o pérdidas con las técnicas de seguridad
activa y pasiva.
5) Seguridad de la Persona:
Seguridad en la persona, consiste en la protección ante amenazas y fraudes
a la persona, que es lo más importante
Gusano:
Se trata de un programa malicioso cuya finalidad es desbordar la memoria del
sistema reproduciéndose a sí mismo.
24 | P á g i n a
Spam o correo de basura:
Son mensajes de correo electrónico que inundan la Red con la finalidad de
anunciar productos, a veces, de dudosa legalidad, para que los destinatarios
los compren. Se envían de forma masiva porque está demostrado que uno de
cada doce millones de los correos enviados obtiene una respuesta positiva.
Troyano:
Es un tipo de virus en el que se han introducido, instrucciones encaminadas a
destruir la información almacenada en los discos o bien recabar información.
Estos virus suelen estar alojados en elementos aparentemente.
Capítulo 3
Ejemplo:
Veamos un ejemplo de ruta en dos sistemas.
En Windows:
Si yo tuviese una carpeta en el disco duro llamada “MP3”, y en ella hubiese una
carpeta llamada “defcondos”, y dentro de esta carpeta estuviese el archivo
“pocopan.mp3”, la ruta sería esta:
C:’MP3’defcondos’pocopan.mp3
En GNU/Linux:
La ruta a la canción podría ser así:
/home/grissom/mp3/defcondos/pocopan.mp3
En este caso se indica que hay que entrar a la carpeta “home” para después abrir la
carpeta “grissom” que está ahí. En ella está la carpeta “MP3”, donde hay otra carpeta
que se llama “defcondos”, dentro de la cual está el archivo “pocopan.mp3”.
25 | P á g i n a
Fíjate como las carpetas están separadas entre sí por diferentes barras según cada
sistema (“’” en Windows y “/” en GNU/Linux. Este tipo de organización se llama
“jerárquica”.
3.2 Simbología
Es un modelo de datos que permite representar cualquier abstracción, percepción y
conocimiento en un sistema de información formado por un conjunto de objetos
denominados entidades y relaciones, incorporando una representación visual
conocida como diagrama 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.
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.
26 | P á g i n a
3.2.1 Reglas
Para la construcción de un Diagrama E-R. Saber un par de reglas nos harán el diseño
de nuestro Diagrama más fácil. Enseguida listamos algunas reglas que debemos
tomar en cuenta:
No Relaciones Circulares.
27 | P á g i n a
2.- En un Diagrama Entidad Relación. No puede haber entidades o relaciones
independientes:
No Relaciones/Entidades Independientes.
3.- En un Diagrama Entidad Relación. Un rombo solo puede unir a dos entidades,
única y exclusivamente.
28 | P á g i n a
Entidades Separadas
5.- En un Diagrama Entidad Relación. Cuando se encuentra un atributo que posee
características propias (Atributos) como el dueño del vehículo, este no podrá ser
atributo y pasará a ser una entidad.
Atributo-Entidad
6.- En un Diagrama Entidad Relación. Toda entidad se nombra el plural y los atributos
en singular.
3.2.2 Relaciones
Una relación es la asociación que existe entre dos o más entidades (Son objetos
que existen y se distinguen de otros objetos de acuerdo a sus características
llamadas atributos. Pueden ser concretas como una persona o abstractas como una
fecha.)
29 | P á g i n a
Tipos de relaciones
Uno a Uno: (1:1) Un registro de una entidad A se relaciona con solo un registro
en una entidad B. Las relaciones uno a uno no son demasiado.
30 | P á g i n a
Varios a Varios: (N: M) Una entidad en A se puede relacionar con 0 o con
muchas entidades en B y viceversa
Ejemplo: si queremos conocer los profesores que dan clase a un grupo o los grupos a los
que da clase un profesor determinado, necesitamos Las entidades: Profesores y Grupos.
Para establecerla podríamos leer que un profesor da clases a varios grupos (1A, 1B, 2C,
etcétera) y un grupo recibe clases de varios profesores (Carlos Pérez, Antonio García,
etcétera).
31 | P á g i n a
Seleccione una llave que sea única y que no se repita en el tiempo. Es posible
que las claves candidatas que son únicas en este momento puede contener
valor duplicado en otro instante de tiempo. Este tipo de llaves candidatas no
reúnen los requisitos para ser llave principal.
Llave Foránea
Una llave foránea (o Foreign key FK) es una limitación referencial entre dos tablas,
la llave foránea identifica una columna o grupo de columnas en una tabla (tabla hija
o referendo) que se refiere a una columna o grupo de columnas en otra tabla (tabla
maestra o referenciada). L as columnas en la tabla referendo deben de ser la llave
primaria u otra llave candidata en la tabla referida.
32 | P á g i n a
Ejemplo:
Un Aero puerto necesita saber los datos específicos de sus pasajeros y saber a
dónde se dirigen, se necesitan dos tablas, una de PASAJEROS que contendrá los
nombres, país, teléfono y correo y el otro de PAISES para saber que persona se
dirigirá a X país.
33 | P á g i n a
Capítulo 4
34 | P á g i n a
Representa la funcionalidad de un sistema mostrando su interacción con los usuarios. Esta
representación se hace a través de las relaciones entre los actores (Usuarios) y los casos
de uso (Acciones) dentro de un sistema. En esta imagen se puede visualizar como las
funciones más importantes pueden realizar.
35 | P á g i n a
Ejemplos de diagramas de actividades:
Muestra cómo las instancias específicas de las clases trabajan juntas para
conseguir un objetivo común.
Implementa las asociaciones del diagrama de clases mediante el paso de
mensajes de un objeto a otro. Dicha implementación es llamada "enlace".
Un diagrama de comunicación es también un diagrama de clases que contiene roles
de clasificador y roles de asociación en lugar de sólo clasificadores y asociaciones.
Los roles de clasificador y los de asociación describen la configuración de los objetos
y de los enlaces que pueden ocurrir cuando se ejecuta una instancia de la
comunicación. Cuando se instancia una comunicación, los objetos están ligados a
los roles de clasificador y los enlaces a los roles de asociación. El rol de asociación
puede ser desempeñado por varios tipos de enlaces temporales, tales como
argumentos de procedimiento o variables locales del procedimiento. Los símbolos de
enlace pueden llevar estereotipos para indicar enlaces temporales.
36 | P á g i n a
Usos
Un uso de un diagrama de colaboración es mostrar la implementación de una
operación. La comunicación muestra los parámetros y las variables locales de la
operación, así como asociaciones más permanentes. Cuando se implementa el
comportamiento, la secuencia de los mensajes corresponde a la estructura de
llamadas anidadas y el paso de señales del programa.
Un diagrama de secuencia muestra secuencias en el tiempo como dimensión
geométrica, pero las relaciones son implícitas. Un diagrama de comunicación
muestra relaciones entre roles geométricamente y relaciona los mensajes con las
relaciones, pero las secuencias temporales están menos claras.
Tipos
Es útil marcar los objetos en cuatro grupos: los que existen con la interacción entera;
los creados durante la interacción (restricción {new}); los destruidos durante la
interacción (restricción {destroyed}); y los que se crean y se destruyen durante la
interacción (restricción {transient}).
Mensajes
Los mensajes se muestran como flechas etiquetadas unidas a los enlaces. Cada
mensaje tiene un número de secuencia, una lista opcional de mensajes precedentes,
una condición opcional de guarda, un nombre, una lista de argumentos y un nombre
de valor de retorno opcional. El nombre de serie incluye el nombre (opcional) de un
hilo. Todos los mensajes del mismo hilo se ordenan secuencialmente. Los mensajes
de diversos hilos son concurrentes a menos que haya una dependencia secuencial
explícita. En conclusión, en un diagrama muy sencillo de hacer.
Flujos
Generalmente, un diagrama de comunicación contiene un símbolo para un objeto
durante una operación completa. Sin embargo, a veces, un objeto contiene diferentes
estados que se deban hacer explícitos. Por ejemplo, un objeto pudo cambiar de
localización o sus asociaciones pudieron diferenciarse.
37 | P á g i n a
Los diferentes símbolos de objeto que representan un objeto se pueden conectar
usando flujos "become" o "conversión". Un flujo "become" es una transición, a partir
de un estado de un objeto a otro. Se dibuja como una flecha de línea discontinua con
el estereotipo "become" o "conversión" y puede ser etiquetado con un número de
serie para mostrar cuando ocurre. Un flujo de conversión también se utiliza para
mostrar la migración de un objeto a partir de una localización a otra distinta para otro
lugar también se deben marcar con el número en secuencias.
Diagrama de componentes
Un diagrama de componentes es un diagrama tipo del Lenguaje Unificado de Modelado.
Un diagrama de componentes representa cómo un sistema de software es dividido
en componentes y muestra las dependencias entre estos componentes. Los componentes
físicos incluyen archivos, cabeceras, bibliotecas compartidas, módulos, ejecutables,
o paquetes. Los diagramas de Componentes prevalecen en el campo de la arquitectura de
software, pero pueden ser usados para modelar y documentar cualquier arquitectura de
sistema.
Debido a que los diagramas de componentes son más parecidos a los diagramas de casos
de usos, éstos son utilizados para modelar la vista estática y dinámica de un sistema.
Muestra la organización y las dependencias entre un conjunto de componentes. No es
necesario que un diagrama incluya todos los componentes del sistema, normalmente se
realizan por partes. Cada diagrama describe un apartado del sistema.
En él se situarán librerías, tablas, archivos, ejecutables y documentos que formen parte del
sistema.
Uno de los usos principales es que puede servir para ver qué componentes pueden
compartirse entre sistemas o entre diferentes partes de un sistema.
38 | P á g i n a
Aquí en esta imagen podemos ver como se
implementa el Diagrama de Componentes.
Los componentes pueden tener interfaces (es
decir clases abstractas con operaciones) que
permiten asociaciones entre componentes.
Los diagramas de componentes describen los elementos físicos del sistema y sus
relaciones
Muestran las opciones de realización incluyendo código fuente, binario y ejecutable
Los componentes representan todos los tipos de elementos software que entran en la
fabricación de aplicaciones informáticas
Pueden ser simples archivos, paquetes, bibliotecas cargadas dinámicamente, etc.
Componente
Es una parte física de un sistema (modulo, base de datos, programa ejecutable,
etc.). se puede decir que un componente es la materialización de una o más clases,
por qué una abstracción con atributos y métodos pueden ser implementados en los
componentes. los componentes se pueden agrupar en paquetes, así como los
objetos en clases, además puede haber entre ellos relaciones de dependencia
como: generalización, asociación, agregación y realización.
Aquí podemos ver como se relacionan los componentes.
39 | P á g i n a
Interfaces: Es el lazo de unión entre varios componentes.
40 | P á g i n a
"los diagramas de componentes se generan a partir del diagrama de clases"
Pasos para la elaboración de un diagrama de componentes:
41 | P á g i n a
Un 4.2.2 ejemplo de código
fuente escrito en el lenguaje
de programación Java, que
imprimirá el mensaje "Hello
World!" a la salida estándar
cuando es compilado y
ejecutado.
42 | P á g i n a
Lenguajes de programación imperativos: entre ellos tenemos el Cobol, Pascal, C y
Ada.
Lenguajes de programación declarativos: el Lisp y el Prolog.
Lenguajes de programación orientados a objetos: el Smalltalk y el C++.
Lenguajes de programación orientados al problema: son aquellos lenguajes
específicos para gestión.
Lenguajes de programación naturales: son los nuevos lenguajes que pretender
aproximar el diseño y la construcción de programas al lenguaje de las personas.
Otra clasificación de los lenguajes de programación de alto nivel, es teniendo en
cuenta el desarrollo de las computadoras según sus diferentes generaciones:
Lenguajes de programación de primera generación: el lenguaje máquina y el
ensamblador.
Lenguajes de programación de segunda generación: los primeros lenguajes de
programación de alto nivel imperativo (FROTRAN, COBOL).
Lenguajes de programación de tercera generación: son lenguajes de programación
de alto nivel imperativo, pero mucho más utilizados y vigentes en la actualidad
(ALGOL 8, PL/I, PASCAL, MODULA).
Lenguajes de programación de cuarta generación: usados en aplicaciones de gestión
y manejo de bases de datos (NATURAL, SQL).
Lenguajes de programación de quinta generación: creados para la inteligencia
artificial y para el procesamiento de lenguajes naturales (LISP, PROLOG).
43 | P á g i n a
Eventos:
Es un paradigma de la programación en el que tanto la estructura como la ejecución
de los programas van determinados por los sucesos que ocurran en el sistema,
definidos por el usuario o que ellos mismos provoquen.
Objetos:
Este paradigma está orientado al desarrollo de aplicaciones de una manera visual y
mucho más dinámica en cuestión sistema-usuario, se basa en una colección de
objetos que están interrelacionados y trabajan en conjunto para la resolución de un
problema.
Lógico:
Es un paradigma de programación basado en la lógica del sistema. Analiza y aplica
la lógica para el planteamiento de problemas y control sobre una serie de reglas
analíticas para alcanzar una solución automática.
4.2.4 Ciclo de vida del software
Es una secuencia estructurada y bien definida de las etapas en Ingeniería de software
para desarrollar el producto software deseado. El SDLC (sus siglas en inglés) aporta
una serie de pasos a seguir con la finalidad de diseñar y desarrollar un producto
software de manera eficiente.
Fases Básicas:
Definición de objetivos: Define la finalidad del proyecto y su papel en la
estrategia global del proyecto.
Análisis de los requisitos y su viabilidad: Recopila, examina y formula los
requisitos del cliente, en cualquier restricción que se pueda aplicar.
Diseño general: Requisitos generales de la arquitectura de la aplicación.
Diseño en detalle: Definición precisa de cada subconjunto de la aplicación.
Programación o implementación: Es la implementación en un lenguaje de
programación para crear las funciones definidas durante la etapa del diseño
Prueba de unidad: La prueba individual de cada subconjunto de la aplicación
para garantizar que se implementaron de acuerdo con las especificaciones.
Integración: Garantiza que los diferentes módulos que se integren con la
aplicación. El propósito de la prueba de integración tiene que estar
cuidadosamente documentada para evitar problemas.
Prueba Beta o de validación: Garantiza que el software cumpla con las
especificaciones originales.
Documentación: Sirve para documentar la información necesaria para los
usuarios del software y para desarrollos futuros.
Implementación: Aquí se instala el software en máquinas de clientes, ya
que el software necesita instalar las configuraciones para el consumidor
final con posterioridad evaluando su adaptabilidad y su portabilidad.
44 | P á g i n a
Mantenimiento: Comprende todos los procedimientos correctivos y las
actualizaciones secundarias del software (mantenimiento continuo).
45 | P á g i n a
En la cadena $target dejamos el código emitido. Cada método visita los hijos,
traduciéndolos y añadiendo el código que fuera necesario para la traducción del
nodo.
sub PROGRAM::translate {
my $tree = shift;
for my $s (@statements) {
$s->translate;
}
}
sub PRINT::translate {
my $self = shift;
$self->EXPRESSION->translate;
if ($self->EXPRESSION->TYPE == $int_type) { emit
"PRINT_INT\n"; }
else {emit "PRINT_STR\n"; }
}
Así, si la sentencia era PC, donde C es del tipo cadena, se debería eventualmente
llamar al método de traducción del identificador:
sub ID::translate {
my $self = shift;
my $id = $self->VAL;
my $type = Semantic::Analysis::get_type($id);
if ($type == $int_type) {
emit "LOAD ".$symbol_table{$id}->{ADDRESS}."\n";
}
46 | P á g i n a
else {
emit "LOAD_STRING ".$symbol_table{$id}-
>{ADDRESS}."\n";
}
}
La función emit simplemente concatena el código producido a la salida:
sub emit { $target .= shift; }
Para la traducción de una sentencia de asignación supondremos de la existencia de
instrucciones STORE_INT y STORE_STRING. La instrucción STORE_STRING
asume que en la cima de la pila están en la dirección y la cadena de almacenar
sub ASSIGN::translate {
my $self = shift;
$self->RIGHT->translate;
my $id = $self->LEFT;
$id->translate;
my $type = Semantic::Analysis::get_type($id->VAL);
if ($type == $int_type) {
emit "STORE_INT\n";
}
else {
emit "STORE_STRING\n";
}
}
Si se está traduciendo una sentencia como a = “hola”, se acabará llamando al método
de traducción asociado con la clase STR el cual actúa empujando la dirección y la
longitud de la cadena en la pila:
sub STR::translate {
my $self = shift;
47 | P á g i n a
Compiladores
48 | P á g i n a
Diagramas a bloques de la operación de un buen compilador.
Fases de un Compilador
Análisis Léxico: Esta fase se encarga de verificar si todas las cadenas pertenecen
o no al lenguaje. Es decir, realiza un análisis símbolo por símbolo indicando el token
por cada uno de los elementos reconocidos o el error en caso de no reconocer. Este
análisis no logra detectar muchos errores por su característica.
Ejemplo:
total=valor*5
Luego del análisis léxico:
id = id * num
a=b+c
1: + b c T1
2: = a T1
Optimización de Código: Consiste en realizar una mejora en el código intermedio,
para reducir el número de líneas y hacer que la ejecución sea más rápida.
a=b+c
1: + b c a
Generación de Código: Llegamos a la generación de código ensamblador o código
máquina del procesador que nos interese, por ejemplo:
a:=b+c
Interpretes
Los programas interpretados suelen ser más lentos que los compilados debido a la
necesidad de traducir el programa mientras se ejecuta, pero a cambio son más
flexibles como entornos de programación y depuración (lo que se traduce, por
ejemplo, en una mayor facilidad para reemplazar partes enteras del programa o
añadir módulos completamente nuevos), y permiten ofrecer al programa interpretado
un entorno no dependiente de la máquina donde se ejecuta el intérprete, sino del
propio intérprete (lo que se conoce comúnmente como máquina virtual).
50 | P á g i n a
Para mejorar el desempeño, algunas implementaciones de programación de
lenguajes de programación pueden interpretar o compilar el código fuente original en
una más compacta forma intermedia y después traducir eso al código de máquina
(ej. Perl, Python, MATLAB, y Ruby). Algunos aceptan los archivos fuente guardados
en esta representación intermedia (ej. Python, UCSD Pascal y Java).
Tipos de intérprete
Interpretes duros: Los intérpretes puros son los que analizan y ejecutan
sentencia a sentencia todo el programa fuente. Siguen el modelo de
interpretación iterativa y, por tanto, se utilizan principalmente para lenguajes
sencillos.
Los intérpretes puros se han venido utilizando desde la primera generación de
ordenadores al permitir la ejecución de largos programas en ordenadores de
memoria reducida, ya que sólo debían contener en memoria el intérprete y la
sentencia a analizar y ejecutar en cada momento. El principal problema de
este tipo de intérpretes es que, si a mitad del programa fuente se producen
errores, se debe de volver a comenzar el proceso.
51 | P á g i n a
Capítulo 5
Acces
52 | P á g i n a
Crear una tabla en una nueva base de datos
53 | P á g i n a
3. En la columna Nombre del campo colocaremos los nombres de los campos
de la tabla y en la columna Tipo de datos elegiremos el tipo de dato para cada
campo de la tabla. De esta manera podemos crear todos los campos de nuestro
ejemplo:
4.Como regla general siempre colocamos primero el campo clave. Para establecer el
campo clave debemos seleccionar el campo correspondiente y pulsar el botón Clave
principal que se encuentra en la ficha Diseño.
54 | P á g i n a
5.2.1 Propiedades de los campos
55 | P á g i n a
5.2.2 Añadir Descripción a una tabla
La función de cada campo es evidente con solo leer su título, pero es posible que
alguna vez el nombre del campo no sea tan significativo.
56 | P á g i n a
Hacer clic derecho sobre la tabla que queremos modificar en el Panel de navegación,
seleccionar Vista Diseño en el menú contextual:
57 | P á g i n a
O bien hacer clic sobre el botón Guardar de la barra de Acceso Rápido.
Como nuestra tabla aún no tiene nombre asignado, aparecerá el siguiente cuadro
de diálogo:
Texto:
Campos de texto aceptan caracteres de texto o numéricos, incluidos delimitadas
listas de elementos. Un campo de texto acepta un número más pequeño de
caracteres que un campo Memo: de 0 a 255 caracteres.
58 | P á g i n a
Memo:
Puede introducir grandes cantidades de texto y datos numéricos en este tipo de
campo. Además, si el Diseñador de base de datos establece el campo para que
admita el formato de texto enriquecido, puede aplicar los tipos de formato que se
encuentran normalmente en los programas de procesamiento de texto, como Word.
Por ejemplo, puede aplicar diferentes fuentes y tamaños de fuente a caracteres
específicos del texto y que estén en negrita o cursiva y así sucesivamente. También
puede agregar etiquetas de lenguaje de marcado de hipertexto (HTML) a los datos.
Número:
Puede introducir números solo en este tipo de campo y puede realizar cálculos con
los valores de un campo numérico.
Fecha/Hora:
Puede escribir solo fechas y horas en este tipo de campo. Según cómo el Diseñador
de base de datos del campo.
Hipervínculo:
Puede introducir los datos en este tipo de campo y, a continuación, Access lo
convertirá en una dirección Web. Por ejemplo, si escribe un valor en el campo, Access
coloca el texto con http://www..comde texto del usuario. Si escribe una dirección Web
válida, el vínculo funcionará.
Moneda:
Puede escribir solo los valores de moneda en este tipo de campo. Además, no tiene
que introducir manualmente un símbolo de moneda. De forma predeterminada,
Access aplica el símbolo de moneda (¥, £, $ etc.) especificado en la configuración
regional de Windows.
Auto numeración:
No puede especificar o cambiar los datos de este tipo de campo en cualquier
momento. Access incrementa los valores de un campo Auto numeración cuando se
agrega un nuevo registro a una tabla.
59 | P á g i n a
profesor puede vigilar o controlar un examen, pero que sólo puede impartir clases de
una única asignatura.
Tras definir las tablas y hacer las relaciones como se indicaban en el post Tipo de
relaciones, hemos obtenido un diagrama similar al siguiente:
Si las tablas están correctamente definidas y enlazadas, el siguiente paso natural es,
precisamente, escribir la información que se debe almacenar, operación que
podemos realizar directamente en la tabla.
Sin embargo, para no tener ningún problema deberemos comenzar SIEMPRE por las
tablas auxiliares, que en este caso sólo hay una, (Asignaturas), luego seguir por
las dependientes (Alumnos y Profesores), hasta llegar a la principal, Exámenes.
60 | P á g i n a
Vamos a comenzar con Asignaturas, por lo que simplemente hacemos un doble clic
sobre el nombre de la tabla, para abrir la vista Hoja de datos.
Como la clave principal de la tabla, el campo casig, se ha definido como de tipo Auto
numeración, no es necesario indicar el código de la asignatura, sino que simplemente
pulsaremos el tabulador y pasaremos a escribir las distintas denominaciones. El
resultado final puede ser parecido al de la figura:
Una vez añadidos los datos en la tabla auxiliar, podemos introducir los
correspondientes a las tablas Alumnos y Profesores.
El problema se plantea, por ejemplo, cuando tenemos que asignar una asignatura a
un profesor; ya que, a pesar de haber relacionado las dos tablas, la tarea no será
fácil, porque si no indicamos nada en contra, DEBEREMOS ESCRIBIR directamente
el código de la materia que imparte, ya que no aparecerá ninguna lista para elegirlo.
En este caso, la situación ideal para el campo casi es que aparezca un desplegable
que ofrezca al usuario directamente los datos de la tabla Asignaturas
61 | P á g i n a
5.2.5 Editar Registros En Access
A veces, puede que desee realizar cambios en un registro existente, por ejemplo,
para cambiar una dirección. Para editar un registro existente, abra un formulario o
una tabla, vaya al registro que desee cambiar y, a continuación, realice los cambios.
Abrir una tabla o un formulario
Paso 1:
Selecciona la pestaña Inicio y ubica el grupo Buscar.
Paso 2:
El cuadro de diálogo Buscar y reemplazar, aparecerá. Selecciona la
opción Reemplazar.
Paso 3:
Haz clic en la caja Buscar y escribe el término que deseas buscar.
62 | P á g i n a
Paso 4:
Haz clic en la caja Reemplazar por y escribe la palabra por la cual deseas
reemplazar el término original.
Paso 5:
Haz clic en la flecha desplegable de la opción Buscar en: para seleccionar el área
en el que deseas realizar la búsqueda. Allí encontrarás dos opciones principales:
Campo actual: Selecciónalo si deseas limitar tu búsqueda al campo seleccionado
recientemente.
Documento actual: Selecciónalo si deseas buscar en toda la tabla.
Paso 6:
Haz clic en la flecha desplegable de la opción Coincidir, para seleccionar el punto
en el cual deseas que los resultados coincidan con tu búsqueda.
Cualquier parte del campo: Para buscar tu término de búsqueda en cualquier parte
de la celda.
63 | P á g i n a
Hacer coincidir todo el campo: Para buscar solo las celdas que coinciden
exactamente con tu término de búsqueda.
Comienzo del campo: Para buscar sólo las celdas que empiezan con tu término de
búsqueda.
Paso 7: Haz clic en el botón Buscar siguiente, para buscar la siguiente aparición de
tu término de búsqueda.
64 | P á g i n a
Paso 8: Haz clic en Reemplazar para sustituir la palabra original con la nueva.
Opción 2:
En la barra de navegación de registros, ubicada en la parte inferior de la ventana,
haz clic en el botón Nuevo registro.
65 | P á g i n a
Opción 3:
Simplemente comienza a escribir en la fila bajo el último registro agregado.
66 | P á g i n a
Principales tipos de consulta:
Seleccionar: Es utilizada para recuperar datos de una tabla o hacer cálculos.
Acción: Agregar, cambiar o eliminar datos. Cada tarea tiene un tipo específico de
consulta de acciones. Las consultas de acciones no están disponibles en las
aplicaciones de Access.
Consultas Simples en Acces
¿Qué es una consulta y cómo utilizarla?
Las consultas son una forma de buscar y recopilar información de una o más
tablas para conseguir información detallada de una base de datos. Al crear una
consulta en Access 2010, defines condiciones específicas de búsqueda para
encontrar, exactamente, la información que deseas.
¿Cómo se utilizan las consultas?
Las consultas son mucho más que filtros o búsquedas simples que puedes usar para
encontrar los datos de una tabla. Con estas puedes acceder a información de
múltiples tablas. Por ejemplo, puedes utilizar una búsqueda en la tabla de clientes
para encontrar la dirección de uno de ellos o un filtro en la tabla vehículos para ver
cuál es el carro que corresponde a determinado cliente. Debes tener en cuenta que
una consulta bien diseñada te puede dar información que no podrías averiguar
examinado cada uno de los registros de la tabla de datos.
Diseño de consultas
vistas de consultas
67 | P á g i n a
Clic en el botón Ver para que puedas acceder a la lista desplegable que te mostrará
las diferentes opciones de vista para las consultas.
Panel de relación de objeto
Todas las tablas que decidas incluir en una consulta aparecerán como pequeñas
ventanas en la parte superior de la pantalla, este espacio es conocido con el nombre
de Panel de relación de objeto. Cada ventana contiene una lista con el nombre de
todos los campos disponibles en tabla que seleccionaste.
68 | P á g i n a
Tablas de criterio de búsqueda
Consultas Múltiples (Acces)
Las consultas son los objetos de una base de datos que permite recuperar datos de
una tabla, modificarlos e incluso almacenar resultados en otra tabla.
Pasos para crear una consulta en múltiples tablas
Paso 1:
Selecciona la pestaña Crear y haz clic en el comando Diseño de consulta.
Paso 2:
Se abrirá el cuadro de diálogo Mostrar tabla. Allí selecciona las tablas que van a hacer
parte de la consulta. Luego, haz clic en el botón Agregar.
Paso 3:
Las tablas aparecerán en forma de pequeñas ventanas en el panel de relación de
objeto, unidos por una línea de combinación. Haz doble clic en la sección media de
esta línea para que puedas configurar la dirección en la que va la relación de las
tablas, es decir, de derecha a izquierda o viceversa.
Paso 4:
Aparecerá el cuadro de diálogo Propiedades de combinación. Allí, selecciona la
dirección en la que irá la línea de unión de las dos tablas. Puedes hacer clic en la
opción 2 para que la unión quede de izquierda a derecha, es decir, que todos los
clientes que cumplieron con los criterios de ubicación, se incluirían en los resultados.
Si haces clic en la opción 3 la unión queda de derecha a izquierda, es decir, que con
esta opción vamos a trabajar con las personas que han visitado el taller en el mes de
diciembre.
69 | P á g i n a
Paso 5:
En las ventanas, haz doble clic en los nombres de los campos que deseas que
aparezcan en los resultados de la consulta. Estos se añaden en la tabla que se
encuentra en la parte inferior de la pantalla.
70 | P á g i n a
Paso 6:
Establece los criterios de búsqueda que llevará cada campo. Recuerda que los debes
escribir en la fila criterio justo debajo del campo en el que deseas que vaya.
Paso 7:
Después de haber establecido los criterios de búsqueda, haz clic en el botón Ejecutar
ubicado en el grupo Resultados de la ficha Herramientas de consulta.
Paso 8:
Los resultados de la consulta se mostrarán en una hoja de datos, parecida a una
tabla. Si deseas guardar la consulta, haz clic en el comando Guardar que se
encuentra en la barra de herramientas de acceso rápido, ponle un nombre y haz clic
en el botón Aceptar.
71 | P á g i n a
Vamos a utilizar principalmente dos tipos de consultas:
Consultas de selección:
Permiten seleccionar registros de una o más tablas. Son las que se ejecutan de
manera predeterminada por Access.
Consultas de acción:
Permiten modificar datos de una o más tabla. Están diseñadas para agregar,
modificar o actualizar los datos contenidos en las tablas, o también podremos crear
nuevas tablas con los resultados obtenidos en la consulta. Las consultas de acción
se indican en Access mediante la adición del signo de admiración (¡) delante del
nombre de la consulta. Es importante señalar que las modificaciones efectuadas en
las tablas por las consultas de acción no se pueden deshacer con la orden Deshacer
del menú de Edición. Las consultas de acción de clasifican en:
Consultas de Actualización.
Permiten añadir datos, reemplazar los datos existentes o eliminar algunos registros.
Para deshacer los cambios realizados deberemos ejecutar otra consulta que invierta
los términos.
Consultas de Eliminación.
Permiten eliminar algunos o todos los registros que cumplen unas determinadas
condiciones. Una consulta de eliminación solo permite eliminar registros completos,
no los datos de campos específicos.
Creación de una consulta.
Abriremos la consulta. Teclearemos el botón Nuevo de la ficha consulta de la ventana
Base de datos.
Seleccionaremos la opción Vista diseño.
Agregaremos las tablas que contengan la información que deseamos gestionar.
Agregaremos los campos de las tablas seleccionadas.
Si no estuvieran definidas, estableceríamos las relaciones entre las tablas agregadas.
Estableceríamos los criterios o condiciones de selección de registros, el orden de
clasificación de los registros y las condiciones de visualización de los campos.
Guardar la consulta con el nombre deseado.
72 | P á g i n a
Capítulo 6
Sistemas Operativos
6.1¿Qué significa?
El Sistema Operativo (SO) es el programa o software básico de un ordenador. Es una
plataforma que facilita la interacción entre el usuario y los demás programas del
ordenador y los dispositivos de hardware. Las funciones básicas del Sistema
Operativo son administrar los recursos del ordenador, coordinar el hardware y
organizar los archivos y directorios de su sistema. Los Sistemas Operativos más
utilizados son Windows, Linux y Mac. Tanto Windows como Mac vienen con un
navegador integrado, Windows el navegador Internet Explorer y Mac Safari.
6.2 Historia de los sistemas operativos
La informática tal y como se le conoce hoy día, surgió a raíz de la II Guerra Mundial,
en la década de los 40. En esos años no existía siquiera el concepto de "Sistema
Operativo" y los programadores interactuaban directamente con el hardware de las
computadoras trabajando en lenguaje máquina (esto es, en binario, programando
únicamente con 0s y 1s). El concepto de Sistema Operativo surge en la década de
los 50. El primer Sistema Operativo de la historia fue creado en 1956 para un
ordenador IBM 704, y básicamente lo único que hacía era comenzar la ejecución de
un programa cuando el anterior terminaba. En los años 60 se produce una revolución
en el campo de los Sistemas Operativos. Aparecen conceptos como sistema
multitarea, sistema multiusuario, sistema multiprocesadores y sistema en tiempo
real. Es en esta década cuando aparece UNIX, la base de la gran mayoría de los
Sistemas Operativos que existen hoy en día.
En los años 70 se produce un boom en cuestión de ordenadores personales,
acercando estos al público general de manera impensable hasta entonces.
Esto hace que se multiplique el desarrollo, creándose el lenguaje de programación
C (diseñado específicamente para reescribir por completo el código UNIX).
Como consecuencia de este crecimiento exponencial de usuarios, la gran mayoría
de ellos sin ningún conocimiento sobre lenguajes de bajo o alto nivel, hizo que, en
los años 80, la prioridad a la hora de diseñar un sistema operativo fuese la facilidad
de uso, surgiendo así las primeras interfaces de usuario. En los 80 nacieron sistemas
como MacOS, MS-DOS, Windows.
73 | P á g i n a
En la década de los 90 hace su aparición Linux, publicándose la primera versión del
74 | P á g i n a
La Primera Generación (1945 - 1955): Tubos de vacío y tableros enchufables.
Después de los esfuerzos frustrados de Babbage, se progresó poco en la
construcción de computadoras digitales hasta la segunda guerra mundial, alrededor
de la mitad de la década de 1940, Howard Aiken en Hardvard, Jon Von Neumann en
el Instituto de Estudios Avanzados en Princeton, J. Presper Ecker y William Mauchley
en la Universidad de Pennsylvania y Konrad Zuse en Alemania, entre otros, todos
obtuvieron resultados óptimos en la construcción de máquinas de cálculo mediante
el uso de tubos de vacío.
Toda la programación se realizó en lenguaje de máquina absoluto. Los lenguajes de
programación se desconocían (todavía no exista el lenguaje ensamblador). Los
primeros sistemas operativos eran extraños. El modo usual de operación consista en
que el programador firmaba para tener acceso a un bloque de tiempo en la hoja de
registro situada en la pared, después bajaba al cuarto de máquinas, insertaba su
tablero enchufable en la computadora y pasaba las siguientes horas esperando que
ninguno de los 20,000 tubos de vacío se fundiera durante la ejecución de su
programa.
Queda claro que estos especialistas sólo conocían el tipo específico de computadora
en la que trabajaban y resultaba muy difícil expandir sus resultados a medios
diferentes a esos. Al pasar el tiempo, el hardware y el software se hicieron más
estándares y la ejecución de los programas requería menos pasos. Se desarrollaron
lenguajes que expresaban, en un código más cercano al lenguaje humano, las
instrucciones a ejecutar, surgieron los compiladores y ensambladores para traducir a
código binario esos lenguajes de nivel más alto.
Se pensó que era mejor escribir el código para el manejo de cada tipo de equipo y
tenerlo listo para ejecutarlo cuando se necesitara manipular algo hacia o desde él,
desechando la vieja idea de escribir (una y otra vez) el código para el manejo del
equipo en la propia aplicación. Se hicieron bibliotecas de funciones que hicieran esas
tareas, surgiendo, de esta forma, los primeros manipuladores de equipos (device
drivers). Al final de esta época comenzaron a tomar vida los sistemas operativos más
rudimentarios en la forma de creación de macros, subrutinas estándar, programas
utilitarios y manejadores de equipos.
75 | P á g i n a
La Figura 1 muestra como era el ciclo de programación en esta etapa
1) Dos: El famoso DOS, que quiere decir Disk Operating System (sistema operativo
de disco), es más conocido por los nombres de PC-DOS y MS-DOS. MS-DOS fue
hecho por la compañía de software Microsoft y es en esencia el mismo SO (sistema
operativo) que el PC-DOS.
La razón de su continua popularidad se debe al aplastante volumen de software
disponible y a la base instalada de computadoras con procesador Intel.
Cuando Intel liberó el 80286, DOS se hizo tan popular y firme en el mercado que DOS
y las aplicaciones DOS representaron la mayoría del mercado de software para PC.
En aquel tiempo, la compatibilidad IBM, fue una necesidad para que los productos
tuvieran éxito, y la "compatibilidad IBM" significaba computadoras que corrieran DOS
tan bien como las computadoras IBM lo hacían.
Aún con los nuevos sistemas operativos que han salido al mercado, todavía el DOS
es un sólido contendiente en la guerra de los SO.
2) Windows 3.1: Microsoft tomo una decisión, hacer un sistema operativo que tuviera
una interfaz gráfica amigable para el usuario, y como resultado obtuvo Windows. Este
sistema muestra íconos en la pantalla que representan diferentes archivos o
programas, a los cuales se puede accesar al darles doble click con el puntero del
mouse. Todas las aplicaciones elaboradas para Windows se parecen, por lo que es
muy fácil aprender a usar nuevo software una vez aprendido las bases.
3) Windows 95: En 1995, Microsoft introdujo una nueva y mejorada versión del
Windows 3.1. Las mejoras de este SO incluyen soporte multitareas y arquitectura de
32 bits, permitiendo así correr mejores aplicaciones para mejorar la eficacia del
trabajo.
76 | P á g i n a
4) Windows NT: Esta versión de Windows se especializa en las redes y servidores.
Con este SO se puede interactuar de forma eficaz entre dos o más computadoras.
5) OS/2: Este SO fue hecho por IBM. Tiene soporte de 32 bits y su interfaz es muy
buena. El problema que presenta este sistema operativo es que no se le ha dad0 el
apoyo que se merece en cuanto a aplicaciones se refiere. Es decir, no se han creado
muchas aplicaciones que aprovechen las características del SO, ya que la mayoría
del mercado de software ha sido monopolizado por Windows.
6) Mac OS: Las computadoras Macintosh no serían tan populares como lo son si no
tuvieran el Mac OS como sistema operativo de planta. Este sistema operativo es tan
amigable para el usuario que cualquier persona puede aprender a usarlo en muy
poco tiempo. Por otro lado, es muy bueno para organizar archivos y usarlos de
manera eficaz. Este fue creado por Apple Computer, Inc.
7) UNIX: El sistema operativo UNIX fue creado por los laboratorios Bell de AT&T en
1969 y es ahora usado como una de las bases para la supercarretera de la
información. Unix es un SO multiusuario y multitarea, que corre en diferentes
computadoras, desde supercomputadoras, Mainframes, Minicomputadoras,
computadoras personales y estaciones de trabajo. Esto quiere decir que muchos
usuarios pueden estar usando una misma computadora por medio de terminales o
usar muchas de ellas.
6.3.1 Multiprogramados
También conocido como (multitarea) el funcionamiento es de estos sistemas
operativos se basa en que el sistema podrá correr más de un programa al mismo
tiempo, este sistema hace que ocupen la misma unidad de memoria principal y que
sean ejecutados al "mismo tiempo". En general, se puede decir que un programa
está compuesto por dos partes: su representación en memoria que incluye el código
y datos del programa, y su estado de ejecución que incluye los valores almacenados
en los registros de la CPU que indican el estado actual del programa en la máquina.
77 | P á g i n a
La multiprogramación es una técnica que intenta hacer un incremento en el CPU
tratando de tener algo que el CPU siempre pueda ejecutar. En un sistema con
multiprogramación, el sistema operativo simplemente seleccionara otro programa o
trabajo y lo ejecutara.
78 | P á g i n a
Características de un Sistema Operativo de multiprogramación:
Mejora productividad del sistema y utilización de recursos.
Multiplex a recursos entre varios programas.
Generalmente soportan múltiples usuarios (multiusuarios).
Proporcionan facilidades para mantener el entorno de usuarios individuales.
Requieren validación de usuario para seguridad y protección.
Proporcionan contabilidad del uso de los recursos por parte de los usuarios.
Multitarea sin soporte multiusuario se encuentra en algunos computadores
personales o en sistemas de tiempo real.
Sistemas multiprocesadores son sistemas multitareas por definición ya que soportan
la ejecución simultánea de múltiples tareas sobre diferentes procesadores.
En general, los sistemas de multiprogramación se caracterizan por tener múltiples
programas activos compitiendo por los recursos del sistema: procesador, memoria,
dispositivos periféricos.
Ventajas:
Varios procesos en ejecución
Permite el servicio interactivo simultáneo a varios usuarios de manera eficiente
Aprovecha los tiempos que los procesos pasan esperando a que se completen sus
operaciones de E/S y por ende aumenta la eficiencia en el uso del CPU.
79 | P á g i n a
Un sistema operativo de red es una aplicación de software que proporciona un
sistema que sirve como base tanto para la funcionalidad de una computadora
individual como de múltiples computadoras dentro de una red interconectada.
Sistemas Operativos de red:
· Son aquellos sistemas que mantienen a dos o más computadoras unidas a través
de algún medio de comunicación (físico o no), con el objetivo primordial de poder
compartir los diferentes recursos y la información del sistema.
· Manejar las comunicaciones en red: Permite al usuario manejar con alta facilidad
todo lo referente a la instalación y uso de las redes de computadoras.
· Facilitar las entradas y salidas: Un Sistema Operativo debe hacerle fácil al usuario
el acceso y manejo de los dispositivos de Entrada/Salida de la computadora.
80 | P á g i n a
· Técnicas de recuperación de errores.
· Evita que otros usuarios interfieran: El Sistema Operativo evita que los usuarios
se bloqueen entre ellos, informándoles si esa aplicación está siendo ocupada por
otro usuario.
· Permite que se puedan compartir el equipo y los datos entre los usuarios.
81 | P á g i n a
Flexibilidad:
La Flexibilidad dentro de sistema operativo distribuido, describe su capacidad para
soportar cambios, actualizaciones y mejoras que le permitan irse desarrollando al
mismo ritmo de la evolución tecnológica.
Dicha capacidad es una virtud y un conflicto. Una Virtud debido a las grandes
necesidades de los sistemas operativos de mejorar después de las primeras
versiones y un conflicto que surge entre los sistemas de las cuales son dos
arquitecturas distintas del núcleo del sistema operativo.
Escalabilidad:
Un sistema operativo distribuido debería funcionar tanto para una docena de
computadoras como para mil en una sola red, el tipo de red utilizada no debe de ser
un problema ni su topología (LAN o WAN) (TOKEN RING o ETHERNET) y mucho
menos la distancia entre los equipos. Sin embargo, todo esto influye, Aunque estos
puntos serían muy deseables, pude que las soluciones válidas para unas cuantas
computadoras no sean aplicables como para mil. Del mismo modo el tipo de red
condiciona grandemente el rendimiento del sistema y puede que lo funcione para un
tipo de red requiera modificaciones para otro.
Los sistemas operativos distribuidos necesitan de grandes especificaciones para
trabajar y sobre todo de ajustes a las necesidades principales de cada red y sus
usuarios. Este concepto propone que cualquier computador debe funcionar
perfectamente como un sistema operativo distribuido, pero de la misma forma debe
de formar parte y trabajar como más equipos no importan la cantidad o los recursos
que estos le puedan proporcionar.
Sincronización:
La sincronización es un punto clave para los sistemas operativos distribuidos. Para
computadores únicos no es nada importante, pero en el caso de los recursos
compartidos de la red, la sincronización es sumamente importante.
Los sistemas operativos distribuidos tienen un reloj por cada ordenador del sistema,
con lo que es fundamental una coordinación entre todos los relojes para mostrar una
hora única. Los circuitos de cada ordenador son ligeramente diferentes, y como
consecuencia todos los relojes sufren una falta de ajustes y deben ser sincronizados
continuamente. La sincronización no es tan importante, porque se realiza a través de
mensajes por la red. Cuyo tiempo de envió pude ser variable y depender de muchos
factores como la distancia, la velocidad de transmisión y la propia estructura de la red
El Reloj:
La sincronización del reloj no tiene que ser exacta y bastara con que sea
aproximadamente igual en todos los ordenadores. Hay que tener en cuenta eso si. El
modo de actualizar la hora de un reloj es particular. Es fundamenta no retrasar nunca
82 | P á g i n a
la hora, aunque el reloj adelante. En vez de eso, hay que atrasar la actualizaron del
reloj. Frenarlo. Hasta que alcance la hora aproximada. Existen diferentes algoritmos
de actualizan de la hora.
El Reloj es únicamente uno de los tantos problemas de sincronización que existen en
los sistemas operativos distribuidos.
Capítulo 7
Sistemas de Archivos
83 | P á g i n a
Para indicar donde se encuentra un archivo, se usa una cadena de texto llamada
“ruta”. Su aspecto cambia un poco de sistema a sistema: su estructura suele indicar
las carpetas y subcarpetas que hay que recorrer para llegar al archivo, terminando
con el nombre del mismo.
Las rutas no nos sirven solamente a nosotros como usuarios, sino también al sistema
operativo para saber dónde.
Ejemplo:
Veamos un ejemplo de ruta en dos sistemas.
En Windows:
si yo tuviese una carpeta en el disco duro llamada “MP3”, y en ella hubiese una
carpeta llamada “defcondos”, y dentro de esta carpeta estuviese el archivo
“pocopan.mp3”, la ruta sería esta:
C:’MP3’defcondos’pocopan.mp3
En GNU/Linux:
la ruta a la canción podría ser así:
/home/grissom/mp3/defcondos/pocopan.mp3
En este caso se indica que hay que entrar a la carpeta “home” para después abrir la
carpeta “grissom” que está ahí. En ella está la carpeta “MP3”, donde hay otra carpeta
que se llama “defcondos”, dentro de la cual está el archivo “pocopan.mp3”.
Fíjate como las carpetas están separadas entre sí por diferentes barras según cada
sistema (“’” en Windows y “/” en GNU/Linux. Este tipo de organización se llama
“jerárquica”.
Cuando usamos una interfaz gráfica de usuario, las carpetas se muestran en un
esquema llamado “vista en árbol”. Al directorio o carpeta principal, desde donde
parten las demás, se le suele llamar “directorio raíz”. En Windows es “C:’” y en
GNU/Linux es “/”.
Se encuentran ciertos archivos que uno u otro programa puede necesitar para
funcionar
Clasificación: de disco de red y de propósito especial
84 | P á g i n a
Sistemas de archivos de disco:
Un sistema de archivo de disco está diseñado para el almacenamiento de archivos
en una unidad de disco duro, que puede estar conectada directa o indirectamente a
la computadora.
podemos ver que en el disco duro está almacenado una carpeta en archivo y adentro de ahí
la carpeta “Mi Carpeta” y dentro de ahí documentos
podemos ver que hay un disco duro compartido, conectados un servidor que usa ves está
conectado por varias computadoras para compartir información.
85 | P á g i n a
Sistemas de archivos de propósito especial
Los sistemas de archivos de propósito especial (special purpose file System) son aquellos
tipos de sistemas de archivos que no son ni sistemas de archivos de disco, ni sistemas de
archivos de red.
Estos eritemas de archivos pude almacenar más de un archivo y en cualquier multimedia en una
carpeta.
7 FAT:
El sistema de archivos FAT fue creado por Bill Gates y Marc McDonald en 1977.
Existen las versiones FAT12 del año 1977, FAT16 del año 1988 y FAT32 del año
1996.
Fue creado para lograr un sistema de archivos eficiente y seguro y está basado en el
sistema de archivos HPFS de IBM/Microsoft usado en el sistema operativo OS/2.
También tiene características del filesystem HFS diseñado por Apple.
NTFS permite definir el tamaño del clúster de forma independiente al tamaño de la
partición. El tamaño mínimo del bloque es de 512 bytes. Este sistema también admite
compresión nativa de archivos y encriptación.
Es un sistema ideal para particiones de gran tamaño, pudiendo manejar discos de
hasta 2 terabytes.
Windows NT, 2000, 2003, XP y Vista soportan el sistema NTFS.
9 EXT2:
Fue diseñado originalmente por Rémy Card y fue el sistema de archivos por defecto
de los Linux Red Hat, Fedora Core y Debian, luego reemplazado por el ext3.
87 | P á g i n a
Este tipo de sistema de archivos posee una tabla similar al FAT de tamaño fijo.
10 EXT3:
11 EXT4:
Capítulo 8
Linux
88 | P á g i n a
8.1 Historia de Linux
Predecesores
Comenzó mucho antes de lo que la mayoría de gente piensa, ya que, en 1969, Ken
Thompson, de AT&T (compaña estadounidense de telecomunicaciones) Bell
Laboratories, desarrollo el sistema operativo Unix, adaptándolo a las necesidades de
un entorno de investigación si saber la importancia que llegaría a tener su trabajo. Un
año después Dennis Ritchie (creador del lenguaje de programación C), colaboró con
Ken Thompson para pasar el código del sistema Unix a C. Lo que convirtió a Unix en
un sistema operativo transportable.
Unix creció gradualmente hasta convertirse en un producto de software estándar,
distribuido por muchos vendedores tales como Novell e IBM. Sus primeras versiones
fueron distribuidas de forma gratuita a los departamentos científicos de informática
de muchas universidades de renombre.
En 1972, los laboratorios Bell empezaron a emitir versiones oficiales de Unix y a
otorgar licencias del sistema a distintos usuarios.
En 1975, Berkeley lanzó su propia versión de Unix (BSD). Esta versión de Unix se
convirtió en la principal competidora de la versión de los laboratorios Bell de AT&T,
pero no era la única ya que, en 1980, Microsoft desarrolló una versión de Unix para
PC llamada Xenix. En 1991 esta organización desarrolló el SistemaV versión 4, que
incorporaba casi todas las características que se encuentran en el SistemaV versión
3, BSD versión4.3, SunOS y Xenix. Como respuesta a esta nueva versión, varias
compañías, tales como IBM y Hewlett Packard, establecieron la Open Software
Fundation (OSF) para crear su propia versión estándar de Unix.
LINUX:
Era el año de 1991 y Linus Trovals, que en aquel entonces era un estudiante de
informática de la Universidad de Helsinki, empezó a programar las primeras líneas
de código de un sistema operativo (finalmente llamado Linux) como una afición y sin
poderse imaginar la gran repercusión que traería. Hubo una primera versión no oficial
de Linux 0.01, pero esta solo incluía el comienzo del núcleo, estaba escrita en
lenguaje ensamblador y asumía que uno tenía acceso a un sistema Minix para su
compilación.
El 5 de octubre de 1991, Linus anuncio la primera versión oficial de Linux (versión
0.02). Con esta versión Linus pudo ejecutar Bash (GNU Bourne Again Shell) y gcc
(el compilador GNU de C). Desde aquel entonces se han hecho muchísimas
versiones con ayuda de programadores de todo el mundo.
Linux es un sistema operativo compatible con Unix, sus dos características
principales y que los diferencian del resto de los sistemas operativos que
encontramos en el mercado son:
89 | P á g i n a
Es software libre, esto significa que no tenemos que pagar por el uso del mismo.
El sistema viene acompañado del código fuente (el sistema lo forma el núcleo del
sistema (kernel) más un gran número de librerías que hacen posible su utilización).
Las plataformas en las que en un principio se puede utilizar Linux son: Pentium,
Pentium Pro, Pentium II/III/IV, Amiga y Atari, también existen versiones para su
utilización en otras plataformas, como Alpha, ARM, MIPS, PowePC y SPARC. En los
últimos tiempos, ciertas casas de software comercial han empezado a distribuir sus
productos para Linux y la presencia del mismo en empresas aumenta rápidamente
por la excelente relación calidad-precio que se consigue con Linux.
90 | P á g i n a
Instalar Ubuntu:
Ahora ya sólo queda un último paso, instalar Ubuntu. Para ello tenemos que meter el
USB en nuestro ordenador cuando este esté apagado. Entonces lo encenderemos y
pulsaremos al botón predeterminado de nuestros equipos para que nos salga el
diálogo que nos permita elegir desde qué unidad iniciar.
Cuando se ejecute el USB lo primero que tendremos que hacer es elegir nuestro
idioma y pulsar sobre Instalar Ubuntu. A continuación, nos aparecerá la opción de
configurar la WiFi. Esto es conveniente hacerlo para que durante el proceso de
instalación se actualice el sistema, pero si tenemos prisa y preferimos hacer eso
después no pasará nada si no lo configuramos desde un principio.
Después de pasar por otra pantalla en la que podemos elegir si descargar
actualizaciones o software de terceros mientras se realiza la descarga, nos aparecerá
por fin esa en la que se nos da opciones para instalar Ubuntu. Aquí lo normal es que
el sistema te reconozca Windows y nos aparezca la opción de instalar junto a
Windows 7. Pero también si no es así la cosa se complicará un pelín, y tendremos
que elegir la opción Más opciones y hacer click en Instalar ahora.
91 | P á g i n a
Creando las Particiones:
Haciendo esto el sistema nos reconocerá el espacio libre de la partición que hemos
realizado antes, y tendremos que realizar nosotros de forma manual las particiones
del sistema. Esto se puede hacer de varias maneras, pero nosotros lo haremos
separando la carpeta raíz / y /home, que es como Mis Documentos, para que si hay
que reparar el sistema operativo no perdamos nuestros archivos personales por el
camino.
Empezaremos creando la partición de raíz, a la que no hace falta que le pongáis
demasiadas gigas al encargarse sólo de los archivos básicos. Para configurarla
tendremos que hacer click sobre espacio libre en la tabla de particiones, y en las dos
primeras opciones elegir Primaria y Al principio del espacio, para después utilizarla
como sistema de ficheros ext4 y elegir / como punto de montaje.
92 | P á g i n a
A continuación, crearemos otra partición lógica que también esté montada al principio
del espacio, y en la que además de utilizarla como sistema de ficheros ext4 la
montaremos en /home. Esta partición será la que tenga el peso de nuestros
documentos, fotografías y música, por lo que es recomendable que le pongáis el
máximo espacio posible.
Por último, si nuestro sistema tiene poca memoria RAM también podremos crear otra
partición que en vez de sistema de ficheros ext4 sea un área de intercambio que se
encargue de apoyar a la RAM cuando esta no sea necesario. A esta tercera partición
tendríamos que dedicarle el doble de vuestra RAM, unos 2 o 4 GB de memoria como
mucho, más o menos unos 2.000 o 4.000 MB en la tabla.
Y ya está, a continuación, sólo habrá que seguir adelante con la instalación e ir
configurando nuestra contraseña y nombre de usuario. Si todo ha ido bien, la próxima
vez que iniciemos el equipo nos aparecerá un menú en el que seleccionar el sistema
operativo que queremos utilizar, una buena manera de poder utilizar dos o más en
un sólo ordenador.
Procesadores de Texto
OpenOffice.org:
Creado por Sun Microsystems, Open-Office.org combina una serie de aplicaciones
de productividad general en un conjunto de aplicaciones, que incluye un procesador
de textos llamado Writer.
WordPerfect:
WordPerfect es una aplicación totalmente funcional, que combina una serie de funciones
básicas de procesamiento de textos para crear documentos multimedia.
LaTeX:
Es un procesador de palabra atractivo para Linux porque su código abierto puede ser
personalizado por el usuario para sus necesidades particulares.
93 | P á g i n a
Visores de imagen
GThumb:
Viewnior:
XnView:
puede convertir las imágenes a otros formatos, e incluye opciones de edición para
realizar pequeñas mejoras y aplicar algunos filtros básicos a las imágenes. Se puede
descargar en un ejecutable para convertirla en aplicación portátil, y te permitirá crear
y guardar presentaciones.
94 | P á g i n a
ISO que nos hemos bajado anteriormente y en el Paso 3 seleccionamos la letra de
la unidad USB y pinchamos en “Create”:
95 | P á g i n a
MP3) pero esta opción ya queda a la elección del usuario, que, dependiendo de su
filosofía, elegirá una opción u otra. Después de elegir las opciones que más nos
interesen, pulsamos sobre “Continuar”.
96 | P á g i n a
Como supuestamente hemos instalado Windows antes de instalar Linux,
deberíamos tener un espacio sin particionar, por lo que elegiremos la opción de
“Instalar Ubuntu junto a Microsoft Windows”. El resto de opciones son para usuarios
avanzados. Una vez seleccionada la opción deseada, pulsamos sobre “Continuar”.
Unavez finalizado todos estos pasos ya tenemos instalado Ubuntu instalado junto
a Windows y en el siguiente arranque, antes de iniciar cualquier sistema operativo,
nos saldrá un menú para que seleccionemos el sistema operativo con el que
queremos arrancar el portátil.
97 | P á g i n a
8.5 Bash
es un programa informático, cuya función consiste en interpretar órdenes, y
un lenguaje de consola. Es una Shell de Unix compatible con POSIX y el intérprete
de comandos por defecto en la mayoría de las distribuciones GNU/Linux, además
de Mac OS. También se ha llevado a otros sistemas como Windows y Android.
Hay varios tipos de shell, pero el que viene normalmente por defecto en las distintas
distribuciones de GNU/Linux es el bash.
98 | P á g i n a
infecté con virus ---la configuración general del sistema sólo puede cambiarla el
administrador del sistema, cuyo login es root.
Como usuario de Linux, usted tendrá un login, un grupo principal, un espacio y una
clave. Para evitar mala utilización de los recursos por parte de otra persona a nombre
suyo, su clave de acceso debe ser secreta. Además, por seguridad, es recomendable
que cada usuario cambie su clave de acceso al menos cada dos meses, empleando
el comando passwd desde un intérprete de comandos.
Puede entrar a una sesión con su login y clave bien desde un entorno gráfico (con un
programa llamado gdm) o bien desde una interfaz tipo texto. Su sistema Linux puede
brindarle simultáneamente varias interfaces tipo texto ---llamadas consolas virtuales-
-- junto con el entorno gráfico. Desde el entorno gráfico puede pasar a una consola
virtual presionando Ctrl-Alt-F1 [7], y desde una consola virtual puede retornar a la
sesión gráfica con Ctrl-Alt-F7.
Cada usuario va a pertenecer como mínimo a un grupo. Los grupos sirven para tener
una política de acceso a archivos en la cual podremos dar acceso a los usuarios de
99 | P á g i n a
un determinado grupo. De esta manera, quien no pertenezca a dicho grupo, no tendrá
acceso.
Tipos de permisos
Lectura:
Cuando un usuario tiene permiso de lectura de un archivo significa que puede leerlo
o visualizarlo, bien sea con una aplicación o mediante comandos.
Escritura:
Cuando un usuario tiene permiso de escritura sobre un archivo significa que puede
modificar su contenido, e incluso borrarlo. También le da derecho a cambiar los
permisos del archivo mediante comandos para cambiar su propietario y el grupo del
propietario.
Ejecución:
Cuando un usuario tiene permiso de ejecución de un archivo significa que puede
ejecutarlo. Si el usuario no dispone del permiso no podrá ejecutarlo.
Los únicos archivos ejecutables son las aplicaciones y los archivos comando(Scripts).
Capítulo 9
100 | P á g i n a
Uno de los programas de virtualización más populares y sencillos de utilizar es Virtual
Box. Aunque existen muchos otros, es fácil de usar, y está disponible para Windows,
OS X, y Linux.
El proceso es el mismo sea cual sea el sistema desde el cual se esté creando la
máquina virtual.
1) Presionar el botón Nueva y luego elige un nombre para tu máquina, el tipo de
sistema operativo y la versión del mismo.
3) Crea un disco duro virtual: como toda computadora se necesitará un disco duro,
este, aunque sea virtual obtendrá su espacio directamente en nuestro disco duro
físico.
4) Elegir el tipo de disco duro virtual: estos pueden ser de varios tipos, pero elegiremos
VDI (imagen de disco de Virtual Box)
6) Elegir la ubicación y el tamaño del disco duro virtual: Seleccionamos una ruta dentro
de nuestro sistema para guardar el archivo VDI. Se puede agregar a Mis
Documentos y se le asigna 12GB, presionamos crear y ya tenemos nuestra máquina
virtual lista.
Ahora tenemos una máquina virtual, pero esta no tiene un sistema operativo, aunque
las configuraciones básicas se aplican automáticamente, probablemente sea
necesario asignarle un dispositivo de arranque para poder instalar nuestro sistema
operativo. Lo único que necesitamos es e, archivo .ISO del sistema guardado en
nuestro ordenador o en algún medio extraíble.
7) Si ya se tiene un CD o DVD con el sistema que se desea instalar, la maquina lo
detecta automáticamente y bootea desde el, así se pueden saltar el paso siguiente.
101 | P á g i n a
agregamos un controlador IDE o SATA nuevo. En la opción Atributos a la derecha
apretamos el botón con forma de CD y seleccionamos nuestro archivo .ISO,
aceptamos y ahora podemos iniciar nuestra máquina virtual.
Solo quedaría el instalar el sistema operativo de la manera usual y ya podremos
comenzar a usar nuestra máquina.
· Pulse F8 cuando aparezca el indicador Press F8 for BBS POPUP (Pulse F8 para
BBS POPUP) en la pantalla BIOS POST (POST del BIOS) (véase la Figura 5–1).
102 | P á g i n a
2. Seleccione la unidad de DVD/CD-ROM o la imagen del CD desde el menú del
dispositivo de inicio y pulse Intro.
Si aparece el mensaje Press any key to boot from CD (Pulse cualquier tecla para
iniciar el sistema desde el CD), pulse cualquier letra.
3. Siga las indicaciones del asistente hasta que aparezca la página sobre el tipo de
instalación (véase la Figura 5–3), y seleccione Custom (advanced)
(Personalizada - avanzada).
103 | P á g i n a
4. Cuando se le pregunte dónde quiere instalar el sistema operativo Windows, haga
clic en la opción Load Driver (Cargar controlador) tal como se muestra en
la Figura 5–4.
Figura 5–4 Ejemplo de la página que le pregunta dónde se debe instalar Windows
5. En la página de carga del controlador (véase la Figura 5–5), haga clic en OK.
104 | P á g i n a
Figura 5–5 Explorar los medios de controladores
6. Haga clic sobre el botón Browse (Explorar) y navegue hasta la carpeta de los
medios de controladores (véase la Figura 5–6).
105 | P á g i n a
7. Seleccione el controlador de almacenamiento masivo adecuado (la versión de 32 o
64 bits) y haga clic en OK:
o Controlador Intel ICH10 SATA AHCI para SATA.
o Controlador Intel ICH10 SATA RAID para RAID.
o Adaptador LSI, serie SAS 3000, 4 puertos con 1064E para HBA de Sun StorageTek
opcional.
106 | P á g i n a
o En el caso de que sí desee reemplazar la información de partición predeterminada
de Windows, haga clic en la opción Driver Options (advanced) (Opciones de
controlador - avanzadas) y continúe con el siguiente paso.
Precaución –
Si formatea o vuelve a particionar una partición preexistente se destruirán todos los datos de la
partición.
10. En la página en la que se pregunta dónde desea instalar Windows con opciones
de controladores (véase la Figura 5–8), haga lo siguiente:
107 | P á g i n a
11. Empieza la instalación de Windows.
Capítulo 10
Que son las tecnologías de la información
108 | P á g i n a
10.1 Internet y Sus Servicios
Con todos estos servicios mencionados, los cuales obviamente son una pequeña
porción de la cantidad que encontramos hoy en día en Internet, se puede asegurar
que esta forma de comunicación nos asegura una llegada a lo que buscamos. Y para
simplificarnos más las cosas encontramos la diversidad de recursos que no solo
simplifican, sino que hacen más rápida la movilización por la red.
Correo Electrónico: Sirve para enviar y recibir mensajes a otros usuarios, y por eso
no hay nunca dos nombres iguales. La primera parte de una dirección identifica
habitualmente a la persona y la segunda a la empresa u organización para la que
trabaja, o al proveedor de Internet a través del que recibe la información. Por este
medio se pueden enviar texto, gráficos, hojas de cálculo, algunos programas
ejecutables (dependiendo de la política del proveedor y del espacio que este le dé
para su correo), etc.
WWW (world wide web): Se trata de un sistema de distribución de información tipo
revista. En la Red quedan almacenadas lo que se llaman Páginas Web, que no son
más que páginas de texto con gráficos o fotos. Aquellos que se conecten a Internet
pueden pedir acceder a dichas páginas y acto seguido éstas aparecen en la pantalla
de su ordenador. Este sistema de visualización de la información revolucionó el
desarrollo de Internet. A partir de la invención de la WWW, muchas personas
empezaron a conectarse a la Red desde sus domicilios, como entretenimiento.
Internet recibió un gran impulso, hasta el punto de que hoy en día casi siempre que
hablamos de Internet, nos referimos a la WWW.
Chat, Messenger: (conversación, mensajería). Son programas y sitios que permiten
que los usuarios se comuniquen mediante el teclado, micrófono o ambos en tiempo
real.
Estos felicitan muchas cosas ya que por este medio los usuarios pueden buscar
información de otro usuario que este en línea, hablar sobre el tema, conocer gente
de acuerdo a tus intereses, bajar programas, música en formato Mp3 y un millón de
cosas más.
El cual el usuario se conecta a un servidor y entra a un canal especifico donde se
encuentran otros usuarios de donde puede bajar música, gráfico y texto y los usuarios
muestran sus emociones con caracteres del teclado.
109 | P á g i n a
10.2 Intranet
Una intranet es una red informática que utiliza la tecnología del protocolo de
Internet para compartir información, sistemas operativos o servicios
de computación dentro de una organización. Suele ser interna, en vez de pública
como internet, por lo que solo los miembros de esa organización tienen acceso a ella.
110 | P á g i n a
111 | P á g i n a
Capítulo 10
Software
10.1 Concepto
El concepto de software como tal es todo aquello intangible (todo aquello que no se puede
tocar físicamente) de una computadora. Para ponerlo más claro el hardware es todo lo
tangible, lo que, si se puede tocar, que consiste por ejemplo en el teclado, case, mouse, entre
otros, a diferencia del software que son programas que nos sirven para comunicarnos con la
computadora en sí. En un lenguaje más técnico podríamos decir que el software son todas
aquellas instrucciones que nos permiten dar órdenes al ordenador para que ejecute procesos
mediante problemas que el software resuelve, por ejemplo:
Software Ejemplo
112 | P á g i n a
El sistema operativo
Es el programa básico para hacer uso del ordenador, es decir de sus programas y su
contenido en general. Es la plataforma fundamental, en tanto en el plano visual como en el
técnico, para su manejo. Cuando hablamos del software del sistema centrándonos en el
sistema operativo lo primero a lo que hacemos referencia es a la interfaz que proporciona al
usuario.
Por otra parte, como software del sistema, el sistema operativo se encarga de gestionar los
recursos que proporcionan distintos hardware como el procesador, periféricos, memoria…
También ejerce de gestor de archivos de datos, es decir, su creación, eliminación, copia,
realizando las mismas funciones con los programas. Otras de las funciones del sistema
operativo es la administración de tareas, como la ejecución de programas y cómo está
afectando su uso al rendimiento del ordenador.
Controladores de dispositivos:
O drivers se encuentran dentro de la clasificación de software del sistema. Estos
programas, proporcionados por el fabricante, se encargan de administrar los dispositivos
periféricos y elementos internos de forma concreta. La labor de este software del sistema
es imprescindible para que funcionen óptimamente permitiendo el acceso a las diversas
funcionalidades de cada modelo. Por ejemplo, para configurar adecuadamente una tarjeta
gráfica, deberemos instalar sus controladores correspondientes para comenzar a utilizarlo y
adaptarlo al uso que se le dará, y actualizarlos para que su utilidad no quede obsoleta.
113 | P á g i n a
En la imagen vemos los logos de Guadalinex que es una distribución Linux promovida por la Junta
de Andalucía para fomentar el uso del software libre en su comunidad autónoma, y los sistemas
operativos LINUX, WINDOWS Y MAC OS X.
Intérpretes
Permiten ejecutar programas. Los intérpretes ejecutan el código fuente o el código
recompilado a un lenguaje intermedio antes de la ejecución.
114 | P á g i n a
Enlazadores
En programación, cuando se desarrolla un programa, estos pueden utilizar subprogramas y,
de cada uno de ellos, su código objeto debe ser enlazado (unido) al código objeto del
programa que los utilice. Este se realiza mediante un programa llamado enlazador.
Depuradores
Utilizados para supervisar línea a línea la ejecución de un programa. El código fuente del
programa es compilado y ejecutado parcialmente esto quiere decir que no es de forma
definitiva ya que muchas veces modificamos el código, lo que permite al programador hacer
seguimiento a las instrucciones que se ejecutan en un momento dado. Permitiendo además
controlar, cambiar o asignar valores a variables del programa.
Ejemplos de Software de Programación y de Lenguajes de Programación:
Algunos ejemplos de Software de programación:
Microsoft Visual Studio .NET, Eclipse, Netbeans, WebDevStudio, Dev, C++, Blocks, Lazarus,
KDevelop, Xcode.
Algunos ejemplos de lenguajes de programación: Visual Basic .NET, C++, C#, Java,
Objective-C, Javascript, Pascal, Assembler.
Programas de productividad
Son aplicaciones cuyo propósito es facilitar, agilizar y mejorar para el usuario, la ejecución
de ciertas tareas.
115 | P á g i n a
Algunos programas de productividad
Software de base de datos: El propósito de este tipo de aplicaciones programa es organizar
y administrar los datos de manera tal que se pueda realizar análisis de información. Ejemplos
son: Microsoft Access, débase, FoxPro y Oracle.
Hojas de cálculo: Aplicaciones especialmente diseñadas para introducir, calcular, manipular
y analizar conjuntos de números.
Utorrent
Ares
Winamp
116 | P á g i n a
Capítulo 11
Ofimática
11.1 Concepto
Se llama ofimática (acrónimo de “ofi” oficina y “matica” de informática) al conjunto de técnicas
o aplicaciones y herramientas informáticas que se utilizan en funciones de oficina para
optimizar, optimizar y mejorar tareas y procedimientos relacionados. Las herramientas
ofimáticas permiten idear, crear, manipular, transmitir o almacenar la información necesaria
en una oficina.
Actualmente es fundamental que las oficinas estén conectadas a una red local o a internet.
A veces también llamado automatización de escritorios o automatización de oficinas. En
referencia a lo anterior, la estructura ofimática abarca desde computadoras, impresoras,
escáneres conectados mediante una red de área local hasta teléfonos y equipos de fax. Las
herramientas o medios ofimáticos permiten idear, elaborar, ceder, guardar todas las
informaciones necesarias en una oficina. Las herramientas de ofimática son: procesamiento
de texto, base de datos, hojas de cálculo, programas de correo electrónico, suite ofimática,
calculadora, agendas, entre otros programas. Asimismo, suite ofimática o paquete
ofimático es la compilación o el conjunto de programas informáticos que son de uso frecuente
en las oficinas con el fin de editar textos, realizar presentaciones, realizar cálculos, es decir,
facilita el proceso y permite realizar un buen trabajo. En la actualidad, el paquete ofimático
más dominante en el mercado es el de Microsoft Office que goza de sus propios formatos
para cada uno de sus programas.
¿Qué es office?
Microsoft office es una suite de oficina que abarca el mercado completo de internet y
relaciona aplicaciones de escritorio, servidores y servicios para los sistemas
operativos Microsoft Windows, Mac OS X, iOS y Android. La última versión de la suite
ofimática es el Microsoft Office 2016.
Microsoft Office posee un paquete de herramientas que permiten realizar ciertas
operaciones, ya sean textos en Word, hojas de cálculo en Excel, presentaciones de
diapositivas en PowerPoint, gestión del correo en Outlook. Microsoft Office posee un paquete
de herramientas que permiten realizar ciertas operaciones, ya sean textos en Word, hojas de
cálculo en Excel, presentaciones de diapositivas en PowerPoint, gestión del correo en
Outlook.
¿Qué es Word?
Es un software destinado a un procesamiento de texto. Fue creado por la empresa de
Microsoft y actualmente viene integrado en la suite ofimática Microsoft Word. El Word es un
programa que está prácticamente presente en todos los equipos de las personas que tengan
computadora a su disposición siendo éste un procesador bastante simple. Este programa
pertenece al Paquete Office (así como el Microsoft Excel para el manejo de planillas de
cálculo) de todas las computadoras que tengan instalado Microsoft Windows como sistema
operativo.
117 | P á g i n a
Ejemplo de Word en ofimática.
Microsoft Word permite al usuario escribir textos, monografías, artículos de una manera
ordenada, entre otros. Se puede elegir el formato de letra (según el estilo de lo que quiero
hacer) resaltando en negrita y/o cursiva y en cierto tamaño mediante comandos o íconos
visibles. A su vez, permite que se configure el tamaño de la hoja y la disposición de la misma,
ya sea vertical u horizontal.
11.2 Historia
La década de 1940
(En realidad al existir tan pocas computadoras todos podrían considerarse prototipos y cada
constructor lo hacía sin seguir ningún criterio predeterminado). Por aquel entonces no
existían los sistemas operativos, y los programadores debían interactuar con el hardware del
computador sin ayuda externa. Esto hacía que el tiempo de preparación para realizar una
tarea fuera considerable. Además, para poder utilizar la computadora debía hacerse por
turnos. Para ello, en muchas instalaciones, se rellenaba un formulario de reserva en el que
se indicaba el tiempo que el programador necesitaba para realizar su trabajo. En aquel
entonces las computadoras eran máquinas muy costosas lo que hacía que estuvieran muy
solicitadas y que sólo pudieran utilizarse en periodos breves de tiempo. Todo se hacía en
lenguaje de máquina.
118 | P á g i n a
La década de 1950
Monitor residente
Como solución para optimizar, en una misma cinta o conjunto de tarjetas, se cargaban varios
programas, de forma que se ejecutaran uno a continuación de otro sin perder apenas tiempo
en la transición.
Almacenamiento temporal
Su objetivo era disminuir el tiempo de carga de los programas, haciendo simultánea la carga
del programa o la salida de datos con la ejecución de la siguiente tarea. Para ello se utilizaban
dos técnicas, el buffering y el spooling.
La década de 1960
Multiprogramación
Tiempo compartido
En este punto tenemos un sistema que hace buen uso de la electrónica disponible, pero
adolece la falta de interactividad; para conseguirla debe convertirse en un sistema
multiusuario, en el cual existen varios usuarios con un terminal en línea, utilizando el modo
de operación de tiempo compartido. En estos sistemas los programas de los distintos
usuarios residen en memoria. Al realizar una operación de E/S los programas ceden la CPU
a otro programa, al igual que en la multiprogramación. Pero, a diferencia de ésta, cuando un
programa lleva cierto tiempo ejecutándose el sistema operativo lo detiene para que se ejecute
otra aplicación.
119 | P á g i n a
Tiempo real
Estos sistemas se usan en entornos donde se deben aceptar y procesar en tiempos muy
breves un gran número de sucesos, en su mayoría externos al ordenador. Si el sistema no
respeta las restricciones de tiempo en las que las operaciones deben entregar su resultado
se dice que ha fallado. El tiempo de respuesta a su vez debe servir para resolver el problema
o hecho planteado.
Multiprocesador
La arquitectura NUMA, donde cada procesador tiene acceso y control exclusivo a una parte
de la memoria.
La arquitectura SMP, donde todos los procesadores comparten toda la memoria. Esta última
debe lidiar con el problema de la coherencia de caché. Cada microprocesador cuenta con su
propia memoria cache local. De manera que cuando un microprocesador escribe en una
dirección de memoria, lo hace únicamente sobre su copia local en caché. Si otro
microprocesador tiene almacenada la misma dirección de memoria en su caché, resultará
que trabaja con una copia obsoleta del dato almacenado.
Además del Atlas Supervisor y el OS/360, los años 70 marcaron el inicio de UNIX, a mediados
de los 60 aparece Multics, sistema operativo multiusuario – multitarea desarrollado por los
laboratorios Bell de AT&T y Unix, convirtiéndolo en uno de los pocos SO escritos en un
lenguaje de alto nivel. En el campo de la programación lógica se dio a luz la primera
implementación de Prolog, y en la revolucionaria orientación a objetos, Smalltalk.
Además, aunque formaban una capa entre el hardware y el usuario, éste debía conocer un
complejo lenguaje de control para realizar sus trabajos. Otro de los inconvenientes es el gran
consumo de recursos que ocasionaban, debido a los grandes espacios de memoria principal
120 | P á g i n a
y secundaria ocupados, así como el tiempo de procesador consumido. Es por esto que se
intentó hacer hincapié en mejorar las técnicas ya existentes de multiprogramación y tiempo
compartido.
La década de 1980
Con la creación de los circuitos LSI -integración a gran escala-, chips que contenían miles de
transistores en un centímetro cuadrado de silicio, empezó el auge de los ordenadores
personales. En éstos se dejó un poco de lado el rendimiento y se buscó más que el sistema
operativo fuera amigable, surgiendo menús, e interfaces gráficas. Esto reducía la rapidez de
las aplicaciones, pero se volvían más prácticos y simples para los usuarios. En esta época,
siguieron utilizándose lenguajes ya existentes, como Smalltalk o C, y nacieron otros nuevos,
de los cuales se podrían destacar: C++ y Eiffel dentro del paradigma de la orientación a
objetos, y Haskell y Miranda en el campo de la programación declarativa. Un avance
importante que se estableció a mediados de la década de 1980 fue el desarrollo de redes de
computadoras personales que corrían sistemas operativos en red y sistemas operativos
distribuidos. En esta escena, dos sistemas operativos eran los mayoritarios: MS-DOS(Micro
Soft Disk Operating System), escrito por Microsoft para IBM PC y otras computadoras que
utilizaban la CPU Intel 8088 y sus sucesores, y UNIX, que dominaba en los ordenadores
personales que hacían uso del Motorola 68000.
Mac OS
121 | P á g i n a
MS-DOS
En 1981 Microsoft compró un sistema operativo llamado QDOS que, tras realizar unas pocas
modificaciones, se convirtió en la primera versión de MS-DOS
(MicroSoft Disk Operating System). A partir de aquí se sucedieron una serie de cambios
hasta llegar a la versión 7.1, versión 8 en Windows Milenium, a partir de la cual MS-DOS dejó
de existir como un componente del Sistema Operativo.
Microsoft Windows
A mediados de los años 80 se crea este sistema operativo, pero no es hasta la salida de
(Windows 95) que se le puede considerar un sistema operativo, solo era una interfaz gráfica
del (MS-DOS)en el cual se disponía de unos diskettes para correr los programas. Hoy en día
es el sistema operativo más difundido en el ámbito doméstico, aunque también hay versiones
para servidores como Windows NT. (Microsoft) ha diseñado también algunas versiones para
superordenadores, pero sin mucho éxito. Años después se hizo el (Windows 98) que era el
más eficaz de esa época.
Un año después se crearía el sistema operativo de (Windows 2000) en ese mismo año.
Después le seguiría el sistema operativo más utilizado en la actualidad, (Windows XP) y otros
sistemas operativos de esta familia especializados en las empresas. Ahora el más reciente
es (Windows 7) (Windows Seven) que salio al mercado el 22 de octubre del 2009, dejando
atrás al (Windows Vista), que tuvo innumerables criticas durante el poco tiempo que duró en
el mercado.
La década de 1990
GNU/Linux
Este sistema es una versión mejorada de Unix, basado en el estándar POSIX , un sistema
que en principio trabajaba en modo comandos. Hoy en día dispone de Ventanas, gracias a
un servidor gráfico y a gestores de ventanas como KDE, GNOME entre muchos.
Recientemente GNU/Linux dispone de un aplicativo que convierte las ventanas en un entorno
3D como por ejemplo Beryl o Compiz. Lo que permite utilizar linux de una forma visual
atractiva.
122 | P á g i n a
React OS
11.3 Herramientas
Las herramientas de ofimática son un conjunto de técnicas, aplicaciones y programas
informáticos que se utilizan en funciones de oficina para optimizar, automatizar y mejorar los
procedimientos y tareas relacionados. Esas herramientas (procesador de texto, hoja de
cálculo, presentaciones, agenda…)
suelen presentarse en paquetes de programas conocidos como “suites de oficina u
ofimática”.
En la actualidad las suites ofimáticas dominantes en el mercado son, por parte del software
pagado, Microsoft Office, la cual posee sus propios formatos cerrados de documentos para
cada uno de sus programas. Respecto al software libre, está Open Office, desarrollado por
Sun Microsystems, también con un formato para cada programa, pero de código abierto. Es
habitual que, al comprar un ordenador, este ya venga con una suite de ofimática pre instalada
en él (generalmente Microsoft Office), comprándose las licencias en el mismo momento de
adquirir el ordenador.
Microsoft Word
123 | P á g i n a
Microsoft Excel
Es un programa informático desarrollado y distribuido por Microsoft Corp. Se trata de
un software que permite realizar tareas contables y financieras gracias a sus funciones,
desarrolladas específicamente para ayudar a crear y trabajar con hojas de cálculo.
PowerPoint
PowerPoint es el nombre de uno de los programas más populares creados por Microsoft. Se
trata de un software que permite realizar presentaciones a través de diapositivas.
El programa contempla la posibilidad de utilizar texto, imágenes, música y animaciones. De
este modo, la creatividad del usuario resulta decisiva para que las presentaciones sean
atractivas y consigan mantener la atención del receptor
Access de Microsoft
Access, o Microsoft Access, es un software que permite gestionar una base de datos. El
programa forma parte de Microsoft Office, un paquete de aplicaciones que permiten realizar
tareas de oficina.
o De la misma manera, cuenta con una serie de plantillas para que el usuario
pueda hacer empleo de las mismas sin tener que perder tiempo en crear una
propia.
Programas Ofimáticos
GOOGLE APPS
Google Apps es un paquete de productividad basado en la nube para ayudar a autónomos y
pequeños negocios a conectarse y a trabajar desde cualquier lugar y dispositivo. Es fácil de
configurar, utilizar y administrar, lo que permite trabajar de forma más inteligente.
Cuenta con varias aplicaciones Web con funciones similares a las suites informáticas
tradicionales: Gmail, Google Groups, Google Calendar, Google Talk, Google Docs y Google
Sites.
Las principales funcionalidades ofrecidas son las siguientes:
o Google Calendar: Concertar fácilmente citas a horas que venga bien a todo
el mundo, recibir recordatorios de reuniones y compartir calendarios.
125 | P á g i n a
o Google Drive: Google Drive permite almacenar los archivos en la nube,
compartirlos y tener acceso a los mismos desde cualquier lugar.
o Google Docs: permite disponer de un procesador de textos, una hoja de
cálculo, un programa para realizar presentaciones y otro para dibujar. Se
pueden editar documentos en el ordenador de trabajo y continuarlo en casa
sin necesidad de utilizar pendrives. Además, permite la edición de
documentos por varios usuarios simultáneamente con lo que resulta una
excelente herramienta colaborativa.
Aspectos a tomar en cuenta:
Hay que tener en cuenta que es una solución “en la nube” es decir, no es necesario un
servidor en la empresa con lo que no estos costes no existen. Debido a que esta
infraestructura se encuentra en línea o "en la nube", se puede obtener acceso a ella desde
prácticamente cualquier parte, desde un equipo, una tableta, un Smartphone u otro
dispositivo con conexión a Internet.
Además, se garantiza por parte de Google, una disponibilidad del 99,9% gracias a la
replicación sincrónica de datos entre varios servidores seguros distribuidos en todo el mundo.
A esto hay que sumar el servicio de soporte 24x7 que proporciona Google.
Aplicaciones de Google.
OFFICE 365
Office 365 es una versión gratuita en la nube del conjunto de aplicaciones de Microsoft Office
que es una de las suites más usadas en todo el mundo. Incluye Word Web App, Excel Web
App, PowerPoint Web App, y OneNote Web App. En esta versión de Office se han reducido
las funcionalidades con respecto al software que se instala en el disco duro. Las aplicaciones
web permiten a los usuarios acceder a sus documentos directamente desde cualquier parte
dentro de un navegador web, así como compartir archivos y colaborar con otros usuarios en
línea.
Las principales características son las siguientes:
126 | P á g i n a
o Correo electrónico hospedado: correo electrónico de nivel empresarial, 3
calendarios compartidos, 50 GB de espacio de almacenamiento por usuario y
la posibilidad de usar un nombre de dominio propio (pe.
info@miempresa.com).
o Sitio web público: permite hacer publicidad de un negocio con un sitio web fácil
de configurar usando el nombre de dominio de su propia empresa. Sin costos
de hospedaje adicionales.
o Sitio de intranet para los equipos: los sitios de SharePoint proporcionan áreas
de trabajo con configuraciones de seguridad personalizables para equipos
individuales de la organización.
o Office Web Apps: permite crear y editar archivos de Word, Excel, PowerPoint
y OneNote a través de un explorador web.
o Office Mobile para iPhones y teléfonos Android: permite acceder, editar y ver
documentos de Word, Excel y PowerPoint en iPhones y teléfonos Android.
127 | P á g i n a
Aplicaciones en línea.
Open Office
Apache Open Office es una suite ofimática libre (de código abierto y distribución gratuita)
líder para el procesamiento de textos, hojas de cálculo, presentaciones, gráficos, bases de
datos y más. Se encuentra disponible en varios idiomas y funciona en todos los sistemas
comunes. Almacena todos sus datos en un formato que es un estándar internacional y puede
también leer y escribir archivos producidos por otros paquetes de oficina.
Mediante las aplicaciones y distintos programas que engloba facilita la automatización
de actividades requeridas en el día a día de tu negocio como pueden ser:
128 | P á g i n a
formatos, tales como el formato RTF, TXT, Microsoft Office XML y
OpenOffice.org XML.
o Adicionalmente puede exportar documentos directamente al formato PDF y
exportar presentaciones al formato Adobe Flash (SWF). OpenOffice.org
también cuenta con la capacidad de importar documentos en modo de «sólo
lectura» en los formatos Unified Office Format, Data Interchange Format y los
formatos propios de Microsoft Works, WordPerfect, Lotus 1-2-3, entre otros.
o Calc: es una hoja de cálculo similar a Microsoft Excel o Lotus 1-2-3. Calc
ofrece una serie de características no presentes en Excel, incluyendo un
sistema que, automáticamente define serie de gráficas, sobre la base de la
disposición de la información del usuario. Calc también puede exportar hojas
de cálculo para el formato PDF.
129 | P á g i n a
de software de escritorio como Scribus y Microsoft Publisher. Draw también
puede exportar sus creaciones al formato PDF y al estándar SVG.
Capítulo 12
Unidades de medida en informática
12.1 Concepto
Con estas unidades medimos la capacidad de guardar información de un elemento de
nuestro PC,la Unidad de Informática está encargada de administrar el Procesamiento
automático de matrícula y de notas de los estudiantes en coordinación con la unidad de
Matrícula, registro académico y grados y títulos.
Almacenamiento:
Con estas unidades medimos la capacidad de guardar información de un elemento de
nuestro PC. Los medios de almacenamiento pueden ser muy diferentes. Precisamente es en
este tipo de medidas donde se puede crear mayor confusión. La unidad básica
en Informática es el bit. Un bit o Dígito Binario es un dígito en sistema binario (0 o 1) con el
que se forma toda la información. Evidentemente esta unidad es demasiado pequeña para
poder contener una información diferente a una dualidad (abierto/cerrado, si/no), por lo que
se emplea un conjunto de bits (en español el plural de bit NO es bites, sino bits).
Para poder almacenar una información más detallada se emplea como unidad básica
el byte u octeto, que es un conjunto de 8 bits. Con esto podemos representar hasta un total
de 256 combinaciones diferentes por cada byte. Aquí hay que especificar un punto. Hay una
diferencia entre octeto y byte. Mientras que un octeto tiene siempre 8 bits un byte no siempre
es así, puede tener entre 6 y 9 bits. Precisamente el estar basado en octetos y no en el
130 | P á g i n a
sistema internacional de medidas hace que las subsiguientes medidas no tengan un
escalonamiento basado el este sistema (el SI o sistema internacional de medidas).
o Byte Formado normalmente por un octeto (8 bits), aunque pueden ser entre 6
y 9 bits.
La progresión de esta medida es del tipo B=Ax2, siendo esta del tipo 8, 16, 32,
64, 128, 256, 512.
o Gigabyte (GB) Un GB son 1.024 MB (o MiB), por lo tanto 1.048.576 KB. Cada
vez se emplea más el término Gibibyte o GiB.
o Llegados a este punto en el que las diferencias sí que son grandes, hay que
tener muy en cuenta (sobre todo en las capacidades de los discos duros) que
es lo que realmente estamos comprando. Algunos fabricantes utilizan el
termino GB refiriéndose no a 1.024 MB, sino a 1.000 MB (SI), lo que
representa una pérdida de capacidad en la compra. Otros fabricantes sí que
están ya utilizando el término GiB. Para que nos hagamos un poco la idea de
la diferencia entre ambos, un disco duro de 250 GB (SI) en realidad tiene 232
GB.
o Terabyte (TB) Aunque es aún una medida poco utilizada, pronto nos
tendremos que acostumbrar a ella, ya que por poner un ejemplo la capacidad
de los discos duros ya se está aproximando a esta medida.
Un Terabyte son 1.024 GB. Aunque poco utilizada aun, al igual que en los
casos anteriores se está empezando a utilizar la acepción Tebibyte
131 | P á g i n a
En el círculo, indicación de la capacidad del disco, tanto en GB como en bytes.
En el caso de definir las velocidades de transmisión se suele usar como base el bit,
y más concretamente el bit por segundo, o bps.
Los múltiplos de estos sí que utilizan el SI o Sistema Internacional de medidas.
Los más utilizados sin el Kilobit, Megabit y Gigabit, siempre expresado en el
término por segundo (ps). Las abreviaturas se diferencian de los términos de
almacenamiento en que se expresan con b minúscula.
132 | P á g i n a
Estas abreviaturas son:
En este sentido hay que tener en cuenta que las velocidades que en la mayoría de
las ocasiones se muestran en Internet están expresadas en KB/s (Kilobyte por
segundo), lo que realmente supone que nos dice la cantidad de bytes (unidad de
almacenamiento) que hemos recibido en un segundo, no la velocidad de trasmisión.
Podemos calcular esa velocidad de transmisión (para pasarla a Kbps o Kilobits por
segundo) simplemente multiplicando el dato que se nos muestra por 8, por lo que una
trasmisión que se nos indica como de 308 KB/s corresponde a una velocidad de
transmisión de 2.464 Kbps, a lo que es lo mismo, 2.64 Mbps.
Esta conversión nos es muy útil para comprobar la velocidad real de nuestra línea
ADSL, por ejemplo, ya que la velocidad de esta sí que se expresa en Kbps o en
Mbps.
12.2 Múltiplos
Bit es el acrónimo de Binary digit (Dígito binario). Un bit es un dígito del sistema de
numeración binario. Mientras que en el sistema de numeración decimal se usan diez dígitos,
en el binario se usan sólo dos dígitos, el 0 y el 1. Un bit o dígito binario puede representarse
uno de eso dos valores, 0 o 1.“El bit es la unidad mínima de información empleada en
informática.” Con un bit podemos representar solamente dos valores, que suelen
representarse como 0, 1.
133 | P á g i n a
Byte
En informática para representar un carácter (letra, símbolo o un número) se utilizan una
combinación de 8 bits (8 ceros y unos) según un código llamado ASCII.
Según esto podemos utilizar y de hecho se utiliza el byte como “la unidad básica de
almacenamiento en informática”. La unidad básica, no la más pequeña. La más pequeña,
como ya vimos es el bit. Lógicamente esta unidad hoy en día es muy pequeña y por lo tanto
se utilizan múltiplos del byte normalmente para hablar de la capacidad de almacenamiento
de cualquier dispositivo informático.
En el caso de los bits es lo mismo (1024). El motivo de que la proporción entre las distintas
magnitudes sea de 1024 se debe a que esta cantidad es la potencia de base 2 que más se
aproxima al múltiplo de 1000(210=1024), equivalente al prefijo kilo.
134 | P á g i n a
Capítulo 13
Sistemas numéricos
13.1 Concepto
Un sistema de numeración es el conjunto de símbolos y reglas que se utilizan para la
representación de datos numéricos y cantidades. Se caracteriza por su base que es el
número de símbolos distintos que utiliza, y además es el coeficiente que determina cual es
el valor de cada símbolo dependiendo de la posición que ocupe.
Los sistemas de numeración actuales son sistemas posicionales en los que el valor relativo
que representa cada símbolo o cifra de una determinada cantidad depende de su valor
absoluto y de la posición relativa que ocupa dicha cifra con respecto a la coma decimal.
Sistema de numeración
Es el sistema numérico decimal, o de base 10. Se denomina de base 10 debido a que se
utiliza 10 símbolos, y combinaciones de estos símbolos, para representar todos los números
posibles. Los dígitos 0, 1, 2, 3, 4, 5, 6, 7, 8 y 9 conforman el sistema de base 10. Un sistema
numérico decimal se basa en potencias de 10. Cada símbolo o digito representa el número
10 (número de base) elevado a una potencia (exponente), de acuerdo con su posición y se
multiplica por el número que posee esa posición.
Ejemplo:
3 2 1 0
2134 = (2x10 ) + (1x10 ) + (3x10 ) + (4x10 )
135 | P á g i n a
13.3 Sistema de numeración octal
Se trata de un sistema de numeración en base 8 que utiliza 8 símbolos para la representación
de cantidades. Los símbolos utilizados son: 0, 1, 2, 3, 4, 5, 6 ,7. Este sistema también
posicional ya que cada una de sus cifras tienen como posición la relativa al punto decimal
que, en caso de no aparecer se supone implícita al lado derecho del número, este
proporciona un método conveniente para la representación de códigos y números binarios
utilizados en los sistemas digitales.
13.5 Conversiones
Actualmente la mayoría de las personas utilizamos el sistema decimal (de 10 dígitos) para
realizar operaciones matemáticas. Este sistema se basa en la combinación de 10 dígitos (del
0 al 9). Construimos números con 10 dígitos y por eso decimos que su base es 10. Por
ejemplo, el 23, el 234, 1093 etc. Todos son dígitos del 0 al 9. Pero hay otro sistema o
lenguaje muy utilizado que es el sistema binario de numeración, que, en algunos casos, como
por ejemplo en informática, se puede llamar Lenguaje Binario, debido a que es el lenguaje
que usamos para entendernos con el ordenador. Luego también hablaremos del Lenguaje
Binario.
137 | P á g i n a
Operaciones Binarias:
Las operaciones binarias que se pueden realizar con número binarios son las mismas que
en cualquier otro sistema: suma, resta, multiplicación y división. Veamos algunos Ejemplos:
Las posibles combinaciones al sumar dos bits son:
0+0=0
0+1=1
1+0=1
1 + 1 = 10
138 | P á g i n a
División de Números Binarios:
Igual que en el producto, la división es muy fácil de realizar, porque no son posibles en el
cociente otras cifras que no sean unos y ceros. Se intenta dividir el dividendo por el divisor,
empezando por tomar en ambos el mismo número de cifras (100 entre 110, en el ejemplo).
Si no puede dividirse, se intenta la división tomando un dígito más (1001 entre 100). Si la
división es posible, entonces, el divisor sólo podrá estar contenido una vez en el dividendo,
es decir, la primera cifra del cociente es un uno. En ese caso, el resultado de multiplicar el
divisor por 1 es el propio divisor. Restamos las cifras del dividendo del divisor y bajamos la
cifra siguiente. El procedimiento de división continúa del mismo modo que en el sistema
decimal.
Lenguaje Binario:
La misma lógica que se utiliza para representar los números se puede utilizar para
representar texto. Lo que necesitamos es un esquema de codificación, es decir, un código
que nos haga equivalencias entre un número binario y una letra del abecedario. Necesitamos
un número binario por cada letra del alfabeto.
Por ejemplo, en informática, cada tecla del teclado (números, letras, signos, etc.) hay un
número en binario que es su equivalente. Luego veremos muchos más.
Un ejemplo real: 0100 0001 es el número binario que representa la letra A. En binario ese
número es equivalente a la letra A. Varios códigos estándar para convertir texto en binario
se han desarrollado a lo largo de los años, incluyendo ASCII y Unicode, los más famosos y
utilizados.
El Código Estándar Americano para el Intercambio de Información (ASCII) fue desarrollado
a partir de los códigos telegráficos, pero luego fue adaptado para representar texto en código
binario en los años 1960 y 1970. La versión original de ASCII utiliza 8 bits (recuerda cada
número binario es un bit) para representar cada letra o carácter, con un total de 128
caracteres diferentes. Cuando hablamos de caracteres nos referimos tanto a letras, como a
números, como a signos ($, /, etc.). Este es uno de los códigos o lenguaje binario para
representar texto mediante números binarios que más se utilizó durante mucho tiempo.
Mientras ASCII se encuentra todavía en uso hoy en día, el estándar actual para la
codificación de texto es Unicode.
El principio fundamental de Unicode es muy parecido a ASCII, pero Unicode contiene más
de 110.000 caracteres, cubriendo la mayor parte de las lenguas impresas del mundo. La
relativamente simple versión de 8 bits de Unicode (referido como UTF-8) es casi idéntica a
ASCII, pero las versiones de 16 y 32 bits (referido como UTF-16 y UTF-32) le permiten
representar casi cualquier tipo de lenguaje impreso. A continuación, puedes ver una tabla
con el código para representar letras y caracteres en ASCII y en UNICODE de 16 bits.
Como ves en ASCII cada letra se representa por un número binario de 8 números y
UNICODE por 16. Así podemos construir un lenguaje binario donde cada letra se representa
por un número binario. Estos códigos son lo que se llama en informática, el código máquina,
y es el utilizado por todos los ordenadores para entenderse con las personas. Los
programadores, escriben sus programas en un lenguaje de programación, que
posteriormente tienen que convertirlo a código máquina para que lo entienda el ordenador.
Según el Diccionario Enciclopédico de Oxford, una entrada aritmética binaria apareció por
primera vez en Inglés en 1796 en A Mathematical y Diccionario filosófico. A Gottfried Leibniz,
se le atribuye la invención del sistema de numeración binario en 1679 y estaba basado en
139 | P á g i n a
las antiguas figuras chinas de Fu Xi. Aunque las personas de la remota isla de Mangareva
utilizaban un tipo de sistema binario mucho antes para las transacciones comerciales, dada
la lejanía de Leibniz a esta isla, es probable que se acercara al código binario de forma
independiente. En 1605, Francis Bacon discutió un sistema por el cual las letras del alfabeto
podrían reducirse a secuencias de dígitos binarios, que luego podría ser codificada como
variaciones apenas visibles en la fuente en cualquier texto aleatorio. Fue el primer lenguaje
binario utilizado.
Otro matemático y filósofo con el nombre de George Boole publicó un artículo en 1847
llamado "El análisis matemático de la lógica" que describe un sistema algebraico de la lógica,
ahora conocido como el álgebra de Boole. El Sistema de Boole se basó en números binarios,
dando un 0 o un 1, el enfoque de encendido y apagado, que consistía en las tres operaciones
más básicas: AND, OR y NOT. Hoy en día es el utilizado en Electrónica Digital. Este sistema
no fue puesto en uso hasta que un estudiante graduado de Massachusetts Institute of
tecnología con el nombre de Claude Shannon se dio cuenta de que el álgebra de Boole, que
estaba aprendiendo, era similar a un circuito eléctrico. Shannon escribió su tesis en 1937,
aplicando sus descubrimientos. La tesis de Shannon se convirtió en un punto de partida para
el uso del código binario en las aplicaciones prácticas, tales como computadoras, circuitos
eléctricos, y muchas más.
20 𝑥0 = 0
21 𝑥1 = 2
22 𝑥0 = 0
140 | P á g i n a
Luego se procede a sumar el resultado: 0+2+0= 2, es decir que 010 equivale a 2 en el sistema
octal.
010
2
141 | P á g i n a
Conversión hexadecimal a decimal:
Ante de tirarnos de lleno a convertir, primero hay que usar una table que nos servirá para
compares los valores. Del digito “0” al digito “9” en binario y en hexadecimal son relativamente
iguales, la cuestión con el hexadecimal es que a partir del 10 son representados con las
primeras 6 letras del alfabeto latino.
Decimal Hexadecimal
0 0
1 1
2 2
3 3
4 4
5 5
6 6
7 7
8 8
9 9
10 A
11 B
12 C
13 D
14 E
15 F
Ya teniendo claro la diferencia entre los valores decimales y hexadecimales ya Podemos
proceder a convertir. Hay que resaltar que, para colocar los dígitos, no se deben colocar de
izquierda a derecho, sino que estos deben de ir colocados de derecho a izquierda y que
también queda mencionar que la base “16” debe colocarse por la cantidad de números que
tenga el valor hexadecimal, por ejemplo:
142 | P á g i n a
Si existieran más valores, se seguiría con la numeración 4,5, 6 y así sucesivamente hasta
llegar a nuestro último digito. Como solo son 4 dígitos, se debe escribir la base “16” 4 veces.
1) Se coloca la base,
2) Cada base 16 debe ser elevada a cada posición representada por los dígitos anteriores.
16^0
16^1
16^2
16^3
16^0=1
16^1=16
16^2=256
16^3=4096
A x16^3=40,960
2 x16^2=512
E x16^1= 224
7 x 16^0=7
Al tener ya las cantidades con sus resultados se prosigue a sumar los dichos resultados.
40,960 + 512 + 224 + 7 = 41, 703 es nuestro resultado así que no que más que decir que
“A2E7” en valor Hexadecimal, equivale a “41,703” en el Sistema decimal.
143 | P á g i n a
Conversión hexadecimal a binario
Se dice que cada digito Hexadecimal se representa BINARIO HEXADECIMAL
mediante un número Binario de 4 dígitos, para
0000 0
guiarnos mejor esta la siguiente tabla:
0001 1
0010 2
Convierta a binario el siguiente valor hexadecimal:
0011 3
0100 4
0101 5
01110 6
Hay que recordar que cada valor hexadecimal es
representado por cada 4 bytes 0111 7
1000 8
Para realizar la conversión de “FF” se coloca el valor 1001 9
en binario de cada uno basándonos en nuestra table
de valores 1010 A
1011 B
1100 C
1101 D
1110 E
1111 F
Ahora para terminar la conversión, las cantidades se deben escribir una al junto a la otra
comenzando desde abajo hacia arriba y así obtendremos el resultado de hexadecimal a
binario
11111111
144 | P á g i n a
Conversión de Hexadecimal a Octal
El segundo paso sería poner en orden los números en una sola línea, comenzando
de izquierda a derecha.
145 | P á g i n a
OCTAL BINARIO
0 000
1 001
2 010
3 011
4 100
5 101
6 110
7 111
El tercer paso es para proceder ya a convertir a octal y para ello se utiliza una segunda tabla
de conversión.
Como cuarto paso es separar en grupo de 3 de “derecho a izquierda” la cantidad resultante
que nos quedó anteriormente:
Una ley en esta conversión es que si al momento de dejarlos en grupos de 3, el ultimo digito
de la izquierda queda incompleto se completara los dígitos que falten con “ceros” hacia la
izquierda, Como quinto y último paso es darle un número del 1 al 7 a cada grupo de 3
dependiendo de la tabla octal-binario.
146 | P á g i n a
Capítulo 14
Framework
Modelo:
Este miembro del controlador (la interacción entre el sistema operativo de una computadora
y un periférico o hardware) Maneja las operaciones lógicas, y de manejo de información
(previamente enviada por su ancestro), para resultar de una forma explicable y sin titubeos.
Cada miembro debe ser exactamente llamado, con su correcto nombre y en principio, con su
verdadera naturaleza: el manejo de información, su complementación directa.
Vista:
Al final, a este miembro de la familia le corresponde dibujar, o expresar la última forma de los
datos: la interfaz gráfica que interactúa con el usuario final del programa (GUI o interfaz
gráfica de usuario). Después de todo, a este miembro le toca evidenciar la información
obtenida hasta hacerla llegar al controlador. Solo (e inicialmente), nos espera demostrar la
información.
Controlador:
Con este apartado podemos controlar el acceso (incluso todo) a nuestra aplicación, y esto
puede incluir: archivos, scripts, o programas; cualquier tipo de información que permita la
interfaz. Así, podremos hacer nuestro contenido de forma dinámica, y estática (a la vez);
pues, solo debemos controlar ciertos aspectos (como se ha mencionado antes).
147 | P á g i n a
Surgimiento:
Son diseñados con la intención de facilitar el desarrollo de software, permitiendo a los
diseñadores y programadores pasar más tiempo identificando requerimientos de software
que tratando con los tediosos detalles de bajo nivel de proveer un sistema funcional. Por
ejemplo, un equipo que usa Apache Struts para desarrollar un sitio web de un banco, puede
enfocarse en cómo los retiros de ahorros van a funcionar en lugar de preocuparse de cómo
se controla la navegación entre las páginas en una forma libre de errores. Sin embargo, hay
quejas comunes acerca de que el uso de frameworks añade código innecesario y que la
preponderancia de frameworks competitivos y complementarios significa que el tiempo que
se pasaba programando y diseñando ahora se gasta en aprender a usar frameworks.
Fuera de las aplicaciones en la informática, puede ser considerado como el conjunto 33de
procesos y tecnologías usados para resolver un problema complejo. Es el esqueleto sobre
el cual varios objetos son integrados para una solución dada.
Después de todo, un Framework no debe ser consciente de todos estos requerimientos sin
tener que ser intrusivo con las aplicaciones que permite dentro de sí mismo. A esto le
sumamos la capacidad de extenderse sin prejuicios para diversificar la expresión del
programa mismo.
Base:
No es más que una base de programación que atiende a sus descendientes (manejado de
una forma estructural y/o en cascada) posibilitando cualquier respuesta ante las necesidades
de sus miembros, o secciones de una aplicación (web, de este modo).
Estructura
Dentro del controlador, modelo o vista podemos manejar lo siguiente: datos. Depende de
nosotros como interpretar y manejar estos 'datos'. Ahora, sabemos que el único dato de una
dirección estática web es: conseguir un archivo físico en el Disco duro o de Internet, etc. he
interpretado o no, el Servidor responde.
El modelo, al igual que el controlador y la vista, maneja todos los datos que se relacionen
consigo (solo es el proceso medio de la separación por capas que ofrece la arquitectura
MVC). Y sólo la vista, puede demostrar dicha información. Con lo cual ya hemos generado
la jerarquía de nuestro programa: Controlador, Modelo y Vista.
Lógica
Al parecer, debemos inyectar ciertos objetos dentro de sus parientes en esta aplicación, solo
así compartirán herencia y coherencia en su aplicación. Rápidamente, para una Aplicación
web sencilla debemos establecer estos objetos:
148 | P á g i n a
Una base (MVC)
Controlador: éste debe ser capaz de manejar rutas, archivos, clases, métodos y funciones.
Modelo: es como un script habitual en el servidor, solo que agrupado bajo un 'modelo'
reutilizable.
Vista: como incluyendo cualquier archivo en nuestra ejecución, muy simple.
Un sistema ruteador: con él podemos dividir nuestras peticiones sin tantas
condicionales.
Capítulo 15
Introducción a SQL
Instrucción Función
Recupera filas de la base de datos y habilita la selección de una o varias
SELECT
filas o columnas de una o varias tablas.
INSERT Agrega una nueva fila a una tabla.
UPDATE Cambia datos existentes en una tabla.
DELETE Quita filas de una tabla.
Select:
149 | P á g i n a
Las tablas de las que se quitan todas las filas permanecen en la base de datos. La
instrucción DELETE sólo elimina filas de la tabla, pero la tabla en sí se debe quitar
de la base de datos mediante la instrucción DROP TABLE.
Select_list:
Describe las columnas del conjunto de resultados. Es una lista de expresiones
separadas por comas. Cada expresión define tanto el formato (tipo de datos y
tamaño) como el origen de los datos para la columna del conjunto de resultados.
Cada expresión de lista de selección suele ser una referencia a una columna de la
tabla o vista de origen de la que provienen los datos, aunque puede ser cualquier otra
expresión, como una constante o una función Transact-SQL(es una extensión al
SQL ,que frecuentemente se dice ser un Lenguaje de Búsquedas Estructurado ). Al
usar la expresión * en una lista de selección, se especifica que se devolverán todas
las columnas de la tabla de origen.
INTO new_table_name
Especifica que el conjunto de resultados se usa para crear una tabla nueva.
new_table_name especifica el nombre de la nueva tabla.
FROM table_list
Contiene una lista de las tablas cuyos datos del conjunto de resultados se recuperan.
Estos orígenes pueden ser:
• Tablas base en el servidor local.
• Vistas en la instancia local.
• Tablas vinculadas.
La cláusula FROM también puede contener especificaciones de combinación.
La cláusula FROM se usa también en las instrucciones DELETE y UPDATE para
definir las tablas que se modifican.
WHERE search_conditions
La cláusula WHERE es un filtro que define las condiciones que debe cumplir cada
fila de las tablas de origen para satisfacer los requisitos de la instrucción SELECT.
Sólo las filas que cumplen las condiciones contribuyen con datos al conjunto de
resultados.
Los datos de las filas que no cumplen las condiciones no se usan.
150 | P á g i n a
La cláusula WHERE se usa también en las instrucciones DELETE y UPDATE para
definir las filas de las tablas de destino que deben modificarse.
GROUP BY group_by_list
La cláusula GROUP BY divide en grupos el conjunto de resultados según los valores de las
columnas de group_by_list.
HAVING search_conditions
La cláusula HAVING es un filtro condicional que se aplica al conjunto de resultados.
Lógicamente, la cláusula HAVING filtra las filas del conjunto intermedio de resultados que se
genera como consecuencia de la aplicación de alguna cláusula FROM, WHERE o GROUP
BY en la instrucción SELECT. Las cláusulas HAVING se usan normalmente con una cláusula
GROUP BY, aunque no se necesita una cláusula GROUP BY antes de una cláusula HAVING.
ORDER BY order_list
La cláusula ORDER BY define el orden de las filas del conjunto de resultados. order_list
especifica las columnas del conjunto de resultados que forman la lista de clasificación. Las
palabras clave ASC y DESC se utilizan para especificar si las filas se ordenan en una
secuencia ascendente o descendente.
Insert
La instrucción hace que data_values se inserte como una o más filas en la tabla o vista que
se nombra. El argumento column_list es una lista separada por comas de los nombres de
tablas que se pueden utilizar para especificar las columnas para las que se suministran datos.
Si no se especifica column_list, todas las columnas de la tabla o vista reciben datos.
uando column_list no enumera todas las columnas de la tabla o vista, se inserta el valor
predeterminado, si se ha definido alguno para la columna, o un valor de NULL en aquellas
columnas que no se hayan enumerado en la lista.
UPDATE
Cambia datos existentes en una tabla.
SETContiene una lista separada por comas de las columnas que deben actualizarse
y el nuevo valor de cada columna, con el formato column_name = expression. El valor
suministrado por las expresiones incluye elementos tales como constantes, valores
seleccionados de una columna de otra tabla o vista, o valores calculados por una
expresión compleja.
From
151 | P á g i n a
Identifica las tablas o vistas que suministran los valores de las expresiones de la
cláusula SET,
y las condiciones de combinación opcional entre las tablas o vistas de origen.
Where
Especifica la condición de búsqueda que define las filas de las tablas y vistas de
origen que están calificadas para proporcionar valores para las expresiones de la
cláusula SET. DELETE
Quita filas de una tabla.
Las tablas de las que se quitan todas las filas permanecen en la base de datos. La
instrucción DELETE sólo elimina filas de la tabla, pero la tabla en sí se debe quitar
de la base de datos mediante la instrucción DROP TABLE.
15.2 Comando select
¿Para qué utilizamos el comando SELECT? El uso común es la selección de datos
desde tablas ubicadas en una base de datos. Inmediatamente, vemos dos palabras
claves: necesitamos el comando SELECT la información FROM una tabla.
La estructura base es:
Tabla Tienda
152 | P á g i n a
Podemos utilizar esta tabla como ejemplo a lo largo de la guía de referencia (esta tabla
aparecerá en todas las secciones). Para seleccionar todos los negocios en esta tabla,
ingresamos,
Resultado:
Nombre_tienda
Los Angeles
San Diego
Los Angeles
Boston
Ejemplo:
153 | P á g i n a
Las instrucciones DML (Data Manipulation Language - Lenguaje De Manipulación De Datos)
trabajan sobre los datos almacenados en nuestro SGBD (sistema gestor de base de datos),
permitiendo consultarlos o modificarlos. En general a las operaciones básicas de
manipulación de datos que podemos realizar con SQL se les denomina operaciones CRUD
(de Create, Read, Update, and Delete, o sea, Crear, Leer, Actualizar y Borrar, sería CLAB en
español, pero no se usa). Lo veras utilizando de esta manera en muchos sitios, así que es
necesario aprender ese acrónimo.Hay cuatro instrucciones para realizar estas tareas:
Consulta De Datos
Ahora nos centramos en la “R” de CRUD, es decir, en cómo recuperar la información
que nos interesa de dentro de una base de datos, usando para ello el lenguaje de
consulta de SQL. Para realizar consultas sobre las tablas de las bases de datos
disponemos de la introducción SELECT. Con ella podemos consultar una o carias
tablas. Es sin duda el comando más versátil del leguaje SQL. Existen muchas
cláusulas asociadas a la sentencia SELECT (GROUP BY, ORDER, HAVING,
UNION). También es una de las instrucciones en la que con más frecuencia los
motores de bases de datos incorporan cláusulas adicionales al estándar. El resultado
de una consulta SELECT nos devuelve una tabla lógica. Es decir, los resultados son
una relación de datos, que tiene filas/registros, con una serie de campos/columnas.
Igual que cualquier tabla de la base de datos. Sin embargo, esta tabla está en
memoria mientras la utilicemos, y luego se descarta. Cada vez que ejecutamos la
consulta se vuelve a calcular el resultado.
La sintaxis básica de una consulta SELECT:
SELECT [ ALL / DISTINC ] [ * ] / [ListaColumnas_Expresiones] AS
[Expresion]
FROM Nombre_Tabla_Vista
WHERE Condiciones
ORDER BY ListaColumnas [ ASC/ DESC ]
Select:
154 | P á g i n a
Permite seleccionar las columnas que se van a mostrar y en el orden en que lo van
a hacer. Simplemente es la instrucción que la base de datos interpreta como que
vamos a solicitar información.
All / Distinct
All es el valor predeterminado, especifica que el conjunto de resultado puede incluir filas
duplicadas. Por regla general nunca se utiliza.
DISTINCT Especifica que el conjunto de resultados sólo puede incluir filas únicas. Es decir,
si al realizar una consulta hay registros exactamente iguales que aparecen más de una vez,
éstos se eliminan. Muy útil en muchas ocasiones.
Nombre de Campos:
Se debe especificar una lista de nombres de campos de la tabla que nos interesan y que por
tanto queremos devolver. Normalmente habrá más de uno, en cuyo caso separamos cada
nombre de los demás mediante comas.
Se puede anteponer el nombre de la tabla al nombre de las columnas, utilizando el formato
tabla. columna. Además de nombres de columna, en esta lista se pueden poner constantes,
expresiones aritméticas, y funciones, para obtener campos calculados de manera dinámica.
Si queremos que nos devuelva todos los campos de la tabla utilizamos el comodín “*”
(asterisco).
Los nombres indicados deben coincidir exactamente con los nombres de los campos de la
tabla, pero si queremos que en nuestra tabla lógica de resultados tengan un nombre diferente
podemos utilizar:
As:
Permite renombrar columnas si lo utilizamos en la cláusula SELECT, o renombrar tablas si
lo utilizamos en la cláusula FROM (Formulario). Es opcional. Con ello podremos crear
diversos alias de columnas y tablas.
From:
Esta cláusula permite indicar las tablas o vistas de las cuales vamos a obtener la información.
De momento veremos ejemplos para obtener información de una sola tabla.
Where:
Especifica la condición de filtro de las filas devueltas. Se utiliza cuando no se desea que se
devuelvan todas las filas de una tabla, sino sólo las que cumplen ciertas condiciones. Lo
habitual es utilizar esta cláusula en la mayoría de las consultas.
Condiciones:
155 | P á g i n a
Son expresiones lógicas a comprobar para la condición de filtro, que tras su resolución
devuelven para cada fila TRUE (verdadero) o FALSE (falso), en función de que se cumplan
o no. Se puede utilizar cualquier expresión lógica y en ella utilizar diversos operadores como:
> (Mayor)
>= (Mayor o igual)
< (Menor)
<= (Menor o igual)
= (Igual)
<> o != (Distinto)
Like:
para la comparación de un modelo. Para ello utilizamos los caracteres comodín
especiales: “%” y “_”. Con el primero indicamos que en su lugar puede ir cualquier
cadena de caracteres, y con el segundo que puede ir cualquier carácter individual (un
solo carácter).
Between:
Para un intervalo de valores.
Clientes entre el 30 y el 100:
CodCliente BETWEEN 30 and 100.
In ():
Para especificar una relación de valores concretos. Por ejemplo: ventas de los
clientes 10, 15, 30 y 75:
CodCliente IN (10, 15, 30 y 75).
Order by:
Define el orden de las filas del conjunto de resultado. Se especifica el campo o
campos (separados por comas) por los cuales queremos ordenar los resultados.
156 | P á g i n a
Capítulo 16
Java
158 | P á g i n a
16.2 Sintaxis
El compilador genera un archivo de clase (con extensión “.class”) por cada una de las
clases definidas en el archivo fuente.
Una clase anónima se trata como si su nombre fuera la concatenación del nombre de la
clase que la encierra, el símbolo “$”, y un número entero.
Los programas que se ejecutan de forma independiente y autónoma, deben contener el
método ”main()”.
La palabra reservada ”void” indica que el método main no devuelve nada.
El método main debe aceptar un array de objetos tipo String. Por acuerdo se referencia
como ”args”, aunque puede emplearse cualquier otro identificador.
159 | P á g i n a
Este pequeño fragmento de código
explica la sintaxis o más o menos
como es una sintaxis o estructura
de aplicación autónoma en Java.
16.2.2 Applets
Un applet es un programa escrito en lenguaje Java, el cual fue diseñado para incluirse en
documentos Web HTML, el principal objetivo es añadir interactividad y dinamismo a la página
web. El modo de ejecución de los applet se realiza a través de un navegador web utilizando
la Máquina Virtual Java (en inglés Java Virtual Machine, JVM) es decir que la máquina virtual
se encarga de interpretar el código de lenguaje máquina y adaptarlo a la plataforma utilizada,
en este caso un navegador web.
160 | P á g i n a
1. Contiene los archivos que conforman el
programa en java
2. Interpretación interna del lenguaje máquina.
3. Es un código binario intermediario para el
ensamblado e interpretación de archivos
4. Finalmente se utiliza la máquina virtual Java
para la adaptación a la plataforma utilizada.
16.2.3 Servlets
¿Qué son los Servlets?
Los Servlets son módulos escritos en JAVA que son utilizados en un servidor, y este puede
ser o no ser un servidor web. Los Servlets son para los servidores lo que los applets (lenguaje
de programación de Java) para los navegadores, con la diferencia de que los servlets no
tiene una interfaz gráfica. Son las respuestas de la tecnología Java a la programación CGI
(Interfaz de entrada común). Para ser más específicos son programas que se ejecutan en
un servidor Web y construyen páginas Web. Son un remplazo efectivo para los CGI (Interfaz
de entrada común) en los servidores que lo soporten ya que proporcionan una forma de
poder generar documentos dinámicos utilizando las ventajas de la programación en Java,
como conexión a alguna base de datos, programación distribuida, etc. Por ejemplo, un
servlets podría ser responsable de procesar datos desde un formulario en Html, como
registrar la transacción, actualizar base de datos, contactar algún sistema remoto y retomar
un documento dinámico o redirigir a otro servlets, o cualquier cosa.
161 | P á g i n a
¿Cómo es un Servlets?
PrintWriter out;
response.setContentType("text/html");
out = response.getWriter();
out.println("<HTML><HEAD><TITLE>");
out.println(title);
out.println("</TITLE></HEAD><BODY>");
out.println("</BODY></HTML>");
out.close();
162 | P á g i n a
se le dará al cliente a través de la clase HttpServletResponse. El servlet puede
retornar al cliente cualquier tipo de información, desde texto plano hasta un
ejecutable, por lo que es necesario señalar qué tipo de respuesta se dará a través
del método setContentType. Luego se obtiene el objeto para poder escribir texto al
cliente a través del método getWriter con el cual se puede retornar una página web
llamado sucesivamente el método println hasta terminar con close.
Una versión del entorno de ejecución Java reducida y altamente optimizada, especialmente
desarrollado para el mercado de dispositivos electrónicos de consumo, se ha producido toda
una revolución en lo que a la extensión de Java se refiere.
Que es Midlet:
Es un programa desarrollado con el lenguaje de programación Java para dispositivos
embebidos (que se dedican a una sola actividad), más específicamente para la máquina
virtual Java Micro Edition.
163 | P á g i n a
Un navegador web permite el acceso a
la Web, interpretando la información de
distintos tipos de archivos y sitios web para
que estos puedan ser visualizados.
16.4 Programación
16.4.1 Expresiones
Una expresión en Java (NetBeans) es una forma para describir en un grupo de cadenas de
texto características en común el cual funciona prácticamente para buscar coincidencias
entre un patrón ingresado y una cadena de texto ya existente esto funciona utilizando datos
de tipo booleano que devuelve respuestas en tipo falso o verdadero.
El “String a_evaluar” es la cadena de texto que vamos a ingresar para que sea comparada
por la que estamos a punto de escribir en la consola de Java.
El “String regex;” es donde se va almacenar la cadena de texto que ingresemos por teclado
que sera comparado con la cadena de texto ya existente.
El “regex = scanner.next();” nos sirve para que en la variable regex se almacene la cadena
de texto ingresada por teclado.
Pattern nos sirve como un conversor que hara que lo que sea ingresado y almacenado en
nuestra variable (en este caso regex) sea convertido en un patrón que pueda compararse
con la cadena de texto ya ingresada.
165 | P á g i n a
El Matcher es el que busca la coincidencia de patrones de texto evaluando nuestra variable
(regex) y (a_evaluar) será la cadena de texto que ingresamos por defecto con la cual será
comparada nuestra cadena de texto ingresada por teclado.
Se crea una variable tipa booleana para que muestre si es verdadero o falso que hay o no
una coincidencia entre la cadena de texto por defecto y la cadena de texto que ingresamos
por teclado.
16.4.2 Operadores
¿Qué es un operador?
Un operador lleva a cabo operaciones sobre uno (operador unario), dos (operador binario) o
tres (operador ternario) datos u operandos de tipo primitivo devolviendo un valor determinado
también de un tipo primitivo. El tipo de valor devuelto tras la evaluación depende del operador
y del tipo de los operandos.
Ejemplo:
Los operadores aritméticos trabajan con operandos numéricos, llevan a cabo operaciones
aritméticas básicas y devuelven el valor numérico correspondiente. Los operadores se
pueden clasificar en distintos grupos según se muestra en los siguientes apartados.
Operador asignación
166 | P á g i n a
Operadores aritméticos
El lenguaje de programación Java tiene varios operadores aritméticos para los datos
numéricos enteros y reales.
operando puede ser numérico o de tipo char y el resultado es del mismo tipo que el operando.
Estos operadores pueden emplearse de dos formas dependiendo de su posición con
respecto al operando
Estos operadores suelen sustituir a veces al operador asignación y también
167 | P á g i n a
Operadores de relación
Realizan comparaciones entre datos compatibles de tipos primitivos (numéricos, carácter y
booleanos) teniendo siempre un resultado booleano. Los operandos booleanos sólo pueden
emplear los operadores de igualdad y desigualdad.
168 | P á g i n a
El operador condicional
Este operador ternario tomado de C/C++ permite devolver valores en función de una
expresión lógica.
169 | P á g i n a
El operador a nivel de bits & realiza una operación de AND a nivel de bits.
El operador a nivel de bits ^ realiza una operación de OR exclusivo a nivel de bits.
El operador a nivel de bits | realiza una operación de OR inclusivo a nivel de bits.
15. Paréntesis ()
Arreglos []
Acceso a miembros .
14. Post-incremento ++
Post-decremento --
13. Pre-incremento ++
Pre-decremento --
Mas +
Menos -
Negación lógica !
Negación/Complemento binario ~
12. Multiplicación *
División /
Módulo %
11. Adición +
Sustracción -
170 | P á g i n a
Despl. Bits Der. /Cero >>>
8. Igual a ==
No igual a !=
7. Si binario &
6. O exclusivo binario ^
5. O inclusivo binario |
4. Si lógico &
3. O lógico ||
2. Condicional ternario ?:
1. Asignación =
Suma y asignación +=
Sustracción y asignación -=
Multiplicación y asignación *=
División y asignación /=
Modulo y asignación %=
Las operaciones matemáticas tienen un orden de precedencia, una jerarquía, de modo que
algunas operaciones se resuelven antes que otras, por lo que un paréntesis en un
lugar diferente de las operaciones puede dar lugar a distintos resultados.
Ejemplo:
Notemos la expresión 12/3+2*2-1 siguiendo las instrucciones del cuadro
171 | P á g i n a
12/3 + 2*2 -1(Primero multiplicaciones y divisiones de izquierda a derecha) (2*2) (12/3)
4+4-1(Luego sumas)
8-1(Finalmente restas)
16.4.5 Sentencias
Un programa java está compuesto por una serie de sentencias. Las dos sentencias básicas
en el lenguaje Java se reflejan en la siguiente tabla: sentencias de declaración que son las
que hemos estudiado para declarar variables y constantes.
Estas últimas son las que controlan el flujo de ejecución del programa. Normalmente el orden
de ejecución de sentencias es el mismo en el que están escritas. Sin embargo, las sentencias
de control de flujo introducen bifurcaciones en la ejecución del programa. A continuación,
estudiaremos en detalle cada uno de los tipos de sentencias.
If-else
172 | P á g i n a
Supongamos que además de saber si alguien es mayor o menor de edad queremos aplicar
un nuevo descuento para jubilados. Podemos cambiar el problema y anidar sentencias if-
else.
Switch
La sentencia switch selecciona entre un grupo de sentencias en función de la evaluación de
una expresión. Su formato sería:
Si se encuentra una etiqueta case cuyo valor_integral coincida con el de la expresión selector
se trasfiere el control a su correspondiente bloque_de_sentencias. En caso de que ningún
valor coincida se ejecuta el bloque_de_sentencias correspondiente a la etiqueta default.en
la sentencia switch no es necesario escribir break al final de cada case. Si falta la sentencia
break el código de la siguiente sentencia case se ejecutará hasta que se encuentre un break.
Tal es el caso del siguiente ejemplo, donde se traduce una nota numérica a su
correspondiente nota verbal.
Vemos como cuando la nota es un 7 al no tener un break continúa la ejecución hasta el
siguiente case, el 8, imprimiendo notable. Lo mismo sucede con el sobresaliente. Toda la
etiqueta case deben ser expresiones constantes, es decir, literales o identificadores
declarados como static final e inicializados con un valor constante.
For:
Esta sentencia se usa para realizar un bucle a lo largo de un rango de valores desde el
principio hasta el final,
Lo habitual es usar for cuando queremos recorrer todo un rango de valores de una variable.
De esta forma, expresion_inicial indica el punto de partida para hacer
iteraciones, expresion_incremento cómo se va a ir incrementando la variable
y expresion_booleana expresa que condición debe cumplirse para que el bucle for acabe.
Al principio el contador i lo inicializamos a 1 pues el uno es un divisor para cualquier número.
Iremos incrementando i de uno en uno y calculando el módulo de la división del numero entre
i. La condición de salida del bucle es cuando el contador sea menor o igual que la mitad del
número, pues no habrá divisores con un valor mayor.
173 | P á g i n a
El bucle for sólo acaba cuando se cumple la condición de salida o cuando en
el bloque_de_sentencias se encuentra una sentencia break. Sin embargo, debido a que se
utiliza para iterar a lo largo de un rango de valores, romper el bucle es de mal estilo.
While- Do while
Con la sentencia while se repite el bloque_de_sentencias hasta que la expresión booleana
sea falsa. Un bucle while sería:
El bucle while puede no ejecutarse nunca pues la expresion_booleana puede ser falsa la
primera vez que se evalúa. Como hay veces que se desea que el bucle se ejecute al menos
una vez.
En Java tenemos también la instrucción do-while:
Break- continue
Las sentencias break y continue se utilizan dentro de los bucles y modifican el flujo natural
de los mismos.La sentencia break provoca la salida inmediata del bucle que estemos
ejecutando, sin realizar la ejecución del resto de las sentencias. La sentencia break se puede
usar tanto en bucles como en bifurcaciones. El siguiente uso de break en el bucle while nos
garantiza que j no será nunca negativo, pues en ese caso romperá el bucle y continuará con
la ejecución normal:
La sentencia continúe finaliza la iteración que en ese momento se está ejecutando, salta al
final del cuerpo del mismo y evalúa la expresión booleana que controla dicho bucle. Se suele
usar un continúe para saltarse un elemento del rango de valores que recorre el bucle. El uso
174 | P á g i n a
de continúe en el siguiente código evita que se produzca una división por cero al calcular el
valor de aux.
Return
La sentencia return termina la ejecución de un método y devuelve al invocador el control de
flujo del programa. En el caso de que la función devuelva alguna variable, este valor se
deberá poner a continuación del return, return <valor>. El siguiente ejemplo nos enseña un
uso de la sentencia return para determinar si un número es positivo:
175 | P á g i n a
176 | P á g i n a
Capítulo 17
Es un programación orientado desarrollado y estandarizado por Microsoft como Formatted: No underline, Spanish (Guatemala)
parte de su plataforma .NET, Su sintaxis básica deriva de C/C++ y utiliza el modelo Formatted: No underline
de objetos de la plataforma .NET, similar al de Java, aunque incluye mejoras Formatted: No underline, Spanish (Guatemala)
derivadas de otros lenguajes. Formatted: No underline
Formatted: No underline, Spanish (Guatemala)
Formatted: No underline
using System;
namespace ejercicio_basicos_DDR_1
{
class MainClass
{
public static void Main (string[] args)
{
int operador1,operador2 = 5;
int suma = 0;
operador1= int.parse(console.readline());
operador2= int.parse(console.readline());
Console.ReadLine ();
}
}
}
177 | P á g i n a
17.2.1 Sintaxis C#
Try-catch
La instrucción try-catch consta de un bloque try seguido de una o más
cláusulas catch que especifican controladores para diferentes excepciones.
178 | P á g i n a
Switch
La instrucción switch es una instrucción de control que selecciona una sección
switch para ejecutarla desde una lista de candidatos. Una instrucción switch incluye
una o más secciones switch. Cada sección switch contiene una o más etiquetas
case seguidas de una o más instrucciones.
17.2.3 Variables
Hay varios tipos de variables, pero las más usadas son:
Int: Especifica números enteros y ocupa 4 bits--- int a; int a=3;
Float: Especifica números decimales y ocupa 4 bits – float a; float a=3.4;
Double: Para datos que requieran de muy elevada precisión ocupa 8 bits doublé a;
doublé a=3;
Char: Solo acepta un carácter con comillas simples char =’a’;
String: Sirve para almacenamiento de variables de texto. String hola; string hola,
hola2, hola3;
17.2.4 Constantes
Es un elemento el cual su valor no cambia. En C# es una variable el cual su valor es
invariable durante toda la ejecución del programa. Para que esto sea posible se ha
de cumplir que el valor de una constante no pueda cambiar durante la ejecución.
179 | P á g i n a
Otro ejemplo, si ponemos:
Const int a=123;
No podremos cambiar el dato dentro de esta variable
a =23;
Porque nos marcara un error de compilación
Declaración de una Variable de solo Lectura
<readonly><tipoConstante><nombreConstante>= <valor>;
Solo pueden ser declaradas como atributos en una clase dentro de un método no
podríamos. Ejemplo:
Class Program
{
readonly int z = 80;
Static void main……………………..
180 | P á g i n a
Capítulo 18
Los tipos de datos primitivos son aquellos que almacenan directamente el valor, a
diferencia de los tipos de datos referencia que almacenan la dirección de memoria
donde se almacena el dato (los objetos son tipo de datos referencia)
Los tipos de datos primitivos los podemos agrupar en:
18.1 Enteros
Según el valor entero máximo a almacenar podemos elegir entre: int (–2147483,648,
2147483647) (es el que normalmente hemos elegido hasta este momento cada vez
que necesitamos almacenar un valor entero), byte (podemos almacenar un valor
entre 0 y 255), sbyte (-128 y 127), short (-32768, 32767), ushort (0, 65535), uint (0,
4294967295), long (–9223372036854775808, 9223372036854775807) y ulong (0,
18446744073709551615)
18.2 Decimal
Contiene valores de 128 bits (16 bytes) con signo que representan enteros de 96 bits
(12 bytes) ajustados por una potencia variable de 10.
El tipo de datos Decimal proporciona el número máximo de dígitos significativos para
un número. Admite hasta 29 dígitos.
Bytes: Contiene enteros de 8 bits sin signo (1 bytes) que se sitúan en el intervalo
entre 0 y 255. El valor predeterminado de Byte es 0.
Char: Contiene puntos de código de 16 bits (2 bytes) sin signo cuyo valor oscila entre
0 y 65535. Cada punto de código o código de carácter, representa un carácter
Unicode único. Números negativos. Char es un tipo sin signo y no puede representar
un valor negativo. En cualquier caso, no debería utilizar Char para albergar valores
numéricos.
Date: Contiene valores IEEE de 64 bits (8 bytes) que representan fechas
comprendidas entre el 1 de enero del año 0001 y el 31 de diciembre de 9999, y horas
comprendidas entre las 0:00:00 (medianoche) y las 11:59:59.
Utilice el tipo de datos Date para albergar valores de fecha, valores de tiempo o
valores de fecha y hora. Puede obtener la fecha y hora actual de la clase
DateAndTime.
181 | P á g i n a
Capítulo 19
Operadores aritméticos
En C# hay operadores que son muy simples de implementar algunos de ellos son los
siguientes:
19.1 Suma:
En la cual se tienen dos valores y se adicionan el uno con el otro.
19.2 Resta:
En la cual se tienen dos valores y se restan el uno con el otro.
19.3 Multiplicacion:
En la cual se tienen dos valores y se multiplican el uno con el otro.
19.4 Division:
En la cual se tienen dos valores y se dividen el uno con el otro.
19.5 Residuo:
En el resultado que queda de una operación puede ser una de las cuatro anteriores.
182 | P á g i n a
Capítulo 20
183 | P á g i n a
Ejemplo
184 | P á g i n a
El operador igual a (==) devuelve true (1) si ambos operandos tienen el mismo valor;
de lo contrario, devuelve false (0). El operador no es igual a (!=) devuelve true si los
operandos no tienen el mismo valor; de lo contrario, devuelve false.
Hemos utilizado el operador OR (||). También tenemos el operador AND (&&), que se
utiliza para añadir una condición que también ha de cumplirse.
Ejemplo:
185 | P á g i n a
Capítulo 21
Estructuras de decisión
21.1 If-else
La instrucción if else selecciona una instrucción para ejecución en base de un valor
186 | P á g i n a
21.2 If y sentencias compuestas
"if" es una condición o sentencia; se ejecuta si se cumple la condición puede ser
una sentencia simple o una compuesta.
21.3 Switch
Si queremos ver varios posibles valores, sería muy pesado tener que hacerlo con
muchos "if" seguidos o encadenados. La alternativa es emplear la orden "switch",
cuya sintaxis es:
switch (VARIABLE)
{
case "1": Console.WriteLine("");break;
case "2": Console.WriteLine(""); break;
case "3": Console.WriteLine(""); break;
case "4": Console.WriteLine(""); break;
case "5": Console.WriteLine(""); break;
Es decir:
187 | P á g i n a
Después, tras varias órdenes "case" se indica cada uno de los valores
posibles.
Los pasos (porque pueden ser varios) que se deben dar si la expresión tiene
un cierto valor se indican a continuación, terminando con "break".
Si hay que hacer algo en caso de que no se cumpla ninguna de las
condiciones, se detalla después de la palabra "default".
Si dos casos tienen que hacer lo mismo, se añade "goto case" a uno de ellos
para indicarlo.
Ejemplo
Capítulo 22
Estructura de Repetición
188 | P á g i n a
22.1 While
La instrucción while ejecuta una instrucción o un bloque de instrucciones hasta que
se evalúa una expresión específica false.
Ejemplo
En este ejemplo se ve que la condición while dice que mientras el valor sea 10 se
ejecutara la instrucción console.
22.2 Do While
Crea un bucle que ejecuta una sentencia especificada, hasta que la condición de
comprobación se evalúa como falsa. La condición se evalúa después de ejecutar la
sentencia, dando como resultado que la sentencia especificada se ejecute al menos
una vez.
Ejemplo:
189 | P á g i n a
22.3 For
Al usar un bucle for, puede ejecutar una instrucción o un bloque de instrucciones
repetidamente hasta que una expresión específica evalúe false. Este tipo de bucle es
útil para utilizar sobre matrices y para otras aplicaciones en las que sabe de antemano
cuántas veces desea que el bucle utilice.
Sintaxis:
int valor;
Ejemplo:
190 | P á g i n a
Capítulo 23
Operadores Lógicos
23.1 And
El operador AND condicional (&&) realiza un AND lógico de sus bool operandos, pero
solo evalúa su segundo operando si es necesario.
Observaciones
La operación
x && y
Corresponde a la operación
Dupdo
x&y
191 | P á g i n a
Excepto que si xes false, y no se evalúa, porque el resultado de la operación AND
false no importa cuál sea el valor de y. Esto se conoce como evaluación de
"cortocircuito".
Ejemplo:
23.2 Or
La operación
x || y
Corresponde a la operación
x|y
192 | P á g i n a
Excepto que si x es true, y no se evalúa porque la operación OR es true
independientemente del valor de y. Este concepto se conoce como evaluación de
"cortocircuito".
Ejemplo:
23.3 Not
Los tipos definidos por el usuario pueden sobrecargar al ! operador (ver operador ).
193 | P á g i n a
Ejemplo:
Capítulo 24
Manejo de cadenas
Una cadena es un objeto de tipo String cuyo valor es texto. Internamente, el texto se
almacena como una colección secuencial de solo lectura de objetos Char. No hay
194 | P á g i n a
ningún carácter que finaliza en null al final de una cadena de C#; por lo tanto, la
cadena de C# puede contener cualquier número de caracteres nulos insertados
('\0'). La propiedad Length de una cadena representa el número de objetos Char que
contiene, no el número de caracteres Unicode. Para obtener acceso a los puntos de
código Unicode individuales de una cadena, use el objeto StringInfo.
En C#, la palabra clave string es un alias de String. Por lo tanto, String y string son
equivalentes y se puede utilizar la convención de nomenclatura que prefiera. La
clase String proporciona muchos métodos para crear, manipular y comparar cadenas
de forma segura. Además, el lenguaje C# sobrecarga algunos operadores para
simplificar las operaciones de cadena comunes.
Ejemplo:
24.2 Búsqueda
Búsqueda Binaria en C#
Es un excelente método para buscar datos dentro de una estructura generalmente
un arreglo unidimensional.
La única condición para usar este algoritmo es que los datos dentro del arreglo estén
ordenados de menor a mayor.
La solución mas fácil para realizar una búsqueda es por fuerza bruta, pero este
método puede resultar bastante ineficiente cuando se tiene una gran cantidad de
195 | P á g i n a
datos, ya que habría que buscar posición por posición hasta encontrar el dato que
queremos.
El código por fuerza bruta es bastante sencillo:
Este codigo recorre todo el arreglo y verificamos si la posición i es igual al dato que
queremos buscar.
Ejemplo:
Como se muestra a continuación queremos hacer una búsqueda en un arreglo
unidimensional en este caso haremos una clase de búsqueda donde irán dentro
todos nuestros métodos a utilizar en donde crearemos nuestros métodos cargar(),
búsqueda() e imprimir() en el método cargar() es donde ingresaremos los datos de
nuestro arreglo en el método búsqueda() es donde realizaremos la búsqueda de
nuestro elemento en el arreglo y en el método imprimir() es donde mostraremos el
resultado final de nuestra búsqueda para por ultimo en el main llamar todos
nuestros métodos creados en la clase búsqueda para que sean visibles al usuario.
196 | P á g i n a
El resultado final es este
24.3 Concatenación
197 | P á g i n a
incluido otra cadena. En este caso contiene un espacio. De no hacerlo, el nombre y
el apellido hubieran quedado juntos y la cadena sería: “JuanLopez”.
Cuando llevamos a cabo la concatenación por medio del operador +, puede suceder
que muchas cadenas se guarden en la memoria y algunas de ellas no sean
necesarias, como en el caso de las cadenas que insertan espacios. Para mejorar el
uso de la memoria se puede utilizar StringBuilder, una clase que nos da
funcionalidades para facilitar la concatenación.Otra forma de concatenar es hacer
uso del método Concat(). Este método pertenece a String, es muy sencillo de utilizar
y solamente requiere de dos parámetros, que serán las cadenas que deseamos
concatenar. El método regresa una cadena, que es la cadena resultante de la
concatenación de los parámetros. Veamos un ejemplo de cómo podemos
concatenar: NombreCompleto = String.Concat(nombre, apellido); El método Concat()
es estático, por eso es posible usarlo sin tener que declarar un objeto de la clase
String. Para llevar a cabo una concatenación múltiple, podemos hacerlo de la
siguiente manera: NombreCompleto =String.Concat(nombre, String.Concat(“ “,
apellido));
Ejemplo:
Capítulo 25
Programación en C# (POO)
198 | P á g i n a
lo cual lo hace como un todo independiente pero que se interrelaciona con objetos
de su misma clase o de otras clases, como sucede en el mundo real.
25.1 Sintaxis
25.1.1Variables
Una variable está formada por un espacio en el sistema de almacenaje y un nombre
simbólico que está asociado a dicho espacio. Ese espacio contiene una cantidad de
información conocida o desconocida, es decir un valor.
Tipos de variables:
- Int Enteros: Almacena números naturales.
- Double Decimal: Almacena números decimales.
- Float Decimal: Almacena números decimales.
- String caracteres: Almacena caracteres / Letras.
199 | P á g i n a
- Char caracteres: Almacena caracteres de 1bts.
200 | P á g i n a
25.1.3 Operaciones Básicas
Son Operaciones matemáticas básicas, así como: Suma, Resta, División,
Multiplicación
201 | P á g i n a
Capítulo 26
Manejo de Cadenas
26.1 Concatenación
La concatenación es una operación que consiste en la unión de dos o más caracteres
para desarrollar una cadena de caracteres, conocida en inglés como string. Esta
cadena es una secuencia finita y ordenada de elementos.
Concatenación de conexión de entrada y salida
En esta concatenación le decimos que la variable obtenga el valor de la caja de
texto (TextBox.Tex)
TextBox1
TextBox2
TextBox3
202 | P á g i n a
Concatenación de caracteres
En esta concatenación nos permite mostrar más caracteres que no son variables.
26.2 Comparación
Operaciones en tipos integrales (tales como ==, !=, <, >, &, |) se les permite en
general en la enumeración.
203 | P á g i n a
Las secciones enumeran los operadores de C # comenzando con la precedencia más
alta hasta la más baja. Los operadores dentro de cada sección comparten el mismo
nivel de precedencia.
Ejemplo:
Capítulo 27
Sintaxis
public TimeSpan Subtract(
DateTime value
)
Parámetros:
value
Type: System.DateTime
Valor de fecha y hora que se va a restar.
Valor devuelto:
Type: System.TimeSpan
Intervalo que es igual a la fecha y hora representadas por esta instancia menos la
fecha y hora representadas por value.
204 | P á g i n a
Excepciones:
Exception Condition
Valor de propiedad
Type: System.DateTime
Nuevo objeto con la misma fecha que esta instancia y con el valor de hora establecido
en la medianoche (00:00:00).
Explicación
El valor de la propiedad P: System.DateTime.Kind del valor T: System.DateTime
devuelto es el mismo que el de la instancia actual.
Como el tipo T: System.DateTime representa fechas y horas en un solo tipo, es
importante evitar la interpretación errónea de una fecha devuelta por la propiedad P:
System.DateTime.Date como fecha y hora.
Ejemplos:
El siguiente ejemplo utiliza la propiedad P: System.DateTime.Date para extraer el
componente de fecha de un valor de T: System.DateTime con su componente de
tiempo establecido en cero (00:00:00 o medianoche). También ilustra que,
dependiendo de la cadena de formato utilizada al mostrar el valor T:
System.DateTime, el componente de tiempo puede seguir apareciendo en la salida
formateada.
using System;
public class Example
{
public static void Main()
{
DateTime date1 = new DateTime(2008, 6, 1, 7, 47, 0);
Console.WriteLine(date1.ToString());
207 | P á g i n a
Capítulo 28
Eventos
28.1 Concepto
Un evento consiste en una acción generada a partir de la interacción con una
aplicación: clic de mouse, pulsación de tecla o botón, selección de comando de un
menú, etc.
KeyDown
Se produce cuando se presiona una tecla mientras el control tiene el foco.
KeyPress
Se produce cuando se presiona una tecla de espacio o retroceso mientras el control
tiene el foco.
MouseDown
Se produce cuando el puntero del mouse se encuentra sobre el control y se
presiona un botón del mouse.
208 | P á g i n a
MouseUp Formatted: No underline
Se produce cuando el puntero del mouse se encuentra sobre el control y se suelta Formatted: No underline
un botón del mouse.
MouseLeave Formatted: No underline
Se produce cuando el puntero del mouse deja el control. Formatted: No underline
VisibleChanded
Se produce cuando cambia el valor de la propiedad Visible. Formatted: No underline, Spanish (Guatemala)
Formatted: No underline
Capítulo 29
Uso de controles
DataGridView(Control)
Proporciona un sistema flexible y extensible para mostrar y editar datos tabulares.
209 | P á g i n a
DateTimePicker(Control)
Permite al usuario seleccionar un único elemento de una lista de fechas u horas.
PictureBox(Control)
Muestra gráficos en formato de mapa de bits, GIF, JPEG, metarchivo o icono.
ProgressBar(Control)
Indica gráficamente el progreso de una acción hacia su finalización.
RadioButton (Control)
Presenta un conjunto de dos o más opciones mutuamente excluyentes para el usuario.
TextBox (Control)
Permite la entrada multilínea y editable por el usuario.
Label (Control)
Muestra texto que no se puede editar el usuario.
LinkLabel (Control)
Permite agregar vínculos de estilo Web a aplicaciones de Windows Forms.
ListBox (Control)
Permite al usuario seleccionar uno o más elementos de una lista predefinida.
ListView (Control)
Muestra una lista de elementos con iconos, en la forma del explorador de Windows.
210 | P á g i n a
29.1 Text Box
El cuadro de texto se utiliza para mostrar en pantalla un texto que se puede editar,
aunque también puede configurarse como control de sólo lectura. Los cuadros de
texto pueden mostrar varios controles en forma de cuadro. Líneas, ajustar el texto al
tamaño del control y agregar varis formato.
Sintaxis:
private void InitializeMyControl() {
// Se utiliza para insertar o mostrar texto dentro de un
recuadro.
textBox1.Text = "Este es un textbox";
}
29.2 Etiquetas
La etiqueta se muestra como una descripción en respuesta a un evento o
procesamiento en tiempo de ejecución de la aplicación. Ya que el objeto etiqueta no
puede recibir modificaciones durante su ejecución, normalmente puede utilizarse
también como un contador de manera oculta o para ayudar en el acceso de otros
objetos previamente trabajados con un fin en específico.
Sintaxis:
Private void button1_Click (object sender, EvenArgs e)
{ // Se declara la variable mensaje tipo “String”.
String mensaje = “”;
mensaje = textbox1.Text;
// Se iguala la variable al contenido de la Textbox1
211 | P á g i n a
Label
TextBox
Ejemplo:
212 | P á g i n a
29.4 Button
Un botón es un control, que es un componente interactivo que permite a los usuarios
comunicarse con una aplicación. Se puede hacer clic en un botón utilizando el mouse,
la tecla ENTER o la barra espaciadora si el botón tiene foco.
Ejemplo:
29.5 SoundPlayer
La herramienta sonido nos sirve para agregar un sonido a nuestra form.
Ejemplo
En las propiedades de nuestro programa, en recursos presionamos CTRL+4 y
agregamos nuestro archivo de audio en formato .wav.
213 | P á g i n a
29.6 ComboBox
Esta herramienta nos sirve para almacenar o insertar un conjunto de datos.
Ejemplo
29.7 ListBox
Permite seleccionar uno o varios elementos de una lista predefinida. Se diferencia
de un control DropDownList (Es la cual solo permite seleccionar un elemento de una
lista desplegable) por mostrar varios elementos a la vez y de manera opcional permite
que el usuario pueda seleccionar varios elementos.
214 | P á g i n a
Ejemplo
29.8 Calendario
Calendar muestra un calendario en el que los usuarios pueden desplazarse a
cualquier día de cualquier año, al ejecutar el control Calendar se presenta como una
tabla HTML.
Ejemplo
29.9 RadioButton
Presenta a los usuarios un conjunto de dos o más opciones exclusivamente entre sí.
Aunque puede parecer que los botones de radio y las casillas funcionan de forma
parecida, existe una diferencia importante: cuando un usuario selecciona un botón
de radio, no puede seleccionar ninguno de los otros botones de radio del mismo grupo
sin perder la selección de este botón.
215 | P á g i n a
Ejemplo
29.10 CheckBox
Indica si una condición determinada está activada o desactivada. Normalmente se
utiliza para presentar una selección Sí/No o Verdadero/Falso al usuario.
Ejemplo
216 | P á g i n a
29.11 Timer
Componente temporizador que genera una acción definido por el usuario.
Ejemplo
Iniciar un Temporizado con un Timer con la opción de iniciar y Detener
217 | P á g i n a
29.13 Form y sus partes
El uso de aplicaciones Windows forms , los controles para diseñar Interfaces gráficas
de usuario GUI, controles como groupbox, Label, TextBox, Button, Combobox,
ListBox, Datagridview, Picturebox, RadioButton, MenuStrip, entre otros;
modificaremos las propiedades más importantes de dichos controles y
desarrollaremos una GUI Utilizando el ID Microsoft Visual Studio.
Se explica también el manejo de eventos en el lenguaje de programación C#.
Windows Form
29.14 Controles
Button: Pueden Mostrar en ellos iconos para que los usuarios lo identifiquen
rápidamente, esto consigue agregando imágenes al componente.
218 | P á g i n a
Checkbox: Indica si una condición determinada esta activada o desactivad.
Normalmente se utiliza para presentar una selección Si / No ó Verdadero / Falso al
usuario.
Listview: Muestra una lista de elementos con iconos. Puede usar una vista de lista
para crear una interfaz de usuario similar al panel.
Maskedtextbox: Utiliza una máscara para distinguir si los datos que especifica el
usuario son apropiados o inapropiados.
219 | P á g i n a
Monthcalendar: Muestra una intuitiva interfaz gráfica de usuario para que los
usuarios vean y establezca información relativa a fechas.
Picturebox: Se utiliza para mostrar graficas en formato de mapa de bits gif o icono.
Richtextbox: Se utiliza para mostrar, escribir y manipular texto con formato. Hace
todo lo que hace el control textbox.
Textbox: Se utiliza generalmente para el texto que se puede editar, auqnue también
puede configurarse como control de solo lectura.
220 | P á g i n a
Tooltip: Muestra texto cuando el ususario apunta a otros controles, ejemplo: para
ahorrar espacio en un formulario.
Treeview: Puede mostrar una jerarquía de nodos a los usuarios, por ejemplo: la
forma en que los archivos y las carpetas se muestran en panel Izquierdo.
221 | P á g i n a
TableLayoutPanel: Organiza su contenido en una cuadricula, como el diseño se
realiza en tiempo de diseño y en tiempo de ejecución.
MenuStrip: Este control agrupa comandos de la aplicación y hace que sean mas
fácilmente accesible.
Capítulo 30
Métodos
222 | P á g i n a
Ejemplo:
Realizaremos un ejemplo de un método del objeto listbox para poder contar los
elementos que contiene.
Utilizamos el método .items para verificar los elementos y luego .count para contarlos.
223 | P á g i n a
Ejemplo
Realizaremos un ejemplo donde se sumen dos valores y luego nos devuelva el
resultado.
Para realizar esta función utilizaremos el valor de retorno “return” que nos servirá
para devolver el resultado de la suma.
Como podemos observar al dar clic en el botón aceptar nos visualiza en el label el
valor devuelto del resultado de la suma de los dos valeres.
224 | P á g i n a
30.2 Variables Globales
1. Manejar variables globales, estas pueden ser usadas desde cualquier parte del
sistema, la única manera que he encontrado es trabajando con el archivo app.xml
que tiene el proyecto, hay alguna otra manera por ejemplo en Visual Basic que existe
MODULEO para acceder a variables globales.
2. Manejar Métodos globales, estos métodos también serán usados desde cualquier
punto del proyecto, es decir hay manera de evitar instanciar cada que trabaje con
diferentes cosas. Al igual que en Visual Basic en el MODULO se puede acceder
directamente en este caso a una función para trabajarla en todo el entorno.
Por ejemplo:
C#
public static void PassesInteger()
{
int fortyFour = 44;
TakesInteger(fortyFour);
}
static void TakesInteger(int i)
{
i = 33;
}
C#
public class SampleRefType
{
public int value;
}
226 | P á g i n a
Ejemplo
C#
public static void TestRefType()
{
SampleRefType rt = new SampleRefType();
rt.value = 44;
ModifyObject(rt);
System.Console.WriteLine(rt.value);
}
static void ModifyObject(SampleRefType obj)
{
obj.value = 33;
}
Capítulo 31
Access y conexiones a C#
227 | P á g i n a
31.2 Creación de una tabla
Se elige la opción "crear tabla en vista de diseño".
228 | P á g i n a
31.3 Añadir Campos
Según vayamos introduciendo los nombres en la columna al salir de cada celda, ya
sea con la tecla return, con los cursores o con el ratón, veremos como en la celda
contigua de la columna “tipo de dato" aparece por si solo la palabra "texto".
Si nos situamos de nuevo en cualquiera de los campos que acabamos de crear
veremos cómo la zona inferior muestra los siguientes datos que corresponde a las
propiedades del campo y un texto que nos explica algo sobre las características que
nos pueden ayudar. En estas características hay ciertos valores predefinidos.
229 | P á g i n a
31.3.1 Propiedades de los campos
Hay varias propiedades más; algunas en blanco como "Titulo" y otras con valores
predefinidos, como "Requerido" que tiene el valor "No".
En la segunda columna "Tipo de datos", se nos ha definido por defecto todos los
campos como "Texto". Pero si pulsamos sobre alguno de ellos vemos como se
despliega una cortina con diversas opciones como numérico, Fecha/hora, moneda,
auto numérico, etc.
Vamos a seleccionar "Texto" para los cuatro primeros campos. Para CP elegiremos
"Numérico" y le pondremos una "tamaño de campo" de 5 caracteres y paro el campo
Nº de teléfono también elegiremos "Numéricos", y en "tamaño de campo" pondremos
9 caracteres.
231 | P á g i n a
31.6 Como modificar las estructuras de las tablas
En la columna descripción añadiremos la información necesaria que sirva para
comprender el motivo del campo.
Hemos creado el campo "Notas" al final de la tabla, pero podíamos haberlo creado
en cualquier otra posición, por ejemplo entre los apellidos y la dirección, simplemente
eligiendo la opción "insertar fila" del menú edición, que activamos con el botón
derecho del ratón, tras situar el puntero en la fila correspondiente.
232 | P á g i n a
Capítulo 32
233 | P á g i n a
Abrimos un Try/Catch (excepción) para manejar los problemas que pudiéramos tener;
Abrimos una conexión a la base de datos Access mostramos un mensaje de éxito y
se pueda cerrar la conexión.
Si ocurriera algún problema lo mostramos en pantalla
Ejecuta y tendremos:
234 | P á g i n a
Una vez que se verifica que la conexión funciona (a través del try/Catch) se obtendrán
los primeros resultados de la conexión, en este caso el mensaje.
235 | P á g i n a
32.2 Utilizando Origen de Datos
Primero Debemos colocar el origen de Datos, agregando estos, ya sea con la
combinación Mayús+Alt+D o manualmente desde la pestaña VER->Otras Ventanas-
>Orígenes de Datos.
Después de definir la conexión, los datos aparecen en una ventana. Desde esta
ventana, se puede arrastrar las tablas o vistas a los formularios.
236 | P á g i n a
Pestaña de Orígenes de datos desde donde se puede llamar la información de las
vistas o tablas de la BD
237 | P á g i n a
Se Mandan a llamar los datos para mostrar dentro del formulario. Y acá pueden ser
editados de igual manera que en la base Access.
238 | P á g i n a
Como podemos ver en este ejemplo, la sintaxis para insertar datos es la siguiente:
Nuestra consulta será almacenada en una variable de tipo String
Abriremos comillas dobles
Escribiremos INSERT INTO
Luego de esto colocamos el nombre de nuestra tabla (no campo)
Abrimos paréntesis y colocamos los campos a llenar, separados por una coma
Luego de esto escribimos la palabra clave VALUES
Abrimos nuevamente paréntesis
Y ojo acá llamaremos los datos a insertar
La sintaxis es la siguiente:
Si se insertara texto debemos abrir de esta manera ‘”
Concatenamos con nuestra variable
En este caso sería: VALUES (‘” + datos + ’”)
En caso de que queramos insertar números:
Se omite la comilla simple al inicio y final
Sería de esta manera: VALUES (” + datos + ”)
239 | P á g i n a
32.2.2 Actualizar datos
240 | P á g i n a
UPDATE NombreTabla SET CAMPOaActualizar = ‘” +nuevovalor+ ”’ WHERE
CAMPOaBUSCAR = ‘” +valorAbuscar+ ”’
Capítulo 33
Diagramas de componentes
33.1 UML
.
En Visual Studio, un diagrama de componentes muestra los elementos de un diseño
de un sistema de software. Un diagrama de componentes permite visualizar la
estructura de alto nivel del sistema y el comportamiento del servicio que estos
componentes proporcionan y usan a través de interfaces. Para crear un diagrama de
componentes UML, en el menú Arquitectura, haga clic en Nuevo diagrama UML o de
capas.
Para ver qué versiones de Visual Studio admiten esta característica,
vea Compatibilidad de versiones con las herramientas de arquitectura y modelado.
Puede usar un diagrama de componentes para describir un diseño que está
implementado en cualquier idioma o estilo. Los componentes pueden ser de cualquier
escala y pueden estar interconectados de cualquier manera.
.
33.1.1 Lectura de diagramas de componentes
En la tabla siguiente se describen los elementos que puede usar en un diagrama de
componentes, junto con sus propiedades principales.
241 | P á g i n a
Forma Elemento Descripción y propiedades principales
242 | P á g i n a
Forma Elemento Descripción y propiedades principales
243 | P á g i n a
Ejemplo de un dagrama UML
Capítulo 34
244 | P á g i n a
años pues nació con el objetivo de servir como lenguaje para aquellas personas que
deseaban introducirse por primera vez en el mundo de la programación, y luego fue
sufriendo modificaciones, hasta que en 1978 se estableció el Basic estándar.
Más adelante, en 1987, llegó una de las versiones más populares del lenguaje: el
viejo y querido QuickBasic, una joya de oro de los tiempos del MS-DOS. Las primeras
versiones eran interpretadas y no estructuradas. Las más recientes son estructuradas
y, a menudo, compiladas. En esos tiempos, BASIC solía enseñarse a los
programadores principiantes porque era “fácil” de utilizar y de comprender, y además
porque contiene los mismos conceptos fundamentales que muchos otros lenguajes
considerados más “difíciles”, como Pascal, C y COBOL, las cuales a su vez, eran
muy populares entre los programadores, mientras que había una especie de
desprecio hacia Basic, por tratarse de un lenguaje “para principiantes”.
Cuando aún no había pasado un año de su salida inicial al mercado, Visual Basic ya
había evolucionado rápidamente a un kit desarrollador altamente estratégico.
Microsoft había comenzado a utilizar Visual Basic internamente en algunos de sus
propios proyectos que estaba desarrollando. A medida que la demanda de Visual
Basic aumentaba, quedaba claro que los desarrolladores requerirían un Visual Basic
mejor y más capacitado. Para tratar a esta necesidad creciente, Microsoft anunció la
disponibilidad de Visual Basic 2.0 en noviembre de 1992. La segunda versión de
Visual Basic, distribuida en la edición estándar y profesional, proveía a los
desarrolladores un funcionamiento perceptiblemente mejorado y mayor capacidad
para crear aplicaciones de tamaño mayor y más sofisticadas. Incluía también una
ayuda para mejorar la puesta a punto y depuración, proveía de la capacidad de
conectarse a bases de datos mediante ODBC, y nuevas y productivas herramientas,
por ejemplo, la ventana de propiedades, sintaxis del código en color, y completo
soporte para un Interfaz de Múltiples Documentos (MDI).
245 | P á g i n a
34.2 Variables
Las variables son usadas dentro de ámbitos, el ámbito indica en qué lugar de la
aplicación desea utilizar la variable.
34.3 Constantes
Es un elemento con un nombre determinado que mantiene un valor constante
durante el desarrollo de todo el programa el cual no se puede cambiar. Las
constantes se definen con la instrucción “Constante”.
La definición de las constantes puede empezar con las palabras “Publica” o
“Privada”. Para que sean públicas o privadas. Por defecto son privadas.
246 | P á g i n a
34.4 Tipos de dato primitivo
Asignaciones de literales:
Los datos primitivos son los string ,number,bollean,null,doublé,integer etc.. que
podemos usar en nuestros programas
Aquí hay un pequeño ejemplo como se usan los tipos de dato primitivo:
Ejemplo
Capítulo 35
Operadores aritméticos
247 | P á g i n a
1.
Con ese mismo código les puede mostrar las operaciones que quiere que salga.
Sub Main()
Dim a, b, c, d, e, f As Integer
Dim g As String
Console.WriteLine("ingrese un numero")
a = Console.ReadLine
Console.WriteLine("ingrese un numero")
b = Console.ReadLine
Console.WriteLine("ingrese el simbolo de operacion
realizada(+ - * /)")
g = Console.ReadLine
c = a + b
d = a - b
e = a * b
f = a / b
If g = "+" Then
Console.WriteLine("el resultado es" & c)
ElseIf g = "-" Then
Console.WriteLine("el resultado es " & d)
ElseIf g = "*" Then
Console.WriteLine("el resultado es " & e)
Else
Console.WriteLine("el resultado es " & f)
End If
Console.ReadLine()
End Sub
248 | P á g i n a
Capítulo 36
249 | P á g i n a
36.2 Mayor que
Ejemplo:
Ingrese dos números indicando cual es el mayor
Indicación:
Indicamos tres variables dos para indicar el valor de los números, la tercera variable
ella nos permitirá colocar la indicación o la operación que deseamos realizar que
sería indicar cuál de los dos números es mayor que: a y b.
250 | P á g i n a
36.3 Mayor o igual que
Ejemplo:
Ingresar dos variables e indicar cuál de las dos es mayor o que.
Indicación: ya teniendo las tres variables ingresadas la otra la utilizaremos para la
operación o indicación que desean realizar que por este momento será que se
ingresaran dos números enteros y nos indicaran cuál de los dos es mayor o es igual
251 | P á g i n a
36.4 Igualdad
Ejemplo:
Ingresar dos variables e indicar si son iguales
Indicación: Utilizamos el console.writeline para mostrar un texto por pantalla
Con b=console.readline() le indicamos que lea el valor de la variable, nos mostrara
por pantalla si las dos variables son iguales.
252 | P á g i n a
36.5 Son desiguales
Ejemplo:
Ingresar dos número e indicar si son desiguales
Indicación:
Ya ingresadas las dos variables por teclado, la tercera variable le hemos indicado
que si a<>b son desiguales, si esta condición se cumple nos mostrara un mensaje
de texto en la pantalla, pero si no se cumple no mostrara nada
253 | P á g i n a
36.6 Menor o igual que
Ejemplo:
Ingrese dos números e indicar quien es el menor o igual
Indicación:
Ya ingresadas las tres variables es momento de validarlas que se utiliza
console.readline que nos permite ingresar por teclado el valor de las dos variables,
ya ingresadas podemos ver que nos mostrara las variables en pantalla, la tercera
variable colocamos la operación o lo que deseamos que realice que será que nos
muestre el menor o igual valor .
254 | P á g i n a
Capítulo 37
Estructuras de Condición
37.1 If simple
Le indicamos una condición si esta es verdadera se ejecuta, de lo contrario no
ejecutará la condición.
Ejemplo:
37.2 if – else
Le indicamos una condición si esta es verdadera se ejecuta, de lo contrario ejecutará
la siguiente condición. Es decir que tenemos actividades por verdadero y falso.
Por ejemplo:
255 | P á g i n a
37.3 if -elseif:
Permite, que si no se cumple la condición podamos indicar otra condición para
hacerlo aún más específico.
Ejemplo
Ejemplo:
256 | P á g i n a
Capítulo 38
Ciclos repetitivos
38.1 While
Es un ciclo repetitivo que puede ser utilizada cunado se desea repetir un conjunto
de declaraciones, un número indefinido de veces. La forma de declarar dicha
estructura es la siguiente:
While 1 “condición”
38.2 Do while
Los ciclos repetitivos do-while son una estructura de control cíclica, los cuales
permiten ejecutar una o varias líneas de código hasta el momento en el que llega a
su tope.
La forma de declarar dicha estructura es la siguiente:
Do While variable = 5 “condición”
38.3 For
La condición FOR es un bucle de repetición. El bucle FOR repite un grupo de
instrucciones un número especificado de veces.
Sintaxis:
Ejemplo:
258 | P á g i n a
En el ejemplo podemos ver como se le pide al usuario ingresar un número, y este
será multiplicado del 1 al 10 utilizando el ciclo de repetición for.
38.4 Switch
Sintaxis:
Select Case “variable”
Case “caso 1”
{Sentencia}
Case “caso 2”
{sentencia}
Case “caso n”
{sentencia}
End Select
ReadLine()
Ejemplo:
En este ejemplo podemos ver como se le pide un número al usuario, para que este
lo lleve a una de las opciones del Select Case.
259 | P á g i n a
Capítulo 39
Operadores Lógicos
Los operadores lógicos pueden crear condiciones compuestas en una fórmula, como
que se deben cumplir dos o más condiciones para elegir un determinado método de
cálculo. Con los operadores lógicos, puede describir estas combinaciones de
condiciones.
39.1 And
El operador lógico AND se utiliza en condiciones y su función es mostrar el
resultado si ambas expresiones son verdaderas o se cumplen.
Ejemplo:
Confeccionar un programa que permita el ingreso de 2 números, si ambos son
mayores a 10 que se muestre un mensaje.
En este ejemplo se puede observar que se tienen que cumplir las dos condiciones
para que se pueda mostrar el mensaje, de lo contrario no se mostraría nada.
39.2 Or
El operador lógico OR muestra el resultado de una condición si por lo menos una
expresión se cumple.
260 | P á g i n a
Ejemplo: Confeccionar un programa que permita el ingreso de 2 números, mostrar
un mensaje si a=10 o si b=20
En este ejemplo podemos observar que la condición si se cumple aunque solo una
expresión sea correcta como es la de b=15
39.4 Not
Revierte un valor true a false
Ejemplo:
Manejo de Cadenas
262 | P á g i n a
40.2 Búsqueda de Cadenas
Para realizar una búsqueda se emplea el método IndexOf el cual es el encargado de
realizar la búsqueda, En este ejemplo se utilizaran 3 variables para realizar una
simple búsqueda.
Ejemplo:
Module Example
Public Sub Main()
End Sub
End Module
263 | P á g i n a
40.3 Concatenación de Cadenas
La concatenación en las cadenas no es algo del otro mundo y se usa muy a menudo,
este tiene por objetivo el unir diversas cadenas una tras otra utilizando los símbolos
(+, &). Estos símbolos están hechos para utilizarse en diferentes casos, el símbolo
“&” está hecho para usarse únicamente en Cadenas, mientras que el símbolo “+” está
hecho para utilizarse con Cadenas y Números aunque tiende a dar errores cuando
no está bien declarado ya que a veces se interpreta como una suma lo cual es ilógico.
Module Example
Public Sub Main()
Dim EJEMPLO_CADENA As String = "abc"
Dim EJEMPLO_CADENA2 As String = "def"
Dim EJEMPLO_NUMEROS As String = "123"
Dim CONCATENACION_CADENA_SIGNO_& As String = EJEMPLO_CADENA &
EJEMPLO_CADENA2
Dim CONCATENACION_CADENA_SIGNO_+ As String = EJEMPLO_CADENA +
EJEMPLO_NUMEROS
End Sub
End Module
264 | P á g i n a