viernes 21 de noviembre de 2008

Mysql y .Net

Hace un tiempo (hoy) unos compañeros me pidieron ayuda para su proyecto de ingenieria de software, ya que quieren usar el gestor MySQL entonces decidi ponerlo aqui en el blog para que todos puedan usar esta información, saré po hecho que ya intalaron MySQL en su máquina:

Paso 1 -> Bajar el MySQL Connector/NET
Lo pueden bajar de aqui, dentro del archivo .zip esta el instalador.

Ahora que ya tienen intalado este connector ahora tienen que abrir su IDE para programar ya sea que tengan Visual Studio o SharpDevelop, (Yo usare visual studio).

Paso 2 -> Agregar la referencia a su proyecto
Esto se hace por medio del menú Proyecto y dandole en "Agregar referencia"

En la ventana de agregar referencia buscan MSQL.Data lo seleccionan y le dan aceptar. De esta manera ya tenemos el conector listo para usarse en el proyecto.











para lso qeu nunca han hecho ningna conexion a base de datos mediante .NET aqui les pongo unso ejemplos:

Para poder usar las clases de el conector es recomendable poner al principio del archivo:

Imports MySql.Data.MySqlClient

Ya que asi nos facilitamos el trabajo al programar. Primero qeu todo necesitamos hacer una conexión a la base de datos esto se hace por medio de un objeto de tipo MySqlConnection estos objetos para funcionar necesitan una cadena de conexion, Ejemplo :

Dim conexion As MySqlConnection
'Crear conexion
conexion = New MySqlConnection("Database=ssanchez;Data Source=localhost;User Id=ssanchez;Password=3023992318")
conexion.Open()


De esta manera creamos una conexion, la cadena de conexion esta dividida en varias partes:
  • Database=ssanchez -> nombre de la base de datos a la que querermos conectar
  • Data source= localhost -> servidor o equipo donde se encuentra la base
  • User Id = ssanchez -> nombre de usuario
  • Password = 302399318 -> contraseña del usaurio
Continuando con el ejemplo, hasta ahora sólo hemos hecho una conexión ahora como hacemos una consulta y mostramos el resultado, pues muy facil, ahora usaremos la clase MySqlDataAdapter la cual es un intermediario entre la base (conexión) y nuestro programa, para cargar los datos de un consulta en un tabla (DataGridView) se hace de la siguiente manera:

'Crear dataadapter para cargarlo en el datagridview
Dim adapt As MySqlDataAdapter
'inicializamos el dataadapter
adapt = New MySqlDataAdapter("SELECT * from persona", conexion)
'declaramos una tabla para almacenar los datos
Dim tabla As DataTable
tabla = New DataTable
adapt.Fill(tabla)
'mostramos el resultado en el DataGridView
DataGridView1.DataSource = tabla


En la parte del constructor le pusimos la consulta sql que queremos hacer, no es necesario hacerlo asi , la consulta la pueden poner despues de crear el DataAdapter, despues creamos una tabla (DataTable) la cual nos sirve para almacenar el resultado, usando el metodo Fill del data adapter, ahora que ya tenemos nuestra tabla con lso resultados, solo falta mostrarlos, esto se hace por medio de l apropiedad DataSource del DataGridView. Con esto ya se muestra el resultado en la tabla.

¿Ahora como le hacemos para hacer un DELETE, UPDATE o INSERT en la base de datos?, pues fácil, ahora usaremos la clase MySqlCommand , cabe mensionar que con esta clase tambien se pueden hacer consultas, ahora un ejemplo de como se usa el comando para insertar un registro en la tabla, para las instrucciones DELETE y UPDATE se usa de la misma manera:

'creamos un Mysqlcommand para agregar el registro
Dim comando As MySqlCommand
comando = New MySqlCommand()
'las siguientes sentencias tambien se pueden poner en el contructor
comando.CommandText = "INSERT INTO persona VALUES ('" & TBNombre.Text & "', " & TBEdad.Text & "," & TBPeso.Text & ")"
comando.Connection = conexion
'ejecutamos el comendo SQL
comando.ExecuteNonQuery() 'aqui se inserta el registro en la base de datos


Como ven lo unico que tenemos que hacer es asignarle la consulta al la propiedad CommandText del MySqlCommand, y mandar a llamar al metodo ExecuteNonQuery() .

Les dejo el codigo fuente de un ejemplo que hice para ilustrar el articulo. Lo pueden bajar de aqui.

viernes 3 de octubre de 2008

Visual Studio C#

VSE_CS_Header

Hola amigos pues cada vez entramos más a detalle y en esta ocasión es turno de escribir acerca de Visual C# que en lo particular es mi lenguaje de programación favorito y para empezar definiremos que es lo que se puede hacer con C# en .NET.

Microsoft Visual C# 2005 es un lenguaje de programación diseñado para crear una amplia gama de aplicaciones que se ejecutan en .NET Framework. C# es simple, eficaz, con seguridad de tipos y orientado a objetos. Con sus diversas innovaciones, C# permite desarrollar aplicaciones rápidamente y mantiene la expresividad y elegancia de los lenguajes de tipo C.

Visual Studio admite Visual C# con un editor de código completo, plantillas de proyecto, diseñadores, asistentes para código, un depurador eficaz y fácil de usar, además de otras herramientas. La biblioteca de clases .NET Framework ofrece acceso a una amplia gama de servicios de sistema operativo y a otras clases útiles y adecuadamente diseñadas que aceleran el ciclo de desarrollo de manera significativa.

Todo esto porque para desarrollar a C# se tomaron las características más destacables de C++, Java y Visual Basic de una manera versátil y mejorada agregándole además otros elementos que facilitan su uso y optimizan el trabajo como por ejemplo la administración de la memoria tiene la característica de inicializar los datos o variables declaradas en el programa, además de que también de forma automática libera la memoria cuando el mismo programa lo cree conveniente, esto como que suena a Java.

ide1 Un aspecto también importante es el ambiente de trabajo el cual es muy cómodo ya que tiene un ambiente amigable y clásico de las aplicaciones de Windows. En cuanto a la forma de programar, será fácil de usar para quien esta familiarizado con C++, ya que su estructuración básica es muy similar, sin embargo C# ahorra muchos pasos como la creación de funciones complejas desde cero y declaración de variables globales.

Algo mas es la programación orientada a objetos, esta forma de programación ahorra mucho código, lo cual indica que partes de código son reutilizables para no volverlas a escribir, con lo cual se afirma que C# presenta las características necesarias para considerarlo como un lenguaje orientado a objetos, tales son: encapsulación, herencia y polimorfismo; además una de las mejoras que presenta este lenguaje con respecto a este tipo de programación es que para evitar confusiones no existen variables o funciones globales, sino que se definen dentro de los tipos de datos. En cuanto a la herencia, esta solo puede ser herencia simple, con lo cual se evitan confusiones que si fuera herencia múltiple.

Otra característica es acerca de la seguridad en el manejo de datos, C# tiene la cualidad de estar comprobando que efectivamente los tipos de datos que se estén manejando correspondan a los validados para las funciones que han sido creadas; así también vigila que no se produzcan errores en operaciones matemáticas, además de que también impide el uso de variables que no han sido inicializadas. Todo esto permite que no se produzcan errores en el momento de la ejecución.

Además todos los tipos de datos que se definan siempre se derivarán, incluso de forma implícita, de una clase base común llamada System.Object, por lo que dispondrán de todos los miembros definidos en ésta clase. La ventaja de que todos los tipos se deriven de una clase común es que facilita el diseño de colecciones genéricas que puedan almacenar objetos de cualquier tipo.

Por si fuera poco este lenguaje permite de forma automática la manera en que pueden trabajar los operadores, ya sea de tipo lógico, aritmético, etc. Es decir dependiendo del contexto de donde se encuentre el operador, el programa detecta que tipo de uso debe tener el operador.

Ya para terminar de asombrarnos C# no sólo mantiene una sintaxis muy similar a C, C++ o Java que permite incluir directamente en código escrito en C# fragmentos de código escrito en estos lenguajes, sino que el runtime de lenguaje común también ofrece la posibilidad de acceder a código nativo escrito como funciones sueltas no orientadas a objetos tales como las DLLs de la API Win32, órale esto si que esta chido ¿no?.

A manera de conclusión mencionaremos las ventajas que ofrece C# frente a otros leguajes de programación las cuales son:

  • Declaraciones en el espacio de nombres: al empezar a programar algo, se puede definir una o más clases dentro DPE%20Mexico%20launch%20-%20Visual%20Studio%202008_SP%20Final%20II_3 de un mismo espacio de nombres.
  • Tipos de datos: en C# existe un rango más amplio y definido de tipos de datos que los que se encuentran en C, C++ o Java.
  • Atributos: cada miembro de una clase tiene un atributo de acceso del tipo público, protegido, interno, interno protegido y privado.
  • Pase de parámetros: aquí se puede declarar a los métodos para que acepten un número variable de parámetros. De forma predeterminada, el pase de parámetros es por valor, a menos que se use la palabra reservada ref, la cual indica que el pase es por referencia.
  • Métodos virtuales y redefiniciones: antes de que un método pueda ser redefinido en una clase base, debe declararse como virtual. El método redefinido en la subclase debe ser declarado con la palabra override
  • Propiedades: un objeto tiene intrínsecamente propiedades, y debido a que las clases en C# pueden ser utilizadas como objetos, C# permite la declaración de propiedades dentro de cualquier clase.
  • Inicializador: un inicializador es como una propiedad, con la diferencia de que en lugar de un nombre de propiedad, un valor de índice entre corchetes se utiliza en forma anónima para hacer referencia al miembro de una clase.
  • Control de versiones: C# permite mantener múltiples versiones de clases en forma binaria, colocándolas en diferentes espacios de nombres. Esto permite que versiones nuevas y anteriores de software puedan ejecutarse en forma simultánea.

Pues está fue una breve reseña acerca del interesantísimo mundo de C# un lenguaje muy versátil y el cual dará mas de que hablar en los próximos años, de manera personal los invito a asomarse un poco a este lenguaje y a que analicen y comprueben ustedes mismos lo todo descrito en este post.

Microsoft Visual Studio

Hola que tal amigos espero que estén muy bien, pues ahora el objetivo de esta entrada es el que conozcan mas a detalle el Framework .NET y para empezar con lo bueno o sea la codificación, pues es obvio que necesitamos de un IDE que es un entorno de desarrollo integrado ¿o alguien usa todavía editores como el bloc de notas?, en el que no existe el bendito debug, el reconocimiento de sintaxis, edición en entorno gráfico y demás herramientas que facilitan y agilizan enormemente la codificación.

Y al hablar de estos entornos resulta obligado mencionar el IDE que a mi particular punto de vista resulta más cómodo y mejor estructurado que es el de Microsoft Visual Studio y el cual maneja los lenguajes Visual C++, Visual C#, Visual J#, ASP .NET y Visual Basic .NET entre los más importantes.

Pues bueno resulta que estos lenguajes los podemos conseguir de forma muy fácil debido que a partir de la versión 2005 Microsoft ofrece gratuitamente las Express Editions. Estas son varias ediciones básicas separadas por lenguajes de programación o plataforma enfocadas para novatos y entusiastas como nosotros. Estas ediciones son iguales al entorno de desarrollo comercial pero sin características tan elevadas. Las ediciones que hay son:
Bueno pues ahora que ya tienen los links para descargar estas chuladas no queda más que meterle mano para que comprueben que con Visual Studio es muy fácil el codificar sobre todo si todavía no tenemos tanta experiencia y no conocemos las funciones en específico de algún lenguaje pues tenemos un autocompletado de código y lo único que queda es dedicarle un poco de tiempo para familiarizarse y leer en la ayuda cuales son las propiedades de cada elemento realmente sencillo y cómodo. Les aseguro que les va a gustar.

lunes 29 de septiembre de 2008

Como empezar con .NET

La plataforma .NET, como ya han de saber, es desarrollada por Microsoft, para que me entiendan esta plataforma es como la maquina virtual de Java. Es un componente de software, si su maquina con windows no lo tiene, lo tienen que instalar para poder hacer usao de él y tambíen correr las aplicaciones, este ya viene integrado en windows vista, y en windows XP se instala solo junto con las actualizaciones, asi que por esto no se preocupen mucho.

Para poder empezar a programar en .NET, podrias agarrar el bloc de notas y empezar a llenarlo de código, pero esto no es loq ue buscamos en el trabajo o en la escuela, lo que queremos es un entorno que nos facilite esto de poner un monton de código todo feo, para esto Microsoft u otros proveedores nos ofrecen unas cuantas IDE's para el desarrollo con esta plataforma, unas de ellas son:
Con cualquiera de estas dos herremientas podemos empezar a programar como todo un profesional, a lo mejor les cuesta trabajo por que estan acostumbrados a DEV-C++ y donde las practicas las hacian en un solo archivo fuente, eso ya no va a pasar para que esten advertidos. No se preocupen la practica hace al maestro.

Ahora viene otra parte importante, el lenguaje de programación, en el que van a empezar a romperce la cabeza. .NET Soporta entre otros, los siguientes lenguajes de programación:
  • C#
  • Visual Basic
  • C++
  • Delphi
  • J#
  • Boo
Los lenguajes que Miscrosoft quiere como a sus hijos , son los primeros tres, de estos pueden encontrar una version de Visual Studio especifica para cada una, en caso de que no quieras intalar la versión completa de Visual Studio. A estas versiones se les llaman Eidiciones Express de Visual Studio y puedes descargar la que quieras de aqui.

Es recomendable usar las versiones express ya que no tienen costo, pero si usas SharpDevelop no hay problema por que es software libre, es de tu elección. SharpDevelop lo puedes bajar aqui.

Ahora para que empiecen a programar les paso este link, un tutorial de C#:

http://www.clikear.com/manuales/csharp/

Para poder a empezar a usar el diseñador (estilo arrastar botones en la ventana ..xD), recuerden crear un proyecto de tipo "Aplicación de Windows Forms (WindowsFormsApplication)".

Espero esta informacion sea suficiente para que se den una idea de lo que es .NET y como mepezar a usarlo. Alguna duda por favor no duden en poner sus comentarios .

Saludos.

Bienvenidos

Bienvenidos a CUCEI .NET un blog ideado para compartir conocimientos acerca del desarrollo de software utilizando la plataforma de Microsoft denominada .NET, una herramienta sumamente útil y poderosa la cual tiene énfasis en la transparencia de redes, con independencia de plataforma de hardware y que permite un rápido, económico, seguro y robusto desarrollo de aplicaciones. Consiente también la ágil integración de sistemas y un acceso más simple y universal a todo tipo de información desde cualquier tipo de dispositivo, así se pueden tener aplicaciones que se intercomuniquen entre estaciones de trabajo, páginas web y dispositivos móviles.

Es por ello que CUCEI .NET tiene como principales objetivos la formación de una comunidad virtual en la cual se de difusión a esta eficaz herramienta y también exista el intercambio de conocimientos para disipar dudas o simplemente aportar acerca de nuestras experiencias con el manejo de la plataforma.

Esperamos que este pequeño espacio sea de utilidad y cumpla con las expectativas por lo que se les invita a participar en él, no importa si no tenemos gran noción acerca de .NET esta es una buena fuente para aprender y reforzar nuestros conocimientos, así que a programar se ha dicho.