! Introduktion till kursen! En dators delar! Vad är ett program? " Hur fungerar ett program när det körs

Relevanta dokument
Programmeringsteknisk översiktskurs för yrkeshögskoleprogram

Innehåll. Programmeringsteknisk översiktskurs för yrkeshögskoleprogram. Inblandade personer. Institutionen för datavetenskap. Studentexpeditionen

Programmeringsteknisk översiktskurs. Introduktion till kursen

Programmeringsteknisk översiktskurs. Introduktion till kursen

Föreläsning 1: Intro till kursen och programmering

Föreläsning 1: Intro till kursen och programmering

Grundkurs i programmering - intro

Objektorienterad Programmering (TDDC77)

Programutveckling med Java 7.5 p, ht 2007 (D0019N) STUDIEHANDLEDNING - ALLMÄN INFORMATION

Viktiga begrepp. Algoritm. Array. Binärkod. Blockprogrammering. Bugg / fel och felsökning. Dataspel. Dator

PROGRAMMERING. Ämnets syfte. Kurser i ämnet

Kursupplägg. Examination. Föreläsning 1: Intro till kursen och. Kursmaterial. programmering. Kursboken: Programmera med a multimedia approach

Datorsystem och programmering

Vad är en dator? Introduktion till datorer och nätverk. Pontus Haglund Institutionen för datavetenskap (IDA) 21 augusti 2018

PROGRAMMERING. Ämnets syfte. Kurser i ämnet

TDDC77 Objektorienterad Programmering

Inledning. Vad är ett datorprogram, egentligen? Olika språk. Problemlösning och algoritmer. 1DV433 Strukturerad programmering med C Mats Loock

Inledande programmering med C# (1DV402) Introduktion till programmering

PROGRAMMERING. Ämnets syfte. Kurser i ämnet

TDIU01 (725G67) - Programmering i C++, grundkurs

Föreläsning 2. Operativsystem och programmering

Definition DVG A06. Varför operativsystem? Operativsystem. Översikt. - Vad är ett operativsystem?

Programmering för alla!

Programmering för alla!

Introduktion till programmering

Introduktion till programmering och Python Grundkurs i programmering med Python

PROGRAMMERING. Ämnets syfte. Kurser i ämnet

Objektorienterad Programmering (TDDC77)

Outline. Objektorienterad Programmering (TDDC77) Kursinfo. Outline. Hemsida. Organization. Ahmed Rezine Examination. Webreg.

Datorhistoria Introduktion till PBL

DVG A06. Operativsystem, mm. Karlstads universitet Datavetenskap. DVG A06 Johan Eklund. Datavetenskap, Karlstads universitet 1

HF0010. Introduktionskurs i datateknik 1,5 hp

Föreläsning 1 & 2 INTRODUKTION

Datorsystemteknik DAV A14 Föreläsning 1

NUMERISKA METODER HT01. Energiteknik & Teknisk fysik HT01. Institutionen för Datavetenskap Umeå Universitet

Objektorienterad programmering, analys och design med Java, 5p 2D4135, vt Kursprogram

Introduktion till programmering, hösten 2011

Föreläsning 1: Introduktion till kursen

Introduktionskurs i datavetenskap, 3p.

Kursinformation Grundkurs i programmering med Python

ENKEL Programmering 3

Programmering i ett historiskt perspektiv. Växjö 16 november 2017 Mats Hansson

Föreläsning 1. Presentation av kursen Vad är programmering? Lite om java och utvecklingsmiljöer Aktivitetsdiagram Ett första program

Föreläsning 1: Introduktion till kursen

SKOLFS. beslutade den XXX 2017.

Operativsystem DVG A06. Definition. Varför operativsystem? - Vad är ett operativsystem?

Vem är vem på kursen. Objektorienterad programvaruutveckling GU (DIT011) Kursbok Cay Horstmann: Big Java 3rd edition.

Poäng. Start v. Applikationsprogramm ering i Python 7.5. Antal registrerade (män/kvinnor) 50 (34/16)

Introduktionsmöte Innehåll

LABORATION 1 Pingpong och Installation av Server 2008 R2

Datavetenskapligt program, 180 högskolepoäng

Programmeringsteknik I

Datorn föds.

Introduktion till Datalogi DD1339. Föreläsning 1 8 sept 2014

SKOLFS. beslutade den -- maj 2015.

Föreläsning 1: Introduktion till kursen

Grundläggande datavetenskap 4p

Objektorienterad programmering, analys och design med Java, 5p 2D4135, vt Kursprogram

Fö 7: Operativsystem. Vad är ett operativsystem? Målsättning med operativsystem. Styr operativsystemet datorn?

Programmeringsteknik II

Programmeringsteknisk översiktskurs för yrkeshögskoleprogram

TDP001: Handhavande av datormiljö, 4 hp. Ola Leifler, Institutionen för datavetenskap

Introduktion till Unix och Linux

Tekniska system och deras funktion och uppbyggnad.

Välkomna till kursen i grundläggande programmering DVGA08, ISGA04

Objektorienterad programmering, analys och design med Java, 5p 2D4135, vt Kursprogram

Program & programmering

GIT L0003B. Databaser, en introduktion. Information inför kursstart

Studentportalen UNIX-konton (systemansvariga P4118) Lärare: Anna Eckerdal,

DATORINTRODUKTION. Laboration E ELEKTRO. UMEÅ UNIVERSITET Tillämpad fysik och elektronik Ulf Holmgren

Föreläsning 1 & 2 INTRODUKTION

GRUNDKURS I C-PROGRAMMERING

Objektorienterad Systemutveckling Period 3

Datorn från grunden. En enkel introduktion. Innehåll: Inledning 1 Vad är en dator? 2 Datorns olika delar 3 Starta datorn 5 Stänga av datorn 7

Introduktion till Linux. TDDC66 Datorsystem och programmering Föreläsning (i) Peter Dalenius Institutionen för datavetenskap

Objektorienterad programmering

Introduktion till Linux. TDDC66 Datorsystem och programmering Föreläsning 1 Peter Dalenius Institutionen för datavetenskap

Undervisningen i ämnet programmering ska ge eleverna förutsättningar att utveckla följande:

Operativsystem Lektion 1. Lärare. Schema. Kurssajten Finns på adressen. Jan Erik Moström. Set Norman

Introduktionsföreläsning

Universitetet i Linköping Institutionen för datavetenskap Anders Haraldsson

Introduktion till MySQL

Realtidssystem HT03. Vad är realtidssystem? Inbyggda system. Att programmera, Tasks (Uppgifter) Realtidssystem kräver analys

Välkomna! Utveckling och drift av mjukvarusystem. Webbprogrammerare. #wplnu #udmlnu.

DD1311 Programmeringsteknik för S1 Laborationer läsåret

Design och konstruktion av grafiska gränssnitt

Introduktion till programmering D0009E. Föreläsning 1: Programmets väg

Föreläsning 17 UTBLICK: FORTSÄTTNINGSKURSER I DATAVETENSKAP + ANDROID

729G75: Programmering och algoritmiskt tänkande. Tema 1. Föreläsning 1 Jody Foo

Programmeringsteknisk översiktskurs för yrkeshögskoleprogram

Programmering, grundkurs, 8.0 hp, Elektro, KTH, hösten Programmering: att instruera en maskin att utföra en uppgift, kräver olika språk:

Utbildningsplan för Datavetenskapligt program, 180 högskolepoäng

Du kan även lyssna på sidorna i läroboken: Teknik direkt s Lyssna gör du på inläsningstjänst.

Poäng. Start v. DV1: Datavetenskapens byggstenar 7.5. Antal registrerade (män/kvinnor) 38 (38/0)

Datavetenskapligt program, 180 högskolepoäng

GPT The bitter end. Förra veckan: Rekursiva funktioner som läggs in externa filer har stor räckvidd

UNIX Introduktion UNIX. Datorerfarenhet. Vad menar man med operativsystem

IF1611 Ingenjörsmetodik (Engineering Fundamentals)

Datastrukturer och algoritmer. Föreläsning 15 Inför tentamen

Transkript:

Programmeringsteknisk översiktskurs för yrkeshögskoleprogram Föreläsning 1 Våren 2006! Introduktion till kursen! En dators delar! Vad är ett program? Innehåll " Hur fungerar ett program när det körs! Programvaruutvecklingens olika delar, från specifikation till underhåll.! Introduktion till Visual Basic-miljön! Läsanvisningar: Kapitel 1-2 F1 2 Inblandade personer! Föreläsare " Oscar Appelgren (kursansvarig, oscara@cs.umu.se, B423)! Handledare " Oscar Appelgren " Erik Andersson (ean@cs.umu.se, NAdv103) " Erik Schlyter (schlyter@cs.umu.se, NAdv102) Institutionen för datavetenskap! 2 + 2 utbildningsprogram Datavetenskap Teknisk datavetenskap! Forskning inom många olika ämnen Teknisk-vetenskapliga o parallella beräkningar Medicinsk informatik Kognitionsvetenskap! Flera forskningscentra Kognitionsvetenskap Interaktion och design Programvaruteknik Teoretisk datalogi MDI Emergenta System HPC2N VR-Lab UCIT F1 3 F1 4 Datorsupport på datavetenskap! Vid problem försök lösa själv eller med kamrat.! Om inte det går, kontakta support.! Support sitter i MB439, MIT-huset 4:e våningen, skylt i taket.! Skicka mail till support@cs.umu.se (eller ring 786 9950) " information om datorns namn, labsal, problem, vem du är! Se även http://support.cs.umu.se/ Studentexpeditionen! Passerkort! Betalning för utskrifter! Försäljning av kompendier! Utlämning av tentor! Utskrift av studieintyg, registreringsintyg...! Registrering! Anmälan till tentamen (via webben!)! Yvonne Löwstedt (studentexp@cs.umu.se, 5598) F1 5 F1 6

Studievägledare! Allmän studievägledning " Kurser på datavetenskap " Intyg " Registrering " Speciella behov! Peter Stenberg, peter@cs.umu.se, 786 69 85 Datorlab! MA316/326/336 (MIT-huset plan 3) " Reserverad för kursen alla förmiddagar 8-12 µ alltid tillgängliga via kort! µ finns det lediga datorer så utnyttja dem! µ Under bokad tid får ni be andra studenter som inte hör till kursen att flytta på sig. µ Lunchen är alltid obokad! µ Ni blir automatiskt utloggad efter 40 minuter och datorn låser sig efter 10. µ Glöm inte att ALLTID låsa datorn om ni lämnar den.! Handledning " I labben µ Alla lablektioner/ou µ Andra schemalagda tider " Via mail F1 7 F1 8! Kortaccess Administration av användare " Ni som inte har passerkort, kontakta studentexp.! Personer som inte haft en datoranvändare (xxxxyyy@cs.umu.se) på datavetenskap tidigare: " Jag har en lapp med ert nya användarnamn och tillfälligt lösenord " Fyll i vit blankett och lämna till mig Kursens mål! Målet med kursen är att den studerande skall förvärva grundläggande förståelse för/om " hur datorer är uppbyggda och fungerar. " hur man skriver enklare program och insikter i vad som händer när programmet kompileras och exekveras. " vad ett operativsystem är och vilka olika slags operativsystem som är vanliga " grunderna i datorkommunikation, hur information skickas mellan datorer och förståelse för vissa säkerhetsaspekter som exempelvis virus.! Dessutom innehåller kursen en översikt över olika programspråk och familjer av programspråk samt en introduktion till hur databaser fungerar. F1 9 F1 10 Kursens upplägg! Föreläsningar (17 st)! Lektioner i lab (4 st)! Gruppövningar (3 st)! Individuell handledning (i princip alla förmiddagar)! Examination " Labbdel: 4 obligatoriska uppgifter = 3p µ En utförs i grupp och tre ska lämnas in enskilt µ Läs Hederskodex och Riktlinjer för labgenomförande! " Teoretisk del: Skriftlig tentamen, 6 timmar = 2p µ OBS! Tentamen 1 går 9-15 den 18/3 F1 11 Obligatoriska uppgifter! Ordinarie sista redovisningsdag står på varje uppgifts webbsida. " Uppgiften bedöms med G, K, O eller U! Kompletteringsdag innebär att studenten ges 5 arbetsdagar att komplettera med det som saknas om man fått O. Dessa 5 arbetsdagar beräknas från den dag då studenten getts tillfälle att hämta uppgiften. " Kompletteringen resulterar i G eller U.! Om man inte är klar med alla 4 OU måste man komplettera vid ett uppsamlingstillfälle (augusti). " Måste göra om alla uppgifter " Kan vara nya uppgifter F1 12

Kursmaterial! Jonsson, Torsten, Visual Basic i focus, Studentlitteratur ISBN: 9144042523, 2003, 442 sidor! Föreläsningsunderlag (finns på websidan)! Ev. ytterligare material som delas ut under kursen Kursutvärdering! Utvärderingen görs via www i slutet av kursen.! Sammanfattningen görs av en kursutvärderingsamanuens.! Alltid viktigt med era synpunkter! Hemsidan: http://www.cs.umu.se/kurser/tdba75/vt05 Mail: Mycket information skickas via mail. Läs dina cs-mail minst en gång om dagen! F1 13 F1 14! Lablektionerna Gruppindelningar " Lablektion 2 = OU2 måste ske i två grupper, en på måndag och en på tisdag förmiddag.! Gruppövningarna " 2 grupper, samma som under lablektion 2. Registrering till tentamen! Man måste anmäla sig för att få skriva tentamen i datavetenskap " Man går till sidan https://www.cs.umu.se/information/tenta/ och fyller i sin användare och lösenord. " Sen letar man reda på rätt kurs (kurskod TDBA75) och registrerar sig. " Man måste anmäla sig senast 10 dagar innan tentan ges, på denna kurs absolut senast tisdag 7 mars. F1 15 F1 16 Vad är en dator?! En dator består av hårdvara och mjukvara.! Hårdvaran består av " CPU central processing unit µ Den del av datorn som utför beräkningar/instruktioner " In- och utdataenheter µ Tangentbord, mus, bildskärm etc µ Den del som gör det enklare för en människa att interagera med datorn " Lagringsenheter µ Korttidsminne, håller det data som CPUn arbetar med just nu. Datat försvinner om strömmen slås av, snabb åtkomst. Ex: RAM, cache µ Långtidsminne,datat finns kvar även om strömmen slås av, långsammare åtkomst. Ex: Hårddisk, CD, diskett, DVD etc, F1 17 Vad är en dator? forts! Ett datorsystem består av en dator, externa enheter och mjukvara.! En dator är en enhet som tar input/indata, bearbetar data, lagrar data och producerar output/utdata.! Input är informationen som kommer in till en dator, det kan vara " Ord och symboler i ett dokument, siffror för en beräkning, bilder! Output/utdata från en dator kan vara " Textfiler, musik, bilder, grafer F1 18

Vad är en dator? forts! Mjukvara kan klassifieras på många sätt, ett sätt är: " Operativsystem, den grundläggande programvaran som fungerar som en tolk mellan människan och maskinen. µ Har ett användargränssnitt (User interface) som kan vara grafiskt (GUI) eller textbaserat. µ Hanterar systemresurser som internminne och CPU bestämmer när program får köras och hur hårdvaruenheter pratar med varandra " Applikationer, all annan programvara som inte är operativsystem µ ordbehandlare, mailläsare, webbrowsers, spel, kompilatorer, µ alla applikationer har ett eget gränssnitt som sköter interaktionen med användaren Olika sätt att få hjälp med mjukvara! Meddelanden, " om det kommer upp en ruta på skärmen, läs meddelandet!! Manualen, " innehåller ofta både en kort komma-igång-beskrivning och mer detaljer! Hjälpmenyn, " här finns ofta (delar av) manualen i datorformat, sökfunktioner för att hitta information etc! interaktiv hjälpmeny " kan ibland komma med egna tips och råd utifrån det du gör F1 19 F1 20 Bits och bytes! En bit (b) är ett binärt tal antingen 0 eller 1! En byte (B) består av 8 bits tex 0010 0100! Kilo- betyder tusen, Mega- betyder miljon, Gigabetyder miljard! Kilobit (Kb) är 1,024 bits! Kilobyte (KB) är 1, 024 bytes! Megabyte (MB) är 1,048,576 bytes! Gigabyte (GB) är 1,073,741,824 bytes F1 21 Kort historik! ca 1200-talet Abacus en manuell miniräknare! 1600-talet mekaniska miniräknare " tex 1642 The Pascaline, räknare som kunde de enklaste räknesätten! 1822 The Difference Engine av Charles Babbage " den första datorn (hade minne, processor, in- och utenheter samt program (i form av hålkort!) " Ada Augusta var den som skrev ned Charles Babbages arbete och brukar räknas som den första programmeraren! 1946: ENIAC en av de första datorerna (30 ton!)! 1975, den första persondatorn Apple I! 1981, IBM PC! 1984, Apple Macintosh! 1992 blev WWW ett begrepp (Internet uppfanns redan på 60- talet) F1 22 Kan en dator lösa alla typer av problem?! Problemet måste gå att beskriva för datorn. " Man måste kunna skriva en algoritm.! Vissa problem kan inte lösas inom ändlig tid. " Satser som varken kan bevisas eller motbevisas! Vissa problem kan inte lösas exakt. " Numeriska problem Hur löser man problem med hjälp av en dator?! Förstå problemet Problemspecifikation! Utveckla en algoritm Problemlösning! Implementera algoritmen.! Testa och debugga programmet.! Dokumentera och underhålla programmet F1 23 F1 24

Problemspecifikation! Vilket är problemet som ska lösas?! Finns det något tvetydigt med uppgiften?! Samla in så mycket information som möjligt.! Strukturera information i indata, utdata och omgivning.! Skriv ned tankegångarna! Tänk ut kritiska situationer för senare testning Problemlösning! När man formulerar en lösning på ett problem så skapar man en algoritm.! Algoritm är en plan, en metod att utföra något. Krav på en algoritm: " Ändlighet " Bestämdhet " Indata " Utdata " Effektivitet! Man ska kunna följa algoritmen oavsett vilket programspråk man använder sig av.! Testa algoritmen! Försök hitta liknande problem och se hur de har lösts F1 25 F1 26 Implementation! Välj ett lämpligt programmeringsspråk att använda.! Kriterier: " Egna kunskaper " Problemets natur " Lösningens natur " Tillgången Vad är ett datorprogram?! Instruktioner som talar om hur ett problem ska lösas.! Måste skrivas i ett speciellt språk - programspråk.! Maskinkod eller lågnivåspråk " Lätt att förstå för datorn. " Lämpligt för maskinnära tillämpningar. " Ofta snabbare exekvering (körning).! Högninvåspråk " Lätt att förstå för människan. " Måste oftast kompileras till maskinkod för att datorn ska kunna köra programmet. " Lämpligt för mer komplicerade algoritmer F1 27 F1 28 Testning! Testa delarna allt eftersom de blir klara.! Fungerar programmet som det ska?! Validering - Löser programmet den uppgift som specades? Underhåll &dokumentation! Krav och andra förhållanden kan förändras.! Sammanställ all information som de övriga punkterna gett.! Dokumentationen bör innehålla: " Inledning " Problemspecifikation " Systembeskrivning " Algoritmbeskrivning " Användarbeskrivning " Förslag på förändringar och förbättringar. F1 29 F1 30

67% Programmerandet är en liten del i processen! 6% 1% 6% 5% 7% 8% Analys Planering Design Kodning Testning Integration Underhåll F1 31 Visual Basic-miljön! Visual Basic skapades av Microsoft och bygger på språket Basic " Beginner s All-purpose Symbolic Instruction Code. 1964 " MS Basic 2.0 1975 " Visual Basic 1.0 1991 " Visual Basic 6.0 1998 " Visual Basic.NET 2000! Visual Basic används för att enkelt bygga applikationer med en grafisk användaryta under Windows.! Vi kommer att använda Visual Basic 6 och det finns installerat i datorsalarna.! Visual Basic.NET är den senaste utvecklingen av Basic " Objektorienterat fullt ut och har mer stöd för nätverksapplikationer " http://msdn.microsoft.com/vbasic/ F1 32 Visual Basic-miljön! När man programmerar så ritar man först upp användarytan och bestämmer sedan vad som ska hända när användaren t.ex. trycker på en knapp.! Man får mycket gratis " I andra språk måste man själv skriva programkod för att rita upp knappar och placera dem på rätt ställe etc. " Man får automatiskt ett program som ser ut som alla andra och det finns stöd för kommunikation mellan olika slags program. F1 33