- C# és un llenguatge modern orientat a objectes creat per Microsoft, part integral de la plataforma .NET i àmpliament adoptat a la indústria.
- Ofereix versatilitat per a aplicacions descriptori, web i mòbils, ampli ecosistema de biblioteques i una comunitat activa que facilita laprenentatge.
- Suporta programació orientada a objectes, maneig d'excepcions robust, tipus estàtics i espais de noms que fomenten codi modular i mantenible.
- Amb desenvolupament continu per part de Microsoft i ús a .NET i Xamarin, C# manté alta demanda laboral i evolució constant.
Benvinguts a una introducció completa al llenguatge de programació C#! En aquest article, explorarem els conceptes bàsics i els fonaments de C#, un llenguatge de programació àmpliament utilitzat i poderós. Acompanya'ns en aquest emocionant viatge cap al món de la programació i descobreix com C# et pot ajudar a desenvolupar aplicacions robustes i sofisticades.
Què és C#?
C# és un llenguatge de programació modern, orientat a objectes i de propòsit general desenvolupat per Microsoft. Va ser creat l'any 2000 com a part de la plataforma .NET, i des de llavors ha guanyat una gran popularitat degut a la seva combinació de facilitat d'ús, rendiment i suport ampli de la comunitat i eines.
Per què aprendre C#?
Abans de submergir-nos en els detalls tècnics de C#, és important comprendre perquè aprendre aquest llenguatge de programació pot ser beneficiós. Aquí hi ha algunes raons convincents per considerar:
- Versatilitat: C# és un llenguatge de propòsit general que es pot utilitzar per desenvolupar una àmplia gamma d'aplicacions, des d'aplicacions d'escriptori fins a aplicacions mòbils i serveis web.
- Popularitat: C# és un dels llenguatges de programació més populars a la indústria del desenvolupament de programari. Aprendre C# t'obre moltes oportunitats professionals.
- Plataforma .NET: C# és el llenguatge principal utilitzat a la plataforma .NET, que ofereix una àmplia biblioteca de classes i funcions per facilitar el desenvolupament d'aplicacions.
- Suport de la comunitat: C# compta amb una comunitat de desenvolupadors molt activa i compromesa. Això vol dir que pots trobar una gran quantitat de recursos, tutorials i ajuda en línia per accelerar el teu aprenentatge.
- Orientació a objectes: C# és un llenguatge orientat a objectes, cosa que et permet escriure codi més modular, reutilitzable i fàcil de mantenir.
Història de C#
Abans de submergir-nos a la sintaxi i les característiques de C#, és interessant conèixer una mica sobre la seva història. C# va ser desenvolupat per Microsoft com a part de la seva estratègia per a la plataforma .NET. Va ser dissenyat per ser un llenguatge modern, fàcil d'aprendre i capaç d'aprofitar al màxim les característiques de la plataforma .NET.
La primera versió de C#, coneguda com a C# 1.0, es va llançar l'any 2002 juntament amb la plataforma .NET Framework 1.0. Des de llavors, Microsoft ha llançat diverses versions noves de C#, cadascuna amb característiques i millores addicionals. La versió més recent a l'hora d'escriure aquest article és C# 9.0, llançada al novembre de 2020.
Instal·lació de C#
Abans de començar a programar a C#, necessitareu configurar el vostre entorn de desenvolupament. Afortunadament, Microsoft ofereix una eina anomenada Visual Studio que facilita la instal·lació i configuració de tot el necessari per començar a programar a C#.
Aquí hi ha alguns passos bàsics per instal·lar C# amb Visual Studio:
- Descàrrega Visual Studio: Aneu al lloc web oficial de Visual Studio i descarrega la versió més recent de Visual Studio Community, que és gratuïta per a ús personal i educatiu.
- Instal·la Visual Studio: Executa el fitxer d'instal·lació descarregat i segueix les instruccions de l'instal·lador per instal·lar Visual Studio al vostre sistema.
- Selecciona els components: Durant la instal·lació, podràs triar els components que vols instal·lar. Assegureu-vos de seleccionar .NET desktop development per habilitar el suport de C#.
- Configura l'entorn: Un cop instal·lat, executa Visual Studio i realitza qualsevol configuració addicional que se't sol·liciti. I això és tot! Ara estàs a punt per començar a programar a C#.
Sintaxi bàsica de C#
Tipus de dades
A C#, igual que en molts altres llenguatges de programació, els tipus de dades són fonamentals per representar i manipular informació. C# ofereix una varietat de tipus de dades integrades, que inclouen:
- int: Representa nombres enters.
- flotador: Representa números de coma flotant de precisió simple.
- doble: Representa números de coma flotant de doble precisió.
- bool: Representa un valor booleà (veritable o fals).
- cadena: Representa una seqüència de caràcters.
- char: Representa un sol caràcter.
Aquí hi ha un exemple de com declarar variables utilitzant diferents tipus de dades a C#:
int edad = 25; float altura = 1.75f; bool esEstudiante = true; string nombre = "Juan"; char genero = 'M';
Estructures de control
Les estructures de control a C# us permeten controlar el flux d'execució d'un programa. Algunes de les estructures de control més comunes a C# inclouen:
- si una altra cosa: Permet executar blocs de codi condicionalment, depenent d'una expressió booleana.
- for: Permet executar un bloc de codi diverses vegades, fins que es compleixi una condició.
- mentre: Permet executar un bloc de codi repetidament mentre es compleixi una condició.
- interruptor: Permet fer una selecció de múltiples casos basats en el valor d'una expressió.
A continuació, es mostra un exemple de com utilitzar algunes d'aquestes estructures de control a C#:
int edad = 18;
if (edad >= 18)
{
Console.WriteLine("Eres mayor de edad");
}
else
{
Console.WriteLine("Eres menor de edad");
}
for (int i = 0; i < 5; i++)
{
Console.WriteLine(i);
}
int contador = 0;
while (contador < 10)
{
Console.WriteLine(contador);
contador++;
}
int opcion = 2;
switch (opcion)
{
case 1:
Console.WriteLine("Opción 1 seleccionada");
break;
case 2:
Console.WriteLine("Opción 2 seleccionada");
break;
default:
Console.WriteLine("Opción no válida");
break;
}
Funcions i classes
A C#, pots organitzar el teu codi en funcions i classes. Les funcions són blocs de codi que es poden invocar en diferents parts dun programa, mentre que les classes són estructures que encapsulen dades i comportament relacionatsi sutilitzen per crear objectes.
Aquí hi ha un exemple de com definir una funció i una classe a C#:
// Definición de una función
int Sumar(int a, int b)
{
return a + b;
}
// Uso de la función
int resultado = Sumar(5, 3);
Console.WriteLine(resultado); // Imprime: 8
// Definición de una clase
class Persona
{
public string Nombre { get; set; }
public int Edad { get; set; }
public void Saludar()
{
Console.WriteLine("Hola, mi nombre es " + Nombre + " y tengo " + Edad + " años.");
}
}
// Uso de la clase
Persona persona = new Persona();
persona.Nombre = "Juan";
persona.Edad = 25;
persona.Saludar(); // Imprime: Hola, mi nombre es Juan y tengo 25 años.
Programació orientada a objectes a C#
C# és un llenguatge de programació orientat a objectes, fet que significa que es basa en el concepte d'objectes i classes. La programació orientada a objectes et permet organitzar el teu codi de manera més estructurada i modular, cosa que facilita el desenvolupament i el manteniment d'aplicacions.
A C#, pots crear classes que representin entitats del món real o conceptes abstractes. Aquestes classes poden tenir propietats, mètodes i esdeveniments que en defineixen el comportament i les característiques. A més, pots crear objectes a partir d'aquestes classes, cosa que et permet utilitzar i manipular dades de manera eficient.
Aquí hi ha un exemple de com utilitzar la programació orientada a objectes a C#:
class Coche
{
public string Marca { get; set; }
public string Modelo { get; set; }
public int Año { get; set; }
public void Arrancar()
{
Console.WriteLine("El coche " + Marca + " " + Modelo + " ha arrancado.");
}
public void Acelerar()
{
Console.WriteLine("El coche " + Marca + " " + Modelo + " está acelerando.");
}
public void Frenar()
{
Console.WriteLine("El coche " + Marca + " " + Modelo + " ha frenado.");
}
}
Coche miCoche = new Coche();
miCoche.Marca = "Ford";
miCoche.Modelo = "Mustang";
miCoche.Año = 2020;
miCoche.Arrancar(); // Imprime: El coche Ford Mustang ha arrancado.
miCoche.Acelerar(); // Imprime: El coche Ford Mustang está acelerando.
miCoche.Frenar(); // Imprime: El coche Ford Mustang ha frenado.
Biblioteques i espais de noms
A C#, podeu utilitzar biblioteques existents per accedir a funcionalitats addicionals i reutilitzar codi. Les biblioteques són un conjunt de classes i funcions que s'agrupen en un paquet coherent. Per utilitzar una biblioteca al vostre codi C#, heu d'afegir una declaració d'ús (using) per a l'espai de noms corresponent.
Per exemple, si voleu treballar amb dates i hores, podeu utilitzar la biblioteca System.DateTime. Aquí hi ha un exemple de com utilitzar aquesta biblioteca a C#:
using System;
DateTime ahora = DateTime.Now;
Console.WriteLine("La fecha y hora actual es: " + ahora);
DateTime mañana = ahora.AddDays(1);
Console.WriteLine("Mañana será: " + mañana);
TimeSpan diferencia = mañana - ahora;
Console.WriteLine("La diferencia en horas es: " + diferencia.TotalHours);
En aquest exemple, fem servir l'espai de noms System i la biblioteca DateTime per obtenir la data i hora actual, calculeu la data de matí i la diferència en hores entre les dues dates.
Excepcions i maneig derrors
En qualsevol programa, poden passar errors i excepcions. A C#, podeu utilitzar el maneig d'excepcions per detectar i controlar aquests errors, evitant que el vostre programa es bloquegi o es comporti de manera inesperada.
Quan es produeix una excepció, podeu utilitzar blocs try-catch per capturar i fer servir l'excepció. Això us permet prendre accions adequades, com ara mostrar un missatge d'error a l'usuari o realitzar accions de recuperació.
Aquí hi ha un exemple de com utilitzar el maneig d'excepcions a C#:
try
{
int dividendo = 10;
int divisor = 0;
int resultado = dividendo / divisor;
Console.WriteLine("El resultado es: " + resultado);
}
catch (DivideByZeroException ex)
{
Console.WriteLine("Error: División por cero");
}
catch (Exception ex)
{
Console.WriteLine("Error inesperado: " + ex.Message);
}
En aquest exemple, intentem fer una divisió per zero, la qual cosa genera una excepció DivideByZeroException. Utilitzem un bloc try-catch per capturar aquesta excepció i mostrar un missatge derror adequat. També capturem qualsevol altra excepció inesperada utilitzant un bloc catch genèric.
Preguntes freqüents sobre llenguatge de programació C#
1. Quina és la diferència entre C# i .NET?
C# i .NET són dos conceptes diferents però estretament relacionats. C# és un llenguatge de programació desenvolupat per Microsoft, mentre que .NET és una plataforma de desenvolupament de programari. C# és el llenguatge principal utilitzat a la plataforma .NET, que inclou un conjunt de biblioteques i eines per al desenvolupament d'aplicacions. En resum, C# és el llenguatge que utilitzes per escriure codi, mentre que .NET és la plataforma on s'executa i es proporcionen les biblioteques i les eines.
2. Puc utilitzar C# per desenvolupar aplicacions mòbils?
Sí, podeu utilitzar C# per desenvolupar aplicacions mòbils. Microsoft ofereix una plataforma anomenada Xamarin, que et permet crear aplicacions mòbils per a Android i iOS utilitzant C# i el framework .NET. Amb Xamarin, pots compartir gran part del codi entre les plataformes, fet que facilita el desenvolupament i el manteniment d'aplicacions mòbils.
3. Quina és la diferència entre C# i Java?
C# i Java són dos llenguatges de programació molt similars en termes de sintaxi i característiques. Tots dos són llenguatges orientats a objectes i es fan servir principalment per al desenvolupament d'aplicacions empresarials. No obstant això, hi ha algunes diferències importants entre ells. C# va ser desenvolupat per Microsoft i s'utilitza principalment a l'entorn Windows, mentre que Java és un llenguatge multiplataforma que s'executa en diferents sistemes operatius. A més, C# està estretament integrat amb la plataforma .NET, mentre que Java utilitza la seva pròpia plataforma anomenada Java Virtual Machine (JVM).
4. És difícil aprendre C# si no tinc experiència en programació?
No necessàriament. C# és un llenguatge de programació relativament fàcil d'aprendre, especialment si ja teniu experiència amb altres llenguatges de programació orientats a objectes. A més, hi ha una gran quantitat de recursos en línia, tutorials i comunitats actives de desenvolupadors que et poden ajudar en el teu procés d'aprenentatge. Amb dedicació i pràctica, podràs adquirir ràpidament les habilitats necessàries per programar a C#.
5. Quin és el salari mitjà d'un desenvolupador de C#?
El salari mitjà d'un desenvolupador de C# pot variar segons la ubicació geogràfica, l'experiència i el nivell d'habilitat. Tot i això, en general, els desenvolupadors de C# solen tenir salaris competitius a causa de la demanda i popularitat d'aquest llenguatge de programació. A molts països, el salari mitjà d'un desenvolupador de C# pot oscil·lar entre els rangs mitjà i alt en comparació amb altres feines tècniques.
6. Quin és el futur de C#?
C# ha demostrat ser un llenguatge de programació sòlid i durador a la indústria del desenvolupament de programari. Microsoft continua invertint en el desenvolupament i millora de C#, llançant noves versions amb característiques i millores addicionals. A més, C# s'utilitza àmpliament en una varietat de dominis, incloent-hi aplicacions d'escriptori, aplicacions web i aplicacions mòbils. Amb el suport a la plataforma .NET i la comunitat de desenvolupadors activa, s'espera que C# segueixi sent rellevant i en demanda en el futur.
Conclusió de llenguatge de programació C#
En resum, aquest article ha estat una introducció completa al llenguatge de programació C#. Hem explorat els conceptes bàsics i els fonaments de C#, incloent-hi la història, la sintaxi bàsica, la programació orientada a objectes, les biblioteques i el maneig d'excepcions. Esperem que hagis trobat aquest article informatiu i útil per comprendre els fonaments de C#. Si esteu interessats en el desenvolupament de programari i us agradaria aprendre més, us recomanem que aprofundiu en l'estudi de C# i exploreu les seves diverses aplicacions.