miércoles, 25 de abril de 2007

Calculadora Basica Hecha En Java



Bueno este es un pequeño ejemplo utilizando Java en donde realizamos las cuatro operaciones basicas suma, resta, multiplicacion, division, y otras operaciones como es el porcentaje el factorial de un numero y otras...
Digo que lo realizamos porque dicho ejemplo lo realice con un gran amigo mi cumpa Roger :)

Se explicara algunas partes del codigo..

Imagen Del Diseño

El Boton F Es para calcular el factorial de un numero, la R es para calcular la raiz cuadrada de un Numero, la es para calcular el porcentaje de un numero y la c para limpiar el visor.

Explicacion de Codido:

Antes de empezar quisera aclarar que con este ejemplo no queremos decir que sea la manera mas optima , pero si una manera de empezar en el mundo de Java como lo estamos haciendo Nosotros...
1er paso declaracion de variables publicas la cuales no serviran para alacenar datos como tambien para mostrar...

public int num2 = 2, num1 = 1, num3 = 3, num4 = 4, num5 = 5, num6 = 6, num7= 7, num8= 8, num9= 9, num0 = 0,cont = 0;
/*num1, num2, y las otras variables que num son las que nos permitiran asignar el valor numerico*/
public char signo; /*variable que nos permitira alcenar el signo de la operacion a realizar*/
public double x,y,resp; /*variables para almacenar el valor del jTextField po caja de texto*/
public String numero= ""; /*lo utilizaremos para agrupar valores*/
2do paso.
Este proceso se produce par todos los botones bt1,bt2,.... bt9,bt0 lo unico que varia es la variable para bt1 sera num1 , para bt sera num2 .. etc
private void bt1ActionPerformed(java.awt.event.ActionEvent evt) {
visor1.setText(num1+""); /*Asignamos el valor de nuestra variable num1 al jTextField mediante la propiedad setText*/
numero+=visor1.getText(); /*devolvemo el el valor del jTextField y lo asigamos a una variable*/
visor1.setText(numero); /*asignamos la variable numero al jTextField */
}

3er paso
En esta parte en cuando asignamos la operacion a realizar ya sea suma res ta multiplicacion en este caso es multiplicacion..

private void porActionPerformed(java.awt.event.ActionEvent evt) {
if (veces==0){ /* pregunta si veces es igual a cero sera verdadero porque esta inicialiacida con 0*/
if (n==0) {
n=1;
x=Double.parseDouble(visor1.getText()); /*asignamos el valor del visor1 a variable x pero convirtiendolo a Double*/
signo='*'; /*Decimos que la variblesigno de tipo char tome el sibolo del por*/
numero="";
veces=1; /* Asignamos 1 a nuestra variable "veces " para cuando una persona este relizando una multiplicacion de tres numero o mas y de esto modo capturamos un valor en la variable y para poder encontrar el rsultado .. las otras operaciones realizan la misma funcion ¿pero porque suma esta en multiplicacion? porque quizas una persona realiza primero una multiplicacion y luego quiere sumar esa cantidad con otra del mismo modo con otras operaciones..*/
}
else{
y=Double.parseDouble(visor1.getText());
numero="";
if(signo=='+') {
x=x+y;
resp=x;
visor1.setText(resp+"");
}
if(signo=='-') {
x=x-y;
resp=x;
visor1.setText(resp+"");
}
if(signo=='*') {
x=x*y;
resp=x;
visor1.setText(resp+"");
}
if(signo=='/') {
if(y!=0) {
x=x/y;
resp=x;
visor1.setText(resp+"");
}
else
visor1.setText("Error: division por cero");
}
}
veces=1; signo='*';
}
}
4to paso

La codificaciondel signo igual ...
private void jButton12ActionPerformed(java.awt.event.ActionEvent evt) {
y=Double.parseDouble(visor1.getText());
/*asignamos el valor convirtiendolo al mismo tipo de la variable*/

numero="";
if(signo=='+') { /*Preguntamos si el sigo es igual ald e la condicion para realizar la operacion*/
x=x+y;/*Sumamos las variables*/
resp=x; /*asignamos el valor de x a la variable respuesta*/
visor1.setText(resp+""); /*y le entregamos el valor agrupada en la variable resp*/
}
/*Lo mismo seria para las otras operaciopnes lo unico que tendriamos que cambiar seria el sigo ose el + , -,*, / y del mismo modo la operacion que realizaran las variables x,y*/

Bueno aca les dejo el Link de donde pueden decargar el archivo:
JavaApplication1.rar

Consultas o sugerencias de este ejemplo u otros temas relacionados a .Net o Java VB.2005 haganlo mediante comentarios o al e-mail... Si pueden mejorar el ejemplo no duden en hacerlo no nos ofende :P

e-mail: trujilloteens@peru.com

domingo, 22 de abril de 2007

XAML, el amor perdido entre Desarrolladores y Diseñadores


Bueno este tema me causo mucha mas curiosidad por la susodicha frase "XAML, el amor perdido entre desarrolladores y diseñadores" la cual la escuche en un congreso,si no estoy herrado fue Sergio Tarrillo uhmmm quien es O.o al final pongo el link de su blog Muy bueno ...

Empecemos a dar una simple explicación de Dicha Frase o tratando de llegar a una conclusión:


XAML es un lenguaje “markup” (como HTML) para representar declarativamente la interfaz de una aplicación de Windows es un lenguaje declarativo el cual mejora la riqueza de las herramientas mediante las cuales developers y diseñadores gráficos pueden construir y modificar la interfaz de usuario.

Como ya sabemos XAML esta optimizado para describir gráficamente interfaces de usuario visuales ricas desde el punto de vista gráfico, pues XAML esta diseñado para soportar las clases y los métodos de la plataforma de desarrollo .NET que tienen relación con la interacción con el usuario, en especial, el despliegue en pantalla.
Como todos sabemos el diseñador se encarga de diseñar la IGU en la cual el usuario interactuara y si se da el caso que a nosotros nos toco trabajar con un diseñador que le encanta los detalles como por ejemplo hacer los botones ovalados con un efecto reflejante y un sin fin de detalles las cuales nos complica la vida a nosotros como desarrollares , es aquí donde XAML nos relaciona porque este lenguaje nos permite a los desarrolladores y diseñadores trabajar en archivos diferentes , la capa de proceso , conectividad y otros y por otro lado toda la capa de presentación usando WPF (Windows Presentation Fundation ).
Espero les Sirva de algo...

viernes, 20 de abril de 2007

Introducción al Framework 3.0

Algunos Conceptos previos :
¿Que Es AERO?

El término AERO, sigla de Auténtico, Energético, Reflexivo y Open (Abierto), remite a las guías de experiencia de usuario para Windows Vista, y se encarga del look and feel del sistema operativo. Estas guías no sólo determinan el modo en que se dibujan los píxeles, sino también la forma en que el usuario interactúa con el sistema y evoca sentimientos.
¿Que es XAML?

XAML es un lenguaje declarativo basado en XML, optimizado para describir gráficamente interfaces de usuario visuales ricas desde el punto de vista gráfico, tales como las creadas por medio de Macromedia Flash.
XAML fue diseñado para soportar las clases y los métodos de la plataforma de desarrollo .NET que tienen relación con la interacción con el usuario, en especial, el despliegue en pantalla. NET
Net Framework 3.0

Como ustedes ya sabran junto con Windows Vista se liberará al mercado una serie de tecnologías para desarrolladores de software, cuyas tecnologias si que nos cambiará la forma de construir aplicaciones para la plataforma Windows.
La plataforma de última generación WinFX, cuyo nombre actual ha pasado a ser .NET Framework 3.0 la cual es una API (Application Programming Interface) que agrupa funcionalidades de Win32 junto con el .NET Framework. La cual brinda soporte para la creación de aplicaciones Windows y aplicaciones web,cabe resaltar que WinFX ahora NET Framework3.0, además de utilizarse en Windows Vista, puede ser consumido en Windows XP y Windows 2003 Server.

Microsoft .NET Framework 3.0 ofrece dos métodos para facilitar el despliegue:
  • Administrator Mode Setup.- Permite a los administradores de IT hacer despliegue a través de Microsoft Systems Management Server (SMS) u otras herramientas de distribución. El administrador de IT corre el setup de .NET Framework en modo silencioso. Si ocurre algún error, el setup sale de forma silenciosa y crea un archivo log con un código de error.

  • Active Directory Deployment.- Los administradores de IT deben agregar un archivo .msi de la instalación de .NET Framework 3.0 en la política del grupo. Después de que la política del grupo esté habilitada, y el cliente reinicie y se reconecte a la red, el cliente instalará automáticamente el component
    Componentes
    El .NET Framework 3.0 (antes llamado WinFX) abarca, entre otras:

  • Tecnologías y aplicaciones en 3D.

  • Aplicaciones con flujos de trabajo.
  • Aplicaciones bajo una arquitectura orientada a servicios.

  • Aplicaciones con seguridad consolidada.

    Muchas de estas tecnologías se podrán usar también en Windows XP, y están disponibles para descargarse hoy mismo (en formato Community Technology Preview).

NET Framework 3.0 biene hacer el nuevo modelo de programación para Windows, que combina el poder de .NET Framework 2.0 con las siguientes tecnologías:
Windows Presentation Foundation.
Windows Workflow Foundation.
Windows Communication Foundation.
Windows CardSpace.
Bueno Hablaremos un poco de una de estas 4 tecnologias, hablaremos de Windows Presentation Foundation , que es la nueva generación del subsistema de presentación para Windows Como muestra la siguiente Imagen:


¿Qué es Windows Presentation Foundation?
Como ya lo dije Windows Presentation Foundation(WPF), es el subsistema de presentación unificado de Microsoft para Windows, expuesto a través de WinFX, modelo de código administrado de Windows Vista que extiende Microsoft .NET Framework. WPF está compuesto por un motor que saca ventaja del hardware con gráficos modernos y por un conjunto de clases administradas que los desarrolladores pueden usar para crear aplicaciones visualmente ricas. También presenta XAML, que permite que los desarrolladores utilicen un modelo basado en XML para manipular modelos de objetos.


En Windows Vista, WinFX conocido con NetFramework admite una API con la cual los desarrolladores pueden alojar los controles y formularios de Windows Forms en una aplicación de Windows Presentation Foundation, y viceversa. Cuando un desarrollador crea una aplicación en Windows Presentation Foundation, la mayor parte del código se encuentra escrito e implementado en XAML. XAML es más rápido, más fácil de implementar y de localizar, y significa una elección mejor que cualquier código equivalente. Con XAML, no existen errores de rendimiento, porque es una representación de un modelo de objetos basado en XML.
Arquitectura de WPF

Consiste en dos partes principales:
El motor
Unifica la manera en que desarrolladores y diseñadores manejan documentos, material audiovisual e IU.
El marco de programación
Proporciona soluciones para material audiovisual, diseño para interfaz de usuario y documentos que van mucho más allá de lo que los desarrolladores tienen hoy.


Anteriormente WPF era conocido como AVALON

Algunas Caracteristicas de WPF:

  • Windows Presentation Foundation es la nueva generación del sistema gráfico.
  • Aprovecha la potencia y la capacidad que hoy en día brindan los sistemas gráficos.
  • Proporciona una base para construir aplicaciones y dar al usuario una experiencia de alta fidelidad en el uso de Windows Vista.
  • Los desarrolladores podrán proporcionar una experiencia de usuario más rica y precisa para sus propias aplicaciones.
  • Se podrán aprovechar nuevas funciones visuales, por ejemplo, AERO,
  • XAML y WPF separan los controles según su funcionalidad y sus habilidades.

  • Implementación de estilos :
    Los estilos permiten a los diseñadores de aplicaciones, documentos e IU, estandarizar una apariencia particular de un elemento. Esto se puede realizar, pero es necesario un fuerte modelo de estilo para poder compartir la apariencia. WPF provee ese modelo.
    Se puede declarar un estilo de cualquier elemento que derive desde FrameworkElement o de FrameworkContentElement. La forma más común de declarar un estilo es haciéndolo dentro del archivo XAML. Si se declara un estilo en el elemento principal de la aplicación, éste puede ser utilizado en cualquier lugar de la aplicación.

  • Objeto Aplicación
    Todas las aplicaciones que usan Windows Presentation Foundation están asociadas a un Objeto Aplicación. Este objeto representa a la aplicación frente al sistema, y permite al sistema comunicarse con la aplicación. Tiene más funciones que veremos más adelante.

  • Panel
    Los elementos de un panel son componentes que controlan la renderización de los elementos (tamaño y dimensiones, posición, y el arreglo del contenido de sus hijos). WPF proporciona un gran número de paneles, como Canvas, DockPanel y GridPanel, que veremos más adelante.


    WPF ofrece una nueva generación de gráficos:
    Efectos 3D
    La implementación 3D de Windows Presentation Foundation permite a los desarrolladores dibujar, transformar y animar gráficos 3D de distintas formas, usando las mismas habilidades afrontadas por la plataforma de gráficos 2D. También permite combinar gráficos 2D y 3D para crear controles más atractivos, y proporcionar complejas ilustraciones de información. Este soporte 3D que nos otorga Windows Presentation Foundation no tiene todas las características para el desarrollo de juegos.
    Animaciones
    Las animaciones pueden ser un atractivo para una interfaz de usuario. Solamente con pocas animaciones se pueden crear sorprendentes efectos de animación.
    WPF proporciona todas las herramientas para que este proceso que tan complicado nos parecía antes sea más fácil de implementar.
    Gráficos basados en vectores
    Windows Presentation Foundation usa gráficos basados en vectores. Éstos, que incluyen SVG (Scalable Vector Graphics), archivos metafile (.wmf) y las fuentes (que usamos usualmente para las letras), almacenan la información y la transmiten como una lista de instrucciones que describen cómo se va a recrear una imagen usando gráficos primitivos.

Por todo lo expuesto vemos que con WPF podremos realizar las mismas actividades que realizamos con macromedia O.o ji pero de una manera integrada, la disminuciòn de codigo al momento de realizar nuestras animaciones y sobre todo que nuestras aplicaciones tendran un mejor resalte para que nuestro usuario interactue de una mejor manera.
REFERENCIAS:

Si por casualidad quisieran obtener un poco mas de informacion la encuentran en los materiales de estudio del http://www.dce2005.com correspondientes a la cuarta Estrella...