viernes, 9 de octubre de 2009
APLICACION DE BASE DE DATOS
1. Introducción
La información ha llegado a ser el eje que mueve a la mayoría de las organizaciones hoy día
La cantidad de información que se maneja actualmente es en extremo enorme.
Se tiene la necesidad de tenerla perfectamente organizada de manera que pueda ser accesada fácilmente y por otro lado se debe tener disponible todo el tiempo (sistemas 24x7)
La solución: las personas de computación han desarrollado conceptos, técnicas y sistemas bajo un tópico conocido como "bases de datos" (databases)
Definición
Surgen entonces los primeros conceptos:
Dato: es la representación física de un aspecto de la realidad
Base de datos: conjunto de datos, que pueden estar organizados y/o interrelacionados de alguna manera con un propósito particular
DBMS*: Sistema Manejador de Bases de Datos (DataBase Manager/Management System) es una colección e datos interrelacionados y un conjunto de programas para accesarlos. En otras palabras un sistema para crear, manipular y aprovechar bases de datos.*Algunos lo llaman SGBD (Sistema Gestionador de Bases de Datos)
1.1.3 Escenarios de bases de datos
Podemos afirmar que las bases de datos están en todas partes, cualquier problema que podamos pensar podemos asociar una base de datos
Bancos: cuentas, transacciones, fondos de ahorro, SAR
Aerolíneas: reservaciones, pasajes, suministros, personal de vuelos
Escuelas: cursos, calificaciones, horarios
Negocios: compras, proveedores, ventas, clientes, devoluciones
Fábricas: flujo de procesos, almacenes, envíos
Recursos Humanos: empleados, puestos, salarios, impuestos, prestaciones
Curiosamente el uso de las bases de datos puede llegar a ser tan transparente que para algunos pareciera que no existen como en las transacciones de web o el cajero del banco (ATM).
1.2 Sistemas de bases de datos vs sistemas de archivos(Databases vs File Systems)
El camino hacia las bases de datos ha sido largo y en el trayecto se han desarrollado un gran número de técnicas que forman los cimientos de las bd y de otras tecnologías.
Dentro de estas técnicas tenemos:
Archivos, Sistemas de Archivos, Acceso y manipulación de archivos, Indices
Pero...
por qué no es suficiente utilizar las herramientas anteriores y es necesario emplear un DBMS ?no es lo mismo ?cuál es la diferencia ?
No es lo mismo, un sistemas de archivos aún cuando pensemos que contiene lógicamente archivos y que se cuenta con índices para accesar los registros en ellos, carece de mucha funcionalidad que se emplea en la mayoría de las aplicaciones, aunque como se mencionó anteriormente, un DBMS emplea sistemas de archivos e índices para la manipulación de datos.
La funcionalidad adicional que provee un DBMS surge en base de algunos inconvenientes al emplear sistemas de archivos únicamente:
Redundancia de datos e inconsistencias (Redundancy and Inconsistency): formatos, duplicidad de información (alto costo de almacenamiento y acceso) e incongruencia entre datos o copias de datos a lo largo del sistema.
Dificultad de acceso (Access): en un sistema de archivos no se pueden obtener aquellos datos que no estén implantados en un programa, se carece de niveles de abstracción.
Aislamiento de datos (Isolation): debido al factor tiempo y los requerimientos que van surgiendo se puede llegar a tener un problema al intentar separar un conjunto de datos porque ya se tiene un enredo en los archivos y se podría dar el caso en que dos usuarios estén manipulando la misma información pero de distinta manera.
Integridad (Integrity): si queremos asociar dos datos, por ejemplo un alumno con una materia que esté cursando, debemos asegurarnos que ambas entidades existan, de lo contrario el alumno parecerá cursando un curso fantasma y viceversa. Para ello se emplean "restricciones de consistencia" (consistency constraints)
Atomicidad (Atomicity): el problema clásico de transacciones bancarias, u ocurre toda la transacción o no ocurre nada pero no puede quedarse a medias.
Acceso concurrente (Concurrent-access): garantizar un buen tiempo de respuesta, que todos los usuarios puedan accesar y/o modificar la información; esto no es fácil porque también hay que considerar que aunque los datos son los mismos, las aplicaciones no necesariamente lo son.
Seguridad (Security): no toda la información debe estar disponible a todos los usuarios, algunos usuarios solo tendrán permisos de lectura, esto es relativamente sencillo de resolver aplicando "roles" pero el problema aumenta cuando en luegar de pensar en terminos de usuarios pensamos en terminos de aplicaciones ya que el número de roles y sus combinaciones aumenta y mantener las restricciones de seguridad se torna complicado.
Podemos entonces extender la definición de DBMS como un sistema robusto que es capaz de emplear algoritmos de almacenamiento y recuperación de información para poder implementar un modelo de datos de manera física garantizando que todas las transacciones que se realizan con respecto a dichos datos sean "ácidas" (Atomicity, Consistency, Isolation, Durability).
1.3 Vistas de datos
Una de las ventajas de emplear una base de datos es que los datos se pueden ver a distintos niveles de abstracción, separando por ejemplo detalles de almacenamiento y mantenimiento.
Niveles de abstracción:
Nivel Físico: el más bajo y define cómo los datos son almacenados
Nivel Lógico: define qué datos hay almacenados y cómo se relacionan
Nivel de visión: más alto nivel, define vistas de "partes" de la base de datos, esto para restringir el acceso a determinados datos o bien para simplificar la interacción
1.4 Modelos de datos
1.4.1 Definición
Un modelo de datos es una colección de herramientas conceptuales para describir datos, sus relaciones, semántica y restricciones de consistencia
Exiten 3 niveles de modelado:
Conceptual
Modelo Entidad-Relación
Lógico
Modelo Relacional
Físico
Implementación en el DBMS
Publicado por fabricio en 17:39 0 comentarios
LAS FASES DEL PROCESO DE PROGRAMACIÓN
A fin de poder asegurar que un sistema cumpla con el sistema requerido por el cliente, no basta simplemente con un levantamiento y diseño funcional, especificación de los casos de uso y descripción de procesos. Es imprescindible el la comunicación con el Equipo de Desarrollo. Es decir, con la participación del programador.
Para DocIRS, un programador debe participar del análisis de los problemas delineados por el ingeniero de procesos en términos de los requerimientos detallados. Desde ahí va diseñando la estrategia a seguir en la estructura del programa. Codifica las instrucciones implementando algoritmos en el lenguaje de programación adecuado. Verifica la lógica del programa preparando rutinas de prueba. Revisa, depura y corrige los programas. Evalúa y modifica los programas existentes para tomar en cuenta los cambios producidos en los requerimientos del sistema. Finalmente prepara el documento base de la ayuda de usuarios.
Nótese que un programador debe comprender y expresarse a través de un lenguaje de alta programación. Este conocimiento puede ser por oficio práctico, intuición o por estudio formales . Los lenguajes de programación utilizan formalización matemática, tanto en su estructura como en su simbología. Sus convenciones y usos se realizan especialmente utilizando leyes algebraicas, tales como la Lógica de Bool, particularmente Algebra de Proposiciones, Teoría de Conjuntos, Funciones (algebra y sus propiedades), Series Numéricas, Recursividad, etc. y por tanto un programador trabaja fundamentado en conceptos matemáticos.
Cualquier consideración del proceso de programación mismo debe comenzar aislando cada una de sus fases componentes. Se identifica las siguientes cinco fases:
1. Análisis del problema2. Desarrollo de la solución3. Construcción de la solución en forma de programa4. Prueba5. Mantenimiento
El análisis del problema se refiere a la etapa del proceso en la que el programador toma conocimiento del problema antes de proceder a desarrollar una solución. Es un proceso de “introducción”, de naturaleza cognoscitiva y muy difícil de describir. Son demasiados los programadores que recorren esta etapa muy rápidamente, lo que hace que entiendan mal o malinterpreten las especificaciones. Algunos programadores prefieren devolver las especificaciones del problema al diseñador, para reducir la posibilidad de malentendido. Los errores que se cometen en esta etapa son con mucha frecuencia difíciles de detectar y consumen mucho tiempo cuando se les trata de remediar en las etapas posteriores.
La segunda etapa, el desarrollo de la solución, es eminentemente creativa. Aquí se debe hacer hincapié en la formulación del algoritmo antes que en su codificación en un lenguaje de programación en particular. Aunque algunos podrían argumentar que la habilidad para resolver problemas es algo innato y que es difícil educar o mejorar la creatividad, existe suficiente evidencia en el sentido de que algunos enfoques sistemáticos tienen mucho valor.
También es una alternativa recurrir a desarrollos anteriores hechos para otras soluciones (la librería propia) y desde allí comenzar el proceso de creación. Siempre y cuando el problema central haya sido resuelto realmente, puesto que si no es así esta situación acarreará problemas en las fases posteriores. Otro punto de suma importancia en esta etapa, es el definir la arquitectura del modelo de datos, las relaciones lógicas básicas y las pautas a seguir en las transacciones con la base(s) de datos que tendrá la aplicación. (Asumimos que en esta etapa, ya debe estar delineado el conjunto de clases de funciones que tendrá el sistema, y que posteriormente se transformarán en las entidades u objetos).
La tercera etapa identificada es la construcción de la solución desarrollada en forma de un programa real (o código). Considerando que la solución ha sido bien definida, este proceso es casi directo, pues es un proceso mental inmediato de las fases anteriores. Mediante rutinas, funciones, script, procedimientos y reglas del lenguaje de programación, se va ensamblando la aplicación de acuerdo con los estándares de estilo y de estructura.
La cuarta fase se refiere a la revisión y corrección del programa sea en de Ambiente de Desarrollo o Prueba. Es inevitable realizar pruebas mientras va construyendo las componentes de la aplicación. Todo programador experto prueba no sólo mentalmente cada instrucción cuando la está escribiendo, sino que va ejecutando las rutinas de cualquier módulo o sección de su programa antes de proceder a pasar a Ambiente de Prueba, donde probarán los que establecieron el diseño funcional del sistema. La prueba de las aplicaciones nunca es sencilla; Es natural que las pruebas muestran la presencia de errores y nunca se puede demostrar la ausencia de ellos. Una prueba con éxito sólo significa que no se detectaron errores bajo las circunstancias especiales de dicha prueba; esto no significa nada frente a otras circunstancias. Aunque se sabe, que el programado repite múltiples veces sus formas de prueba de lo que construye y siempre dejará espacios que encontrará un tercero.
En teoría, la (única manera en que las pruebas pueden demostrar que un programa es correcto es que se examinen todos los casos posibles (lo cual se conoce como una prueba exhaustiva), situación que es imposible técnicamente, incluso para los programas más simples.
Significa esto que las pruebas son inútiles? Definitivamente, no. El programador puede hacer mucho por reducir el número de casos a probar a partir del número requerido por una prueba exhaustiva. Tomando con mucho cuidado y seleccionando apropiadamente el diseño de los casos de prueba, puede reducirse el número de ellos, haciendo posible una prueba razonable con un número relativamente pequeño de casos.
La prueba de un programa es una tarea tan creativa como su mismo desarrollo, por lo que debe considerarse con la misma diligencia y entusiasmo. Algunos principios de las pruebas son claros: trátese de iniciar las pruebas de un programa con una mentalidad de saboteador, casi disfrutando la tarea de buscar un error. Hay que sospechar de todo. Los casos de prueba deberían diseñarse a partir de las especificaciones originales, en lugar del programa mismo; si se efectúan a partir del programa, algunos aspectos del problema que han sido pasados por alto durante su construcción también lo serán cuando se le pruebe. Para reducir las posibilidades de que esto ocurra en las compañías profesionales de programación, los encargados suelen insistir en que sean personas diferentes a los programadores originales quienes tengan a su cargo la prueba de los programas. Los usuarios de los programas disponen, con frecuencia, de sus propios datos de prueba desarrollados, independientemente, para usarlos cuando el programa esté a su disposición. Téngase en cuenta que la contraparte del cliente evalúa muy mal al equipo de desarrollo o proveedor cuyas aplicaciones no son capaces de pasar las pruebas de los usuarios. Por eso de cualquier forma que se haga, una prueba completa antes de pasar a la revisión del cliente es una parte esencial de los proyecto de programación.
La quinta etapa del proceso de programación, el mantenimiento del programa. Sin embargo, su importancia en el trabajo real nunca debe despreciarse. En general, el costo de mantenimiento de un programa de uso generalizado es del orden del 40% o más del costo de su desarrollo”. Al contrario de lo que sucede con el mantenimiento de hardware, el mantenimiento de los programas no se refiere a la reparación o cambio de partes deterioradas, sino a las modificaciones que deben hacerse a los defectos del diseño, lo cual puede incluir el desarrollo de funciones adicionales para reunir nuevas necesidades. El tiempo de los desarrolladores para producir nuevos programas se ve siempre afectado por el tiempo que deben dedicar al mantenimiento de los programas viejos. La inevitabilidad del mantenimiento debe reconocerse y, en consecuencia, deben realizarse las acciones que sean necesarias para reducir el tiempo que ello implica.
Publicado por fabricio en 17:37 0 comentarios
viernes 29 de mayo de 2009
Programa en java
class CCalcular
{
public static void main(String[] args)
{
float dato1 , dato2 , dato3 , dato4 , resultado;
float result;
dato1 = 2;
dato2 = 4;
dato3 = 8;
dato4 = 5;
//Suma
resultado = dato1 + dato2 + dato3 + dato4;
System.out.println (dato1 + "+" + dato2 + "+" + dato3 + "+" + dato4 + "=" + resultado);
//Media
result = resultado / 2;
System.out.println (resultado + "/" + 2 + "=" + result );
}
}
Publicado por fabricio en 18:22 0 comentarios
Programa en java
class CEcuacion
{
// realizar una ecuacion.
public static void main(String[] args)
{
float valora, valorb, valorc;
float resultado;
valora = 1;
valorb = 5;
valorc = 2;
resultado = 0;
resultado=(valorb * valorb - 4*(valora*valorc))/(2*valora);
System.out.println(resultado);
}
}
Publicado por fabricio en 18:15 0 comentarios
Programa en java
class CMundoJava
{
/* Este programa mostrara la palabra bienvenido al mundo de java.
* Tambien mostrara la frace " prodras dar resultado a muchos problemas "
*/
public static void main (String[] args)
{
System.out.println (" Bienvenido al mundo de java");
System.out.println (" Podras dar resultado a muchos problemas");
La información ha llegado a ser el eje que mueve a la mayoría de las organizaciones hoy día
La cantidad de información que se maneja actualmente es en extremo enorme.
Se tiene la necesidad de tenerla perfectamente organizada de manera que pueda ser accesada fácilmente y por otro lado se debe tener disponible todo el tiempo (sistemas 24x7)
La solución: las personas de computación han desarrollado conceptos, técnicas y sistemas bajo un tópico conocido como "bases de datos" (databases)
Definición
Surgen entonces los primeros conceptos:
Dato: es la representación física de un aspecto de la realidad
Base de datos: conjunto de datos, que pueden estar organizados y/o interrelacionados de alguna manera con un propósito particular
DBMS*: Sistema Manejador de Bases de Datos (DataBase Manager/Management System) es una colección e datos interrelacionados y un conjunto de programas para accesarlos. En otras palabras un sistema para crear, manipular y aprovechar bases de datos.*Algunos lo llaman SGBD (Sistema Gestionador de Bases de Datos)
1.1.3 Escenarios de bases de datos
Podemos afirmar que las bases de datos están en todas partes, cualquier problema que podamos pensar podemos asociar una base de datos
Bancos: cuentas, transacciones, fondos de ahorro, SAR
Aerolíneas: reservaciones, pasajes, suministros, personal de vuelos
Escuelas: cursos, calificaciones, horarios
Negocios: compras, proveedores, ventas, clientes, devoluciones
Fábricas: flujo de procesos, almacenes, envíos
Recursos Humanos: empleados, puestos, salarios, impuestos, prestaciones
Curiosamente el uso de las bases de datos puede llegar a ser tan transparente que para algunos pareciera que no existen como en las transacciones de web o el cajero del banco (ATM).
1.2 Sistemas de bases de datos vs sistemas de archivos(Databases vs File Systems)
El camino hacia las bases de datos ha sido largo y en el trayecto se han desarrollado un gran número de técnicas que forman los cimientos de las bd y de otras tecnologías.
Dentro de estas técnicas tenemos:
Archivos, Sistemas de Archivos, Acceso y manipulación de archivos, Indices
Pero...
por qué no es suficiente utilizar las herramientas anteriores y es necesario emplear un DBMS ?no es lo mismo ?cuál es la diferencia ?
No es lo mismo, un sistemas de archivos aún cuando pensemos que contiene lógicamente archivos y que se cuenta con índices para accesar los registros en ellos, carece de mucha funcionalidad que se emplea en la mayoría de las aplicaciones, aunque como se mencionó anteriormente, un DBMS emplea sistemas de archivos e índices para la manipulación de datos.
La funcionalidad adicional que provee un DBMS surge en base de algunos inconvenientes al emplear sistemas de archivos únicamente:
Redundancia de datos e inconsistencias (Redundancy and Inconsistency): formatos, duplicidad de información (alto costo de almacenamiento y acceso) e incongruencia entre datos o copias de datos a lo largo del sistema.
Dificultad de acceso (Access): en un sistema de archivos no se pueden obtener aquellos datos que no estén implantados en un programa, se carece de niveles de abstracción.
Aislamiento de datos (Isolation): debido al factor tiempo y los requerimientos que van surgiendo se puede llegar a tener un problema al intentar separar un conjunto de datos porque ya se tiene un enredo en los archivos y se podría dar el caso en que dos usuarios estén manipulando la misma información pero de distinta manera.
Integridad (Integrity): si queremos asociar dos datos, por ejemplo un alumno con una materia que esté cursando, debemos asegurarnos que ambas entidades existan, de lo contrario el alumno parecerá cursando un curso fantasma y viceversa. Para ello se emplean "restricciones de consistencia" (consistency constraints)
Atomicidad (Atomicity): el problema clásico de transacciones bancarias, u ocurre toda la transacción o no ocurre nada pero no puede quedarse a medias.
Acceso concurrente (Concurrent-access): garantizar un buen tiempo de respuesta, que todos los usuarios puedan accesar y/o modificar la información; esto no es fácil porque también hay que considerar que aunque los datos son los mismos, las aplicaciones no necesariamente lo son.
Seguridad (Security): no toda la información debe estar disponible a todos los usuarios, algunos usuarios solo tendrán permisos de lectura, esto es relativamente sencillo de resolver aplicando "roles" pero el problema aumenta cuando en luegar de pensar en terminos de usuarios pensamos en terminos de aplicaciones ya que el número de roles y sus combinaciones aumenta y mantener las restricciones de seguridad se torna complicado.
Podemos entonces extender la definición de DBMS como un sistema robusto que es capaz de emplear algoritmos de almacenamiento y recuperación de información para poder implementar un modelo de datos de manera física garantizando que todas las transacciones que se realizan con respecto a dichos datos sean "ácidas" (Atomicity, Consistency, Isolation, Durability).
1.3 Vistas de datos
Una de las ventajas de emplear una base de datos es que los datos se pueden ver a distintos niveles de abstracción, separando por ejemplo detalles de almacenamiento y mantenimiento.
Niveles de abstracción:
Nivel Físico: el más bajo y define cómo los datos son almacenados
Nivel Lógico: define qué datos hay almacenados y cómo se relacionan
Nivel de visión: más alto nivel, define vistas de "partes" de la base de datos, esto para restringir el acceso a determinados datos o bien para simplificar la interacción
1.4 Modelos de datos
1.4.1 Definición
Un modelo de datos es una colección de herramientas conceptuales para describir datos, sus relaciones, semántica y restricciones de consistencia
Exiten 3 niveles de modelado:
Conceptual
Modelo Entidad-Relación
Lógico
Modelo Relacional
Físico
Implementación en el DBMS
Publicado por fabricio en 17:39 0 comentarios
LAS FASES DEL PROCESO DE PROGRAMACIÓN
A fin de poder asegurar que un sistema cumpla con el sistema requerido por el cliente, no basta simplemente con un levantamiento y diseño funcional, especificación de los casos de uso y descripción de procesos. Es imprescindible el la comunicación con el Equipo de Desarrollo. Es decir, con la participación del programador.
Para DocIRS, un programador debe participar del análisis de los problemas delineados por el ingeniero de procesos en términos de los requerimientos detallados. Desde ahí va diseñando la estrategia a seguir en la estructura del programa. Codifica las instrucciones implementando algoritmos en el lenguaje de programación adecuado. Verifica la lógica del programa preparando rutinas de prueba. Revisa, depura y corrige los programas. Evalúa y modifica los programas existentes para tomar en cuenta los cambios producidos en los requerimientos del sistema. Finalmente prepara el documento base de la ayuda de usuarios.
Nótese que un programador debe comprender y expresarse a través de un lenguaje de alta programación. Este conocimiento puede ser por oficio práctico, intuición o por estudio formales . Los lenguajes de programación utilizan formalización matemática, tanto en su estructura como en su simbología. Sus convenciones y usos se realizan especialmente utilizando leyes algebraicas, tales como la Lógica de Bool, particularmente Algebra de Proposiciones, Teoría de Conjuntos, Funciones (algebra y sus propiedades), Series Numéricas, Recursividad, etc. y por tanto un programador trabaja fundamentado en conceptos matemáticos.
Cualquier consideración del proceso de programación mismo debe comenzar aislando cada una de sus fases componentes. Se identifica las siguientes cinco fases:
1. Análisis del problema2. Desarrollo de la solución3. Construcción de la solución en forma de programa4. Prueba5. Mantenimiento
El análisis del problema se refiere a la etapa del proceso en la que el programador toma conocimiento del problema antes de proceder a desarrollar una solución. Es un proceso de “introducción”, de naturaleza cognoscitiva y muy difícil de describir. Son demasiados los programadores que recorren esta etapa muy rápidamente, lo que hace que entiendan mal o malinterpreten las especificaciones. Algunos programadores prefieren devolver las especificaciones del problema al diseñador, para reducir la posibilidad de malentendido. Los errores que se cometen en esta etapa son con mucha frecuencia difíciles de detectar y consumen mucho tiempo cuando se les trata de remediar en las etapas posteriores.
La segunda etapa, el desarrollo de la solución, es eminentemente creativa. Aquí se debe hacer hincapié en la formulación del algoritmo antes que en su codificación en un lenguaje de programación en particular. Aunque algunos podrían argumentar que la habilidad para resolver problemas es algo innato y que es difícil educar o mejorar la creatividad, existe suficiente evidencia en el sentido de que algunos enfoques sistemáticos tienen mucho valor.
También es una alternativa recurrir a desarrollos anteriores hechos para otras soluciones (la librería propia) y desde allí comenzar el proceso de creación. Siempre y cuando el problema central haya sido resuelto realmente, puesto que si no es así esta situación acarreará problemas en las fases posteriores. Otro punto de suma importancia en esta etapa, es el definir la arquitectura del modelo de datos, las relaciones lógicas básicas y las pautas a seguir en las transacciones con la base(s) de datos que tendrá la aplicación. (Asumimos que en esta etapa, ya debe estar delineado el conjunto de clases de funciones que tendrá el sistema, y que posteriormente se transformarán en las entidades u objetos).
La tercera etapa identificada es la construcción de la solución desarrollada en forma de un programa real (o código). Considerando que la solución ha sido bien definida, este proceso es casi directo, pues es un proceso mental inmediato de las fases anteriores. Mediante rutinas, funciones, script, procedimientos y reglas del lenguaje de programación, se va ensamblando la aplicación de acuerdo con los estándares de estilo y de estructura.
La cuarta fase se refiere a la revisión y corrección del programa sea en de Ambiente de Desarrollo o Prueba. Es inevitable realizar pruebas mientras va construyendo las componentes de la aplicación. Todo programador experto prueba no sólo mentalmente cada instrucción cuando la está escribiendo, sino que va ejecutando las rutinas de cualquier módulo o sección de su programa antes de proceder a pasar a Ambiente de Prueba, donde probarán los que establecieron el diseño funcional del sistema. La prueba de las aplicaciones nunca es sencilla; Es natural que las pruebas muestran la presencia de errores y nunca se puede demostrar la ausencia de ellos. Una prueba con éxito sólo significa que no se detectaron errores bajo las circunstancias especiales de dicha prueba; esto no significa nada frente a otras circunstancias. Aunque se sabe, que el programado repite múltiples veces sus formas de prueba de lo que construye y siempre dejará espacios que encontrará un tercero.
En teoría, la (única manera en que las pruebas pueden demostrar que un programa es correcto es que se examinen todos los casos posibles (lo cual se conoce como una prueba exhaustiva), situación que es imposible técnicamente, incluso para los programas más simples.
Significa esto que las pruebas son inútiles? Definitivamente, no. El programador puede hacer mucho por reducir el número de casos a probar a partir del número requerido por una prueba exhaustiva. Tomando con mucho cuidado y seleccionando apropiadamente el diseño de los casos de prueba, puede reducirse el número de ellos, haciendo posible una prueba razonable con un número relativamente pequeño de casos.
La prueba de un programa es una tarea tan creativa como su mismo desarrollo, por lo que debe considerarse con la misma diligencia y entusiasmo. Algunos principios de las pruebas son claros: trátese de iniciar las pruebas de un programa con una mentalidad de saboteador, casi disfrutando la tarea de buscar un error. Hay que sospechar de todo. Los casos de prueba deberían diseñarse a partir de las especificaciones originales, en lugar del programa mismo; si se efectúan a partir del programa, algunos aspectos del problema que han sido pasados por alto durante su construcción también lo serán cuando se le pruebe. Para reducir las posibilidades de que esto ocurra en las compañías profesionales de programación, los encargados suelen insistir en que sean personas diferentes a los programadores originales quienes tengan a su cargo la prueba de los programas. Los usuarios de los programas disponen, con frecuencia, de sus propios datos de prueba desarrollados, independientemente, para usarlos cuando el programa esté a su disposición. Téngase en cuenta que la contraparte del cliente evalúa muy mal al equipo de desarrollo o proveedor cuyas aplicaciones no son capaces de pasar las pruebas de los usuarios. Por eso de cualquier forma que se haga, una prueba completa antes de pasar a la revisión del cliente es una parte esencial de los proyecto de programación.
La quinta etapa del proceso de programación, el mantenimiento del programa. Sin embargo, su importancia en el trabajo real nunca debe despreciarse. En general, el costo de mantenimiento de un programa de uso generalizado es del orden del 40% o más del costo de su desarrollo”. Al contrario de lo que sucede con el mantenimiento de hardware, el mantenimiento de los programas no se refiere a la reparación o cambio de partes deterioradas, sino a las modificaciones que deben hacerse a los defectos del diseño, lo cual puede incluir el desarrollo de funciones adicionales para reunir nuevas necesidades. El tiempo de los desarrolladores para producir nuevos programas se ve siempre afectado por el tiempo que deben dedicar al mantenimiento de los programas viejos. La inevitabilidad del mantenimiento debe reconocerse y, en consecuencia, deben realizarse las acciones que sean necesarias para reducir el tiempo que ello implica.
Publicado por fabricio en 17:37 0 comentarios
viernes 29 de mayo de 2009
Programa en java
class CCalcular
{
public static void main(String[] args)
{
float dato1 , dato2 , dato3 , dato4 , resultado;
float result;
dato1 = 2;
dato2 = 4;
dato3 = 8;
dato4 = 5;
//Suma
resultado = dato1 + dato2 + dato3 + dato4;
System.out.println (dato1 + "+" + dato2 + "+" + dato3 + "+" + dato4 + "=" + resultado);
//Media
result = resultado / 2;
System.out.println (resultado + "/" + 2 + "=" + result );
}
}
Publicado por fabricio en 18:22 0 comentarios
Programa en java
class CEcuacion
{
// realizar una ecuacion.
public static void main(String[] args)
{
float valora, valorb, valorc;
float resultado;
valora = 1;
valorb = 5;
valorc = 2;
resultado = 0;
resultado=(valorb * valorb - 4*(valora*valorc))/(2*valora);
System.out.println(resultado);
}
}
Publicado por fabricio en 18:15 0 comentarios
Programa en java
class CMundoJava
{
/* Este programa mostrara la palabra bienvenido al mundo de java.
* Tambien mostrara la frace " prodras dar resultado a muchos problemas "
*/
public static void main (String[] args)
{
System.out.println (" Bienvenido al mundo de java");
System.out.println (" Podras dar resultado a muchos problemas");
jueves, 21 de mayo de 2009
METODOS DE APPLET
Métodos de Applet
En la clase Applet, se llama al método paint() cada vez que el método arranca o necesita ser refrescado, pero no hace nada.
De acuerdo a las normas de sobrecarga, se ejecutará este último paint() y no el paint() vacío de la clase Applet. Luego, aquí se ejecuta el método drawString(), que le dice al applet cómo debe aparecer un texto en el área de dibujo.
Compilación de un Applet
Ahora que ya está el código del applet básico escrito y el fichero fuente Java que lo contiene guardado en disco, es necesario compilarlo y obtener un fichero .class ejecutable. Se utiliza el compilador Java, javac, para realizar la tarea. El comando de compilación será:
javac HolaMundo.java
Eso es todo. El compilador javac generará un fichero HolaMundo.class que podrá ser llamado desde cualquier navegador con soporte Java y, por tanto, capaz de ejecutar applets Java.
Llamada a Applets
Con ellos se puede ver código escrito en lenguaje html básico y acceder a todo el texto, gráfico, sonido e hipertexto que se pueda ver con cualquier otro navegador.
Pero además, y esto es lo que tienen de especial, pueden ejecutar applets, que no es html estándar
Esta marca html llama al applet SuCodigo.class y establece su ancho y alto inicial. Cuando se acceda a la página Web donde se encuentre incluida la marca, se ejecutará el byte-code contenido en SuCodigo.class, obteniéndose el resultado de la ejecución del applet en la ventana del navegador, con soporte Java, que se esté utilizando.
Si no se dispone de ningún navegador, se puede utilizar el visor de applets que proporciona Sun con el JDK, el appletviewer, que además requiere muchos menos recursos de la máquina en que se esté ejecutando, que cualquier otro de los navegadores que se acaban de citar.
Prueba de un Applet
El JDK, Kit de Desarrollo de Java, incluye el visor de applets básico, appletviewer, que puede utilizarse para la visualización rápida y prueba de applets. La ejecución de un applet sobre appletviewer se realiza a través de la llamada:
%appletviewer fichero.html
En este caso el fichero con el código html que ejecutará el applet HolaMundo es HolaMundo.html que generará la salida que muestra la figura.
En la clase Applet, se llama al método paint() cada vez que el método arranca o necesita ser refrescado, pero no hace nada.
De acuerdo a las normas de sobrecarga, se ejecutará este último paint() y no el paint() vacío de la clase Applet. Luego, aquí se ejecuta el método drawString(), que le dice al applet cómo debe aparecer un texto en el área de dibujo.
Compilación de un Applet
Ahora que ya está el código del applet básico escrito y el fichero fuente Java que lo contiene guardado en disco, es necesario compilarlo y obtener un fichero .class ejecutable. Se utiliza el compilador Java, javac, para realizar la tarea. El comando de compilación será:
javac HolaMundo.java
Eso es todo. El compilador javac generará un fichero HolaMundo.class que podrá ser llamado desde cualquier navegador con soporte Java y, por tanto, capaz de ejecutar applets Java.
Llamada a Applets
Con ellos se puede ver código escrito en lenguaje html básico y acceder a todo el texto, gráfico, sonido e hipertexto que se pueda ver con cualquier otro navegador.
Pero además, y esto es lo que tienen de especial, pueden ejecutar applets, que no es html estándar
Esta marca html llama al applet SuCodigo.class y establece su ancho y alto inicial. Cuando se acceda a la página Web donde se encuentre incluida la marca, se ejecutará el byte-code contenido en SuCodigo.class, obteniéndose el resultado de la ejecución del applet en la ventana del navegador, con soporte Java, que se esté utilizando.
Si no se dispone de ningún navegador, se puede utilizar el visor de applets que proporciona Sun con el JDK, el appletviewer, que además requiere muchos menos recursos de la máquina en que se esté ejecutando, que cualquier otro de los navegadores que se acaban de citar.
Prueba de un Applet
El JDK, Kit de Desarrollo de Java, incluye el visor de applets básico, appletviewer, que puede utilizarse para la visualización rápida y prueba de applets. La ejecución de un applet sobre appletviewer se realiza a través de la llamada:
%appletviewer fichero.html
En este caso el fichero con el código html que ejecutará el applet HolaMundo es HolaMundo.html que generará la salida que muestra la figura.
APLET
1. Defina APPLET
2. ¿Cuáles son los componentes básicos de los applets?
3. ¿’A que se le denomina Clase APPLET?
4. ¿Defina clase, método, compilación, llamada y prueba applet?
Desarrollo
1- Applet:Componente de software, escrito en un lenguaje de programación , que se ejecuta bajo el control de una aplicación más grande que lo contiene (como un navegador web)
CARACTERIZTICAS DE LOS APLETS:Se ejecutan sólo en la plataforma "cliente" de un sistema, como contraste de un servlet.
A diferencia de las subrutinas, en los applets ciertas capacidades son restringidas por el contenedor (el navegador).
Un applet está escrito en un lenguaje diferente del script o del HTML que lo invoca.
Los applet son escritos en un lenguaje compilado, mientras que el lenguaje scripting del contenedor es un lenguaje interpretado. Esto permite mayor performance y potencia al applet.* A diferencia de una subrutina, puede implementarse un componente web completo en forma de applet.
A diferencia de un programa, no puede ejecutarse de forma independiente (necesita un programa contenedor).Componentes Basicos de Applet, son las Variables y los Metodos
Los Componentes Basicos de Applet, son las Variables y los Metodos
La Clase Applet
Se puede crear una nueva clase, en este caso HolaMundo, extendiendo la clase básica de Java: Applet. De esta forma, se hereda todo lo necesario para crear un applet. Modificando determinados métodos del applet, se puede lograr que lleve a cabo las funciones que se desee.
import java.applet.Applet;
. . .
public class HolaMundo extends Applet {
2. ¿Cuáles son los componentes básicos de los applets?
3. ¿’A que se le denomina Clase APPLET?
4. ¿Defina clase, método, compilación, llamada y prueba applet?
Desarrollo
1- Applet:Componente de software, escrito en un lenguaje de programación , que se ejecuta bajo el control de una aplicación más grande que lo contiene (como un navegador web)
CARACTERIZTICAS DE LOS APLETS:Se ejecutan sólo en la plataforma "cliente" de un sistema, como contraste de un servlet.
A diferencia de las subrutinas, en los applets ciertas capacidades son restringidas por el contenedor (el navegador).
Un applet está escrito en un lenguaje diferente del script o del HTML que lo invoca.
Los applet son escritos en un lenguaje compilado, mientras que el lenguaje scripting del contenedor es un lenguaje interpretado. Esto permite mayor performance y potencia al applet.* A diferencia de una subrutina, puede implementarse un componente web completo en forma de applet.
A diferencia de un programa, no puede ejecutarse de forma independiente (necesita un programa contenedor).Componentes Basicos de Applet, son las Variables y los Metodos
Los Componentes Basicos de Applet, son las Variables y los Metodos
La Clase Applet
Se puede crear una nueva clase, en este caso HolaMundo, extendiendo la clase básica de Java: Applet. De esta forma, se hereda todo lo necesario para crear un applet. Modificando determinados métodos del applet, se puede lograr que lleve a cabo las funciones que se desee.
import java.applet.Applet;
. . .
public class HolaMundo extends Applet {
lunes, 18 de mayo de 2009
CLASE, SUBCLASE E INSTANCIA
CLASE: Es una declaración o una abstracción de un objeto es decir la definición de un objeto . Cuando se programa un objeto y se definen sus características y funcionalidades, realmente se programa una clase.
SUBCLASE: Las subclases añaden nuevos métodos, y nuevas variables. Es un grupo de clases y órdenes que se crean por la necesidad de agrupar en conjuntos naturales los órdenes de una clase
INSTANCIA: es un modelo de comunicación con la Administración pública que, con variantes, un administrado o interesado puede utilizar para reclamar, solicitar o hacer una denunciar.
JAVA: Java es un lenguaje orientado a objetos, eso implica que su concepción es muy próxima a la forma de pensar humana. Es un lenguaje que es compilado, generando ficheros de clases compilados, pero estas clases compiladas, son en realidad interpretadas por la máquina virtual de java. Siendo la máquina virtual de java la que mantiene el control sobre las clases que se estén ejecutando.
Las características mas importantes son:Es un lenguaje multiplataforma: El mismo código java que funciona en un sistema operativo, funcionará en cualquier otro sistema.Es un lenguaje multiplataforma: El mismo código java que funciona en un sistema operativo, funciona en cualquier otro sistema operativo que tenga instalada la máquina virtual javaEs un lenguaje seguro: La máquina virtual, cuando ejecuta el código java, realiza comprobaciones de seguridad, además el propio lenguaje necesita otras características inseguras, como los punteros.
SUBCLASE: Las subclases añaden nuevos métodos, y nuevas variables. Es un grupo de clases y órdenes que se crean por la necesidad de agrupar en conjuntos naturales los órdenes de una clase
INSTANCIA: es un modelo de comunicación con la Administración pública que, con variantes, un administrado o interesado puede utilizar para reclamar, solicitar o hacer una denunciar.
JAVA: Java es un lenguaje orientado a objetos, eso implica que su concepción es muy próxima a la forma de pensar humana. Es un lenguaje que es compilado, generando ficheros de clases compilados, pero estas clases compiladas, son en realidad interpretadas por la máquina virtual de java. Siendo la máquina virtual de java la que mantiene el control sobre las clases que se estén ejecutando.
Las características mas importantes son:Es un lenguaje multiplataforma: El mismo código java que funciona en un sistema operativo, funcionará en cualquier otro sistema.Es un lenguaje multiplataforma: El mismo código java que funciona en un sistema operativo, funciona en cualquier otro sistema operativo que tenga instalada la máquina virtual javaEs un lenguaje seguro: La máquina virtual, cuando ejecuta el código java, realiza comprobaciones de seguridad, además el propio lenguaje necesita otras características inseguras, como los punteros.
jueves, 30 de abril de 2009
PRIMEROS PASOS EN JAVA
Una mínima aplicación en Java
La aplicación más pequeña posible es la que simplemente imprime un mensaje en la pantalla. Tradicionalmente, el mensaje suele ser "Hola Mundo!". Esto es justamente lo que hace el siguiente fragmento de código: // Aplicación HolaMundo de ejemplo
//
class HolaMundoApp {
public static void main( String args[] ) {
System.out.println( "Hola Mundo!" );
}
}
HolaMundo
Hay que ver en detalle la aplicación anterior, línea a línea. Esas líneas de código contienen los componentes mínimos para imprimir Hola Mundo! en la pantalla. Es un ejemplo muy simple, que no instancia objetos de ninguna otra clase; sin embargo, accede a otra clase incluida en el JDK. // Aplicación HolaMundo de ejemplo
//
Estas dos primeras líneas son comentarios. Hay tres tipos de comentarios en Java, // es un comentario orientado a línea. class HolaMundoApp {
Esta línea declara la clase HolaMundoApp. El nombre de la clase especificado en el fichero fuente se utiliza para crear un fichero nombredeclase.class en el directorio en el que se compila la aplicación. En este caso, el compilador creará un fichero llamado HolaMundoApp.class. public static void main( String args[] ) {
Esta línea especifica un método que el intérprete Java busca para ejecutar en primer lugar. Igual que en otros lenguajes, Java utiliza una palabra clave main para especificar la primera función a ejecutar. En este ejemplo tan simple no se pasan argumentos.
public significa que el método main() puede ser llamado por cualquiera, incluyendo el intérprete Java.
static es una palabra clave que le dice al compilador que main se refiere a la propia clase HolaMundoApp y no a ninguna instancia de la clase. De esta forma, si alguien intenta hacer otra instancia de la clase, el método main() no se instanciaría.
void indica que main( ) no devuelve nada. Esto es importante ya que Java realiza una estricta comprobación de tipos, incluyendo los tipos que se ha declarado que devuelven los métodos.
args[ ] es la declaración de un array de Strings. Estos son los argumentos escritos tras el nombre de la clase en la línea de comandos: %java HolaMundoApp arg1 arg2 ...
System.out.println( "Hola Mundo!" );
Esta es la funcionalidad de la aplicación. Esta línea muestra el uso de un nombre de clase y método. Se usa el método println( ) de la clase out que está en el paquete System.
A una variable de tipo class se puede acceder sin necesidad de instanciar ningún objeto de esa clase. Por ello ha de ser un tipo básico o primitivo, o bien puede ser una referencia que apunta a otro objeto. En este caso, la variable out es una referencia que apunta a un objeto de otro tipo, aquí una instancia de la clase PrintStream (un objeto PrintStream), que es automáticamente instanciado cuando la clase System es cargada en la aplicación. Esto es algo semejante al hecho de que los objetos stream de entrada/salida, cin y cout son automáticamente instanciados y enlazados a los dispositivos estándar de entrada y salida cuando un programa C++ comienza su ejecución.
El método println( ) toma una cadena como argumento y la escribe en el stream de salida estándar; en este caso, la ventana donde se lanza la aplicación. La clase PrintStream tiene un método instanciable llamado println( ), que lo hace e presentar en la salida estándar del Sistema el argumento que se le pase. En este caso, se utiliza la variable o instancia de out para acceder al método. }
}
Finalmente, se cierran las llaves que limitan el método main() y la clase HolaMundoApp. En C++, la función main( ) en un programa puede tener cualquiera de los siguientes prototipos: tipo_retorno main( )
tipo_retorno main( int argc,char argv[ ] )
El tipo_retorno puede ser cualquier tipo válido, o void, para indicar que la función no tiene que devolver valor alguno. La lista de argumentos puede estar vacía, o contener los argumentos de soporte para pasar parámetros en la línea de comandos. Esta forma de implementación la función difiere de la que acaba de presentar para Java, que siempre habrá de ser la misma, independientemente de los valores de retorno o la lista de parámetros que se pasen en la lista de argumentos a la aplicación.
La aplicación más pequeña posible es la que simplemente imprime un mensaje en la pantalla. Tradicionalmente, el mensaje suele ser "Hola Mundo!". Esto es justamente lo que hace el siguiente fragmento de código: // Aplicación HolaMundo de ejemplo
//
class HolaMundoApp {
public static void main( String args[] ) {
System.out.println( "Hola Mundo!" );
}
}
HolaMundo
Hay que ver en detalle la aplicación anterior, línea a línea. Esas líneas de código contienen los componentes mínimos para imprimir Hola Mundo! en la pantalla. Es un ejemplo muy simple, que no instancia objetos de ninguna otra clase; sin embargo, accede a otra clase incluida en el JDK. // Aplicación HolaMundo de ejemplo
//
Estas dos primeras líneas son comentarios. Hay tres tipos de comentarios en Java, // es un comentario orientado a línea. class HolaMundoApp {
Esta línea declara la clase HolaMundoApp. El nombre de la clase especificado en el fichero fuente se utiliza para crear un fichero nombredeclase.class en el directorio en el que se compila la aplicación. En este caso, el compilador creará un fichero llamado HolaMundoApp.class. public static void main( String args[] ) {
Esta línea especifica un método que el intérprete Java busca para ejecutar en primer lugar. Igual que en otros lenguajes, Java utiliza una palabra clave main para especificar la primera función a ejecutar. En este ejemplo tan simple no se pasan argumentos.
public significa que el método main() puede ser llamado por cualquiera, incluyendo el intérprete Java.
static es una palabra clave que le dice al compilador que main se refiere a la propia clase HolaMundoApp y no a ninguna instancia de la clase. De esta forma, si alguien intenta hacer otra instancia de la clase, el método main() no se instanciaría.
void indica que main( ) no devuelve nada. Esto es importante ya que Java realiza una estricta comprobación de tipos, incluyendo los tipos que se ha declarado que devuelven los métodos.
args[ ] es la declaración de un array de Strings. Estos son los argumentos escritos tras el nombre de la clase en la línea de comandos: %java HolaMundoApp arg1 arg2 ...
System.out.println( "Hola Mundo!" );
Esta es la funcionalidad de la aplicación. Esta línea muestra el uso de un nombre de clase y método. Se usa el método println( ) de la clase out que está en el paquete System.
A una variable de tipo class se puede acceder sin necesidad de instanciar ningún objeto de esa clase. Por ello ha de ser un tipo básico o primitivo, o bien puede ser una referencia que apunta a otro objeto. En este caso, la variable out es una referencia que apunta a un objeto de otro tipo, aquí una instancia de la clase PrintStream (un objeto PrintStream), que es automáticamente instanciado cuando la clase System es cargada en la aplicación. Esto es algo semejante al hecho de que los objetos stream de entrada/salida, cin y cout son automáticamente instanciados y enlazados a los dispositivos estándar de entrada y salida cuando un programa C++ comienza su ejecución.
El método println( ) toma una cadena como argumento y la escribe en el stream de salida estándar; en este caso, la ventana donde se lanza la aplicación. La clase PrintStream tiene un método instanciable llamado println( ), que lo hace e presentar en la salida estándar del Sistema el argumento que se le pase. En este caso, se utiliza la variable o instancia de out para acceder al método. }
}
Finalmente, se cierran las llaves que limitan el método main() y la clase HolaMundoApp. En C++, la función main( ) en un programa puede tener cualquiera de los siguientes prototipos: tipo_retorno main( )
tipo_retorno main( int argc,char argv[ ] )
El tipo_retorno puede ser cualquier tipo válido, o void, para indicar que la función no tiene que devolver valor alguno. La lista de argumentos puede estar vacía, o contener los argumentos de soporte para pasar parámetros en la línea de comandos. Esta forma de implementación la función difiere de la que acaba de presentar para Java, que siempre habrá de ser la misma, independientemente de los valores de retorno o la lista de parámetros que se pasen en la lista de argumentos a la aplicación.
miércoles, 29 de abril de 2009
Clases Java
clases system
Entrada y salida estandar:
La clase System proporciona automáticamente cuando comienza la ejecución de un programa, un stream para leer del dispositivo estándar de entrada (normalmente, el teclado), un stream para presentar información en el dispositivo estándar de salida (normalmente, la pantalla) y otro stream donde presentar mensajes de error, que es el dispositivo estándar de error
Los tres streams de entrada/salida están controlados por esta clase y se referencian como:
Las variables internas de la clase System out y err son de tipo PrintStream, es decir, que tienen acceso a los métodos de la clase PrintStream. La clase PrintStream proporciona tres métodos para poder visualizar información: print( ), println( ) y write( ).
Los dos primeros ya se han utilizado en el Tutorial ampliamente, con lo que no resultan extrañas sentencias como:System.out.print( … );
System.out.println( … );
System.out.write( … );
Los métodos print( ) y println( ) son semejante, la única diferencia es que println( ) coloca automáticamente un carácter nueva línea en el stream, tras la lista de argumentos que se le pase.
El método write( ) se utiliza para escribir bytes en el stream, es decir, para escribir datos que no pueden interpretarse como texto, como pueden ser los datos que componen un gráfico.
Los métodos print() y println( ) aceptan un argumento de cualquiera de los siguientes tipos: Object, String, char[ ], int, long, float, double o boolean. En cada caso, el sistema convierte el dato a un conjunto de caracteres que transfiere al dispositivo estándar de salida. Si se invoca al método println( ) sin argumentos, simplemente se inserta un carácter nueva línea en el stream.
Además, hay versiones sobrecargadas de estos métodos para visualizar adecuadamente objetos de varias clases estándar. Por ejemplo, las siguientes sentencias:Thread obj = new Thread;
System.out.println( obj );
Producirían la siguiente salida en pantalla: Thread[Thread-4,5,main]
Cuando se utilizan print( ) y println( ) sobre un objeto, la salida dependerá de ese objeto; por ejemplo, si se imprime un objeto String, visualizaremos el contenido de la cadena y si se imprime un objeto Thread obtenemos una salida en formato:claseThread[nombre,prioridad,grupo
miércoles, 8 de abril de 2009
tipos de datos y variables
1-Aberiguar para que sirven los SIG. Comandos funciones e interpretes que pertenecen al paquete Javaa) JAVAC
b) JAVA
c) Applet viewer
d) JAVADOC
2- Tipos de Datosa) Investiga sobre los distintos tipos de datos y variables:Enteros, Reales, Caracter y Buleanos.b) las Variables
2 )Los números enteros son una generalización del conjunto de números naturales que incluye números enteros negativos (resultados de restar a un número natural otro mayor), además del cero.
El hecho de que un número sea entero, significa que no tiene parte decimal .
3) Los números reales incluyen tanto a los números racionales (como: 31, 37/22, 25,4) como a los números irracionales (aquellos que no se pueden expresar de manera fraccionaria y tienen infinitas cifras decimales no periódicas, tales como:
4) Números reales son aquellos que poseen una expresión decimal trabajar con operandos booleanos. Realizan las operaciones lógicas de conjunción (AND),disyunción (OR) ,negación ( NOT ) y la disyunción exclusiva ( XOR ).b) Las variables son la manera en que indicamos al compilador el espacio en memoria que debe de reservar para almacenar la información .Podemos acceder a un dato alojado en la memoria por medio de una variable.
Toda variable tiene un nombre para poder identificarla y realizar operaciones. Antes de trabajar con alguna variable debemos declararla en el programa. Por ejemplo: String cliente; Aquí estamos reservando memoria para una variable de tipo String y la identificamos con el nombre “cliente”.
De ahora en adelante si en el programa hablamos de cliente, estamos haciendo referencia a esa porción de memoria y al valor que contiene .Podemos asignarle algún valor en el momento de declarar una variable. Por ejemplo: String cliente = "Isaac Newton";Aquí reservamos memoria para una cadena de caracteres y le asignamos el valor "Isaac Newton".
b) JAVA
c) Applet viewer
d) JAVADOC
2- Tipos de Datosa) Investiga sobre los distintos tipos de datos y variables:Enteros, Reales, Caracter y Buleanos.b) las Variables
2 )Los números enteros son una generalización del conjunto de números naturales que incluye números enteros negativos (resultados de restar a un número natural otro mayor), además del cero.
El hecho de que un número sea entero, significa que no tiene parte decimal .
3) Los números reales incluyen tanto a los números racionales (como: 31, 37/22, 25,4) como a los números irracionales (aquellos que no se pueden expresar de manera fraccionaria y tienen infinitas cifras decimales no periódicas, tales como:
4) Números reales son aquellos que poseen una expresión decimal trabajar con operandos booleanos. Realizan las operaciones lógicas de conjunción (AND),disyunción (OR) ,negación ( NOT ) y la disyunción exclusiva ( XOR ).b) Las variables son la manera en que indicamos al compilador el espacio en memoria que debe de reservar para almacenar la información .Podemos acceder a un dato alojado en la memoria por medio de una variable.
Toda variable tiene un nombre para poder identificarla y realizar operaciones. Antes de trabajar con alguna variable debemos declararla en el programa. Por ejemplo: String cliente; Aquí estamos reservando memoria para una variable de tipo String y la identificamos con el nombre “cliente”.
De ahora en adelante si en el programa hablamos de cliente, estamos haciendo referencia a esa porción de memoria y al valor que contiene .Podemos asignarle algún valor en el momento de declarar una variable. Por ejemplo: String cliente = "Isaac Newton";Aquí reservamos memoria para una cadena de caracteres y le asignamos el valor "Isaac Newton".
JavaCC (Java Compiler Compiler) es un generador de analizadores sintácticos de código abierto para el lenguaje de programación Java. JavaCC es similar a Yacc en que genera un parser para una gramática presentada en notación BNF, con la excepción de que la salida es en código Java. No como en Yacc, JavaCC genera analizadores descendentes (top-down), que se limita a la clase de gramáticas LL (K) (en particular, la recursión desde izquierda no se puede usar). Los tres constructores que lo conforman, JJTree, construyen sus árboles de abajo hacia arriba.
JavaCC está licenciado bajo una licencia BSD.
En 1996, Sun Microsystems liberó un parser llamado Jack. Los desarrolladores responsables de Jack crearon su propia compañía llamada Metamata y cambiaron el nombre Jack a JavaCC. Metamata se convirtió en WebGain. Después de que WebGain finalizara sus operaciones, JavaCC se traslado a su ubicación actual.
Javadoc es una utilidad de Sun Microsystems para la generación de documentación de APIs en formato HTML a partir de código fuente Java.
java doc es el estándar de la industria para documentar clases de Java. La mayoría de los IDEs los generan automáticamente.
apple viewer
Un applet es una mínima aplicación Java diseñada para ejecutarse en un navegador Web. Por tanto, no necesita preocuparse por un método main () ni en dónde se realizan las llamadas. El applet asume que el código se está ejecutando desde dentro de un navegador. El appletviewer se asemeja al mínimo navegador. Espera como argumento el nombre del fichero html que debe cargar, no se le puede pasar directamente un programa Java. Este fichero html debe contener una marca que especifica el código que cargará el appletviewer: El appletviewer crear un espacio de navegación, incluyendo un área gráfica, donde se ejecutará el applet, entonces llamará a la clase applet apropiada. En el ejemplo anterior, el appletviewer cargará una clase de nombre HolaMundo y le permitirá trabajar en su espacio gráfico
JavaCC está licenciado bajo una licencia BSD.
En 1996, Sun Microsystems liberó un parser llamado Jack. Los desarrolladores responsables de Jack crearon su propia compañía llamada Metamata y cambiaron el nombre Jack a JavaCC. Metamata se convirtió en WebGain. Después de que WebGain finalizara sus operaciones, JavaCC se traslado a su ubicación actual.
Javadoc es una utilidad de Sun Microsystems para la generación de documentación de APIs en formato HTML a partir de código fuente Java.
java doc es el estándar de la industria para documentar clases de Java. La mayoría de los IDEs los generan automáticamente.
apple viewer
Un applet es una mínima aplicación Java diseñada para ejecutarse en un navegador Web. Por tanto, no necesita preocuparse por un método main () ni en dónde se realizan las llamadas. El applet asume que el código se está ejecutando desde dentro de un navegador. El appletviewer se asemeja al mínimo navegador. Espera como argumento el nombre del fichero html que debe cargar, no se le puede pasar directamente un programa Java. Este fichero html debe contener una marca que especifica el código que cargará el appletviewer: El appletviewer crear un espacio de navegación, incluyendo un área gráfica, donde se ejecutará el applet, entonces llamará a la clase applet apropiada. En el ejemplo anterior, el appletviewer cargará una clase de nombre HolaMundo y le permitirá trabajar en su espacio gráfico
lunes, 6 de abril de 2009
arquitectura natural
Arquitectura natural
El código generado por el compilador Java es independiente de la arquitectura: podría
Ejecutarse en un entorno UNIX, Mac o Windows.
El motivo de esto es que el que realmente ejecuta el código generado por el compilador no es el procesador del ordenador directamente,si no que este se ejecuta mediante una máquina virtual.
Esto permite que los Apples de una
Web pueda ejecutarlos cualquier máquina que se conecte a ella independientemente de que
Sistema operativo emplee (siempre y cuando el ordenador en cuestión tenga instalada una
Máquina virtual de Java).
Rendimiento medio
En la actualidad la velocidad del procesado de código java es semejante a la de c++, hay ciertas pruebas estándares de comparación (bench mak), en las cuales java gana a c++ y viceversa. Esto es asi gracias al uso del compiladores just intime, los cuales reducen los bitecodes de java en código para una determinada cpu q no presisa de maquina viertual para ser ejecutado, y guarda
El resultado de dicha conversión, volviendo lo a llamar en caso de volverlos a necesitar , lo q se edita en este caso la sobre carga de trabajo asociada a la interpretación del bit code.
El código generado por el compilador Java es independiente de la arquitectura: podría
Ejecutarse en un entorno UNIX, Mac o Windows.
El motivo de esto es que el que realmente ejecuta el código generado por el compilador no es el procesador del ordenador directamente,si no que este se ejecuta mediante una máquina virtual.
Esto permite que los Apples de una
Web pueda ejecutarlos cualquier máquina que se conecte a ella independientemente de que
Sistema operativo emplee (siempre y cuando el ordenador en cuestión tenga instalada una
Máquina virtual de Java).
Rendimiento medio
En la actualidad la velocidad del procesado de código java es semejante a la de c++, hay ciertas pruebas estándares de comparación (bench mak), en las cuales java gana a c++ y viceversa. Esto es asi gracias al uso del compiladores just intime, los cuales reducen los bitecodes de java en código para una determinada cpu q no presisa de maquina viertual para ser ejecutado, y guarda
El resultado de dicha conversión, volviendo lo a llamar en caso de volverlos a necesitar , lo q se edita en este caso la sobre carga de trabajo asociada a la interpretación del bit code.
multit theart
soporta de modo nativo los theadt hilos , sin necesidad del uso de librerias especificas (como es el caso de c++) esto le permite ademas q cada hilo de una aplicacion java pueda correr en una cpu distinta , si la aplicacion se ejecuta en una maquina q posee varias cpu. las aplicaicones c++ no son capases de distribuir de modo tranparente para el programador la carga entre varias cpu
actividad: averiguar para q sirven los siguientes comandos funciones e interpretes q pertenesen al paquete java:
a) javac
b) java
c) applet viewer.
d) javadoc
a) tipos de datos: investigasobre los distintos tipos de datos y variables :
enteros, reales, caracter, buliano
b) las variables
JavaCC (Java Compiler Compiler) es un generador de analizadores sintácticos de código abierto para el lenguaje de programación Java. JavaCC es similar a Yacc en que genera un parser para una gramática presentada en notación BNF, con la excepción de que la salida es en código Java. No como en Yacc, JavaCC genera analizadores descendentes (top-down), que se limita a la clase de gramáticas LL (K) (en particular, la recursión desde izquierda no se puede usar). Los tres constructores que lo conforman, JJTree, construyen sus árboles de abajo hacia arriba.
JavaCC está licenciado bajo una licencia BSD.
En 1996, Sun Microsystems liberó un parser llamado Jack. Los desarrolladores responsables de Jack crearon su propia compañía llamada Metamata y cambiaron el nombre Jack a JavaCC. Metamata se convirtió en WebGain. Después de que WebGain finalizara sus operaciones, JavaCC se traslado a su ubicación actual.
JavaCC está licenciado bajo una licencia BSD.
En 1996, Sun Microsystems liberó un parser llamado Jack. Los desarrolladores responsables de Jack crearon su propia compañía llamada Metamata y cambiaron el nombre Jack a JavaCC. Metamata se convirtió en WebGain. Después de que WebGain finalizara sus operaciones, JavaCC se traslado a su ubicación actual.
Javadoc es una utilidad de Sun Microsystems para la generación de documentación de APIs en formato HTML a partir de código fuente Java.
Javadoc es el estándar de la industria para documentar clases de Java. La mayoría de los IDEs los generan automáticamente.
Llamadas a Applets con appletviewer
Un applet es una mínima aplicación Java diseñada para ejecutarse en un navegador Web. Por tanto, no necesita preocuparse por un método main () ni en dónde se realizan las llamadas. El applet asume que el código se está ejecutando desde dentro de un navegador. El appletviewer se asemeja al mínimo navegador. Espera como argumento el nombre del fichero html que debe cargar, no se le puede pasar directamente un programa Java. Este fichero html debe contener una marca que especifica el código que cargará el appletviewer: El appletviewer crear un espacio de navegación, incluyendo un área gráfica, donde se ejecutará el applet, entonces llamará a la clase applet apropiada. En el ejemplo anterior, el appletviewer cargará una clase de nombre HolaMundo y le permitirá trabajar en su espacio gráfico
DEFINICION
Definición de big endian y little endian
Big y Little Endian se refiere al formato en el cual un dato con múltiples bytes se ordena para escribirse en la memoria de una computadora.
En el formato Big Endian el extremo más grande de cualquier dato aparece en primer lugar. El segundo formato Little Endian se almacena al contrario, es decir al inicio se pone el dato más pequeño.
Conocer estos formatos nos ayudan a interpretar archivos correctamente, ya que el uso entre formatos Big-endian y Little endian depende de la arquitectura del procesador. Un ejemplo más concreto de esto es Intel(Little Endian) y Apple clásico (Big Endian).
Big y Little Endian se refiere al formato en el cual un dato con múltiples bytes se ordena para escribirse en la memoria de una computadora.
En el formato Big Endian el extremo más grande de cualquier dato aparece en primer lugar. El segundo formato Little Endian se almacena al contrario, es decir al inicio se pone el dato más pequeño.
Conocer estos formatos nos ayudan a interpretar archivos correctamente, ya que el uso entre formatos Big-endian y Little endian depende de la arquitectura del procesador. Un ejemplo más concreto de esto es Intel(Little Endian) y Apple clásico (Big Endian).
Definición de big endian y little endian
Big y Little Endian se refiere al formato en el cual un dato con múltiples bytes se ordena para escribirse en la memoria de una computadora.
En el formato Big Endian el extremo más grande de cualquier dato aparece en primer lugar. El segundo formato Little Endian se almacena al contrario, es decir al inicio se pone el dato más pequeño.
Conocer estos formatos nos ayudan a interpretar archivos correctamente, ya que el uso entre formatos Big-endian y Little endian depende de la arquitectura del procesador. Un ejemplo más concreto de esto es Intel(Little Endian) y Apple clásico (Big Endian).
Big y Little Endian se refiere al formato en el cual un dato con múltiples bytes se ordena para escribirse en la memoria de una computadora.
En el formato Big Endian el extremo más grande de cualquier dato aparece en primer lugar. El segundo formato Little Endian se almacena al contrario, es decir al inicio se pone el dato más pequeño.
Conocer estos formatos nos ayudan a interpretar archivos correctamente, ya que el uso entre formatos Big-endian y Little endian depende de la arquitectura del procesador. Un ejemplo más concreto de esto es Intel(Little Endian) y Apple clásico (Big Endian).
miércoles, 1 de abril de 2009
portable: en java no hay aspecto dependientes de la implementacion, todad las inmplementaciones de java siguen los mismos estandar en cuanto a tamaño y a almacenamito de datos, esto no ocurre asi en c++ por ejemplo. en este un entero puede tener un tamaño de 16,32, o mas bits siendo la unica limitacion q un enreto sea mayor q un sort m nenor q un long int. C++ bajo sistema operatibo uinix almacena los datas en formato little endian mientra q bajo windows lo hace en formato big endian java lo hace siempre en little endian para evitar confucion.
nota consepto de endiannes
lunes, 30 de marzo de 2009
Java Estructura y Gestion de datos
En la actualidad existen divesos tipos de lengajes q han sido creados para una determinada funcion , estan especialmente diseñados para facilitar la programacion de distintos tipos de problemas, garantiznado la seguridad de las aplicaciones , para obtener una mayor facilidad de programacion y conseguir un mayor aprovechaminto de los recursos del ordenador .
cuando un programador elige un lenguaje deve pensar en sus necesidades y la facilidad de la programacion.
Como nuevos estudiantes de java devemos preguantarnos para que fue pensado este lenguaje
CARACTERISTICAS DE JAVA
Las caracteristicas mas generales de java nos alludaran a ver para que tipo de probleams està pensado este lenguaje:
SIMPLE: Es un lenguaje sencillo de aprender de sintaxis parecida a lo de C++ pero màs simplificado cabe aclarar que los creadores de java partieron de la sintaxis de C++, tratando de eliminar las partes complicadas y las fuentes de error de lenguaje.
ORIENTADO A OBJETO: Posiblemente sea el lenguaje màs orientado a objeto de os existentes; En java todo a exepcion de los tipos fundamentales de variable. (in, char, long, etc..) es un objeto
DISTRIBUIDO: Java esà muy orientado al trabajo en red, soportando protocolos como TCP/IP, UDP,HTTP, y FTP. El uso de estos protocolos es bastante sencillo comparandolo con otros lenguajes que los sopotan.
TCP: (Transfer Control Protocol) El Protocolo de Control de TransmisiónControla la división de la información en unidades individuales de datos(llamadas paquetes) para que estos paquetes sean encaminados de la formamás eficiente hacia su punto de destino. En dicho punto, TCP se encargará dereensamblar dichos paquetes para reconstruir el fichero o mensaje que seenvió. Por ejemplo, cuando se nos envía un fichero HTML desde un servidorWeb, el protocolo de control de transmisión en ese servidor divide el fichero enuno o más paquetes, numera dichos paquetes y se los pasa al protocolo IP.Aunque cada paquete tenga la misma dirección IP de destino, puede seguiruna ruta diferente a través de la red. Del otro lado (el programa cliente ennuestro ordenador), TCP reconstruye los paquetes individuales y espera hastaque hayan llegado todos para presentárnoslos como un solo fichero.IP: (Internet Protocol) El Protocolo de Internet Se encarga de repartir lospaquetes de información enviados entre el ordenador local y los ordenadoresremotos. Esto lo hace etiquetando los paquetes con una serie de información,entre la que cabe destacar las direcciones IP de los dos ordenadores.Basándose en esta información, IP garantiza que los datos se encaminarán aldestino correcto. Los paquetes recorrerán la red hasta su destino (que puedeestar en el otro extremo del planeta) por el camino más corto posible gracias aunos dispositivos denominados encaminadores o routers. Utiliza direccionesque son series de cuatro números ocetetos (byte) con un formato de puntodecimal, por ejemplo: 69.5.163.59Fueron los dos primeros en definirse, y son los más utilizados de la familia.Existen tantos protocolos en este conjunto que llegan a ser más de 100diferentes, entre ellos se encuentra el popular HTTP (HyperText TransferProtocol) Protocolo de Transferencia de Hipertexto, que es el que se utilizapara acceder a las páginas Web, el ARP (Address Resolution Protocol)Protocolo de resolución de direcciones, el FTP (File Transfer Protocol)Protocolo de transferencia de archivos, el SMTP (Simple Mail TransferProtocol) Protocolo de Transferencia de Correo , el NNTP (Network NewsTransfer Protocol) Protocolo de Transferencia de Red de Noticias, IRC (InternetRelay Chat) Chat Basado en Internet , el POP (Post Office Protocol) paracorreo electrónico, TELNET para acceder a equipos remotos, entre otros.El TCP/IP es la base de Internet, y sirve para enlazar computadoras que utilizandiferentes sistemas operativos, incluyendo PC, minicomputadoras y computadorascentrales sobre redes de área local (LAN) y área extensa (WAN). TCP/IP fuedesarrollado y demostrado por primera vez en 1972 por el Departamento de Defensa delos Estados Unidos, ejecutándolo en ARPANET, una red de área extensa de dichodepartamento
cuando un programador elige un lenguaje deve pensar en sus necesidades y la facilidad de la programacion.
Como nuevos estudiantes de java devemos preguantarnos para que fue pensado este lenguaje
CARACTERISTICAS DE JAVA
Las caracteristicas mas generales de java nos alludaran a ver para que tipo de probleams està pensado este lenguaje:
SIMPLE: Es un lenguaje sencillo de aprender de sintaxis parecida a lo de C++ pero màs simplificado cabe aclarar que los creadores de java partieron de la sintaxis de C++, tratando de eliminar las partes complicadas y las fuentes de error de lenguaje.
ORIENTADO A OBJETO: Posiblemente sea el lenguaje màs orientado a objeto de os existentes; En java todo a exepcion de los tipos fundamentales de variable. (in, char, long, etc..) es un objeto
DISTRIBUIDO: Java esà muy orientado al trabajo en red, soportando protocolos como TCP/IP, UDP,HTTP, y FTP. El uso de estos protocolos es bastante sencillo comparandolo con otros lenguajes que los sopotan.
TCP: (Transfer Control Protocol) El Protocolo de Control de TransmisiónControla la división de la información en unidades individuales de datos(llamadas paquetes) para que estos paquetes sean encaminados de la formamás eficiente hacia su punto de destino. En dicho punto, TCP se encargará dereensamblar dichos paquetes para reconstruir el fichero o mensaje que seenvió. Por ejemplo, cuando se nos envía un fichero HTML desde un servidorWeb, el protocolo de control de transmisión en ese servidor divide el fichero enuno o más paquetes, numera dichos paquetes y se los pasa al protocolo IP.Aunque cada paquete tenga la misma dirección IP de destino, puede seguiruna ruta diferente a través de la red. Del otro lado (el programa cliente ennuestro ordenador), TCP reconstruye los paquetes individuales y espera hastaque hayan llegado todos para presentárnoslos como un solo fichero.IP: (Internet Protocol) El Protocolo de Internet Se encarga de repartir lospaquetes de información enviados entre el ordenador local y los ordenadoresremotos. Esto lo hace etiquetando los paquetes con una serie de información,entre la que cabe destacar las direcciones IP de los dos ordenadores.Basándose en esta información, IP garantiza que los datos se encaminarán aldestino correcto. Los paquetes recorrerán la red hasta su destino (que puedeestar en el otro extremo del planeta) por el camino más corto posible gracias aunos dispositivos denominados encaminadores o routers. Utiliza direccionesque son series de cuatro números ocetetos (byte) con un formato de puntodecimal, por ejemplo: 69.5.163.59Fueron los dos primeros en definirse, y son los más utilizados de la familia.Existen tantos protocolos en este conjunto que llegan a ser más de 100diferentes, entre ellos se encuentra el popular HTTP (HyperText TransferProtocol) Protocolo de Transferencia de Hipertexto, que es el que se utilizapara acceder a las páginas Web, el ARP (Address Resolution Protocol)Protocolo de resolución de direcciones, el FTP (File Transfer Protocol)Protocolo de transferencia de archivos, el SMTP (Simple Mail TransferProtocol) Protocolo de Transferencia de Correo , el NNTP (Network NewsTransfer Protocol) Protocolo de Transferencia de Red de Noticias, IRC (InternetRelay Chat) Chat Basado en Internet , el POP (Post Office Protocol) paracorreo electrónico, TELNET para acceder a equipos remotos, entre otros.El TCP/IP es la base de Internet, y sirve para enlazar computadoras que utilizandiferentes sistemas operativos, incluyendo PC, minicomputadoras y computadorascentrales sobre redes de área local (LAN) y área extensa (WAN). TCP/IP fuedesarrollado y demostrado por primera vez en 1972 por el Departamento de Defensa delos Estados Unidos, ejecutándolo en ARPANET, una red de área extensa de dichodepartamento
User Datagram Protocol (UDP) es un protocolo del nivel de transporte basado en el intercambio de datagramas. Permite el envío de datagramas a través de la red sin que se haya establecido previamente una conexión, ya que el propio datagrama incorpora suficiente información de direccionamiento en su cabecera. Tampoco tiene confirmación, ni control de flujo, por lo que los paquetes pueden adelantarse unos a otros; y tampoco se sabe si ha llegado correctamente, ya que no hay confirmación de entrega o de recepción. Su uso principal es para protocolos como DHCP, BOOTP, DNS y demás protocolos en los que el intercambio de paquetes de la conexión/desconexión son mayores, o no son rentables con respecto a la información transmitida, así como para la transmisión de audio y vídeo en tiempo real,
El protocolo de transferencia de hipertexto (HTTP, HyperText Transfer Protocol) es el protocolo usado en cada transacción de la Web (WWW). HTTP fue desarrollado por el consorcio W3C y la IETF, colaboración que culminó en 1999 con la publicación de una serie de RFC, siendo el más importante de ellos el RFC 2616, que especifica la versión 1.1.
HTTP define la sintaxis y la semántica que utilizan los elementos software de la arquitectura web (clientes, servidores, proxies) para comunicarse. Es un protocolo orientado a transacciones y sigue el esquema petición-respuesta entre un cliente y un servidor. Al cliente que efectúa la petición (un navegador o un spider) se lo conoce como "user agent" (agente del usuario). A la información transmitida se la llama recurso y se la identifica mediante un URL. Los recursos pueden ser archivos, el resultado de la ejecución de un programa, una consulta a una base de datos, la traducción automática de un documento, etc.
HTTP es un protocolo sin estado, es decir, que no guarda ninguna información sobre conexiones anteriores. El desarrollo de aplicaciones web necesita frecuentemente mantener estado. Para esto se usan las cookies, que es información que un servidor puede almacenar en el sistema cliente
El protocolo de transferencia de hipertexto (HTTP, HyperText Transfer Protocol) es el protocolo usado en cada transacción de la Web (WWW). HTTP fue desarrollado por el consorcio W3C y la IETF, colaboración que culminó en 1999 con la publicación de una serie de RFC, siendo el más importante de ellos el RFC 2616, que especifica la versión 1.1.
HTTP define la sintaxis y la semántica que utilizan los elementos software de la arquitectura web (clientes, servidores, proxies) para comunicarse. Es un protocolo orientado a transacciones y sigue el esquema petición-respuesta entre un cliente y un servidor. Al cliente que efectúa la petición (un navegador o un spider) se lo conoce como "user agent" (agente del usuario). A la información transmitida se la llama recurso y se la identifica mediante un URL. Los recursos pueden ser archivos, el resultado de la ejecución de un programa, una consulta a una base de datos, la traducción automática de un documento, etc.
HTTP es un protocolo sin estado, es decir, que no guarda ninguna información sobre conexiones anteriores. El desarrollo de aplicaciones web necesita frecuentemente mantener estado. Para esto se usan las cookies, que es información que un servidor puede almacenar en el sistema cliente
ROBUSTO
el compilador java detecta muchos errores q otros compiladores solo detectarian en tiempo de ejecucion e incluso nunca
if(a=b) then el compilador java no nos dejaria compilar este codigo
if(a=b) then el compilador java no nos dejaria compilar este codigo
SEGURO: es un lenguaje muy seguro en cuanto al desarrollo de sus aplicaciones, especialmente en los apple. estos son programas diseñados para se ejecutados en una pagina web. el programa java garantiza q ningun apple puede escribir o leer desde nuesto disco, o mandar informacion del usuario q acceda a la pagin a atraves de la red (como por ejemplo la direccion de correo electronico) en gral. no permite realizar cualquier accion q pudiera dañar la maquina o violar la inimidad del q visita la pagina web.
lunes, 16 de marzo de 2009
tecnicatura de analisis y diseño de sistemas
sistema operativo
Un sistema operativo es un software de sistema, es decir, biñil de programas de computación destinados a realizar muchas tareas entre las que destaca la administración eficaz de sus recursos.
Comienza a trabajar cuando en memoria se carga un programa específico y aun antes de ello, que se ejecuta al iniciar el equipo, o al iniciar una máquina virtual, y gestiona el hardware de la máquina desde los niveles más básicos, brindando una interfaz con el usuario.
Funciones del sistema operativo
El sistema operativo cumple varias funciones:
· Administración del procesador: el sistema operativo administra la distribución del procesador entre los distintos programas por medio de un algoritmo de programación. El tipo de programador depende completamente del sistema operativo, según el objetivo deseado.
· Gestión de la memoria de acceso aleatorio: el sistema operativo se encarga de gestionar el espacio de memoria asignado para cada aplicación y para cada usuario, si resulta pertinente. Cuando la memoria física es insuficiente, el sistema operativo puede crear una zona de memoria en el disco duro, denominada "memoria virtual". La memoria virtual permite ejecutar aplicaciones que requieren una memoria superior a la memoria RAM disponible en el sistema. Sin embargo, esta memoria es mucho más lenta.
· Gestión de entradas/salidas: el sistema operativo permite unificar y controlar el acceso de los programas a los recursos materiales a través de los drivers (también conocidos como administradores periféricos o de entrada/salida).
· Gestión de ejecución de aplicaciones: el sistema operativo se encarga de que las aplicaciones se ejecuten sin problemas asignándoles los recursos que éstas necesitan para funcionar. Esto significa que si una aplicación no responde correctamente puede "sucumbir".
· Administración de autorizaciones: el sistema operativo se encarga de la seguridad en relación con la ejecución de programas garantizando que los recursos sean utilizados sólo por programas y usuarios que posean las autorizaciones correspondientes.
· Gestión de archivos: el sistema operativo gestiona la lectura y escritura en el sistema de archivos, y las autorizaciones de acceso a archivos de aplicaciones y usuarios.
· Gestión de la información: el sistema operativo proporciona cierta cantidad de indicadores que pueden utilizarse para diagnosticar el funcionamiento correcto del equipo.
Los sistemas operativos más conocidos son los siguientes:
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 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 acceder 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 3.1: 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.
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 dad el apoyo que se merece en cuanto a aplicaciones se refiere. Es decir, no se han creado muchas aplicaciones que aprovechen las características de el 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, Mini computadoras, 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.
tecnicatura de analisis y diseño de sistemas
sistema operativo
Un sistema operativo es un software de sistema, es decir, biñil de programas de computación destinados a realizar muchas tareas entre las que destaca la administración eficaz de sus recursos.
Comienza a trabajar cuando en memoria se carga un programa específico y aun antes de ello, que se ejecuta al iniciar el equipo, o al iniciar una máquina virtual, y gestiona el hardware de la máquina desde los niveles más básicos, brindando una interfaz con el usuario.
Funciones del sistema operativo
Administración del procesador: el sistema operativo administra la distribución del procesador entre los distintos programas por medio de un algoritmo de programación. El tipo de programador depende completamente del sistema operativo, según el objetivo deseado.
· Gestión de la memoria de acceso aleatorio: el sistema operativo se encarga de gestionar el espacio de memoria asignado para cada aplicación y para cada usuario, si resulta pertinente. Cuando la memoria física es insuficiente, el sistema operativo puede crear una zona de memoria en el disco duro, denominada "memoria virtual". La memoria virtual permite ejecutar aplicaciones que requieren una memoria superior a la memoria RAM disponible en el sistema. Sin embargo, esta memoria es mucho más lenta.
· Gestión de entradas/salidas: el sistema operativo permite unificar y controlar el acceso de los programas a los recursos materiales a través de los drivers (también conocidos como administradores periféricos o de entrada/salida).
· Gestión de ejecución de aplicaciones: el sistema operativo se encarga de que las aplicaciones se ejecuten sin problemas asignándoles los recursos que éstas necesitan para funcionar. Esto significa que si una aplicación no responde correctamente puede "sucumbir".
· Administración de autorizaciones: el sistema operativo se encarga de la seguridad en relación con la ejecución de programas garantizando que los recursos sean utilizados sólo por programas y usuarios que posean las autorizaciones correspondientes.
· Gestión de archivos: el sistema operativo gestiona la lectura y escritura en el sistema de archivos, y las autorizaciones de acceso a archivos de aplicaciones y usuarios.
· Gestión de la información: el sistema operativo proporciona cierta cantidad de indicadores que pueden utilizarse para diagnosticar el funcionamiento correcto del equipo.
· Gestión de la memoria de acceso aleatorio: el sistema operativo se encarga de gestionar el espacio de memoria asignado para cada aplicación y para cada usuario, si resulta pertinente. Cuando la memoria física es insuficiente, el sistema operativo puede crear una zona de memoria en el disco duro, denominada "memoria virtual". La memoria virtual permite ejecutar aplicaciones que requieren una memoria superior a la memoria RAM disponible en el sistema. Sin embargo, esta memoria es mucho más lenta.
· Gestión de entradas/salidas: el sistema operativo permite unificar y controlar el acceso de los programas a los recursos materiales a través de los drivers (también conocidos como administradores periféricos o de entrada/salida).
· Gestión de ejecución de aplicaciones: el sistema operativo se encarga de que las aplicaciones se ejecuten sin problemas asignándoles los recursos que éstas necesitan para funcionar. Esto significa que si una aplicación no responde correctamente puede "sucumbir".
· Administración de autorizaciones: el sistema operativo se encarga de la seguridad en relación con la ejecución de programas garantizando que los recursos sean utilizados sólo por programas y usuarios que posean las autorizaciones correspondientes.
· Gestión de archivos: el sistema operativo gestiona la lectura y escritura en el sistema de archivos, y las autorizaciones de acceso a archivos de aplicaciones y usuarios.
· Gestión de la información: el sistema operativo proporciona cierta cantidad de indicadores que pueden utilizarse para diagnosticar el funcionamiento correcto del equipo.
tipos de sistemas operativos
Los sistemas operativos más conocidos son los siguientes:
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 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 acceder 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 3.1: 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.
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 dad el apoyo que se merece en cuanto a aplicaciones se refiere. Es decir, no se han creado muchas aplicaciones que aprovechen las características de el 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, Mini computadoras, 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.
tabal de comparacion entre sistemas:
Los sistemas operativos más conocidos son los siguientes:
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 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 acceder 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 3.1: 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.
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 dad el apoyo que se merece en cuanto a aplicaciones se refiere. Es decir, no se han creado muchas aplicaciones que aprovechen las características de el 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, Mini computadoras, 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.
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 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 acceder 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 3.1: 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.
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 dad el apoyo que se merece en cuanto a aplicaciones se refiere. Es decir, no se han creado muchas aplicaciones que aprovechen las características de el 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, Mini computadoras, 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.
Suscribirse a:
Entradas (Atom)