Skillnad mellan versioner av "Kap 1 Objektorienterad programmering (OOP)"

Från Mathonline
Hoppa till: navigering, sök
m
m
Rad 21: Rad 21:
  
  
= <b><span style="color:#931136">5.2 Relationsdatabaser</span></b> =
+
= <b><span style="color:#931136">1.2 Klassbegreppet</span></b> =
 
<div class="ovnC">
 
<div class="ovnC">
<big><big>
 
:Bläddra igenom PowerPointen (PDF 11 sidor)<span>:</span>
 
<math> \qquad\;\;\, </math><div class="smallBox">[http://www.taifun.se/images/stories/5_2_Rel_databaser.pdf <b><span style="color:blue">Relationsdatabasmodellen</span></b>]</div><math> \qquad\;\;\, </math>
 
</big></big>
 
</div>
 
  
 +
= <b><span style="color:#931136">Vårt första C# program</span></b> =
 +
<div class="ovnE">
  
= <b><span style="color:#931136">5.3 Introduktion till SQL</span></b> =
+
<div style="border:1px solid black;display:inline-table;margin-left: 0px;"> [[Image: Firsta.jpg]]</div>
<div class="ovnA">
+
<big><big>
+
:Bläddra igenom bilder & text (PDF 3 sidor)<span>:</span>
+
<math> \qquad\;\;\, </math><div class="smallBox">[http://www.mathonline.se/Progr_3/Databashanterare.pdf <b><span style="color:blue">Databashanterare</span></b>]</div><math> \qquad\;\;\, </math>
+
</big></big>
+
</div>
+
  
  
<div class="ovnE">
+
<big><big>Varför står metoden <b><span style="color:red">Main()</span></b> i en <b><span style="color:red">klass</span></b>, nämligen <b><span style="color:blue">class First</span></b> &nbsp;?
<big><big>
+
 
:Bläddra igenom bilder & text (PDF 7 sidor)<span>:</span>  
+
Eftersom koden ska vara ett <b><span style="color:red">C# program</span></b>.
<math> \qquad\;\;\, </math><div class="smallBox">[http://www.mathonline.se/Progr_3/SQL.pdf <b><span style="color:blue">SQL – databasers språk</span></b>]</div><math> \qquad\;\;\, </math>
+
 
 
</big></big>
 
</big></big>
 
</div>
 
</div>
  
  
 +
= <b><span style="color:#931136">Vad är ett C# program?</span></b> =
 
<div class="ovnC">
 
<div class="ovnC">
<big><big>
+
<div style="border:1px solid black;display:inline-table;margin-left: 0px;"> [[Image: CsPrograma.jpg]]</div>
:Bläddra igenom bild & text (PDF 1 sida)<span>:</span>  
+
 
<math> \qquad\;\;\, </math><div class="smallBox">[http://www.mathonline.se/Progr_3/Regler_Konv.pdf <b><span style="color:blue">Regler och konventioner</span></b>]</div><math> \qquad\;\;\, </math>
+
 
</big></big>
+
<big><big>Koden ovan (<b><span style="color:blue">class First</span></b>) är det det enklast tänkbara <b><span style="color:red">C# programmet</span></b>.
 +
 
 +
Metoden <b><span style="color:red">Main()</span></b> kan inte skrivas utanför klassen. Ingen annan kod heller!</big></big>
 
</div>
 
</div>
  
  
= <b><span style="color:#931136">5.4 Vår första SQL Server databas</span></b> =
+
= <b><span style="color:#931136">Vad är en klass?</span></b> =
 
<div class="ovnA">
 
<div class="ovnA">
=== <b><span style="color:#931136">Projektet FirstDatabase, en Windows Forms Application</span></b> ===
 
<div style="border:1px solid black;display:inline-table;margin-left: 0px;"> [[Image: Our_First_DBa.jpg]]</div>
 
  
 +
<div style="border:1px solid black;display:inline-table;margin-left: 0px;"> [[Image: VadKlass.jpg]]</div>
  
<big><big>Så här kommer gränssnittet till vår första SQL Server databas i C# se ut.
 
  
Projektets hela beskrivning finns i [http://mathonline.se:1802/Boken%20Alg%20Datastr%20Design.pdf <b><span style="color:blue">kursboken</span></b>], sid 179-184</big></big>
+
<big><big><b><span style="color:red">Generell</span></b> är en klass därför att den beskriver en <b>kategori</b> av saker och ting:
</div>
+
  
 +
* &nbsp; &nbsp; ett <b>begrepp</b>
  
= <b><span style="color:#931136">Att ladda ned en exempeldatabas</span></b> =
+
* &nbsp; &nbsp; en <b>idé</b>
<div class="ovnE">
+
<big><big>
+
* &nbsp; &nbsp; Ladda ned databasfilen [http://taifun.se/images/stories/Books.zip <b><span style="color:red">Books.mdf</span></b>] som är packad i en zip-fil.
+
  
* &nbsp; &nbsp; Filen <b>Books.zip</b> laddas ned. Packa upp den, so att <b><span style="color:red">mdf</span></b>-filen läggs utanför <b>zip</b>.  
+
* &nbsp; &nbsp; en <b>mall</b>.  
  
* &nbsp; &nbsp; Spara filen <b><span style="color:red">Books.mdf</span></b> på en plats (i en mapp) som du kommer ihåg.
+
Enligt klassens mall kan sedan <b>objekt</b> av denna klass skapas. Medan klassen
  
* &nbsp; &nbsp; Den ska nämligen sedan infogas i projektet och användas som datakälla.
+
är abstrakt, är objekten verkliga eller virtuella saker och ting i den reala världen.
</big></big>
+
</div>
+
  
 +
<b><span style="color:red">Modulär</span></b> är en klass därför att den kodas som en separat och namngiven modul
  
= <b><span style="color:#931136">Att skapa ett projekt av typ Windows Forms Application</span></b> =
+
så att den kan användas av vilka andra program som helst. Liksom en Legobit
  
 +
för att kunna konstruera andra program. Principen heter <b>modularisering</b>.
  
<div class="ovnC">
+
<b><span style="color:red">Klass och objekt är två olika begrepp.</span></b>
<big>
+
* &nbsp; &nbsp; Öppna Visual Studio och skapa en Windows Forms Application, så här:
+
  
<div style="border:1px solid black;display:inline-table;margin-left: 0px;"> [[Image: WinFormsAppl_1b.jpg]]</div>
+
<b>Exempel:</b>
  
 +
Pepparkakor är <b><span style="color:red">objekt.</span></b>
  
<div style="border:1px solid black;display:inline-table;margin-left: 0px;"> [[Image: Conf_Proj_FirstDB.jpg]]</div>
+
Pepparkaksformen är <b><span style="color:red">klassen.</span></b>
  
* &nbsp; &nbsp; Följ instruktionerna i [http://mathonline.se:1802/Boken%20Alg%20Datastr%20Design.pdf <b><span style="color:blue">kursboken</span></b>], sid 179/180.
+
</big></big>
</big>
+
 
</div>
 
</div>
  
  
= <b><span style="color:#931136">Att koppla upp sig till SQL Servern</span></b> =
+
= <b><span style="color:#931136">Klassen Password</span></b> =
 
<div class="ovnA">
 
<div class="ovnA">
<big>* &nbsp; &nbsp; Följ instruktionerna i [http://mathonline.se:1802/Boken%20Alg%20Datastr%20Design.pdf <b><span style="color:blue">kursboken</span></b>], sid 180-183.
+
=== <b><span style="color:#931136">Vår första egendefinierade klass utan Main()</span></b> ===
</big>
+
<div style="border:1px solid black;display:inline-table;margin-left: 0px;"> [[Image: Password.jpg]]</div>
 
</div>
 
</div>
  
  
= <b><span style="color:#931136">Att visa databasens innehåll</span></b> =
+
= <b><span style="color:#931136">Programmet PasswordUse</span></b> =
<div class="ovnE">
+
<div class="ovnA">
<big>* &nbsp; &nbsp; Följ instruktionerna i [http://mathonline.se:1802/Boken%20Alg%20Datastr%20Design.pdf <b><span style="color:blue">kursboken</span></b>], sid 183-184.
+
<div style="border:1px solid black;display:inline-table;margin-left: 0px;"> [[Image: PasswordUse.jpg]]</div>
</big>
+
</div>
 +
 
 +
 
 +
= <b><span style="color:#931136">Ett körexempel</span></b> =
 +
<div class="ovnA">
 +
<div style="border:1px solid black;display:inline-table;margin-left: 0px;"> [[Image: PasswordUseKorexa.jpg]]</div>
 +
</div>
 +
</div>
 +
 
 +
 
 +
= <b><span style="color:#931136">1.3 Modulariseringsprocessen</span></b> =
 +
<div class="ovnA">
 +
<big><big>
 +
:Bläddra igenom bilder & text (PDF 3 sidor)<span>:</span>
 +
<math> \qquad\;\;\, </math><div class="smallBox">[http://www.mathonline.se/Progr_3/Databashanterare.pdf <b><span style="color:blue">Databashanterare</span></b>]</div><math> \qquad\;\;\, </math>
 +
</big></big>
 
</div>
 
</div>
  

Versionen från 19 november 2022 kl. 11.04

        <<  Agenda          Innehåll & struktur          Genomgång          Dagens övningar          Nästa lektion  >>      


1.1   Vad är objektorienterad programmering?

Gå igenom texten (PDF 7 sidor):
\( \qquad\;\;\, \)\( \qquad\;\;\, \)


1.2 Klassbegreppet

Vårt första C# program

Firsta.jpg


Varför står metoden Main() i en klass, nämligen class First  ?

Eftersom koden ska vara ett C# program.


Vad är ett C# program?

CsPrograma.jpg


Koden ovan (class First) är det det enklast tänkbara C# programmet.

Metoden Main() kan inte skrivas utanför klassen. Ingen annan kod heller!


Vad är en klass?

VadKlass.jpg


Generell är en klass därför att den beskriver en kategori av saker och ting:

  •     ett begrepp
  •     en idé
  •     en mall.

Enligt klassens mall kan sedan objekt av denna klass skapas. Medan klassen

är abstrakt, är objekten verkliga eller virtuella saker och ting i den reala världen.

Modulär är en klass därför att den kodas som en separat och namngiven modul

så att den kan användas av vilka andra program som helst. Liksom en Legobit

för att kunna konstruera andra program. Principen heter modularisering.

Klass och objekt är två olika begrepp.

Exempel:

Pepparkakor är objekt.

Pepparkaksformen är klassen.


Klassen Password

Vår första egendefinierade klass utan Main()

Password.jpg


Programmet PasswordUse

PasswordUse.jpg


Ett körexempel

PasswordUseKorexa.jpg


1.3 Modulariseringsprocessen

Bläddra igenom bilder & text (PDF 3 sidor):
\( \qquad\;\;\, \)\( \qquad\;\;\, \)









Copyright © 2022 TechPages AB. All Rights Reserved.