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

Relevanta dokument
Programmeringsteknisk översiktskurs för yrkeshögskoleprogram

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

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)

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

PROGRAMMERING. Ämnets syfte. Kurser i ämnet

Datorsystem och programmering

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

TDDC77 Objektorienterad Programmering

PROGRAMMERING. Ämnets syfte. Kurser i ämnet

Programmeringsteknisk översiktskurs för yrkeshögskoleprogram

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

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

PROGRAMMERING. Ämnets syfte. Kurser i ämnet

Objektorienterad Programmering (TDDC77)

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

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

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

Introduktion till programmering

Programmering för alla!

ENKEL Programmering 3

Programmering för alla!

Introduktion till programmering och Python Grundkurs i programmering med Python

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

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

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

PROGRAMMERING. Ämnets syfte. Kurser i ämnet

Programmeringsteknisk översiktskurs för yrkeshögskoleprogram

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

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

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

Föreläsning 2. Operativsystem och programmering

Innehåll. Programmeringsteknisk översiktskurs för yrkeshögskoleprogram. Operativsystem. Vad är/gör en processor? Klockhastighet

Föreläsning 1: Introduktion till kursen

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

Programmeringsteknik I

Föreläsning 1 & 2 INTRODUKTION

Innehåll. Inblandade personer. ÿkurspresentation Inblandade personer Administration Målsättning Förkunskaper Kursutvärdering Upplägg Översikt

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

SKOLFS. beslutade den XXX 2017.

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

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

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

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

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

SKOLFS. beslutade den -- maj 2015.

Grundläggande datavetenskap 4p

Föreläsning 1: Introduktion till kursen

Föreläsning 1 & 2 INTRODUKTION

Kursinformation Grundkurs i programmering med Python

Programmeringsteknik II

Föreläsning 1: Introduktion till kursen

LABORATION 1 Pingpong och Installation av Server 2008 R2

Datavetenskapligt program, 180 högskolepoäng

Program & programmering

Introduktionsmöte Innehåll

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

Introduktionsföreläsning

Datorsystemteknik DAV A14 Föreläsning 1

Introduktion till programmering, hösten 2011

Tekniska system och deras funktion och uppbyggnad.

HF0010. Introduktionskurs i datateknik 1,5 hp

Introduktion till Unix och Linux

Objektorienterad Systemutveckling Period 3

Objektorienterad programmering

Din manual F-SECURE PSB AND SERVER SECURITY

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

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

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

Datorn föds.

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

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

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

UNIX Introduktion UNIX. Datorerfarenhet. Vad menar man med operativsystem

Introduktionskurs i datavetenskap, 3p.

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

Värdefulla verktyg under studietiden. Informationspass för nya studenter 4 september 2018

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

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

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

Välkomna till DIT012 IPGO

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

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

Syfte. Praktisk datorkunskap. Personal. Kursinfo. Examination- Krav för godkänt. Agenda idag DVG A06

OOP Objekt-orienterad programmering

Datavetenskapligt program, 180 högskolepoäng

Välkomna till DIT012 IPGO. Tyvärr en bug i Google Docs: Sidnummer stämmer inte alltid. Alla anteckningar börjar på sidan 1.

IT för personligt arbete F5

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

IF1611 Ingenjörsmetodik (Engineering Fundamentals)

Testning av applikationer

Uppgift (poäng) 1 (2) 2 (3) 3 (4) 4 (4) 5 (3) 6 (4) 7 (6) 8 (6) 9 (8) Summa

Kognition TEK210 (4,5 hp)

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

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

Transkript:

Programmeringsteknisk översiktskurs för yrkeshögskoleprogram Föreläsning 1 Våren 2005 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 Lena Kallin Westin 2005 2 Inblandade personer Föreläsare Lena Kallin Westin (kursansvarig) Handledare Lena Kallin Westin Daniel Strand Sandra Taha Institutionen för datavetenskap 2 + 2 utbildningsprogram Datavetenskap Teknisk datavetenskap C:a 80 anställda (5 professorer) Kognitionsvetenskap Interaktion och design Forskning inom många olika ämnen Teknisk-vetenskapliga o Programvaruteknik parallella beräkningar Teoretisk datalogi Medicinsk informatik MDI Kognitionsvetenskap... Flera forskningscentra HPC2N VR-Lab Interactive Institute F1 Lena Kallin Westin 2005 3 F1 Lena Kallin Westin 2005 4 Datorsupport på datavetenskap Slut papper i skrivaren Häftklammer i häftapparaten Glömt lösenordet Dator trasig Glappt tangentbord Smutsiga skärmar (rengöringsmedel finns på plan 4) 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 Lena Kallin Westin 2005 5 F1 Lena Kallin Westin 2005 6

Studievägledare Allmän studievägledning CSN Kurser på datavetenskap Intyg Registrering Speciella behov Peter Stenberg, peter@cs.umu.se, 786 69 85 Exp. Studievägl. Lena Här sitter vi MIT-huset våning 4 Lådor för OU-inlämning Support F1 Lena Kallin Westin 2005 7 F1 Lena Kallin Westin 2005 8 mera lokaler Naturvetarhuset våning 3 Datorlab Datorlab NA310/NA320 (Naturvetarhuset plan 3) Reserverad för kursen alla förmiddagar 8-12 alltid tillgängliga via kort! finns det lediga datorer så utnyttja dem! Daniel Strand Sandra Taha Handledning (Lena, Daniel och Sandra) I labben Alla lablektioner Andra schemalagda tider Via mail F1 Lena Kallin Westin 2005 9 F1 Lena Kallin Westin 2005 10 Kortaccess Administration av användare Måste fyllas i för att få tillgång till datorsalarna Har man ett kort så fyller man i numret på det så uppgraderas det Personer som inte haft en datoranvändare (xxx@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 Om detta är första kursen på UmU: Fyll i blå blankett också. 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 Lena Kallin Westin 2005 11 F1 Lena Kallin Westin 2005 12

Kursens upplägg Obligatoriska uppgifter Föreläsningar (16 st) Lektioner i lab (4 st) Gruppövningar (3 st) Individuell handledning (i princip alla förmiddagar) Examination 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! Skriftlig tentamen, 6 timmar = 2p OBS! Tentamen 1 går 16-22 den 22/3 F1 Lena Kallin Westin 2005 13 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 Lena Kallin Westin 2005 14 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 Hemsidan: http://www.cs.umu.se/kurser/tdba75/vt05 Kursutvärdering Finns ingen gammal utvärdering att prata om eftersom kursen är ny Utvärderingen görs via www i slutet av kursen. Sammanfattningen görs av en kursutvärderingsamanuens. Extra viktigt med era synpunkter eftersom det är första gången kursen ges! Mail: Mycket information skickas via mail. Läs dina cs-mail minst en gång om dagen! F1 Lena Kallin Westin 2005 15 F1 Lena Kallin Westin 2005 16 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 fredag 11 mars. F1 Lena Kallin Westin 2005 17 F1 Lena Kallin Westin 2005 18

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 RAM-minne, cache, internminne, korttidsminne, håller det data som CPUn arbetar med just nu. Datat försvinner om strömmen slås av, snabb åtkomst Hårddisk, CD, diskett, DVD etc, långtidsminne,datat finns kvar även om strömmen slås av, långsammare åtkomst. 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 Lena Kallin Westin 2005 19 F1 Lena Kallin Westin 2005 20 Vad är en dator? forts Olika sätt att få hjälp med mjukvara 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) 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 F1 Lena Kallin Westin 2005 21 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 Officemedhjälparen en interaktiv hjälpmeny, kan ibland komma med egna tips och råd utifrån det du gör F1 Lena Kallin Westin 2005 22 Bits och bytes En bit är ett binärt tal (b) antingen 0 eller 1 En byte består av 8 bits (B) 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 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!) 1977, den första persondatorn Apple I 80-talet kom nya Macintosh-datorer och IBM-PC började också bli populär 1992 blev www ett begrepp (Internet uppfanns redan på 60-talet) F1 Lena Kallin Westin 2005 23 F1 Lena Kallin Westin 2005 24

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 Lena Kallin Westin 2005 25 F1 Lena Kallin Westin 2005 26 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 F1 Lena Kallin Westin 2005 27 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 Lena Kallin Westin 2005 28 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 Lena Kallin Westin 2005 29 F1 Lena Kallin Westin 2005 30

Testning Testa delarna allt eftesom 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 Lena Kallin Westin 2005 31 F1 Lena Kallin Westin 2005 32 Programmerandet är en liten del i processen! Visual Basic-miljön 67% 6% 1% 6% 5% 7% 8% Analys Planering Design Kodning Testning Integration Underhåll 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 F1 Lena Kallin Westin 2005 33 F1 Lena Kallin Westin 2005 34 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 tex 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 Lena Kallin Westin 2005 35