De presentatie wordt gedownload. Even geduld aub

De presentatie wordt gedownload. Even geduld aub

Hoofdstuk 2 Hallo, C# !. Soorten programma’s nConsole- applicatie.

Verwante presentaties


Presentatie over: "Hoofdstuk 2 Hallo, C# !. Soorten programma’s nConsole- applicatie."— Transcript van de presentatie:

1 Hoofdstuk 2 Hallo, C# !

2 Soorten programma’s nConsole- applicatie

3 Soorten programma’s nConsole- applicatie nWindows- applicatie

4 Soorten programma’s nConsole- applicatie nWindows- applicatie nWeb- applicatie

5 Soorten programma’s nConsole- applicatie nWindows- applicatie nWeb- applicatie nGame

6 Soorten programma’s nConsole- applicatie nWindows- applicatie nWeb- applicatie nGame nApplet

7 Soorten programma’s nConsole- applicatie nWindows- applicatie nWeb- applicatie nGame nApplet nApp

8 Opbouw broncode nOpdrachten om het geheugen te veranderen nOpdrachten zijn gegroepeerd in methoden nMethoden zijn gegroepeerd in klassen

9 en dat kunnen zelf ook weer aanroepen zijn van weer andere methodes... dus de “waar was ik gebleven” administratie is best ingewikkeld! Soorten opdrachten nToekennings -opdracht: verander het geheugen nAanroep van een andere methode: voer eerst de opdrachten in die methode uit, en ga daarna verder waar je gebleven was

10 Voorbeeld C#-programma één klasse...met één methode...met twee opdrachten accolades begrenzen klasse, resp. methode using System; class Hallo { static void Main ( ) { Console.WriteLine("Hallo!"); Console.ReadLine( ); }

11 Klasse- en methode-header using System; class Hallo { static void Main ( ) { Console.WriteLine("Hallo!"); Console.ReadLine( ); } naam: bedacht door de programmeur één van de methodes moet Main heten Main

12 Opdracht: methode-aanroep opdrachten: aanroep van andere methoden naam van de methode altijd een punt overige details klasse waaruit de methode komt using System; class Hallo { static void Main( ) { Console.WriteLine("Hallo!"); Console.ReadLine( ); }

13 Klasse-bibliotheken library-klassen mag je gebruiken... als je ze maar aangeeft in welke library ze staan using System; class Hallo { static void Main( ) { Console.WriteLine("Hallo!"); Console.ReadLine( ); }

14 Methode-header en -aanroep methode- header methode- aanroep using System; class Hallo { static void Main( ) { Console.WriteLine("Hallo!"); Console.ReadLine( ); }

15 Syntax en semantiek nSyntax: de vorm van het programma compilatie eenheid using; klasse declaratie library naam nSemantiek: wat het programma betekent

16 Syntax van klasse-declaratie klasse declaratie publicprivate classnaam{member} :naam

17 Syntax van member member static publicprivate naam type void()blok, naamtype

18 Syntax van blok blok declaratie opdracht {}

19 Syntax van opdracht opdracht (), ;expressie klasse naam object expressie. methode naam =expressie;variabele property naam +=

20 Syntax van opdracht opdracht (), ;expressie klasse naam object expressie. methode naam =expressie;variabele property naam +=

21 Console-applicatie using System; class Hallo2 { static void Main ( ) { Console.WriteLine("Hallo!"); Console.ReadLine( ); }

22 Console-applicatie using System; class Hallo2 { static void Main ( ) { Console.WriteLine("Wat is je naam?"); naam = Console.ReadLine( ); } Toekennings-opdracht geeft een waarde aan een variabele

23 Console-applicatie using System; class Hallo2 { static void Main ( ) { string naam; Console.WriteLine("Wat is je naam?"); naam = Console.ReadLine( ); } Declaratie introduceert een variabele van een bepaald type

24 Console-applicatie using System; class Hallo2 { static void Main ( ) { string naam; Console.WriteLine("Wat is je naam?"); naam = Console.ReadLine( ); Console.WriteLine("Hallo, " + naam + "!"); } gebruik van de variabele

25 Console-applicatie using System; class Hallo2 { static void Main ( ) { string naam; Console.WriteLine("Wat is je naam?"); naam = Console.ReadLine( ); Console.WriteLine("Hallo, " + naam + "!"); Console.WriteLine("met " + naam.Length + " letters."); } Property van een object

26 Console-applicatie using System; class Hallo2 { static void Main ( ) { string naam; Console.WriteLine("Wat is je naam?"); naam = Console.ReadLine( ); Console.WriteLine("Hallo, " + naam + "!"); Console.WriteLine("met " + naam.Length + " letters."); Console.ReadLine( ); }

27 Syntax van opdracht opdracht (), ;expressie klasse naam object expressie. methode naam =expressie;variabele property naam +=

28 Syntax van opdracht opdracht (), ;expressie klasse naam object expressie. methode naam =expressie;variabele property naam += toekenning

29 Syntax van declaratie declaratie typenaam;, type klasse naam int string

30 Windows-applicatie class HalloWin1 { static void Main ( ) { } Form scherm; scherm = new Form( ); Application.Run(scherm); using System.Windows.Forms; scherm.Text = "Hallo"; scherm.BackColor = Color.Yellow; scherm.Size = new Size(200,100); using System.Drawing; declaratie en toekenning van een variabele met type Form gebruik van de variabele bij aanroep van Run aanpassen van attributen

31 Syntax van opdracht opdracht (), ;expressie klasse naam object expressie. methode naam =expressie;variabele property naam +=

32 Syntax van opdracht opdracht (), ;expressie klasse naam object expressie. methode naam =expressie; += property naam variabele

33 Windows-applicatie class HalloWin2 { static void Main ( ) { } class HalloForm { } Form scherm; scherm = new Form( ); Application.Run(scherm); HalloForm scherm; scherm = new HalloForm( ); Application.Run(scherm); : Form subklasse is een gespecialiseerde versie aanroep van de constructor methode public HalloForm( ) { } definitie van de constructor methode this.Text = "Hallo"; this.BackColor = Color.Yellow; this.Size = new Size(200,100);

34 Windows-applicatie class HalloForm { } : Form public HalloForm( ) { } this.Text = "Hallo"; this.BackColor = Color.Yellow; this.Size = new Size(200,100); Label groet; groet = new Label( ); this.Controls.Add(groet); groet.Text = "Hallo allemaal"; groet.Location = new Point(30,20);

35 Syntax van opdracht opdracht (), ;expressie klasse naam object expressie. methode naam =expressie;variabele property naam +=

36 Syntax van opdracht opdracht klasse naam object expressie. methode naam property naam scherm. Size groet. Text naam. Length property naam object expressie methode naam this.Controls. Add ( = klasse naam Color. Yellow Console. WriteLine Application. Run static

37 Static gewone methodenstatic methoden static Bewerken een objectBewerken geen object Aanroep: object. methode (…) Aanroep: klasse. methode (…) In de body van de definitie: this is dat object In de body van de definitie: this bestaat niet Voorbeeld: Controls.Add(groet);Application.Run(scherm); Mainis altijd static Constructormethoden zijn nooit static

38 Windows-applicatie class HalloForm { } : Form public HalloForm( ) { } this.Text = "Hallo"; this.BackColor = Color.Yellow; this.Size = new Size(200,100); Label groet; groet = new Label( ); this.Controls.Add(groet); groet.Text = "Hallo allemaal"; groet.Location = new Point(30,20);

39 Windows-applicatie class HalloForm { } : Form public HalloForm( ) { } this.Text = "Hallo"; this.BackColor = Color.Yellow; this.Size = new Size(200,100); this.Paint += this.teken; “Event”-property Methode-naam, maar geen aanroep!

40 Windows-applicatie class HalloForm { } : Form public HalloForm( ) { } this.Text = "Hallo"; this.BackColor = Color.Yellow; this.Size = new Size(200,100); this.Paint += this.teken; } void teken( { Object o, PaintEventArgs pea ) pea.Graphics. DrawString( ); "Hallo!", 10, 10, Brushes.Blue, new Font("Tahoma", 30)

41 Windows-applicatie class HalloWin3 { static void Main() { HalloForm scherm; scherm = new HalloForm(); Application.Run(scherm); } class HalloForm : Form { public HalloForm() { this.Text = "Hallo"; this.Paint += this.teken; } void teken(object o, P aint E vent A rgs p) { p.Graphics.DrawString( … ); } using System.Windows.Forms;

42 Game-applicatie class HalloWin3 { static void Main() { HalloForm scherm; scherm = new HalloForm(); Application.Run(scherm); } class HalloForm : Form { public HalloForm() { this.Text = "Hallo"; this.Paint += this.teken; } void teken(object o, P aint E vent A rgs p) { p.Graphics.DrawString( … ); } using System.Windows.Forms; class HalloGame4 { static void Main() { HalloGame spel; spel = new HalloGame(); } class HalloGame : Game { public HalloGame() { } using Microsoft.XNA.Framework; spel.Run(); this.Window.Title = "Hallo"; override void Draw(G ame T ime t) { }

43 Form vs. Game void teken(object o, PaintEventArgs pea) { gr.DrawString( ); } override void Draw(GameTime gt) { } sb.DrawString( ); SpriteBatch sb; sb = new SpriteBatch(this.GraphicsDevice); sb.Begin(); sb.End(); Graphics gr; gr = pea.Graphics; "Hallo!", 10, 20 new Point( ), new Vector2(10, 20), Brushes.Blue, Color.Blue, new Font("Tahoma", 30) this.Content.Load ("Spelfont"), gt. TotalRealTime.Milliseconds, 20)

44 Content bij een Game nFonts, Achtergrondplaatjes, Geluiden… this.Content.Load ("Spelfont") Hulpbestanden / Spelfont.spritefont 0 true Regular ~ Tahoma 30 this.Content.RootDirectory = "Hulpbestanden";


Download ppt "Hoofdstuk 2 Hallo, C# !. Soorten programma’s nConsole- applicatie."

Verwante presentaties


Ads door Google