4001 Plan Prog 2 o Mjukvarudesign

Repetition av programmering 1

C# For Python Programmers, Github

C# for Python Programmers, Launchcode.org Omfattande.

Repetition av programmering 1. Lärandemål, C # demo-kod, övningsuppgifter.

Läs kapitel 1 i Programmering 2 C#.

Klasser och objekt

Uppgift: spara data i ett ritprogram

Teori: UML, klass- och objektdiagram

Klass- och objektdiagram i Visual Paradigm

Uppgift: Picture House

Uppgift: Dice - metoder, if, ...

Uppgift: Dice - Array

Uppgift: Dice - Properties (sv. Egenskaper)

Uppgift: Dice - Many (för den som är snabb)

Arv (eng. inheritance)

Läs kapitel 2 i Programmering 2 C#.

Snabbt med Dice

Uppgift: Dice - Inheritance

Uppgift: Dice - dots as List Lista istället för vektor (eng. array).

Arv - långsammare

Uppgift: Animal - introduktion till arv

Demonstration av arv med hjälp av Animal.

En annan lösning med Animal.

Uppgift: Sak - arv på egen hand

Uppgift: Sak - abstrakta klasser

Demonstration av interface med hjälp av Boss.

Uppgift: Shape3D - Interface

Arv och GUI

Genomgång av GUI (Graphical User Interface). Fråga din lärare.

I läroboken används Windows Forms. Det är den äldsta tekniken, som använder den äldre plattformen .NET Framework.

Därefter introducerades Windows Prenstation Foundation (WPF) som också använder .NET Framework, men som bygger på XAML.

Universal Windows Platform (UWP) är det senaste tillskottet som använder den nya plattformen .NET Core, och bygger liksom WPF på XAML. Demonstrationsexempel av UWP.

Microsoft rekommenderar att man använder den applikations-plattform som passar bäst för det egna projektet.

Skillnaden mellan .NET Framework och .NET Core

Övning 2.2

Personalregister, sid 54 i Programmering 2 C# (repetition sidan 11, 31). Använd klassen List för att spara de anställda.

Övning 2.3

Banken, sid 57 i Programmering 2 C#. Använde klassen List för att spara bankkonton.

Utökning av Banken

Gör så att man kan föra över pengar mellan konton.

Unit test av Banken

Teori om att göra Unit-tester samt uppgift

Övning 2.4

Clipart, sid 64 i Programmering 2 C #

Övning 2.8

Inköpslistan, sidan 74 Programmering 2 C#

Mer om arv

polymorfism

tidig och sen bindning

Dokumentation

Om att skriva dokumentation.

Ett bra första steg är att skriva självdokumenterande kod. Det görs bland annat genom att klasser, variabler och metoder ges beskrivande namn.

PROJEKT ritprogram

CRC - cards

Klassdiagram

Grafiska användargränssnitt (GUI)

Läs kapitel 3 i Programmering 2 C#.

PROJEKT ordbehandlare

Filhantering och undantagshantering

Nätverk

Repetition av nätverkskurser

Vid behov läs sidorna 129 - 136 i läroboken.

Användbara klasser i C

Läs kapitel 5.4 i läroboken: sidan 137 - 138.

Introduktionsexempel och övning

Läs kapitel 5.6, sidan 140 - 143, om TCP-programmering. Studera exempel 5.2 och gör övning 5.2 Skicka text med TCP.

Asynkron programmering

Läs kapitel 5.7, sidan 143 - 149, om asynkron nätverksprogrammering.

Studera koden i exempel 5.3 TCP-server med asynkrona metoder.

Studera koden i exempel 5.4 TCP-klient med asynkrona metoder.

Gör övning 5.3 *Skicka och ta emot TCP asynkront.

Gör övning 5.4 Styr en bild

PROJEKT chatprogram, se sidan 148 i läroboken.

Databaser