Lataa esitys
Esittely latautuu. Ole hyvä ja odota
1
Johdatus ohjelmointiin
Ohjelmistot tietokonejärjestelmissä Jaana Holvikivi
2
Ohjelmistojen tehtävät
Sovellusohjelmat tekstinkäsittely ja muut toimistosovellukset kirjanpito, tuotannonohjaus selaimet, mediaohjelmat Ohjelmistokehitysvälineet kehitysympäristöt ohjelmointikielten kääntäjät Varusohjelmat käyttöjärjestelmät käyttöliittymät tietoliikenneohjelmistot, tietoturvallisuus tiedonhallinta J.Holvikivi
3
Käyttöjärjestelmä ja sovellukset
Visual Studio CAD Tilastot Käyttöliittymä C++ Käyttö- järjestelmä Verkko- ohjelmistot Varasto- kirjanpito An example: The User enters a Print command in MS Word (Application). The Word Application then makes the request of Windows (System software). Windows then routes the request and data to the appropriate output devices (Hardware). The process then reverses with the job completed message being passed back thru these layers to the User. Tekstinkäsittely Pelit Operating Systems Palkan- laskenta J.Holvikivi
4
Ohjelmointikielet (1) Konekieli, prosessorikohtainen
Assembler (mnemoninen) Perinteiset proseduraaliset kielet: Fortran, Pascal, Cobol, BASIC Oliokielet (object oriented programming) C ++ Java, C# Visual Basic Visual C++ J.Holvikivi
5
Ohjelmointikielet (2) Skriptikielet (Internet - ohjelmointi)
php, Python, Ruby (palvelimella) Javascript (selaimessa) VBScript Flash Sovelluskehittimet Delphi Oracle Funktionaalinen ohjelmointi (XSLT) ja deklaratiiviset kielet (SQL) J.Holvikivi
6
Ohjelmointikieli syntaksi toiminta (kääntäminen, tulkinta)
logiikka (semantiikka) algoritmit oliot rakenne käyttöliittymäelementit kirjastot (libraries) Data eli tiedot ja ohjelmat käsitellään tietokoneessa samanarvoisina ja samassa muodossa - suoritin ei erota niitä toisistaan. Näin ollen ohjelmat voivat käsitellä toisiaan kuten dataa. J.Holvikivi
7
Ohjelmointi ongelmanratkaisuna
Tietokoneen älykkyys on ohjelmissa Ohjelmointi on ihmisen kehittämän älykkään ratkaisun kertomista tietokoneelle niin, että se pystyy suorittamaan tehtävän toistuvasti ja itsenäisesti J.Holvikivi
8
Algoritmit Tarkasti ottaen algoritmi on äärellinen joukko täsmällisiä, suoritettavissa olevia ohjeita, jotka ohjaavat päättyvää tehtävän suoritusta. laulun nuotit koneen käyttöohje kokoamisohje Algoritmeilla ilmaistaan ohjelman toimintalogiikka. Algoritmi kertoo missä järjestyksessä toiminnot suoritetaan. tietokone noudattaa koodattua algoritmiä mekaanisesti Algoritmi voidaan esittää tekstinä, vuokaaviona tai niin sanottuna pseudokoodina ennen kuin se koodataan jollekin ohjelmointikielelle. J.Holvikivi
9
Ohjelmointi ongelmanratkaisuna (2)
Tehtävä Algoritmi vuokaavio pseudokoodi Ohjelma Lähdekoodi Kääntäjä Tulkki Käännetty konekielinen ohjelma Konekielisiä komentoja J.Holvikivi
10
Loppu Toiminta 2 Toiminta 1 Jatka jos ehto on tosi Aloita IF vertailulause on ei J.Holvikivi
11
Tavalliset vuokaaviosymbolit
Toiminta Dokumentti kyllä ei Vertailu Ali- ohjelma Toiminta Toiminta Päätepiste J.Holvikivi
12
Ohjelman logiikka pitää suunnitella ennen kuin sitä aletaan varsinaisesti ohjelmoida eli koodata. Seuraavassa esimerkki ohjelmalogiikasta, joka laskee keskiarvon annetuista luvuista. PRINT "Ohjelma laskee keskiarvon henkilöiden iästä" PRINT "Kuinka monta henkeä?" INPUT N LET S = 0 LET I = 0 SILMUKKA: PRINT "Kuinka vanha on henkilö" I+1 INPUT X LET S = S+X LET I = I+1 IF I < N GOTO SILMUKKA LET K = S/N PRINT "Joukon keski-ikä on " K END J.Holvikivi
13
Assembler- ohjelmointi
Esimerkki kahden luvun yhteenlaskemisesta Step 1: Get the value from memory location 6C and place it in a register. =LOAD Step 2: Get the other value to be added from memory location 6D and place it in another register. =LOAD Step 3: Activate the addition circuitry with the registers used in steps 1 and 2 as inputs with another register designated to store the result. =ADD Step 4: Store the result in memory location 6E. =STORE Step 5: Stop. =HALT Muita mahdollisia käskyjä: MOVE, OR, AND, ROTATE, JUMP J.Holvikivi
14
Konekielinen ohjelma, teoreettinen esimerkki
Adding values stored in memory Step 1: 156C Step 2: 166D Step 3: 5056 Step 4: 306E Step 5: C000 J.Holvikivi
15
Käyttöjärjestelmän tehtävät
Käyttöjärjestelmä on ohjelmisto, joka ohjaa tietokoneen toimintaa. ohjaa laitteiston osia ohjaa suoritinta ja muisteja suorittaa ohjelmia Se on tavallisesti asennettuna mikrotietokoneen kiintolevyllä. Käyttöjärjestelmä käynnistyy automaattisesti, kun tietokoneeseen kytketään virta, ja se on muistissa eli käynnissä koko sen ajan, kun tietokonekin on käynnissä. Kommunikoi käyttäjän kanssa. Optimoi järjestelmän suorituskyvyn. Huolehtii tiedosta ja tiedostoista. Tietoturvallisuus. Allocating Resources: Multitasking: concurrent execution of more than one program at a time. This is possible because of the processing speed differences between the processor and the peripherals. The processor is always waiting on the slower peripherals. Foreground: active program Background: low-priority programs Kernel: One of the operating system programs that loads the other programs into RAM as needed. The kernel is in RAM all of the time. J.Holvikivi
16
Ohjelmien suorittaminen
Batch processing - eräajo työt kerätään jonoon: ohjelma ja data niputetaan FIFO (first-in-first-out) tai prioriteetti Interaktivinen työskentely käyttäjän ja tietokoneen vuorovaikutus, välitön palaute Reaaliaikaprosessointi: automaatiojärjestelmät Multitasking - moniajo - time-sharing: prosessit odottavat vuoroaan muistissa J.Holvikivi
17
Teksti- ja komentopohjainen
Käyttöliittymiä Teksti- ja komentopohjainen MS-DOS Unix Kaukosäätimet, kännykät Windows, Linux, Mac Graphical User Interface (GUI) Ikkunat, kuvakkeet, hiiren käyttö Graafinen, ikkunointi J.Holvikivi
18
Suunnittelun yleisperiaatteita
Rakenteellinen suunnittelu: kokonaisuudesta osiin, top-down Määrittele toiminta, syötteet, tulosteet Selvitä mitä käyttäjä tarvitsee ja haluaa Jaa moduleiksi (yksi kokonainen tehtävä / moduli) Modulien välinen tiedonvaihto: globaalit ja lokaalit muuttujat Algoritmien määrittely (toiminta) kullekin modulille Osien suunnittelu, ohjelmointi ja testaus loogisessa järjestyksessä Kokonaisuuden testaus J.Holvikivi
19
Dokumentointi selkeä dokumentointi on avain ymmärrettävyyteen
tarpeen ylläpidon ja edelleenkehittämisen vuoksi rakennekaaviot vuokaaviot, algoritmit tietoluettelot, taulukot; tietorakenne käsitekaaviot, olio-ohjelmointi käyttöohjeet J.Holvikivi
20
Testaus Testaamista suoritetaan monessa vaiheessa
Käytettävyystestaus suoritetaan loppukäyttäjien kanssa: toiminnan läpikäyminen (löytääkö käyttäjä toiminnot ja osaako hän edetä) Ohjelmoinnin aikainen testaus poistaa koodivirheet Järjestelmätestaus käy koko järjestelmän toiminnan läpi osista kokonaisuuteen. Tavoitteena ohjelman oikeellisuuden todistaminen. J.Holvikivi
Samankaltaiset esitykset
© 2024 SlidePlayer.fi Inc.
All rights reserved.