sábado, 27 de febrero de 2010

Quieres ganar libros de Adobe

El Adobe User Group - Xpert, está regalando libros FÍSICOS de las mejores y más conocidas editoriales técnicas con temas Adobe O’reilly, friendsofed, informit y Peachpit. ¿Cómo ganar?, fácil, solo debes crear un tutorial o vídeo-tutorial, un articulo relacionado con algún producto Adobe o siguiendo al usuario@adobexpert en Twitter, la información completa del concurso se encuentra aquí.




Leer más...

viernes, 26 de febrero de 2010

Reunión OnLine

Hace no más de una semana inicio la idea de Un día para hablar y en muy poco tiempo hemos logrado tener muy buen material de desarrollo de software y temas asociados, además muchos lectores me han comentado que están dispuestos a contribuir con el blog. Contamos con un nuevo contribuyente que espera terminar con el limitado e insignificante reinado del terror que tenía yo como único y sumo administrador del blog.


Recordemos que todo empezó el pasado domingo 21 de Febrero, con una pequeña reunión en la que solo asistimos unos cuantos fulanos, pero en la que hablamos de varios temas de mucho interés, hablamos de Flash, de Flex, de la creación de animaciones a partir de código utilizando la librería de TweenLite, todo esto para contribuir de alguna manera en el desarrollo de un proyecto, todo en un ambiente poco académico e informal, muy al estilo de grandes iniciativas como el Domingo en la Mañana?, BarCamp, TequilaValley entre otras muchas, solo que en esta oportunidad lo estamos haciendo en la Web para que la gente no se levante de su camita o puedan participar sin miedo de gastar dinero o salir temprano en la mañana.

Ahora, cito a reunión a quienes quieran participar el día domingo 28 de febrero. Para poder “trabajar” vamos a utilizar Skype (mi cuenta es juanchoVanegasO), para hacer una llamada múltiple y Microsoft Shared View para poder compartir escritorios y documentos, la cita es igual que el anterior domingo a las 10:00am. Pueden ir llegando y llevar sus comentarios, material, dudas o lo que quieran, lo importante es que estén dispuestos a hablar y a compartir.

Para mayor información pueden contactarme atreves del correo sebastian44van[at]gmail.com, dejar un comentario en esta entrada o por twitter: @juanchoVanegas.

Espero que hagan parte de esta charla que no solo espera crear proyectos sino crear comunidad!


Leer más...

jueves, 25 de febrero de 2010

Obtener Una Llave Creada en AppSettings del Web.Config

Les dejo la forma de recuperar una llave creada en el web.config desde la etiqueta AppSettings.

Bueno. este fuente es de mi sitio, donde espero terminar pronto, y lo que realizo es una consulta al lector RSS preferido, bueno sin mas preámbulo, lo primero que tienen que hacer es crear la llave desde el web.config de esta manera. Recuerden que estas líneas deben ir dentro del tag <configuration>

 

image

luego de tener creado el tag en el web.config deberán colocar este fuente para poderlo recuperar.

 

image

Saludos.  Sergio.

Leer más...

Authenticatión Basada en ASP.NET

he querido mostrar el uso de las clases encargadas de generar las autenticaciones de usuario en asp.net espero el recurso sea de gran ayuda..

 

Saludos,   
       Sergio V…

Leer más...

Utilizar la Interfaz IEnumerable

Según la definición suministrada por MSDN.

Expone el enumerador, que admite una iteración simple en una colección de un tipo especificado. Además de permitir manipular las colecciones de objetos de una manera facil de implementar.

para esta demo veremos el uso de esta importante Interfaz, que nos ayudara mucho en nuestros desarrollos, teniendo como ejemplo una clase creada llamada Persona. Lo que quiero mostrar es una grilla con la información de personas cargadas desde una coleccion de personas. de esta manera.
Fijense que esta función retorna una coleccion de personas muy facilmente, y me aseguro que son personas haciendo uso de generics. lo que hace falta es volcar la información almacenada en la grilla.




De esta manera agrego la información a la grilla utilizando la propiedad DataSource, que permite almacenar colecciones de objetos. El resultado de la demo seria



Saludos…
Sergio.

Leer más...

martes, 23 de febrero de 2010

Qué necesitas?

Estamos empezando, queremos hacer comunidad, queremos formar a la gente, queremos compartir información, experiencias, trabajo, problemas y material, por esto les pido que llenen este formulario para que nos digan que piensan de la idea, que opiniones tienen, que necesidades hay y así mismo crear o buscar contenido que nos ayude a mejorar y a formar comunidad.


Leer más...

lunes, 22 de febrero de 2010

Encapsulamiento

Una de las maneras más eficientes de mantener la seguridad en las aplicaciones Web y de Escritorio en cualquier lenguaje de programación es el Encapsulamiento, además de brindar seguridad a las aplicaciones permite tener una organización muy precisa a la hora de desarrollar sin embargo en muchas ocasiones se vuelve tedioso manejar todos los métodos de encapsulamiento de un objeto, en especial cuando son muchos los atributos de la clase.


Empecemos por definir ciertos conceptos básicos de la programación orientada a objetos (POO). Está compuesta por clases, una clase en términos coloquiales, es el plano de un objeto, es donde se deben definir todas las características de los objetos de la vida real o de objetos abstractos, en POO siempre se habla de dos conceptos claves: Atributos y Métodos.

Atributos: Son las características de los objetos, por ejemplo, los atributos de una persona son, nombre, apellidos, número de documento, estatura, color de piel, peso, etcétera.

Métodos: Son las funciones o acciones del objeto en caso de la persona, los métodos son, caminar, hablar, reír, pensar, gritar, etcétera.

Una de las premisas de POO, es que la mayoría, sino todos, los atributos de un objeto deben ser privados, esto para tener seguridad sobre los valores del objeto, pero entonces...¿cómo acceder a los atributos de una clase?, la respuesta, encapsulamiento, los métodos de encapsulamiento se utilizan sólo cuando es apropiado entregar los datos a otro objeto que solicite la información. Un ejemplo por favor.

Piensa en tus atributos, tienes nombres, apellidos, bla, bla bla, esto ya lo habíamos dicho, todos esos atributos son privados, ¿pero si son privados...porque la gente me llama por mi nombre? fácil, por los métodos de encapsulamiento que permiten al objeto entregar la información que sea solicitada por otro objeto... sigamos con el ejemplo, te encuentras en un Bar, a lo lejos en la penumbra vez una sombra que se acerca a tu mesa, estás sólo/a era de esperarse porque nadie te quiere...(sí estás leyendo esto es porque eres programador, los programadores no tienen amigos, eso todo el mundo lo sabe)...pero la sombra se sigue acercando, cuando la reducida luz que se encuentra sobre tu persona, alcanza a iluminar ligeramente al desconocido/a vez que es lo que estabas esperando, sí eres hombre, es la mujer más hermosa del mundo y te tiene ganas. Sí eres mujer es un fulano guapo que te tiene ganas, él/ella atravesó todo el bar para conocer tu atributo privado nombre, tu utilizas tú método de des-encapsulamiento para entregarle a el/la desconocido/a ese valor...pfff entonces, ¿para qué encapsulo si al final voy a entregar el valor a cualquier desconocido?. Imagina la misma escena, sólo que esta vez no es el amor de tu vida sino un ladrón que te va a hacer el paseo millonario y que esta vez no está interesado en tu nombre sino en tu clave de la tarjeta, ¿tu se lo entregas?, NO! por eso es importante encapsular los atributos de una clase, para que los objetos sólo puedan entregar los valores que sean programados por ti y no por nadie más.

Ahora si, vamos al código, en esta oportunidad voy a utilizar C#, sin embargo en la mayoría de los lenguajes es igual o por lo menos muy parecido. Sigamos con el ejemplo, voy a usar la clase Persona, que tendrá 3 atributos básicos:

namespace Encapsulamiento{

class Persona{

//primero que todo definimos los atributos

private string nombre;

private string apellidos;

private int clave;


}

}


Teniendo la clase lista, ahora lo que debemos hacer es generar los métodos de encapsulamiento, en C# es muy fácil, en el código se encuentra la explicación:


namespace Encapsulamiento

{

class Persona

{

//primero que todo definimos los atributos

private string nombre;

private string apellidos;

private int clave;


//Los métodos de encapsulamiento NO pueden llamarse igual

//a los atributos, por eso la diferencia está en la mayuscula

public string Nombre

{

//GET es el métodos que utilizaras para entregar tu nombre al desconocido

get { return nombre; }

//SET es el método que se utiliza para asignar un valor al atributo

//cuando naciste tu mamá y tu papá utilizarón este bloque para bautizarte

set { nombre = value; }

}


public string Apellidos

{

get { return apellidos; }

set { apellidos = value; }

}


public int Clave

{

get { return clave; }

set { clave = value; }

}

}

}



Básicamente, el encapsulamiento se usa para dar más seguridad en tus aplicaciones, para evitar que la información se filtre y para dar mucho más orden en las clases.

Dejen sus comentarios.

Leer más...

domingo, 21 de febrero de 2010

TweenLite básico

TweenLite, es una potente librería que permite la creación de movimientos en Flash, basado en procedimientos aritméticos. En ocasiones y en especial cuando se es desarrollador hacer animaciones con línea de tiempo en Flash, es un proceso que lleva mucho tiempo y que puede que no entregue los resultados esperados.

En este post voy a hacer una pequeña introducción al trabajo con la librería de TweenLite que a mi concepto es una de las más fáciles de utilizar y una de las más completas además.



--
Antes de empezar, hay que descargar las clases, yo recomiendo crear una carpeta donde se almacenen todas las librerías que descarguemos, esto nos permite compartir librerías entre proyectos y lógicamente mantener el orden de nuestro material.


Al tener el paquete descargado y descomprimido encontraremos una carpeta llamada gs y un par de archivos SWF que permiten explorar todas las posibilidades de animaciones utilizando las clases de TweenLite, recomiendo ver como funcionan y explorar un buen tiempo las herramientas.

Para poder utilizar las librerías debemos crear un nuevo proyecto de ActionScript 3.0 y crear en él un nuevo Clip de película.

lo nombramos cara_mc (o lo que sea) y lo dejamos en el escenario, después de eso, debemos ponerle un nombre de instancia, preferiblemente el mismo nombre que le dimos al crearlo, este nombre de instancia es para poder llamar al objeto desde el código AS3, para poner el nombre de instancia se debe hacer desde el panel de propiedades en la parte superior del panel, cuando el clip de película está seleccionado.

Ahora guardamos el archivo en algún lugar y al mismo nivel de carpetas copiamos y pegamos la carpeta GS de TweenLite, esto para que el archivo de Flash pueda importar las clases y pueda utilizar los métodos de las mismas.


Teniendo listo todo, es hora de pasar al código, vamos a iniciar con un ejercicio sencillo, hacer que el clip de película se desplace de un lugar a otro, para ello vamos a crear una nueva capa llamada AS y en el primer fotograma (hasta el momento no tenemos más de un fotograma) vamos a buscar el panel de acciones de Flash y escribimos lo siguiente:






import gs.TweenLite;


//el import se encarga de llamar a las clases de la carpeta gs


// TweenLite.to( clip, duracion, parametros )


TweenLite.to(cara_mc, 1.5, {x:350,y:200})


//cara_mc es nuestro clip de película


//1.5 es el tiempo en milisegundos que tardara la animación


//los parametros x,y y sus valores, son el destino final del MC




Esto genera una animación sencilla sobre nuestro clip de película. Ahora vamos a hacer una animación más compleja donde el clip persigue el puntero del Mouse, el código debe variar de esta manera:


import gs.TweenLite;


import gs.easing.*;


stage.addEventListener(MouseEvent.MOUSE_MOVE,seguir);


function seguir(e:MouseEvent):void{


TweenLite.to(cara_mc, 2.5,x:this.mouseX,y:this.mouseY, ease:Elastic.easeOut})


}





En este código manejamos un "escuchador de evento" Listener que será objeto de estudio en un próximo post, la función seguir recibe como parámetro un objeto de la clase MouseEvent ya que es la clase encargada de manejar el evento de movimiento del Mouse, por otra parte, la última parte del códigoease:Elastic.easeOut se encarga de generar el movimiento elástico que se ve en la animación.

Espero que les guste y si tienen inquietudes recuerden dejar sus comentarios o escribirme a sebastian44van[at]gmail.com o en Twitter: @juanchoVanegas.


Leer más...

Arranca!!!!


Un día para hablar, es una propuesta para que desarrolladores y diseñadores de software, se encuentren, bien sea en persona o por la WEB y hablen de sus proyectos. Inicia como una idea académica para apoyar el trabajo de los estudiantes, pero espera contar con el apoyo de personas del medio para enriquecer la formación, las comunidades de diseño y desarrollo y unir personas bajo un mismo techo.

La idea inicia HOY, y espero que tengamos para un buen rato.

Si tienes dudas, aportes o sugerencias para organizar eventos, deja tus comentarios o envía un correo a sebastian44van[at]gmail.com o en Twitter a @juanchoVanegas.

Leer más...

sábado, 20 de febrero de 2010

Listar el Estado de Un Servicio con la clase ManagementObjectSearcher

 

 

Saludos…

lo primero que tienes que hacer es crear la referencia apuntando al namespaces System.Management y posteriormente Implementarlo con using y debera quedar de esta manera.

 

image

 image

 

 

luego deberás escribir las siguientes líneas de código en un método de esta manera y mostrarlos en un control de Colección como un ListBox ..

 

image

Espero les sirva…

 

Saludos..

Sergio

Leer más...