Professor Guttorm Sindre Institutt for datateknikk og informasjonsvitenskap Programmering i Python.

Slides:



Advertisements
Liknende presentasjoner
Repetisjon innkapsling static tabell av primitiv datatype LC191D Videregående programmering Høgskolen i Sør-Trøndelag, Avdeling for informatikk og e-læring.
Advertisements

Teknologi i klasserommet
POWER POINT INNFØRING I BRUK AV SOM ET PRESENTASJONS VERKTØY
INFORMASJONSTEKNOLOGI
Vurdering av nettstedet ”Paper online” Et midt på treet greit nettsted om resirkulering av papir!
Høgskolen i Oslo Webprogrammering Grunnleggende PHP.
Programmering i ActionScript - hva er det, og hvordan undervise?
Introduksjon til objektorientert programmering i PHP
Kontrollstrukturer (Kapittel 3)
Foreldresamarbeid Kan vi gjøre det enda bedre ?
MATLAB En kort innføring/repetisjon SIF8001-SIF8005 Høsten 2001.
Objektorientert programmering Objektorientert systemutvikling
Introduksjon til MATLAB
Programmering av dynamiske websider i C# - hva er det, og hvordan undervise? Tom Heine Nätt.
Noen enkle studieteknikker ved innlæring av DRI-emner
Eiendomsregister - eksempel
Tema: Introduksjon Hvorfor Velocity? Installasjon Velocity VS. JSF / JSP Eksempler Oppsumering.
Generelt I/O if/else Funksjoner Lists Løkker Dictionaries Annet Listebehandling Klasser Python med noen algdat-anvendelser Åsmund Eldhuset asmunde *at*
Robotlab Avd. IT - Remmen. Robotlabben Dedikert rom i IT-bygget på Remmen Brukes mest i fagene: - Bildebehandling - Intelligente Systemer.
Kapittel 11 Rekursjon Å tenke rekursivt Rekursjon er ein programmeringsteknikk der ein metode kallar seg sjølv for å fullføre ei oppgåve For å kunne.
I dag snakker vi om: Brukergrensesnitt med kvalitet Bruksegenskaper Normans 7 stadier Testing med papirprototyp.
En beskrivelse av IKT i skolen Sett fra en lærers ståsted
Java sertifisering - testern tester test
Flash og ActionScript - Nye muligheter Jostein Nordengen.
Flash og ActionScript - eksempler og oppgaver
Programmering i ActionScript - hva er det, og hvordan undervise?
Trenger vi IT-faget i den videregående skolen i Norge
Hjelp! Jeg skal undervise i IT 2!
INF 295 Algoritmer og datastrukturer Forelesning 1 - kapittel 1 Introduksjon Hans F. Nordhaug (Ola Bø) (Ketil Danielsen, 2007)
INF 295 Algoritmer og datastrukturer Forelesning 6 ADT Lister, Stakker og Køer Hans Fr. Nordhaug (Ola Bø)
Dynamiske nettsider PHP Del 2 – Kontrollstrukturer.
Dynamiske nettsider PHP Del 1 – variable. PHP  PHP (Personal Home Page)  Fritt tilgjengelig programmeringsspråk  åpen kildekode  Plattformuavhengig.
VI LAGER EN PLATEBUTIKK
Studentliv - Kurs i PR og markedsføring - Modul 10 1 Arbeid på PC Fortrolighet i arbeidet med PC Skikk og bruk IT-kontrakten Spørsmål?
Å lese tall fra en fil, klassen Scanner 1.Et Scanner-objekt kan knyttes til et strømobjekt eller til en streng. 2.Kan skanne teksten etter data av ulike.
Jæger: Robuste og sikre systemer INF150 Programmering mandag 18.9 Lesing av data fra fil og skriving av data til fil. Side 411 – 4.. Kap 4.
Programmering sif8005. Praktisk informasjon  Innleveringsfrist øvinger: mandag kl  Alle øvinger er obligatoriske  Studass tilgjengelig 6 timer.
Ungomsskoleelever som instruktører i programmering: La ungdommen undervise kidsa! Torbjørn Skauli.
7. Typography, Readability & Legibility Lesbarhet.
11. Balancing technology with people’s needs Bruk av teknologi.
Digitalt prosjektrom og samarbeidsteknologi Muligheter for meningsskaping og relevans i et «kombinert klasserom» Jorunn Thortveit og Hans Erik Bugge IGIS.
Utvikling av tegneverktøy for Generalized Sketches Student: Ørjan Hatland Veiledere: Yngve Lamo, Høgskolen i Bergen Uwe Wolter, Universitetet i Bergen.
Object  Klassen i java  Alle klasser arver fra denne om ikke noe annet blir spesifisert  ArrayList.add(Object instans)  Alle elementer formes til Object.
JavaFX i kodeklubben Apps i Java. Programmering og programmeringsspråk Alle programmeringsspråk er egentlig like... men alt som følger med språket (verktøy,
BLOOMS Bygdøy 24.sept-08. Begreper i vurdering 1.Kompetanse det man gjør og får til i møte med utfordringer 2. Kompetansemål angir hva elevene skal kunne.
Velkommen til foreldremøte 7/ rød. Klasse 3 rød 22 elever, 13 jenter og 9 gutter Sosialt miljø: En godt sammensveiset gjeng Inkluderende klassemiljø.
 Utfordringer skoleåret 2014/ Flere elever enn tidligere allerede i systemet (BUP, psykisk helsesøster, UPA ) - Økende tendens med selvskading –
VURDERING Forskrift til Opplæringsloven, § 3
Erfaringer fra koding i teknologi i praksis. Bakgrunn Kjører koding i 50 % av valgfaget Teknologi i praksis Passer ganske greit inn i læreplanen Varierende.
Kom i gang med Python Pål Hellesnes SYSTEMUTVIKLER
NY VRI Nina og Ingvild.
Forskrift til Opplæringsloven, § 3
TDT4105 Informasjonsteknologi, grunnkurs
Multiplikasjon – Om flipped classroom-opplegget – Kompetansemål og læringsmål Denne PowerPointen vil gi deg en oversikt over dette flipped classroom- opplegget.
Øvingsforelesning i Python (TDT4110)
Noen enkle studieteknikker ved innlæring av DRI-emner
Oppsummering – DRI1001 Departementer Direktorater / tilsyn Kommuner
MinJobbCV.no PRESENTASJON FOR FIA.
PRESENTASJON FOR ARRANGØRER
Muntlig framføring Hovedmål/periodemål:
Velkommen til Newton-rommet
Elevintervju B – Samarbeid
Oppgaver som fremmer kommunikasjon B – Samarbeid
Seniornett Norge             Det glemte gullet – ingen har mer kapital og tid enn eldre, og de er på nett. Hvordan kan du utnytte dette til din fordel?
Objektorientert programmering i Java
Oppsummering – FINF1001 Departementer Direktorater / tilsyn Kommuner
Begynnerkurs i Python Realfagskonferansen 2019 Henrik H. Løvold
Velkommen til 6C Jeg er ny og noen foresatte/foreldre er ny. Kort presentasjon om hvem vi foreldre/foresatte til.
IN3030 – Effektiv parallellprogrammering Uke 1 2. del, våren 2019
For, While, prosedyrer m/ parametere, funskjoner
Utskrift av presentasjonen:

Professor Guttorm Sindre Institutt for datateknikk og informasjonsvitenskap Programmering i Python

2 Kjapt om meg selv Underviser IT Grunnkurs (Python) ved NTNU –En av 3 paralleller, ca. 350 studenter Språk undervist tidligere: –Java, JSP, Matlab, Pascal Også programmert i: –C, Fortran, Assembly, PL/1, SQL, Prolog, LISP, PHP, Simula, BASIC, … MEN: aldri i grunnskolen

3 Oversikt Hva er Python? Hvorfor Python? Hvordan undervise Python? Eksempler

4 Hva er Python? Tekstbasert programmeringsspråk –Flere paradigmer (prosedyre, objekt, funksjonell) Mye ligner på andre språk –I/O: tastatur, skjerm, filer –Elementære datatyper: heltall, flyttall, tekst, sannhetsverdier –Datastrukturer: lister, tupler, mengder, oppslagslister –Kontrollstrukturer: sekvens, valg, løkker, rekursjon, unntak –Abstraksjoner: funksjoner, moduler, klasser –Diverse tilleggsbibliotek: matematikk, GUI, lyd,... Fokus på lesbarhet: –Innrykk betyr noe

5 Hvorfor Python? Relevans for jobb / praksis Gratis, åpen kildekode Lav nybegynnerterskel –Lesbarhet –Lite formalitet rundt typing –Oppnå noe med få linjer kode –Liten kontekstbyrde Interaktiv modus –Kjapp utprøving Kilde: the-2015-top-ten-programming-languages

6 Hvordan undervise Python? (1) Flere pensumrekkefølger mulig… –Funksjoner før kontrollstrukturer, eller omvendt? –Strenger tidlig, eller sammen med lister? Flere opplegg i timene mulig –Prøve først, så forklare – eller omvendt? –”One size fits all” fungerer ofte dårlig Ulike valg av anvendelsesområder –Kun ett, f.eks. matematiske beregninger? –Miks av mange... (språk, tegning,...) Ingen fasitsvar, må prøve dere fram

7 Hvordan undervise Python? (2) Fint å trekke analogier til ting de kan fra før –Men pass på viktige forskjeller! Kjappe iterasjoner –Vis et problem som vi trenger å løse –Introduser et nytt konsept –La dem øve på oppgaver med dette Variasjon i ambisjonsnivå –Fra å kjøre og forstå programkode til å skrive den selv –Fra enkle one-liners til store prosjekter

8 Hvordan undervise… ? (3) Lær god programmeringspraksis –Dele opp problemet, teste ofte –Hjelp til selvhjelp: forstå feilmeldinger Crowdsourcing kan være effektivt –I vårt emne bruker vi piazza (piazza.com) for spørsmål/svar –Flinke studenter kan hjelpe de svakere –Rask responstid (pga. stort volum) Digitale ressurser kan muliggjøre fleksibilitet –NTNU sitt IT Grunnkursemne: itgk.idi.ntnu.no –Div. Videoer: På norsk: YouTube-kanalen Guttorm Sindre... Mange proffere engelskspråklige ressurser Dere kan også lage egne videoer –Screencasts krever veldig lite utstyr

9 Installering av Python Lurt å installere Tcl/Tk før Python, se råd på f.eks. – – –(mye vil virke også uten Tcl/Tk, men av og til får man kryptiske feilmeldinger uten eller med gammel versjon) Selve Python installeres fra Python.org –Ta siste versjon (3), ikke versjon 2 –Med dette følger IDLE, en editor for å skrive Python-kode –Ikke nødvendigvis den beste editoren, for store prosjekter er andre alternativer vesentlig bedre (PyCharm, LiClipse, …) –Men virker greit nok for små prosjekt, og enklest om alle elevene bruker det samme