sábado, 22 de junio de 2013

Primer Programa en C#

A partir de este artículo se entrará en conceptos conceptos básicos del lenguaje, creación de tipos en C#, conceptos avanzados de C#, vista general del Framework, básicos del Framework, colecciones, entre muchos más. Voy a intentar ser claro en la explicación de los conceptos, ejemplos, y ejercicios resueltos. Las dudas, preguntas, sugerencias serán bienvenidas, pues la idea es producir contenido comprensible, abierto a la discusión y a la mejora.

Empiezo con la descripción de un primer programa (muy sencillo por supuesto) de la declaración de una clase, y de un método para el cálculo de un producto de dos números fijos.

[Nota: El código se encuentra en el compartidor de snippets Gist de GitHub. Este código puede ser copiado, modificado, distribuido sin ninguna restricción. Es opcional el reconocimiento, aunque en lo personal, agradezco incluir el enlace a este blog].

La clase Prueba muestra algunos de los conceptos básicos de construcción de bloques de código; estos son: declaración de clase, de un método (punto de entrada a la aplicación: Main), y dos sentencias: una para calcular un producto de dos números enteros, y otra, para la presentación del resultado en la salida estándar:

using System; // Importación de namespace

class Prueba // Declaración de clase
{
static int Main(string[] args) // Declaración de método
{
int x = 12 * 30; // Sentencia 1
Console.WriteLine(x); // Sentencia 2
} // Fin del método
} // Fin de la clase

- Descripción del archivo C# Prueba.cs:

En la primera línea del código tenemos la directiva using [1] que se encarga de importar las referencias (con el conjunto de tipos asociados). Para este caso estamos importando los tipos fundamentales, interfaces, atributos, excepciones de procesamiento y comunes ubicados en System.

Una construcción fundamental en la programación orientada a objetos: la clase. Esto lo logramos a través de la palabra clave class [2], así: class Prueba en la línea 3.

Sobre la línea 5 tenemos la declaración de un método. Este método tiene un función especial, y es la de servir como punto de entrada a la aplicación: Main. Este método no requiere que un objeto de la clase Prueba se instanciado debido a que es estático. Esta es su firma:

static void Main()

Firmas alternativas:

static int Main()
static int Main(string[] args)

El código puede ser documentado a través de comentarios; como ocurre en las líneas 1, 3, 5, 7, 8, 9, y 10. Esto nos va a facilitar el mantenimiento futuro del código, y la colaboración con otros programadores.

Las líneas 7 y 8 son sentencias que realizan el cálculo de una operación aritmética, y la presentación del resultado de esa operación en la salida estándar. Una sentencia en C# finaliza con un punto y coma (;); también se le conoce cómo bloque de código. La expresión 12 * 30 realiza el cómputo y lo almacena en la variable local, llamada x, la cual es de tipo entero (int). La línea 8 imprime el valor de la variable x a texto sobre el prompt a través del método estático WriteLine():
Prueba de la clase Prueba
Figura 1. Prueba de la clase Prueba.

Conclusiones:

Se ha explorado algunas de las construcciones básicas del lenguaje C# a través de un ejemplo muy sencillo que computa el producto de dos números enteros y muestra su resultado en pantalla. Se ha presentado el uso de palabras claves como: classintusing. También se ha presentado el uso de los métodos estáticos Main y WriteLine().

Glosario:
- Directiva
- Programación orientada a objetos
Referencias:
[1] using Directive - http://msdn.microsoft.com/en-us/library/sf0df423(v=vs.80).aspx
[2] class - http://msdn.microsoft.com/en-us/library/vstudio/0b0thckt.aspx

4 comentarios:

  1. Muy bien John, interesantes artículos, sólo le cambiaría el nombre a las clases por unos más descriptivos con relación al artículo.

    Ojalá continúe escribiendo sobre C# a ver si tenemos el primer MVP del HUILA en DEV.

    Saludos desde la familia Índigo!

    ResponderEliminar
    Respuestas
    1. Gracias por su apreciación y sugerencia del blog, y el saludo de logro académico.

      Saludos desde Bogotá D.C.

      Eliminar
  2. Aquí tampoco veo el código de la clase que supongo que debería mostrarse. Aparece:

    "- Descripción de Prueba.cs:"

    pero no el código.

    ResponderEliminar
  3. Aquí tampoco veo el código de la clase que supongo que debería mostrarse. Aparece:

    "- Descripción de Prueba.cs:"

    pero no el código.

    ResponderEliminar

Envíe sus comentarios, dudas, sugerencias, críticas. Gracias.