C#
(C Sharp) es el principal lenguaje promovido por Microsoft para su marco de trabajo .Net
(dotnet). Tiene similitudes con Java
y compite en escenarios semejantes (salvo que no es uno de los lenguajes oficiales para desarrollar bajo Android). Desde sus origenes ha funcionado de la mano del servidor web IIS
(Internet Information Server) asociado .Net Framework
, pero con los años ha evolucionado tanto el lenguaje como el marco de trabajo y actualmente es posible ver programas desacoplados de IIS
que usan otros mecanismos, o dentro de lo que se conoce como .Net Core
que es una base de plataforma cruzada (para Windows, macOS, Linux). En dispositivos móviles puede usarse este lenguaje con la tecnología Xamarin
(actualmente de Microsoft). C#
también es el lenguaje usado para la reconocida plataforma o motor de juegos de nombre Unity
(también de Microsoft).
La plataforma .Net
, gracias al componente CLR
(Common Language Runtime), hace que los lenguajes (como C#
) que compilan para su máquina virtual (o entorno) se traduzcan finalmente a código nativo.
Esta es una referencia ágil para quién tenga nociones de programación o codifique con algún otro lenguaje, también a modo de repaso y uso frecuente. Siendo así, tener esta información como memoria te resultará simple de acceder a los fundamentos, incluso como prueba de concepto sobre el lenguaje.
Para quien tenga habilidades, experticia en programación y/o requiera agilidad en conceptos técnicos, pueden resumirse los siguientes tips esenciales del lenguaje:
int
, double
, float
, boolean
, char
, string
. Las variables se definen iniciando con el tipo de datos y luego el nombre.void
si no retorna valor) pero anteponiendo palabras como public
o private
(para indicar si es pública o privada), luego los parámetros van entre paréntesis (...)
iniciando también con el tipo de datos (y separando los parámetros con coma ,
). Además, se usa return
para retornar un valor. La función principal de un programa se denomina Main
.{}
. Las sentencias deben terminar siempre con punto y coma ;
.C
, Javascript
, Kotlin
, es decir que se cuenta con una anatomía cercana para el uso de if
, for
, while
, incluso para el manejo de excepciones (try
).class
pero anteponiendo palabras como public
o private
(para indicar si es pública o privada).LINQ
(Language Integrated Query) de la plataforma .Net
facilita el uso nativo de consultas a bases de datos SQL
usando C#
, es decir, resuelve internamente sentencias SQL
mientras el programador se enfoca en escribir código de C#
(esto es distinto a Java
y otros lenguajes o entornos que proporcionan acceso a SQL
mediante librerías).using System;
namespace Test
{
class Say
{
static void Main(string[] args)
{
Console.WriteLine("Hi there!");
}
}
}
using
es la palabra reservada asignada para importar librerías del sistema, propias o de terceros.namespace
asigna un nombre al conjunto de clases a modo de librería.
Se pueden declarar variables enunciando el tipo de datos como en el siguiente ejemplo:
string variable = "Ana";
int a = 1;
double b = 1.5;
Se pueden declarar vectores de un tipo colocando doble corchete
[]
después del tipo. También existe la claseArrayList
para colecciones ordenadas.
static int plus(int a, int b) {
return a + b;
}
// Esto es un comentario de fin de línea
/*
Este es un comentario de bloque
*/
if (i == 1) {
Console.WriteLine("one");
}
else if (i == 2) {
Console.WriteLine("two");
}
else {
Console.WriteLine("aha");
}
for (int index = 0; index < a.length; index++)
{
Console.WriteLine(index);
}
int i = 0;
while (i < 10) {
i++;
}
try {
...
}
catch (Exception e) {
...
}
Puedes usar
throw
(por ejemplo:throw (new MyException("..."))
) para forzar el lanzamiento de un error.
using System;
namespace Test
{
class Shape
{
static void Main(string[] args)
{
Shape shape = new Shape("square", 4);
}
public Shape (String name, int sides) {
Console.WriteLine("This is a constructor!");
}
}
}
Para instalar C# básicamente necesitas descargar distribución de .Net Core 6+ y lanzar el instalador respectivo para tu sistema. De este modo obtenemos: .NET SDK, .NET Runtime y ASP.NET Core Runtime
Es posible intalar, por ejemplo, .Net 6 bajo Windows usando desde PowerShell el comando:
scoop install dotnet-sdk
(teniendo instaladoscoop
previamente)
Después de instalar, podemos verificar que ha quedado instalado usando el comando: dotnet --version
Para iniciar un proyecto de ejemplo esencial, nos ubicamos en una carpeta destiando como espacio de trabajo para nuestros proyectos de código y allí creamos nuestra subcarpeta de proyecto, dónde iniciaremos nuestro programa. Básicamente se ejecuta algo como lo siguiente:
dotnet new console -o project
cd project
project
corresponde al nombre de nuestro proyecto. Usamosdotnet new console -o ...
para preparar un proyecto de línea de comandos.
Podemos probrar usando el archivo principal denominado Program.cs
, el cual podría tener una línea de código semejante a la siguiente:
Console.WriteLine("Hi there!");
Y para lanzarlo ejecutamos el comando:
dotnet run
dotnet build
se usaría para obtener un ejecutable
Si quiesieramos crear una API simple, iniciando el proyecto desde la línea de comandos, ejecutamos algo como lo siguiente:
dotnet new webapi -minimal -o project
project
corresponde al nombre de nuestro proyecto. Usamosdotnet new webapi ...
para preparar el proyecto web desde la línea de comandos. Puede omitirse-minimal
si No se quiere un proyecto simple (de un archivo).
dotnet run
se usaría para lanzar el ejemplo generado.
© 2021 by César Arcila