Binnen de opleiding hebben we geopteerd het .Net-traject te bewandelen met de programmeertaal C#.
Het .Net Framework wordt door Microsoft gratis ter beschikking gesteld, je kan er vrij gerbuik van maken om je eigen applicaties te ontwikkelen.
Het .Net Framework bevat alle technische benodigdheden om .Net applicaties uit te voeren en te ontwikkelen.
De CLR is de hoeksteen van het .Net Framework. Je kan het zien als de uitvoerende kracht die ervoor zorgt dat programmacode wordt uitgevoerd, geheugen en threads worden beheerd. Code die door de CLR wordt uitgevoerd noemen we managed code, anders wordt de code unmanaged genoemd.
De klassenbibliotheek is een collectie herbruikbare types die je kan aanwenden om je eigen applicaties te bouwen. De klassen bieden ondersteuning voor het bouwen van Grafische User-Interfaces (Console, WinForm, WPF, ASP.NET), Web Services, Bestandssysteem, netwerken, databaseconnecties, en nog heel veel meer.
Het is echter belangrijk in te zien dat Visual Studio slechts een hulpmiddel is om op een gebruiksvriendelijke manier .Net toepassing te maken. Visual Studio is zeker geen vereiste, er zijn tal van andere editoren op de markt: je kan .Net software ontwikkelen met een eenvoudige editor als kladblok of freeware ontwikkeltools zoals SharpDevelop of MonoDevelop (voor het Mono-project: .Net ontwikkelingen onder Linux).
Wij gaan de Hello World applicatie een aantal keer bouwen met de verschillende mogelijkheden die het .Net Framework ons biedt.
using System;
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Hello World");
Console.ReadLine();
}
}




| onderdeel | beschrijving |
|---|---|
| ConsoleHello | Csharp projectfile. Een projectfile verzamelt files met broncode, figuren, configuratie-instellingen, ... voor een c-sharp project.
Deze file vind je terug onder C:\Csharp\Welkom\ConsoleHello\ConsoleHello.csproj. |
| Properties | Maakt onderdeel uit van het project en bevat een bestand AssemblyInfo.cs. Hier kan je extra info opgeven over je code zoals de naam van de auteur, versienummer, ... . |
| References | Een map die de verwijzingen bijhoudt die je vanuit je project legt naar andere Assemblies. Een Assembly (.dll) bevat gecompileerde code die deel uitmaakt van het .Net Framework of aangeleverd werd door een andere ontwikkelaar of zelf werd geprogrammeerd. Visual Studio gaat op basis van het soort project dat je aanmaakt zelf de meest gangbare referenties leggen. Zo worden de dll's (of assemblies) die deel uitmaken van het .Net Framework en je wellicht zal gaan gebruiken in je project meteen beschikbaar. Het .Net Framework bevat heel wat assemblies, het zou heel wat overhead betekenen mocht voor elke applicatie elke assembly van het .Net Framework geladen worden, vandaar dat Visual Studio verschillende projecttypes kent. |
| Program.cs | Een codefile aangemaakt door Visual Studio en automatisch geopend in de code-editor. |
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleHello
{
class Program
{
static void Main(string[] args)
{
}
}
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleHello
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Hello World");
Console.ReadLine();
}
}
}
| begrip | omschrijving |
|---|---|
| namespace | Verzamelnaam voor een groep gerelateerde klassen. Binnen het .Net Framework worden klassen gegroepeerd in namespaces, zodat een klasse verzekerd is van een unieke naam. Dit heeft ook als voordeel dat we deze snel terugvinden in de klassenbibliotheek. Met behulp van het statement using gevolgd door de naam van een namespace kan je ervoor zorgen dat je om een klasse aan te duiden enkel de naam van de klasse dient te vermelden. |
| class | Klasse.
Basisentiteit voor het volledige object-georiënteerde programmeren en dus ook het ontwikkelen in c sharp. Een klasse vormt een patroon voor het maken van objecten. Een klasse definiëert eigenschappen, methoden, ... Heel veel meer hierover verderop in de cursus. In het voorbeeldprogramma maken we een klasse met de naam Program. In de klasse Program gebruiken we de klasse Console uit de namespace System. De volledige naam van de klasse Console is System.Console, zoals de volledige naam van onze klasse Program ConsoleHello.Program is: naam van de namespace.klassenaam. De namespacenaam kan al een lange uitdrukking zijn die punten bevat. |
| methode | Om een actie uit te voeren binnen een klasse wordt gebruik gemaakt van een methode. In de klasse Program definiëren we hier de methode Main. De methode Main vormt het startpunt van de toepassing. WriteLine en ReadLine zijn methoden die deel uitmaken van de klasse Console. Een methode wordt dus aangeroepen door de naam van de klasse (of object, zie later) te laten volgen door een punt, daarna komt de naam van de methode. |
Opgepast, c sharp is hoofdlettergevoelig.
Een goede attitude is het voorzien van commentaar in je programmacode: moeilijker te begrijpen stukken code verduidelijken, of gewoon een snelle beschrijving van de werking van een blok code kan je later veel tijd besparen. Commentaar wordt niet meegecompileerd en zorgt dus niet voor overbelasting in het uit te voeren programma.
static void Main(string[] args)
{
/* Eerste programma
* Even proberen of het werkt */
Console.WriteLine("Hello World");
Console.ReadLine(); // Wacht tot de gebruiker op een toets drukt
}
Commentaar op meerdere lijnen plaats je tussen /* en */, terwijl je commentaar op 1 lijn laat voorafgaan door //.

Wanneer in je code een of meerdere fouten staan waardoor niet kan worden gecompileerd, krijg je volgend dialoogvenster:

Je krijgt nu in het outputvenster meer informatie over de fout en de locatie in het bronbestand.
Het is handig in de editor de lijnnrs te zien, dit doe je via Tools > Options > Text-editor > C# een vinkje te zetten bij 'Line Numbers'.








Meer geavanceerde technieken voor het maken van een grafische userinterface in WPF leer je verderop in de cursus.
Merk echter nu al op dat de wijzigingen die je doet in het onderdeel 'design' onmiddellijk een weerslag hebben in het onderdeel XAML.
Het doen van aanpassingen aan je toepassing kan net zo goed via 'design' als 'XAML' gebeuren. De designweergave is eigenlijk het resultaat van het uitvoeren van de code die we vinden in het onderdeel XAML.
<Label Content="Vul je naam in:" Height="28" HorizontalAlignment="Left" Margin="10,10,0,0" Name="label1" VerticalAlignment="Top" />
<Button Content="Ok" Height="23" HorizontalAlignment="Left" Margin="136,48,0,0" Name="button1" VerticalAlignment="Top" Width="75" />
<TextBox Height="23" HorizontalAlignment="Left" Margin="10,48,0,0" Name="username" VerticalAlignment="Top" Width="120" /> <Button Content="Ok" Height="23" HorizontalAlignment="Left" Margin="136,48,0,0" Name="ok" VerticalAlignment="Top" Width="75" />
Je krijgt nu het code-venster voor MainWindow van je toepassing te zien: MainWindow.xaml.cs
Hierin vinden we nu de methode ok_Click: deze methode werd aangemaakt door te dubbelklikken op de knop ok en zal de code bevatten voor het afhandelen van een klik op de knop ok.
Vul aan:
private void ok_Click(object sender, RoutedEventArgs e)
{
MessageBox.Show("Hallo " +username.Text);
}

| Meer tutorials: |
| leer ook: | html | | xhtml | | css | | asp | | asp.net | | c# | | ado.net | | linq | | ajax | | java | | javascript |