Sovellusohjelman suunnittelu & toteutus

Slides:



Advertisements
Samankaltaiset esitykset
Tuloksellinen Java-ohjelmointi Luku 3 Luokkien käyttäminen
Advertisements

15. Loogiset operaatiot.
@ Leena Lahtinen Helia Ohjelman perusrakenteet 1. PERÄKKÄISRAKENNE 2. VALINTARAKENNE 3. TOISTORAKENNE.
VBA –ohjelmoinnin perusteet
3. Pseudokoodi.
Ohjelman perusrakenteet
Tietorakenteet ja algoritmit
Rakenteinen ohjelmointi
Rakenteinen ohjelmointi
Ohjelmointitaito (ict1td002, 12 op) Syksy 2008
13. Pakkaukset.
Ohjelma on kokoelma toimintaohjeita annetun tehtävän ______________________. Ohjelmassa on peräkkäisten toimintojen lisäksi yleensä valintaa ja _____________.
Tietojärjestelmän suunnittelu
Java-ohjelmointi Opas ammattimaiseen osaamiseen Luku 4 Toistolauseet
Tehtävä Tee ohjelma, joka kysyy käyttäjältä kaksi kokonaislukua (0-50, kysytään lukuja niin kauan kunnes käyttäjä antaa luvut sallitulta alueelta). Ohjelma.
16. Lohkot Sisällys Tutustutaan lohkoihin. Muuttujien ja vakioiden näkyvyys sekä elinikä erityisesti operaation lohkossa. Nimikonfliktit. Muuttujat.
Toiston tekeminen Javalla  Mikä toistorakenne on?  while toistorakenne  do-while toistorakenne  for toistorakenne 1.
Ohjelmoinnin tekniikkaa Sisällys for -lause lyhemmin. Vaihtoehtoisia merkintöjä aritmeettisille lauseille. Useiden muuttujien esittely.
Ohjelman perusrakenteet
Ohjelmistotekniikka - Tenttiin valmistautumisesta Kevät 2003 Hanna-Kaisa Lammi LTY/Tite.
2. Vuokaaviot.
Pseudokoodi Tietokoneohjelmien perusidea:
13. Hyvä ohjelmointitapa (osa 1)
© Jukka Harju, Jukka Juslin
Vaasan yliopisto Tietojenkäsittely TiTe.1020 Ohjelmat.
Ohjelmointi.
TIEP114 Tietokoneen rakenne ja arkkitehtuuri, 3 op
ict1td002 - Copyright Raine Kauppinen 1 Alkuarvot ja tyyppimuunnokset (1/5)  Aiemmin olemme jo antaneet muuttujille alkuarvoja, esimerkiksi: int.
Visual Basic -ohjelmointi
String-vertailusta ja Scannerin käytöstä (1/2)
C-ohjelmoinnin perusteet
Metodit – Arvotyyppi Ellei metodi palauta arvoa, sen arvotyyppi on void Tällöin ”return;”-lauseke ei ole metodissa pakollinen, vaikka sen käyttö on sallittua.
11. Javan toistorakenteet
Algoritmi-harjoituksia…
HelloWorld-ohjelma. 5.2 Sisällys Lähdekoodi. Lähdekoodin (osittainen) analyysi. Lähdekoodi tekstitiedostoon. Lähdekoodin kääntäminen tavukoodiksi.
Näppäimistöltä lukeminen Sisällys Arvojen lukeminen näppäimistöltä yleisesti. Arvojen lukeminen näppäimistöltä Java-kielessä. In -luokka.
1 Ohjelmointikielten varhaishistoria Esa-Matti Miettinen
@ Leena Lahtinen TIETOKONEOHJELMAN RAKENNE OHJELMALLA ON KAKSI OSAA:  MÄÄRITYSOSA TIETOJEN KUVAUKSIA VARTEN  SUORITUSOSA TIETOJEN KÄSITTELYÄ.
Visual Basic -ohjelmointi
Kontrollirakenteet laajemmin
Ohjelmointi työtä n. 16 h/vko onnistumista työtä n. 16 h/vko onnistumista #include int main(void) { std::cout
Monimuotoinen luokka tMyn1 Monimuotoinen luokka Monimuotoinen luokka mahdollistaa saman jäsenfunktion toteutuksen monella tavalla. Tällöin puhutaan virtuaalisesta.
Visual Basic -ohjelmointi
Ohjelmointi 1. toinen luento1 Taulukot n Kiinteät taulukot: alkioiden määrä tiedetään Dim intCount(12) As Integer 0 indeksit saavat arvoja 0-12 (Option.
21. Rekursio.
FOR i := 0...N-1 DO summa := summa + A[i] tulo := tulo * A[i] ENDFOR.
Ohjausrakenteet Määräävät ohjelmakoodin suoritusjärjestyksen Ehtolause if – else on muotoa if (lauseke) lause1 else lause2 Jos lauseke on tosi, niin suoritetaan.
Ohjelmassa tänään Ohjelmointimallit Pseudokieli Modulaarisuus.
2/2001 Tietojärjestelmät ja Systeemisuunnittelu Luennoitsija: Tapio Lammi
Toistorakenne Toistorakennetta käytetään ohjelmissa sellaisissa tilanteissa, joissa jotain tiettyä ohjelmassa tapahtuvaa toimenpidekokonaisuutta halutaan.
TIEP114 Tietokoneen rakenne ja arkkitehtuuri, 3 op Assembler.
Yksikkötestaus ● Yksikkötestauksella tarkoitetaan lähdekoodiin kuuluvien yksittäisten osien testaamista. Termi yksikkö viittaa ohjelman pienimpiin mahdollisiin.
TIEP114 Tietokoneen rakenne ja arkkitehtuuri, 3 op Assembly ja konekieli.
String-vertailusta ja Scannerin käytöstä (1/2)
TIEP114 Tietokoneen rakenne ja arkkitehtuuri, 3 op
8. Rekursio.
13. Loogiset operaatiot.
5. HelloWorld-ohjelma.
Ohjelmien suunnittelu
Toisto Toistolausekkeet for, while(ehto){…} ja do {…} while(ehto)
16. Ohjelmoinnin tekniikkaa
14. Hyvä ohjelmointitapa.
11. Javan valintarakenteet
12. Javan toistorakenteet
12. Javan toistorakenteet
8. Rekursio.
Kontrollirakenteet laajemmin
5. HelloWorld-ohjelma.
13. Loogiset operaatiot.
12. Javan toistorakenteet
Esityksen transkriptio:

Sovellusohjelman suunnittelu & toteutus

Tietojärjestelmän kehityksen elinkaari Burch (1992)

Ohjelman suunnittelu – Ohjelmiston elinkaari Haikala & Märijärvi (2002)

Ohjelman suunnittelu (Ohjelman osiinjako) Ohjelmiston kehittäminen voi edetä seuraavan kuvan mukaisesti. Ohjelma ositetaan Osien väliset rajapinnat määritellään ja kuvataan Osat suunnitellaan ja toteutetaan Haikala & Märijärvi (2002)

Ohjelman suunnittelu (Algoritmien kuvaaminen 1/2) - Pseudokoodi alustukset loop pyydä luku1; lue luku1; until ehdot täyttyvät; pyydä luku2; lue luku2; laske lukujen summa; tulosta lukujen summa; kysy jatketaanko; if halutaan jatkaa then palaa alustuksiin; else lopeta;

Ohjelman suunnittelu (Algoritmien kuvaaminen 2/2) - Vuokaavio Toisto: Do Until aloitus Jatketaanko Kyllä/Ei Lopetus Laske summa pyydä luku1 luku OK Lue luku1 Kyllä Ei ilmoita virhe A Tulosta summa pyydä luku2 Lue luku2 Sekvenssi Valinta: If-Then-Else

Ohjelman toteutus (Modulaarisuus) Moduuli A Moduuli B Moduuli C C-kielen ohjelmakirjasto Moduuli Y Moduuli X

Ohjelman toteutus (C-kielen kääntäjä) Linkkeri Assembleri Kääntäjä Esikääntäjä Lähdekoodi tiedostot Ajovalmis exe-tiedosto Ohjelma A Ohjelma X Ohjelma B . Ohjelma n lausekieli konekieli kielioppivirheet pois summa.exe summa.c summa.obj

Ohjelman toteutus (Yhteenlasku ohjelman koodi) #include <stdio.h> // C:n kirjastot sisaan void main(void) // ohjelma alkaa { int eka, toka; //alustukset eka=0; toka=0; clrscr(); // naytto tyhjaksi printf("\t\tTervetuloa\n\n"); do // ..kunnes luku > 0 ja < 101 printf("Anna ensimmainen luku (valilta 1 - 100).: "); // pyytaa ensimmaista lukua scanf("%d",&eka); // lukee ensimmaisen luvun if (eka < 1 || eka > 100) // testaa lukualueen (1-100) printf("Luku ei ole annetulta alueelta!\n\n"); // .. jos virhe, niin } while(eka < 1 || eka > 100 ); // alkuun jos virhe luvussa do printf("Anna toinen luku (valilta 1 - 100)......: "); scanf("%d",&toka); if (toka < 1 || toka > 100) printf("Luku ei ole annetulta alueelta!\n\n"); } while(toka < 1 || toka > 100 ); printf("\nLukujen summa on: %d\n", eka + toka); // tulostaa summan getch(); } // ohjelma loppuu toisto-rakenne

Ohjelman toteutus (Ohjelman suoritus)