Month: enero 2012

[Aprendiendo C#] Desarrollo de Aplicaciones en Capas con C#

 

El Domingo 29 de Enero, tuve la oportunidad de charlar con los amigos del Grupo de Facebook de Aprendiendo C#, acerca del desarrollo de aplicaciones en Capas. Utilizamos Entity Framework, SQL Server 2008 R2, Visual Studio 2010 y el lenguaje de programación C#.

Quiero agradecer al compañero y amigo José Saturnino, por su colaboración en la charla, así como a cada uno de los colegas que me acompañeron durante el Live Meeting.

Parte I: En esta parte tuvimos que instalar SQL Server 2008 R2, para fines del ejemlo.

Parte II: En esta parte miramos una pequeña aplicaciones en N-Capas, explicamos el concepto de las capas y cuales son las principales para los proyectos empresariales.

 

Espero que sea de su agrado, y cualquier duda estoy para colaborar. Samuel Arellano

[Dev3Cast] Build

 

Hablamos con Seth Juárez de Devexpress sobre el evento Build en Los Angeles de este pasado 13 de septiembre de 2011. Ahí se detalló lo que viene para el mundo de desarrollo en lo que respecta a Windows 8, WinRT, interfaces de usuario Metro y más. Acompañaron el podcast Mario Cornejo, Gabriel Flores y .Samuel Arellano,

 

build_logo.png

Recursos:


Build Windows
What is WinRT and what does it have to do with .NET?
Videos de entrevistas hechas por Devexpress durante el evento Build

Escucha el Podcasts en la Web Oficial del Dev3Cast: Build

[Dev3Cast] ASP.NET vNext

 

Tuve la oportunidad de platicar en esta ocasión sobre la siguiente versión de ASP.NET y lo que viene para Visual Studio en esta plataforma de desarrollo con Mario Cornejo y Gabriel Flores.


images.jpg

Recursos:
HTML Editor Smart Tasks and Event Handler Generation (por Scott Guthrie)
Strongly Typed Data Controls (por Scott Guthrie)
Web Forms Model Binding Part 1: Selecting Data (por Scott Guthrie)
Web Forms Model Binding Part 2: Filtering Data (por Scott Guthrie)
ASP.NET MVC 4 Developer Preview: un primer vistazo (por José M. Aguilar)
vNext, ASP.NET 4.5, Webmatrix 2 y MVC4 (VAN por Christian Prieto)

Escucha el Podcast en la Web Oficial del Dev3cast: ASP.NET vNext

[Aprendiendo C#-WebCast] Introducción a C#

El día Domingo 22 de Enero del 2012, tuve la oportunidad de compartir con los compañeros del grupo de Facebook Aprendiendo C#, un poco de este gran lenguaje de programación. Entre los temas que explique en este Webcast, está el tema de variables, constantes, como mandar desplegar mensajes a la consola, como leer variables mediante la consola, ejemplos básicos de funciones, etc.

Espero que sea de utilidad este video.

[Csharp-Módulo I] El .NET Framework

El .NET Framework surge como una alternativa de solución para los desarrolladores, brindando beneficios durante el proceso de desarrollo de software.

El ,NET Framwork nos va a brindar la posibilidad  de trabajar con con código ya existente, también cabe mencionar que nos permite trabajar con COM+, y de hecho también con el API de Windows.

Cabe mencionar que con el .NET es más sencillo instalar proyectos en las computadoras de los clientes que las aplicaciones tradicionales (porque ya no vamos a necesitar estar registrando todos aquellos componentes que utilizabamos en los proyectos) ya que se tiene también una gran integración con diversos lenguajes de programación.

Algo que permite .NET es que es muy sencillo entender facilmente el código tanto de un colega desarrollador de VB.NET y uno de C# (también es sencillo irnos empapando de los dos lenguajes), dando la oportunidad a los desarrolladores de programar con el lenguaje que se sientan más comodos.

Pero aquí es donde viene la primera pregunta… ¿Cómo es posible programar en diversos lenguajes y que sean entendidos por el .NET Framework? Esto se debe a que el .NET Framework comparten librerías de .NET, por eso no es importante en que lenguaje desarrollemos, siempre y cuando sea soportado por el CLR, el cual explicaré a continuación.

Existen diversos componentes dentro del .NET y los cuales debemos de aprender cuales son y para que sirven: CLR, Assembly y CIL.

CLR: Uno de los componentes principales del .NET Framework es lo que se conoce como CLR (Common Languaje Runtime). Su función es leer aquél código generado por el compilador y ejecutarlo, sin tomar en cuenta si el software fue desarrollador en el lenguaje de programación C# o VB.NET, o cualquier otro, siempre lo va a ejecutar.

Assembly: Es el resultado que tenemos al compilar un programa escrito en un lenguaje .NET. También cabe mencionar que el assembly está compilado  en lo que conocemos como CIL.

CIL: Para entender que es el CIL, lo explicaré de la siguiente manera. Los programas que realizamos en .NET en realidad no se compilan en lenguaje ensablador, sino en un lenguaje intermedio que se conoce como CIL, el cual es ejecutado y leído por el famoso runtime. Hay que tomar en consideración que lo que le da la flexibilidad y la capacidad de interoperabilidad (o multiplataforma) es el uso del CIL y el runtime.

En la próxima entrada, estaré explicando acerca de lo que son las especificaciones comunes del lenguaje y otros puntos importantes.

Espero que estos conceptos sean de utilidades para ustedes.

Samuel Arellano

[CSharp-Módulo I ] Los inicios del desarrollo de aplicaciones para plataforma Windows

Hola que tal mis estimados lectores, con la intención de que puedan aprender y comprender la sintaxis del lenguaje de programación C#, he decido elaborar un pequeño curso básico (o pueden llamarle asesoría jejeje), respecto a C#.

En este módulo I, vamos a tratar temas como un poco de los inicios de cómo se desarrollaban anteriormente las aplicaciones para la plataforma Windows, cómo fue que surge .NET, así como todos los componentes que nos van a facilitar las tareas cotidianas con las que nos enfrentamos día a día en nuestras actividades como desarrolladores de Software. Por último estaremos desarrollando nuestro primer programa en C# (¿emocionante verdad Smile?).

Anteriormente una de las formas de desarrollar aplicaciones era utilizando los lenguajes de programación C o C++, utilizando un API de Windows. Aquí es donde surge la primera pregunta… ¿Qué es un API? Básicamente podemos decir que un conjunto de funciones que se encuentran con una relación entre ellas, las cuales nos permitían ( o permiten ) tener una comunicación con el sistema operativo.

Uno de los problemas principales que se presentaba con este estilo de desarrollo de software, es que era demasiado complejo y difícil de manejar, debido a que contaba con demasiadas funciones en su interior. Microsoft para eso creó el famoso MFC, el cual era pos así decirlo un mini-framework o un conjunto de clases que permitian que fuera más accesible utilizar Win32.

Posteriormente empezaron a surgir otros lenguajes como alternativas para desarrollar aplicaciones entre las cuales destaca Visual Basic (para aquellos que somos de la vieja escuela jeje), este lenguaje tuvo demasiada popularidad , ya que podíamos trabajar en una capa superior de Win32.

Aún recuerdo que compartir código entre diversos lenguajes resultaba demasiado complicado, pero es donde surge la pregunta… ¿Cómo se compartía código antes?, para ello surgió un modelo que es conocido todavía como COM, el cual nos va a permitir a nosotros como programadores crear componentes de tipo binario, los cuales nos van a permitir a nosotros tener interoperabilidad entre proyectos Visual Basic con Java o con C#, etc., esto se debe principalmente a que como el componente ya se encuentra compilado y no código fuente del lenguaje en el que esta desarrollado el mismo.

Microsoft, al visualizar que a pesar de que habían logrado darle una solución momentanea a los desarrolladores con COM+, empezaron a poner orden y a facilitar el desarrollo de aplicaciones Windows mediante una nueva forma de hacer las cosas, una nueva plataforma… La plataforma .NET.

Cualquier comentario es bienvenido.

Samuel Arellano

[Csharp] Ejecutando el sonido Beep en una aplicación Windows Forms con C#

 

Qué tal mi estimados lectores, en esta ocasión me gustaría compartirles como pueden ejecutar el sonido Beep en una aplicación de tipo Windows Forms utilizando el lenguaje de programación C#. Como recordarán, anteriormente las computadoras ejecutaban un sonido peculiar por la bocina que incluían, ese era conocido como el Beep.

Para efectuar esta tarea en Visual Studio 2010, será necesario realizar los siguientes pasos:

1. Una vez que se encuentre en Visual Studio 2010, seleccionar la plantilla de Windows Forms Application

beep1

 

2. Colocarle un nombre a la aplicación, en este caso le pondré AppSonidoBeep y presionar OK.

beep2

3. Dentro del proyecto de Windows Forms, será necesario incluir un botón, el cual se encuentra en el toolbox de VS2010, y arrastrarlo a la forma. Deberá de quedar similar a como aparece en la siguiente imágen.

image

 

4. Colocarle un nombre al botón. Como recomendación, es bueno colocarle las siglas btn para referirnos a que se trata de un Button, seguido del nombre de la acción a ejecutar, por ejemplo Reproducir. Por lo tanto quedaría como btnReproducir, dentro de la propuedad nombre, la cual se encuentra dentro de Properties en nuestro VS2010.

image

5. Posteriormente habrá que incluir la sentencia en C# que aparece a continuación

private void btnReproducir_Click(object sender, EventArgs e)
        {
            Console.Beep();
        }

 

6. Ejecutamos la aplicación, y ya podemos escuchar aquél sonido de los 90’s jeje.

Saludos,

Samuel Arellano

[Dev3cast] MongoDB y Redis

Platicamos con Eber, Mario y Gabriel sobre MongoDB, redis y como usar en proyectos de software estas tecnologías NoSQL.

MongoDB es un sistema de base de datos multiplataforma orientado a documentos. Cabe mencionar que podemos acceder a este tipo de base de datos mediante clases para el .NET Framework y poder utilizarlas en proyectos de C#.

En este podcasts Eber nos brinda su experiencia en los proyectos en los cuales ha trabajo y fue un buen aprendizaje.

fault-tolerance1

[Dev3cast] TDD

 

Este dev3cast contó con la participación del MVP desde Argentina José Romaniello, el mexicalense Samuel Arellano, Mario Cornejo y Gabriel Flores. Nos detuvimos a hablar de las técnicas para persuadir a nuestros compañeros de trabajo de tomar las mejores prácticas como el TDD que nosotros ya aprovechamos, además de marcos de trabajo para las pruebas unitarias y en general lo que nos impulsa a mejorar como programamos generando nuestro código de manera ordenada y probada.

imagem0

[Dev3Cast] Blogs Tecnológicos

 

En esta ocasión tuve la oportunidad de charlar con Eduardo Arredondo, Mario Chávez, Mario Cornejo y Gabriel Flores tocando el tema de los blogs tecnológicos. ¿Cómo los consumimos? ¿porqué mantenemos nuestro blog? ¿qué herramientas son útiles para tu blog tecnológico? ¿que tan importante es la retroalimentación con los comentarios?

Para que entren en materia, podemos decir que un blog es conocido como bitácora digital, en el cual se recopila información de acuerdo a un tema específico de manera cronológica, por lo general suelen ser textos o artículos que uno o varios autores pueden redactar en el sitio.

duty_calls

Les dejo las recomendaciones que los compañeros fuimos recopilando durante la grata charla.

How to write without writing en Coding Horror
Every developer needs a blog por Scott Hanselman
¿Blog en español o inglés? de Mario Cornejo
Reputación Digital de Fernando García Loera