Que son las Tecnologías WOW?

Las tecnologías WOW es la nueva generación de tecnologías de software y aplicaciones para usuarios, desarrolladores, diseñadores, empresas con mayor rendimiento e interoperabilidad, visualmente ricas en interfaz de usuario, que cambiarán la forma de construir aplicaciones para la plataforma Windows, y que por su puesto nuestra  primera expresión al utilizar estas tecnologías es decir " Wooow!! ".

Dentro de las tecnologías WOW se pueden mencionar algunas:

NET Framework 3.5: Es un marco de trabajo que Microsoft desarrolla para hacer más productivo el ambiente de desarrollo de software en donde ofrece habilidades para aplicación en diferentes arquitecturas , se compone de un entorno de ejecución (CLR), una biblioteca de Clases Base (BCL) como por ejemplo, Windows Presentation Foundation, Communications y Workflow, Datos, XML y LINQ,ASP.NET.

XNA Game Studio 2.0: Es una plataforma de desarrollo para Windows y XBOX 360 destinada a desarrolladores aficionados a los videojuegos, el cual permite crear, desarrollar y combinar productos para poder tener un excelente videojuego, esta versión ya trabaja con Windows Vista, y su característica primordial es el soporte de multijugador, y se integra a Visual Studio 2005.

logoxna

LINQ: Es un Lenguaje Integrado de Consultas (Language Integrated Query) que se incluye en el nuevo Visual Studio 2008, donde permite reducir la complejidad de acceso a la información, en donde el enfoque general es facilitar las consultas a fuentes de información y no solo a los datos relacionales o XML, si no a consultas orientadas a objetos, este lenguaje trabaja bajo operadores de consultas, expresiones lambda, entre otros.

Silverlight: Es la plataforma de desarrollo web de la siguiente generación de aplicación ricas para crear y mejorar las experiencias de usuario, esta tecnología permite un modelo de programación flexible que soporta AJAX, VB, C#, Phyton, Ruby e integra aplicaciones Web existentes como PHP, ASP.NET, además de incorporar multimedia, video, animaciones, interactividad e interfaces de usuario sensacionales. Une a programadores y diseñadores con un lenguaje de etiquetas para aplicaciones llamado XAML, con los productos de Microsoft Expression y Visual Studio 2008.

silverlight77777

Microsoft AJAX: Se compone de un grupo de tecnologías ya existentes como JavaScript, DOM, XML, entre otros, en donde Microsoft lo implementa llamándolo ASP.NET AJAX, mediante una serie de controles los cuales van a permitir tener una experiencia de usuario en web interactiva, y sin recargas de páginas completas como existía anteriormente, además de poder combinar un manejador de scripts y controles extender llamados AJAX ControlToolkit.

Microsoft Robotics: Una tecnología que sin duda tiene un futuro por delante, ya que permite programar y controlar una gran variedad de dispositivos robóticos de gran cobertura a nivel mundial, mediante un ambiente visual llamado Visual Programming Language, y poder desarrollar sus propios servicios para diferentes operaciones en Visual Studio.

Gadgets: Son mini aplicaciones desarrolladas bajo la plataforma de Windows Vista, que implementan diferentes operaciones desde un reproductor multimedia, reloj, tiempo hasta poder interactuar con un dispositivo móvil, se caracterizan por estar situados en la sidebar de la PC.

Microsoft Expression: Un conjunto de herramientas para diseño, web, y programación, que permiten la integración con Visual Studio y crear aplicaciones de gran calidad de presentación para los usuarios finales, Microsoft Expression se compone de Expression Design, Expression Media, Expression Encoder, Expression Blend y Expression Web.

Microsoft Popfly: Es diversión, una fácil manera de construir y compartir Gadgets, Mashups, y páginas web, una serie de herramientas visuales online en donde puede hostear, compartir, calificar e incluso mejorar aplicaciones ya existentes por usuarios de Popfly.

ASP NET 3.5: Una nueva extensión para Visual Studio 2008, que permite tener nuestros controles para Silverlight, manejo de datos con LINQ, integración con AJAX, etc.

Visual Studio 2008: El nuevo entorno de desarrollo que brinda Microsoft para creación de aplicaciones con un excelente performance, arquitectura, y funcionalidad. Sus características es tener la posibilidad de escoger entre múltiples versiones del framework, debugging, integración con varias tecnologías, desarrollo de dispositivos móviles, y más.

bb964613_vsf2008_sub_banner

Windows Presentation Foundation: Nueva generación de presentación para Windows, en donde se incluye el lenguaje XAML para la interacción entre diseño y programación, además de poder manejar objetos en 3D, animaciones, multimedia con los lenguajes de programación de .NET, como lo es VB,C# entre otros.

Windows Communication Foundation: Clases que permiten una unificación de tecnologías que hacen posible el manejo de servicios bajo diferentes protocolos, teniendo la gran ventaja de manejar interfaces, Uri, NetRemoting, etc.

Windows CardSpace: Tecnología que permite manejar cuentas de correos, contraseñas, usuarios mediante una tarjeta o identidad única, el cual va a reducir que tenga que estar recordando todos sus usernames y passwords en cientos de páginas web, tan solo con hacer un login escogiendo la tarjeta desde la PC.

Windows Workflow: Una manera de programación mediante flujos de trabajo, el cual cuenta con un diseñador visual mediante diagramas de flujo que permite la creación de aplicaciones realmente funcionales.

DataPager en ASP.NET 3.5

Siguiendo con el mismo ejemplo anterior, este control nos va a permitir navegar entre diversas paginas mostrando así diversos elementos entre los cuales tenemos en nuestra ListView.

Tan solo con agregar el control a nuestra página web.

ASP6

Despues configurarlo mediante el asistente.

ASP7

Colocar dentro de nuestras propiedades del control, en su propiedad PagedControlID el ID del objeto a referenciar, en este caso la del ListView y listo, finalmente tenemos:

ASP8

Ejemplo de ListView en ASP.NET 3.5

Que tal, después de unos largos días de descanso publicare un pequeño ejemplo de como usar estos nuevos controles que vienen incluidos en ASP.NET 3.5 Extensions, creando una website con un XML que en este caso será nuestro feed del blog y mostrandolo en la lista.

1.-Instalamos las extensiones de ASP.NET 3.5 en nuestro Visual Studio 2008.

2.-Creamos una nueva website.

asp1

3.-Colocamos un ListView en nuestra pagina.

asp2

4.-Seleccionamos un XML DataSource con las siguientes opciones:

Nombre de tu URL de Feed de tu Blog,y el Path, como se muestra en la figura:

asp3

5.-Y ahora nos iremos al modo source para poder agregar lo que son itemtemplates, layout templates, que nos pide lo que es el listview para poder mostrar nuestros datos.

<asp:ListView ID="ListView1" runat="server" DataSourceID="XmlDataSource1">
        <LayoutTemplate>
        </LayoutTemplate>
        <ItemTemplate>
        </ItemTemplate>

</asp:ListView>

Aquí tengo que aclarar un punto importante, es necesario en la parte de Layout Template añadir un Place Holder de nuestros controles, y colocar en su ID "itemPlaceHolder" para que el ListView pueda reconocer y adaptarse a el indicando que sera el contenedor para cada elemento que se agregará mediante el XML.

<LayoutTemplate>
         <br />
         MrEdison Blog RSS
         <br />
            <asp:PlaceHolder  ID="itemPlaceHolder" runat="server"></asp:PlaceHolder>

</LayoutTemplate>

 

En el ItemTemplate colocaremos ciertos puntos importantes, los cuales son el link de cada post, los cuales serán los títulos, además de colocar la fecha de publicación de cada uno y su descripcion.

<ItemTemplate>
             <h2><a href='<%# XPath("link") %>’><%#XPath("title")%></a></h2>
             <p><em>Publicado el <%#XPath("pubDate")%></em></p>
             <p><%#XPath("description")%></p>
  </ItemTemplate>

Quedando de esta forma:

asp4

Podemos añadirle nuestro diseño quedaría finalmente así:

asp5

World of Warcraft con Visual Studio??

Hola, antes que nada, comentarles de Warcraft, sin duda uno de los mejores juegos que ha salido por parte de Blizzard Enterteinment al igual que Starcraft son juegos que realmente valen la pena, y para hacer mas divertido esto, checa lo que Microsoft y CodePlex tienen para ti:


Para alcanzar el mejor juego de WoW con tus amigos, crea un add-on con el nuevo AddOn Studio para World of Warcraft, herramienta de desarrollo open-source que permite generar con Visual Studio add-ons para World of Warcraft. http://www.worldofwarcraft.com/index.xml


Este entorno de desarrollo para WoW se genera con el modo aislado del Shell de Visual Studio 2008. Entre las funciones clave, figuran una superficie de diseño visual, un editor de código Lua, FrameXML IntelliSense, y la auto-generación de eventos Lua.



Video: World of Warcraft with Halo 3 Sounds using AddOn Studio

 


splashscreensnaplines 


URL: http://www.codeplex.com/WarcraftAddOnStudio

Consultas en LINQ

En este post vamos a seguir checando como usar LINQ mediante consultas simples.

Crearemos un proyecto de consola en C# , crearemos una clase llamada Libros, en donde tenemos los siguientes atributos:

public class Libros
    {
        public string Titulo{ get; set; }
        public string Editorial { get; set; }
        public string Autor { get; set;}}

Crearemos una lista de libros con los atributos que definimos en nuestra clase:

public static List<Libros> libros = new List<Libros>
    {
     new Libros{Titulo="Indigo",Editorial="Microsoft Press",Autor="David Pallmann"},
     new Libros{Titulo="Threat Modeling",Editorial="Microsoft Profesional",Autor="Frank Swiderski"},
     new Libros{Titulo="MCP NET Framework",Editorial="Microsoft Press",Autor="Mike Snell"},
     new Libros{Titulo="XML WebServices",Editorial="Microsoft Profesional",Autor="Adam Freeman"},
     new Libros{Titulo="Developing ASP.NET 2.0",Editorial="Microsoft Press",Autor="Dominick Baier"}
    };

Añadimos en nuestro método principal la consulta LINQ, el cual tendré todos los libros cuya Editorial sea Microsoft Profesional.

var Consulta= from libro in libros
                     where libro.Editorial == "Microsoft Profesional"
                       select libro;

Concluimos ejecutando la consulta y mostrando los resultados en un ciclo:

foreach (Libros libro in Consulta)
        {
            Console.WriteLine("{0}, {1}, {2}.", libro.Titulo, libro.Editorial, libro.Autor);
        }
        Console.ReadLine();

Nuestro código completo sería el siguiente:

using System;
using System.Linq;
using System.Collections.Generic;

class ejemplo1
{
    public class Libros
    {
        public string Titulo{ get; set; }
        public string Editorial { get; set; }
        public string Autor { get; set;}
    }
    public static List<Libros> libros = new List<Libros>
    {
     new Libros{Titulo="Indigo",Editorial="Microsoft Press",Autor="David Pallmann"},
     new Libros{Titulo="Threat Modeling",Editorial="Microsoft Profesional",Autor="Frank Swiderski"},
     new Libros{Titulo="MCP NET Framework",Editorial="Microsoft Press",Autor="Mike Snell"},
     new Libros{Titulo="XML WebServices",Editorial="Microsoft Profesional",Autor="Adam Freeman"},
     new Libros{Titulo="Developing ASP.NET 2.0",Editorial="Microsoft Press",Autor="Dominick Baier"}
    };

    static void Main()
    {
       var Consulta= from libro in libros
                     where libro.Editorial == "Microsoft Profesional"
                       select libro;

       foreach (Libros libro in Consulta)
        {
            Console.WriteLine("{0}, {1}, {2}.", libro.Titulo, libro.Editorial, libro.Autor);
        }
        Console.ReadLine();

    }
}

El resultado sería:

04Linq

 

Como obtener una lista de directorios con LINQ

En este post explicare los sencillos pasos para obtener una lista de directorios y su información ocupando el Lenguaje de Consultas Integrado LINQ en Visual Studio 2008.

1.- Creamos un proyecto de Aplicación Windows Forms en VB

2.-Agregamos un DataGridView para visualizar los datos en la regilla.

02Linq

3.-Agregamos el siguiente código en el evento Load del Formulario.

Public Class Form1

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

        Dim directorios = From directorio In My.Computer.FileSystem.GetDirectories("C:Program Files") _
                       Order By directorio _
                       Select directorio
        Dim InfoDirectorios = From directorio In directorios _
                           Select My.Computer.FileSystem.GetDirectoryInfo(directorio)

        Me.DataGridView1.DataSource = InfoDirectorios.ToList()

    End Sub
End Class

En donde tenemos la siguiente consulta que toma los nombres de los directorios que están en la ruta, en este caso c: y los ordena por directorio, además una segunda consulta que va a mostrar la información de tal directorio buscado,que después solo mostraremos en un DataGridView.

03Linq

URL: http://msdn2.microsoft.com/en-us/netframework/aa904594.aspx

 

Introducción a LINQ

 En los últimos años ha aumentado la tecnología todo gracias a sistemas inteligentes y la evolución de los lenguajes de programación orientada a objetos. Esto quiere decir que la mayoría de los programadores ya estan familiarizados con los conceptos como clases, objetos,metodos, etc. Microsoft se enfoco en esta gran ventaja y propuso que es un reto poder reducir la complejidad del acceso a la información. Hemos venido utilizando tecnologías para poder tener acceso a nuestra información, los cuales son las bases de datos relacionales y XML.

Microsoft crea un proyecto llamado LINQ (Lenguaje Integrado de Consultas)”Language Integrated Query” en donde el enfoque general es facilitar las consultas a fuentes de información y no solo a los datos relacionales o XML, si no que esta vez  orientado a objetos.

Estas consultas integradas en los lenguajes .NET  (Vb,C#) van a definir un conjunto de operadores de consulta estandar el cual nos permiten hacer operaciones de recorrido, filtro y proyecciones en los datos o información que estemos manejando. 

¿Cuales son estos operadores de Consulta?

Si checamos el siguiente programa, en donde utilizamos un array de nombres y determinamos mediante una enumeración la consulta que queremos realizar, que sería saber todos los nombres que empiezen con la letra E. Tenemos que nuestros operadores serian :  from, where, orderby,select.

using System;
using System.Linq;
using System.Collections.Generic;
 
class ejemplo1

 

{

static void Main()

{ 
  string[] _nombres = { "Edison", "Daniel", "Edgar","Esperanza", "Alberto", "Jorge","Omar", "David" };

  IEnumerable<string> expresion = from nom in _nombres
                                  where nom.StartsWith("E")
                                  orderby nom
                                  select nom;
  
 foreach (string elemento in expresion)
Console.WriteLine(elemento);
Console.ReadLine();
} 

}

¿Cuales  son las características principales de LINQ?

 LINQ está construido enteramente sobre características de los lenguajes de propósito general, algunas de las cuales son nuevas en C# 3.0 y Visual Basic 9.0.

  •   Expresiones lambda y árboles de expresión

     Las expresiones lambda ofrecen a los desarrolladores una manera conveniente para poder escribir funciones que puedan ser pasadas como argumentos, hagamos de cuenta que las expresiones lambda son similares a los delegados del CLR.

     

    Retomando el mismo ejemplo anterior agregaremos expresiones lambda:

using System;
using System.Linq;
using System.Collections.Generic;

 

class ejemplo1

{

static void Main() { 

   string[] _nombres = { "Edison", "Daniel", "Edgar","Esperanza", "Alberto", "Jorge","Omar","David" };

  

Func<string, bool> condicion = nom => nom.StartsWith("E");

Func<string, string> orden = nom => nom;

Func<string, string> seleccion = nom => nom;

IEnumerable<string> expresion = _nombres.Where(condicion)

                                     .OrderBy(orden)

                                     .Select(seleccion);

 
foreach (string elemento in expresion)
Console.WriteLine(elemento);

Console.ReadLine(); }

}

    Checamos que las expresiones lambda tienen la ventaja de ofrecernos una sintaxis más directa y compacta para la escritura.

¿De qué se compone el proyecto de LINQ?

linq00

Podemos checar que el Proyecto LINQ se compone de C# 3.0, VB 9.0 y se aplica para Objetos, Base de datos Relacionales, XML.

Checaremos más ejemplos:

En este ejemplo lo que hacemos es tener un arreglo de tipo string en donde almaceno cierta cantidad de frutas y mi consulta se almacenara en un grupo de Frutas en donde clasificará a las frutas por la primera letra.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

class Program

{

static void Main(string[] args){

 

 string[] frutas = { "manzana", "pera", "sandia", "papaya", "piña", "mango","limon","guayaba","naranja" };

 

 var grupoFrutas = from f in frutas

                   

group f by f[0] into g

                    select new { PrimeraLetra = g.Key, frutas = g };

 

foreach (var g in grupoFrutas){

   Console.WriteLine("Las frutas que empiezan con la letra ‘{0}’:", g.PrimeraLetra);

             foreach (var f in g.frutas){

                   Console.WriteLine(f);     

     }  
 }   
Console.ReadLine();  
 }  
}

 

 

 Puedes checar más sobre LINQ con estos links:

LINQ Project. http://msdn2.microsoft.com/en-us/netframework/aa904594.aspx

101 Ejemplos .- http://msdn2.microsoft.com/en-us/vcsharp/aa336746.aspx