Mjukstart i programmering

Relevanta dokument
Funktioner. TDDD64 Programmering i Python Föreläsning 7. Peter Dalenius Institutionen för datavetenskap

Program & programmering

Introduktion till programmering

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

Föreläsning 2. Operativsystem och programmering

Introduktion till programmering

Introduktion till programmering och Python Grundkurs i programmering med Python

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

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

Introduktion till programmering

Forest Berry Int. AB, Kaggestorp Gård, HJO Telefon Fax

Imperativ programmering

Grundkurs i programmering - intro

OOP Objekt-orienterad programmering

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

Föreläsning 2 Programmeringsteknik och C DD1316. Mikael Djurfeldt

Imperativ programmering. Föreläsning 2

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

Boken?!?! Vad är ett program? Kompilerande-Interpreterande Programmeringsmiljö Hello World! Att programmera och ett enkelt program Variabler printf

Programmering och begrepp

Programmering för alla!

Deklarativ programmering

Glutenfri kladdkaka med dulce de leche

Programmering för alla!

Imperativ och Funktionell Programmering i Python #TDDD73

Funktioner. TDDD73 Funktionell och imperativ programmering i Python Föreläsning 8. Peter Dalenius Institutionen för datavetenskap

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

Lär dig programmera! Prova på programmering med enkla exempel! Björn Regnell

Föreläsning 2 Programmeringsteknik och C DD1316. Programmering. Programspråk

Programmering I Tobias Wrigstad fredag, 2009 augusti 28

Föreläsning 2 Programmeringsteknik DD1310. Programmering. Programspråk

Dela, koda och korrigera! Undervisningsmaterial inom digital kompetens

Programmering och begrepp

Introduktion till programmering. Programspråk och paradigmer

JAVAUTVECKLING LEKTION 1

IT OCH PROGRAMMERING I SKOLAN. Jan Erik Moström Peter Vinnervik

Mördeg. 100 g Strösocker. 100 g Smör g Vetemjöl. 600 g Ägg. Kör ihop socker, smör och ägg. Tillsätt mjölet och sätt degen på kyl.

Crêpes, Pajer. Fridrik Andersen

PROGRAMMERING ÅK 9 INTRODUKTION

Introduktion till programmering, hösten 2011

Programmering i C++ En manual för kursen Datavetenskaplig introduktionskurs 5p

Feriepraktik Bakelser

TDDD78, TDDE30, 729A Introduktion till Java -- för Pythonprogrammerare

Program. Kapitel make Program Interpreterande och kompilerande program

ÄKTA MATGLÄDJE PREMIUM- KASSEN

Föreläsning 2 Programmeringsteknik DD1310. Programmering. Programspråk

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

Bullbak för fika i bersån

Blanda fyllningen. Mjukgör smöret i mikro. Häll i flor- och vaniljsocker och vispa ihop med elvisp.

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

Att komma igång. Föreläsning 1

5 populära matpajer. Gör en enkel lunchpaj och njut med en fräsch sallad till. Foto: Ulf Svensson

ÄKTA MATGLÄDJE PREMIUM- KASSEN

Funktionell programmering

Programmering från början

Programmering med Java. Grunderna. Programspråket Java. Programmering med Java. Källkodsexempel. Java API-exempel In- och utmatning.

Fruktsallad. Ingredienser: 1 äpple. 10 vindruvor. 1 banan. ½ apelsin. ½ dl krossad ananas. Gör så här: 1. Skölj och skär äpplet i tärningar.

Att komma igång. Föreläsning 1

ITK:P1 Föreläsning 1. Programmering. Programmeringsspråket Java. Stark typning Explicit typning Strukturerat Hög säkerhet

BON APPÉTIT! Enkla rätter på franska.

Föreläsning 2 Programmeringsteknik och Matlab DD1312. Programspråk. Utskrift på skärmen

Imperativ och Funktionell Programmering i Python #TDDD73. Fredrik Heintz,

TDP002 Imperativ programmering

Grova bröd. Grova limpor, 2 st. Grova skållade bullar, 20 st. Bröd med solrosfrön. Dietistverksamheten. Skållning: Efter skållningen:

LANDSBYGDSENHETEN. Det goda kaffebrödet. 18 och 25 november Receptsamling. Recept: Birgitta Rasmusson

Deklarativ programmering

Hallands kulturhistoriska museum

Alla datorprogram har en sak gemensam; alla processerar indata för att producera något slags resultat, utdata.

Innehålls förteckning

Surprise Middag Avec Lönkan,

Janssons frestelse 1 burk (150 g) skinn- och benfri ansjovis 8 medelstora kokta potatisar 2 gula lökar 2 ½ msk margarin 2 dl grädde 1 ½ msk skorpmjöl

150 RECEPT FRÅN NESTLÉ

Grundläggande programmering DVG A08 & ISG A04. Allmän information. Å vem är jag då. Karlstads Universitet, Johan Öfverberg 1

LUGNETS FÖRSKOLA LUGNETS FÖRSKOLA

TDDD78, TDDE30, 729A Introduktion till Java -- för Pythonprogrammerare

Hur man programmerar. TDDC66 Datorsystem och programmering Föreläsning 3. Peter Dalenius Institutionen för datavetenskap

1 litet paket digestivkex och 4-5 pepparkakor smulas tillsammans. ca 100 gr smält margarin 3 msk socker Blanda ihop detta och tryck ut på en bricka

VECKANS MENY. 2 pers. Vecka 49. Måltid 1. Ugnsbakad sk med vitlökssmör. Måltid 2. Tacopaj. Måltid 3. Kyckling & bacon pasta.

Datorsystem och programmering

Föreläsning 2 Programmeringsteknik och Matlab DD1312. Programspråk. Utskrift på skärmen

baka med mcvitie s smarriga recept som är enkla att göra!

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

Eclipse. Avsikt. Nu ska ett fönster liknande figuren till höger synas.

Kompilering och exekvering. Föreläsning 1 Objektorienterad programmering DD1332. En kompilerbar och körbar java-kod. Kompilering och exekvering

Metoder, planering, organisera, hygien, rengöring, redskap mm

ÄKTA MATGLÄDJE LCHF- KASSEN

Har du koll på dagarna?

DET SÖTA ASIEN. matcha, bovete, tapioka och sesam

Föreläsning 2 Programmeringsteknik och C DD1316

ICA REKLAM SOLNA Mellanmålet. 15 enkla och smarriga mellanmålsrecept för alla åldrar.

Objektorienterad programmering i Java

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

Vårmeny. Lördagen den 13 mars 2004.

Ingredienserna i våra recept är i första hand ekologiska råvaror med lokala producenter som leverantörer. Aioli på palsternacka 10 portioner

Objektorienterad Programmering (TDDC77)

Föreläsning 3. Programmering, C och programmeringsmiljö

729G74 IT och programmering, grundkurs. Tema 1, Föreläsning 2 Jody Foo,

TDP002 - Imperativ programmering

Recept på Matskolan i Ingå juni 2012

Översikt. Stegvis förfining. Stegvis förfining. Dekomposition. Algoritmer. Metod för att skapa ett program från ett analyserat problem

Transkript:

Mjukstart i programmering För intresserade och datorvana nybörjare TDDE23 Funktionell och imperativ programmering, del 1 Föreläsning 2 Peter Dalenius Institutionen för datavetenskap

2 Översikt 1. Vad är program? 2. Hur skapar man program? 3. Hur kan man lära sig programmera?

3 1. Vad är program? en uppsättning regler eller instruktioner med uppgift att styra en dators beräkningar (Nationalencyklopedin) en serie instruktioner som styr en dator, och beskriver de operationer som datorn ska utföra, då programmet körs (Wikipedia) arbetsinstruktion för en dator (Norstedts svenska ordbok) data i form av instruktioner som en dator kan tolka och utföra (exekvera) (Svenska datatermgruppen)

instruktioner 4 råvaror genomförande bagare resultat Detta behövs: 125 g smör eller margarin 3 dl vetemjöl 1 dl socker 1/2-1 tsk kanel 3-4 dl skivat eller tärnat äpple Gör så här: Sätt ugnen på 225 grader. Blanda vetemjöl och socker i en bunke. Dela smöret eller margarinet i tärningar och finfördela det i blandningen tills det bildar en smulig deg. Smöra en pajform med 24 centimeter i diameter. Lägg i skivat eller tärnat äpple, strö över kanel och sockra lite lätt. Fördela sedan smuldegen över äppelbitarna och grädda i cirka 20 minuter tills pajen fått fin färg. Källa: www.smulpaj.se

program 5 indata exekvering dator utdata

Programhanteraren från Microsoft Windows for Workgroups 3.11 (1993) Startmenyn i Java Desktop System (2014) 6

7 webbtjänster appar inbyggda system

8 2. Hur skapar man program? idé?

9

Kompilerade program 10 idé Källkod def f(n): if f == 0: return 1 else: return n*f(n-1) Maskinkod 01: istore_1 02: iload_1 03: sipush 03e8 06: if_cmpge 2c 09: iconst_2 0a: istore_2 0b: iload_2 0c: iload_1 0d: if_cmpge 1f Konstrueras av människor Översätts av en kompilator Exekveras på en dator

http://xkcd.com/303/ 11

Interpreterade program 12 Källkod idé def f(n): if f == 0: return 1 else: return n*f(n-1) Konstrueras av människor Tolkas av en interpretator som exekveras på en dator

3. Hur kan man lära sig programmera? 13 Maskinkod idé Källkod def f(n): if f == 0: return 1 else: return n*f(n-1) 01: istore_1 02: iload_1 03: sipush 03e8 06: if_cmpge 2c 09: iconst_2 0a: istore_2 0b: iload_2 0c: iload_1 0d: if_cmpge 1f Konstrueras av människor Översätts av en kompilator Exekveras på en dator

Hur är programspråk konstruerade? Hur fungerar en dator? Maskinkod 14 Vad är ett bra program? idé Hur ska man tänka när man programmerar? Källkod def f(n): if f == 0: return 1 else: return n*f(n-1) 01: istore_1 02: iload_1 03: sipush 03e8 06: if_cmpge 2c 09: iconst_2 0a: istore_2 0b: iload_2 0c: iload_1 0d: if_cmpge 1f Konstrueras Översätts av av människor en kompilator Hur funkar våra programmeringsverktyg? Exekveras på en dator

Hur lär man sig? 15

16 Vad är lärande? A process which takes place within the organism and is inferred from specified changes taking place in the organism's behavior J. F. Hall (1966) The Psychology of Learning Acquiring new, or modifying existing, knowledge, behaviors, skills, values, or preferences Wikipedia (2012) Att få förmågan att erfara världen på särskilda sätt F. Marton & S. Booth (1997) Om lärande

17 Vad händer när man lär sig? kunskap kunskap tid tid

18 Vilka erfarenheter av lärande har du? Vad har du lärt dig? Hur gick det till? Finns det något som du kan lite bättre än folk i allmänhet? Tennis Köra bil Tala franska Schack

19 Vad betyder detta för dig? Osäkerhet är en naturlig del av lärandet som man måste lära sig hantera. Bygg upp ett realistisk självförtroende genom att bli bättre på att bedöma dig själv. Alla hantverk, som programmering, kräver mängdträning.

20 Peter Norvig, forskningschef på Google Bli intresserad av programmering, så att du orkar lägga ner 10000 timmar på träning. Skriv många olika program. Prata med andra programmerare och läs deras kod. Om du vill, läs på universitet. Arbeta i projekt tillsammans med andra programmerare. Ta över projekt efter andra programmerare. Lär dig åtminstone ett halvt dussin olika programmeringsspråk. Peter Norvig (2001) Teach Yourself Programming in Ten Years. http://norvig.com/21-days.html

Bildkällor: http://commons.wikimedia.org/wiki/file:apple_pie.jpg http://commons.wikimedia.org/wiki/file:scroll_switch_mouse.jpg http://en.wikipedia.org/wiki/file:ibm_pc_5150.jpg http://en.wikipedia.org/wiki/file:program_manager.png http://commons.wikimedia.org/wiki/file:wikimedia_commons_android_app_-_share_single_image_screen_(filled_in).png http://commons.wikimedia.org/wiki/file:2003-2006_volvo_xc90_(p28)_2.5_t_wagon_(2011-11-18)_01.jpg http://9gag.com/gag/ad66k99 http://commons.wikimedia.org/wiki/file:acorn_6502_2nd_processor_circuit_board.jpg http://commons.wikimedia.org/wiki/file:tehnika1.png http://commons.wikimedia.org/wiki/file:gluehlampe_01_kmj.jpg http://en.wikipedia.org/wiki/file:france_in_xxi_century._school.jpg http://commons.wikimedia.org/wiki/file:all_gizah_pyramids.jpg http://commons.wikimedia.org/wiki/file:amazona_pretrei_-rio_grande_do_sul_-brazil-8e-2c.jpg http://commons.wikimedia.org/wiki/file:dashboard_volvo_v60.jpg?uselang=sv http://commons.wikimedia.org/wiki/file:eiffel_trocadero_i.jpg http://commons.wikimedia.org/wiki/file:nadal_australian_open_2009_5.jpg http://commons.wikimedia.org/wiki/file:checkmate.jpg http://commons.wikimedia.org/wiki/file:frustrated_man_at_a_desk.jpg www.liu.se http://commons.wikimedia.org/wiki/file:rafa_celebrates.jpg http://commons.wikimedia.org/wiki/file:wood_carving,_laos.jpg