Per escriure, compilar i executar programes en C# necessites dues coses: el SDK de .NET
(les eines que compilen i executen el teu codi) i un editor o IDE on escriure aquest
codi còmodament. En aquesta lliçó instal·larem i configurarem tots dos, aprendrem les
ordres bàsiques de l'eina de línia d'ordres dotnet, i comprovarem que tot funciona creant
i executant un projecte de prova. Aquest és el pas imprescindible abans de poder començar,
a la propera lliçó, amb el primer programa real de BiblioTech.
Contingut
- Instal·lació del SDK de .NET
- Elecció d'editor o IDE
- Estructura d'un projecte de consola creat amb
dotnet new console - Ordres bàsiques de la CLI de dotnet
- Verificació que l'entorn funciona
Instal·lació del SDK de .NET
El SDK de .NET (Software Development Kit) és el conjunt d'eines necessari per compilar i executar aplicacions .NET, incloent-hi programes escrits en C#. Inclou:
- El compilador de C# (que tradueix el teu codi font a llenguatge intermedi, IL).
- El runtime de .NET (el motor que executa aquest codi, incloent-hi el recol·lector d'escombraries i el compilador JIT mencionats a la lliçó anterior).
- La CLI de dotnet, una eina de línia d'ordres per crear, compilar, executar i gestionar projectes.
Passos per instal·lar el SDK
- Visita la pàgina oficial de descàrregues de .NET (
dotnet.microsoft.com/download). - Descarrega la versió LTS (Long Term Support, suport a llarg termini) més recent. Les versions LTS reben actualitzacions i suport durant més temps, per la qual cosa són l'opció més segura per aprendre i per a projectes reals.
- Executa l'instal·lador corresponent al teu sistema operatiu (Windows, macOS o Linux). El procés és l'habitual: següent, acceptar, instal·lar.
- Reinicia el terminal (o el mateix ordinador, si l'instal·lador ho indica) perquè els canvis al sistema tinguin efecte.
Comprovar la instal·lació
Un cop instal·lat, obre un terminal (símbol del sistema, PowerShell, terminal de Linux o macOS) i executa:
Nota: encara que aquesta ordre no és codi C#, en aquest curs mostrarem les ordres de terminal en blocs de codi perquè les puguis distingir visualment del text.
Si la instal·lació ha estat correcta, veuràs un número de versió com 8.0.100 o similar.
Si en el seu lloc apareix un error del tipus "ordre no trobada", revisa que la
instal·lació s'ha completat correctament i que el terminal s'ha reiniciat.
També pots demanar informació més detallada de l'entorn instal·lat:
Aquesta ordre mostra la versió del SDK, els runtimes instal·lats i el sistema operatiu detectat. És molt útil quan necessites diagnosticar problemes d'instal·lació.
Elecció d'editor o IDE
Amb el SDK instal·lat ja pots compilar codi C#, però escriure'l en un editor de text pla seria molt incòmode: sense autocompletat, sense detecció d'errors mentre escrius, sense ajuda per depurar. Per això es recomana fer servir un editor especialitzat o un IDE (Integrated Development Environment, entorn de desenvolupament integrat). Aquestes són les tres opcions més habituals:
| Eina | Tipus | Punts forts | Quan triar-la |
|---|---|---|---|
| Visual Studio Code + C# Dev Kit | Editor lleuger + extensió | Gratuït, ràpid, multiplataforma, molt extensible | Aprenentatge, projectes petits i mitjans, qui ja usi VS Code |
| Visual Studio (Community/Professional) | IDE complet | Eines visuals avançades (dissenyador de formularis, depurador molt potent) | Windows, aplicacions d'escriptori (WPF/Windows Forms), projectes grans |
| JetBrains Rider | IDE complet | Excel·lent refactorització, molt utilitzat per equips professionals, multiplataforma | Qui ja conegui altres IDE de JetBrains, projectes professionals |
No hi ha una única opció "correcta": les tres permeten escriure i executar C#
perfectament. En aquest curs els exemples funcionen igual sigui quina sigui la teva
elecció; farem servir sempre la CLI de dotnet per crear i executar projectes, de manera
que els passos siguin idèntics independentment de l'editor.
Visual Studio Code amb C# Dev Kit
Visual Studio Code (VS Code) és un editor de codi lleuger i gratuït. Per si sol no entén C#; per a això s'instal·la l'extensió oficial C# Dev Kit, que afegeix:
- Ressaltat de sintaxi i autocompletat intel·ligent.
- Detecció d'errors mentre escrius (fins i tot abans de compilar).
- Un depurador integrat per executar el codi pas a pas.
- Exploració de projectes i solucions .NET des del mateix editor.
Per instal·lar-la: obre VS Code, ves al panell d'extensions (icona de peces de trencaclosques a la barra lateral), cerca "C# Dev Kit" i instal·la-la amb el botó corresponent.
Visual Studio
Visual Studio és l'IDE històric de Microsoft per a desenvolupament en C#, especialment potent a Windows. L'edició Community és gratuïta per a estudiants, projectes de codi obert i equips petits. En instal·lar-lo, el mateix instal·lador et permet triar "càrregues de treball" (workloads); per a aquest curs n'hi hauria prou amb la càrrega de treball de "desenvolupament d'escriptori en .NET" o "desenvolupament multiplataforma en .NET".
JetBrains Rider
Rider és un IDE de pagament (amb període de prova gratuït) desenvolupat per JetBrains, la mateixa empresa darrere d'IntelliJ IDEA. És multiplataforma (Windows, macOS, Linux) i molt valorat en entorns professionals per les seves capacitats de refactorització i anàlisi de codi.
Estructura d'un projecte de consola creat amb dotnet new console
La CLI de dotnet permet crear projectes nous a partir de plantilles. La plantilla
console genera un projecte d'aplicació de consola, el tipus de projecte més senzill i amb
el qual treballarem durant bona part d'aquest curs. Per crear-ne un:
El paràmetre -o (d'output) indica el nom de la carpeta on es crearà el projecte. En
executar aquesta ordre, dotnet genera la següent estructura de fitxers:
Anem a entendre què és cada element:
| Element | Què és |
|---|---|
ElMeuProjecte.csproj |
El fitxer de projecte. Un XML que descriu com compilar el projecte: versió de .NET usada, tipus de projecte, referències a paquets externs, etc. |
Program.cs |
El fitxer de codi font principal. Aquí escriurem el nostre codi C#. Per defecte ja conté un "Hola Món" d'exemple. |
obj/ |
Carpeta generada automàticament amb fitxers intermedis de compilació. No s'edita a mà; es pot esborrar sense problema, es regenera sola. |
En compilar el projecte per primera vegada, a més apareixerà una carpeta bin/ amb el
programa ja compilat, llest per executar-se.
Una ullada ràpida al contingut del .csproj generat (no cal entendre-ho tot encara):
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net8.0</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
</PropertyGroup>
</Project>OutputType>Exeindica que el resultat de compilar és un executable (un programa que es pot llançar), en lloc de, per exemple, una biblioteca.TargetFramework>net8.0indica quina versió de .NET fa servir el projecte per compilar-se i executar-se.ImplicitUsingsiNullablesón configuracions modernes que simplifiquen el codi; les anirem entenent a poc a poc al llarg del curs (els "usings implícits" es tracten a la lliçó de sintaxi bàsica, i la nullability s'introdueix a la lliçó de variables i tipus de dades).
Ordres bàsiques de la CLI de dotnet
Aquestes són les ordres de dotnet que faràs servir constantment durant el curs:
| Ordre | Què fa |
|---|---|
dotnet new console -o NomProjecte |
Crea un nou projecte de consola a la carpeta indicada |
dotnet restore |
Descarrega i prepara les dependències (paquets) que necessita el projecte |
dotnet build |
Compila el projecte (genera l'executable) sense executar-lo |
dotnet run |
Compila (si cal) i executa el projecte en un sol pas |
dotnet --version |
Mostra la versió del SDK instal·lat |
dotnet --info |
Mostra informació detallada de l'entorn .NET instal·lat |
A la pràctica diària, l'ordre que faràs servir més és dotnet run, ja que compila i
executa en un sol pas. Les ordres dotnet build i dotnet restore són útils quan vols
separar aquests passos, per exemple, en un procés automatitzat d'integració contínua.
Exemple de flux complet
Aquest flux crea el projecte, hi entra i l'executa directament. Com que el projecte generat per la plantilla ja inclou un "Hola Món" d'exemple, veuràs alguna cosa com:
A la propera lliçó crearem exactament aquest projecte, l'anomenarem BiblioTechConsola, i modificarem el seu contingut per treballar amb el nostre propi missatge.
Verificació que l'entorn funciona
Abans de continuar amb el curs, és important confirmar que tens tot correctament instal·lat. Segueix aquesta llista de verificació:
- Executa
dotnet --versionen un terminal i confirma que apareix un número de versió (per exemple,8.0.100), sense errors. - Crea un projecte de prova amb
dotnet new console -o ProvaEntorn. - Entra a la carpeta generada (
cd ProvaEntorn) i executa'l ambdotnet run. - Confirma que apareix el missatge
Hello, World!(o similar) al terminal, sense errors de compilació. - Obre la carpeta del projecte amb l'editor que hagis triat (VS Code, Visual Studio o
Rider) i confirma que el fitxer
Program.css'obre amb ressaltat de sintaxi de C# i, si has instal·lat l'extensió o càrrega de treball corresponent, amb autocompletat. - Un cop confirmat que tot funciona, pots esborrar la carpeta
ProvaEntorn: era només una prova.
Si tots aquests passos funcionen sense errors, el teu entorn està llest per a la resta del curs.
Errors Comuns i Consells
- Oblidar reiniciar el terminal després d'instal·lar el SDK: en molts sistemes, el
terminal necessita reiniciar-se (o el mateix sistema, a Windows) per reconèixer la nova
ordre
dotnet. Sidotnet --versionno funciona just després d'instal·lar, prova a tancar i tornar a obrir el terminal abans d'investigar més a fons. - Confondre
dotnet buildambdotnet run:buildnomés compila (genera l'executable però no el llança);runcompila i a més executa. Si esperes veure la sortida del programa en pantalla, necessitesdotnet run. - Instal·lar només el runtime en lloc del SDK: hi ha descàrregues separades per al "runtime" (només executar programes ja compilats) i per a l'"SDK" (compilar i executar). Per desenvolupar, necessites el SDK, no només el runtime.
- Barrejar versions de .NET sense necessitat: en començar, no cal instal·lar diverses versions del SDK alhora. Instal·la la versió LTS més recent i utilitza-la durant tot el curs, tret que s'indiqui el contrari.
- Consell: sigui quin sigui l'editor triat, dedica uns minuts a familiaritzar-te amb el seu explorador de fitxers i el seu terminal integrat; els faràs servir constantment durant el curs.
Exercicis
-
Instal·la (si encara no el tens) el SDK de .NET seguint els passos d'aquesta lliçó, i executa
dotnet --versionidotnet --info. Anota quina versió del SDK i quin sistema operatiu t'informa la segona ordre. -
Crea un projecte de consola de prova anomenat
ProvaEntornambdotnet new console. Sense obrir encara cap editor, examina amb l'explorador de fitxers del teu sistema (o amb l'ordrels/dir) quins fitxers i carpetes s'han generat, i relaciona'ls amb la taula d'aquesta lliçó. -
Executa el projecte
ProvaEntornambdotnet run. Després, obre el fitxerProgram.csamb l'editor que hagis triat i canvia el text"Hello, World!"per un missatge diferent, per exemple"Entorn de BiblioTech llest!". Torna a executardotnet runi comprova que el nou missatge apareix en pantalla.
Solucions
-
La sortida variarà segons el teu equip, però un exemple típic seria:
dotnet --version→8.0.100;dotnet --infomostrant el SDK instal·lat, el sistema operatiu (per exemple,LinuxoWindows), i l'arquitectura (x64,arm64, etc.). Si l'ordre falla, revisa la instal·lació seguint de nou els passos indicats en aquesta lliçó. -
En crear el projecte es generen, com a mínim,
ProvaEntorn.csproj(fitxer de projecte) iProgram.cs(codi font), i després de la primera compilació també apareixerà una carpetaobj/(i, en executar,bin/). Això coincideix amb l'estructura descrita a la secció "Estructura d'un projecte de consola". -
Després de canviar la línia a
Program.cs(alguna cosa comConsole.WriteLine("Entorn de BiblioTech llest!");) i tornar a executardotnet run, el terminal hauria de mostrar:Entorn de BiblioTech llest!. Això confirma que l'editor, el SDK i la CLI dedotnetfuncionen correctament plegats.
Conclusió
En aquesta lliçó has preparat el teu entorn de desenvolupament complet: el SDK de
.NET, un editor o IDE de la teva elecció, i les ordres bàsiques de la CLI de dotnet
(new, build, run, restore). També has après l'estructura mínima d'un projecte de
consola i has comprovat, pas a pas, que tot funciona correctament.
Amb l'entorn ja llest, a la propera lliçó, Programa Hola Món, crearem el nostre primer projecte real del curs —BiblioTechConsola— i analitzarem línia a línia cada part del codi, incloent-hi la forma clàssica i la forma moderna (top-level statements) d'escriure'l.
Curs de Programació en C#
Mòdul 1: Introducció al C#
- Introducció al C#
- Configuració de l'Entorn de Desenvolupament
- Programa Hola Món
- Sintaxi i Estructura Bàsica
- Variables i Tipus de Dades
- Arrays i Cadenes de Text
Mòdul 2: Estructures de Control
Mòdul 3: Programació Orientada a Objectes
- Classes i Objectes
- Mètodes
- Constructors i Destructors
- Herència
- Polimorfisme
- Encapsulació
- Abstracció
- Structs i Records: Tipus per Valor i per Referència
Mòdul 4: Conceptes Avançats de C#
- Interfícies
- Delegats i Esdeveniments
- Pattern Matching i Característiques Modernes de C#
- Genèrics
- Col·leccions
- LINQ (Consulta Integrada en el Llenguatge)
- Programació Asíncrona
Mòdul 5: Treballant amb Dades
- Entrada/Sortida de Fitxers
- Serialització
- Connectivitat amb Bases de Dades
- Entity Framework
- Treball amb JSON i Consum d'APIs REST
Mòdul 6: Temes Avançats
- Reflexió
- Atributs
- Programació Dinàmica
- Gestió de Memòria i Recollida d'Escombraries
- Multifil i Programació Paral·lela
Mòdul 7: Construcció d'Aplicacions
Mòdul 8: Bones Pràctiques i Patrons de Disseny
- Estàndards de Codificació i Bones Pràctiques
- Patrons de Disseny
- Injecció de Dependències i Inversió de Control
- Proves Unitàries
- Revisió i Refactorització de Codi
