Föreläsning 1-2: Kursinformation och introduktion till Java och programmering
|
|
- Helen Lind
- för 9 år sedan
- Visningar:
Transkript
1 Föreläsning 1-2: Kursinformation och introduktion till Java och programmering Eva Blomqvist Linköpings universitet Sweden October 14,
2 Innehåll Kursinfo Varför programmering? Vad är ett program? grundläggande begrepp Hur fungerar Java miljö och struktur Ett första programexempel i Java Eclipse en programmeringsmiljö (IDE) Vi börjar programmera Standardutmatning Variabler Enkla datatyper och operationer på dem October 14,
3 Kursinfo Eva Blomqvist Examinator, föreläsare och labbhandledare October 14,
4 Övergripande regler NI är ansvariga för att hålla er uppdaterade om vad som händer i kursen All information finns på kurshemsidan Nyheter och ändringar dyker upp som nyheter på hemsidan och i akuta fall som mail på kurslistan Kontrollera kurshemsidan minst en gång per vecka för uppdateringar! Kontrollera mail från kurslistan dagligen! Vi svarar på mail och frågor så snabbt vi kan - har ni inte fått svar på 1 vecka - skicka en påminnelse och/eller kontakta en annan lärare i kursen! October 14,
5 Kursinfo - kursöversikt Kursen har tre delar Del 1 grundläggande programmering med Java Fram till slutet av november 6 Fö + lektioner och 4 labbar deadline 6/12 (men följ gärna "veckoplan") Individuell dugga ("på papper") 3 chanser under del 1 + uppsamlingstillfälle i slutet av kursen Del 2 objektorienterad programmering + mer avancerad Javaprogrammering Fram till mitten av januari 4 Fö + lektioner och 4 labbar deadline 31/1 (men följ gärna "veckoplan") Rekommenderat att gå på föreläsning med projektinformation (december) Individuell dugga ("på papper") 3 chanser under del 2 + uppsamlingstillfälle i slutet av kursen Del 3 projektarbete December till slutet av kursen (ca v.7) Större programmeringsuppgift egen problemlösning October 14,
6 Kursinfo - Mål När kursen är slut ska ni kunna... Analysera ett problem och skapa en lösning i Java praktisk programmering Hitta de klasser i standardbiblioteket som behövs och förstå dem genom att läsa deras Javadoc Förstå och felsöka andras kod Använda Eclipse (eller motsvarande) och förstå hur Javamiljön är uppbyggd Beroende på förkunskaper kan kursen vara... Ett stort steg ni lär er programmera från grunden,...eller ett litet steg där ni friskar upp er kunskaper och utökar era praktiska färdigheter i Java-programmering. October 14,
7 Kursinfo - vad betyder de olika momenten? Föreläsning Introducerar begrepp och koncept inom programmering Visar exempel - bra att gå tillbaka till bilderna senare Endast några få riktiga "körexempel" i Eclipse nu i början Lektioner Ungefär: 1 föreläsning - 1 lektion Ni förutsätts vara bekanta med begreppen som introducerats på föreläsningen Visar "körexempel" i Eclipse som tillämpar begreppen från förläsningen Labbar Ungefär: 4-8 timmar bokad salstid per Fö+Le...men ni förutsätts lägga ner minst 10 timmar i veckan på kursen, för en del mer än så, dvs ni förutsätts jobba mycket på egen hand utöver labbar Ni löser praktiska programmeringsuppgifter i grupper om 2 studenter - OBS! "parprogrammering" Ni förutsätts vara bekanta med begreppen och exemplen från föreläsning och lektion Duggor Individuell kunskapskontroll: har ni förstått de mest grundläggande begreppen och kan läsa och förstå kod (utan att Eclipes "gör det åt er") Inte en "pluggtenta" - har ni förstått labbarna klarar ni duggan 30 minuter - skrivs på papper October 14,
8 Kursinfo - Examination 4HP = laborationer (del 1+2, duggor) + 2HP = projekt Examination genom 3 moment Labbar lämna in lösningar på labbuppgifterna Skilj på "övning" och "uppgift" - Uppgift ska lämnas in Lösningar måste vara kommenterade (i koden) Lösningar måste vara testkörda För VG måste ni lämna in lösningarna före första deadline (del 1-6/12, del 2-31/1) Komplettering möjlig (även för VG) vid två ytterligare tillfällen Duggor Två duggor måste få G på båda 3 ordinarie tillfällen per del + 1 uppsamlingstillfälle i slutet av kursen För VG på kursen måste ni få G under ordinarie tillfällen, dvs senast 5/12 resp. 30/1 Projekt Godkänd projektuppgift designdiskussion, demo av inläsning från fil, projektrapport/ kod/dokumentation och demonstration/muntlig diskussion med handledaren Två nivåer av krav: Alla grundläggande krav uppfyllda G Ytterligare krav uppfyllda VG För VG måste ni uppfylla VG-kraven samt klara av alla momenten före ordinarie projektdeadline 21/2 October 14,
9 Kursinfo - Labbar Vi använder Java 1.6 och Eclipse Helios Jobba två och två Registrera er labbgrupp i WebReg OCH ange gruppnummer + båda namnen vid varje inlämning i LISAM Samma grupper hela kursen (labbar och projekt) Välj en person som är på samma nivå! Parprogrammering = en skriver in koden i Eclipse, en sitter bredvid och hjälper till att tala om vad som ska skrivas, byt efter max 20 minuter! 4 labbar med ett antal uppgifter vardera i del 1 Bara de som heter "uppgift" måste lämnas in Övningar är valfria, men är ni nybörjare rekommenderar vi att ni göra alla övningar Välj er egen nivå och jobba i ert eget tempo kolla "veckoplan" på hemsidan för att se om ni ligger i fas Jobba gärna hemma och på egen laptop det är inte tänkt att ni ska hinna med alla uppgifter på labbtid om ni är nybörjare! Inlämning sker genom LISAM Kolla gärna med hanledaren på labben om lösningen ser rimlig ut, men handledarna har inte tid att rätta på labbtid Ladda upp en labb i taget, dvs lämna in först när ni är klara med alla uppgifter i labb 1 osv. - ladda då upp alla filer med er kod (.java) som en zip-fil Koden måste vara välkommenterad och direkt körbar annars ingen rättning October 14,
10 Kursinfo Regler och deadlines Deadlines är strikta Rättning sker (kontinuerligt) inom ca 1 vecka, före ordinarie deadline (dvs före 6/12 för del 1) Rättning av alla uppgifter som lämnats in före ordinarie deadline sker inom 2 veckor från deadline (dvs all ni lämnat in före 6/12 rättas senast 20/12) Rättning av kompletteringar sker endast direkt efter kompletteringsdedline (inom 2 veckor) - det går bra att lämna in komplettering när som, men de rättas inte förrän efter nästa kompletteringsdeadline Handledare svarar på frågor på labbtid frågor utöver labbtid ställs per e-post till ER handledare och besvaras i mån av tid. Det går även bra att boka tid med handledaren via e-post men INTE att bara dyka upp på hans/hennes kontor! Deadlines Labbar del 1 6/12 17:00 (Kompletteringar: 14/2 och 28/3) Labbar del 2 31/1 17:00 (Kompletteringar: 28/2 och 28/3) Projekt designdiskussion med handledaren senast 17/1, demonstrerat inläsning från fil senast 31/1, redovisat för handledare muntligt + rapport/kod/ dokumentation inskickad senast 21/2 17:00 (Kompletteringar innan 28/3 överenskommes med handledare) Duggor Dugga del 1 7/11 eller 21/11 eller 5/12 Dugga del 2 19/12 eller 16/1 eller 30/1 Uppsamlingstillfällen: 1st i februari för både dugga 1 och 2 October 14,
11 Kursinfo vanliga frågor? Måste jag gå på föreläsningarna? Nej, men jag rekommenderar att gå om du är ny på Java-programmering eller om det var länge sen du programmerade Gå på föreläsningen med projektinformation i december Det är jättemånga övningar måste jag göra alla? Nej, bara de som heter "uppgift" är obligatoriska. Sen väljer du själv hur mycket av övningarna du vill göra. Uppgifterna är oftast de mest avancerade, så om du är ny på programmering rekommenderar jag att göra alla övningar och även testa att köra exemplen från föreläsningar och lektioner! Min labbhandledare är inte där vem ska jag fråga? På labbtillfällena går det bra att fråga vem som helst av handledarna (normalt 1 handledare per sal) alla kanske inte är där varje tillfälle. När ni lämnar in uppgifter får ni kommentarer från ER handledare, och om ni har frågor utanför labbtid är det honom/henne ni ska maila. Jag har missat... hur kan jag ta igen det? För varje moment (labbinlämning, duggor osv) finns flera chanser kolla kurshemsidan. Tänk på att för VG måste du lämna in labbar innan ORDINARIE deadline OCH klara duggorna innan samma deadline. October 14,
12 Kursinfo - vad har hänt sen förra året? För mycket tid Något färre uppgifter i år, och några uppgifter har minskats i omfång Fokus på färre klasser i standardbiblioteket... men det är fortfarande en krävande kurs! För stort hopp mellan del 1 och 2, samt teori/praktik Lektion till varje föreläsning Allt om klasser har flyttats till del 2 - "mjukstart" i del 2? Svårt att veta vad vi övar på i labbarna och vad som är "rätt svar" Mer text i labbinstruktionen, förklarar vad ni övar på Uppgifterna organiserade i "labbar" med ett tema... men finns fortfarande många möjliga lösningar Orättvist att bara ha en chans på duggorna Infört 3 chanser per dugga under periodens gång Svårt att få hjälp och feedback på labbarna En assistent per sal Fler assistenter totalt = snabbare rättning Andra nyheter: Mer strikt parprogrammering - båda ska lära sig skriva kod October 14,
13 "Veckoplan" - del 1 (se kurshemsidan) v : Fö Le1-2: Kursinfo samt grundläggande "kom-igång", sedan: variabler, operationer, villkorssatser Labb 1 (8 timmar salstid) - bör vara inlämnad 25/10 v. 44: Fö 4 + Le 3: Arrayer och loopar Labb 2 (4 timmar salstid) - bör vara inlämnad 1/11 v. 45: Fö 5 + Le 4: Metoder Labb 3 (4 timmar salstid + ev. del av nästa veckas labbtid) - bör vara inlämnad 15/11 v : Fö 6 + Le 5: In- och utmatning, undantag Labb 4 (8 timmar salstid - den extra tid du tog för labb 3) - bör vara inlämnad 22/11 v. 48: 6 timmar salstid - reservtid för att bli klar med labbarna i del 1 October 14,
14 Varför programmering? October 14,
15 Förstå systemet För att förstå ett system måste man förstå dess beståndsdelar! De flesta system idag innehåller mjukvara... Bilar... Smarta kort... Kassan på ICA... TVn... Vitvarorna hemma i ditt kök... Och förstås de system vi oftast tänker på: mobiltelefoner, datorer, surfplattor mm. Genom att förstå principerna för programmering förstår vi dels... Hur systemet har byggts programmerarnas arbete, varför det kan finnas fel, hur omfattande arbete som krävdes etc. Och dels, varför systemet agerar som det gör (inte alltid som förväntat) och inte alltid är så "smart" som vi tror October 14,
16 Förstå systemutveckling och programmerare som yrkesgrupp För att kunna leda ett förändrings- eller utvecklingsprojekt i en organisationer måste man förstå människorna och processerna som är inblandade Systemutvecklingsprocessen är en sådan process Programmerarna är en sådan grupp av människor Hur kommunicerar vi med en programmerare? Förstå begrepp, metoder och problem. Leda bättre Bättre tidsuppskattningar Bättre kvalitetsuppskattningar Bättre möjlighet att följa upp och kontrollera processen October 14,
17 Jobba med programmering Vissa av er kommer säkert tycka (eller tycker redan) att detta är jättekul! Analys och design Systemutveckling Testning Underhåll Programmering är ett hantverk Man lär sig genom att öva, öva och öva Mer än bara lösa problemet Vad är en bra lösning? Varför? Vad finns det för alternativ? Även om ni programmerat innan finns det mycket att lära sig i den här kursen! October 14,
18 Vad är ett program? Hur fungerar Java? October 14,
19 Program som en samling instruktioner Varje program har en uppgift något som ska utföras En dator kan inte förstå hur man gör något vi måste tala om för den i detalj hur målet ska uppnås Varje steg i processen är en instruktion till datorn Instruktionerna utförs i en väldefinierad ordning Program = beskrivning av hur en uppgift ska utföras i ett språk som datorn kan tolka/utföra Programmering = att skriva sådana beskrivningar Programmeringsspråk = språket man använder för att uttrycka beskrivningen Köra/exekvera ett program = låta datorn utföra uppgiften October 14,
20 Algoritmer sekvens med instruktioner Hur ska vi lösa ett visst problem? Bryta ner problemet i smådelar = detaljerade instruktioner Ordna instruktionerna så att vi i slutänden får lösningen på hela problemet En viss sekvens av instruktioner = en algoritm Finns typiska algoritmer som kan återanvändas T ex sorteringsalgoritmer Exempel: Insättning på bankkonto Mata in insättningsbelopp och kontonummer Hämta saldo för det givna kontonumret Öka saldo med insättningsbelopp Spara det nya saldot October 14,
21 Hur ska vi få datorn att utföra vår algoritm? Vi måste skriva den så att datorn kan tolka vad den ska göra! vi kan använda Java Varje steg i algoritmen måste översättas till Java Java har bara generella instruktioner inget om bankkonton och saldon! Vi måste bryta ner problemet i mindre bitar Vi måste känna till vilka instruktioner som finns i Java Vi måste öva på att uttrycka lösningar på olika typer av problem i Java October 14,
22 Men... datorn pratar egentigen inte Java Programmet måste översättas till 1:or och 0:or = maskininstruktioner till datorns processor Två typer av programmeringsspråk De som kompileras direkt till maskinkod Fördelar? Programmet kan köras direkt på datorn, utan ytterligare programvara installerad. Det går snabbt när programmet väl körs. Nackdelar? Programmet kompileras för en speciell plattform, eller till och med en speciell dator. De som kompileras till bytekod och sedan körs genom en interpretator Java är ett exempel Fördelar? Plattformsoberoende Nackdelar? Långsammare. Kräver rätt interpretator. October 14,
23 Java-kompilering På hårddisken i förväg I minnet när vi exekverar programmet MittProgram.java class Tecken public static void main (String[] args) char tecken = 'B'; char tecken2 = 66;... MittProgram.class χλασσ Τεχκεν πυβλιχ στατιχ ϖοιδ µαιν (Στρινγ αργσ χηαρ τεχκεν = Β ; χηαρ τεχκεν2 = Kompilator Interpretator October 14,
24 Javamiljön vi jobbar i Följande måste finnas De Java-programbibliotek som programmet använder En Javainterpretator Java Runtime Environment (JRE) För att enklare skriva program finns olika utvecklignsmiljöer (IDE = Integrated Development Environment) Jämför med MS Word: Du kan skriva din text i Notepad, men... du har ingen stavningskontroll, ingen formatering för att göra texten begripligare. Betydelsen kommer vara densamma, men det är enklare att skriva och hålla reda på texten med lite extra funktioner. En IDE har stavningskoll för olika programmeringspråk, du kan testköra programmet direkt i din IDE osv. October 14,
25 Vanligt problem: låt inte Eclipse styra er!...ni ska styra Eclipse! Eclipse ger er indikationer på när någonting är fel i er kod, men förslagen på åtgärder är inte alltid rätt i just ert fall utan bara en "gissning"! Ni måste ha kunskaperna för att kunna bestämma vad som är lämpligt (eller ens möjligt) att göra i ert specifika fall Lite inte blint på förslagen från Eclipse, tänk efter: är det här rätt och vad får det för konsekvenser? Duggorna testar er förståelse - där har ni inte hjälp av Eclipse! October 14,
26 Om Java Plattformsoberoende Webbprogrammering Imperativt språk man talar om vad som ska göras ungefär som man ger order till en person: instruktionerna utförs i ordning som de läses. Objektorienterat språk klasser och objekt (instanser av objekt) Få instruktioner i grundspråket många bibliotek (Java API - "standardbiblioteket") Java är bara ett språk bland många!!...men kan man ett är det mycket lättare att lära sig ett annat October 14,
27 Att programmera Analysera problemet Utforma algoritmen Skriva programmet Kompilera Exekvera Testa Viktigt om testning: Tänk på att alltid köra programmet både med förväntade och oväntade data Spårutskrifter är ett bra sätt att se vad som händer inuti när programmet körs October 14,
28 Ett första Javaprogram October 14,
29 Ett Javaprogram namn och syntax Program måste skrivas och sparas på ett speciellt sätt Ett program måste skrivas enligt Javas syntax Ett programspråks syntax talar om exakt vad som är korrekt att skriva vad datorn kommer att förstå Jfr. grammatik och stavning i svenska... Men vi är inte maskiner, vi förstår oftast även om syntaxen är fel, det gör inte datorn! Namnet på ett program (en Java-klass) Ett enda ord (dvs inga mellanslag använd Camel Case för flera ord FleraOrd eller _ Flera_Ord) Måste börja med en bokstav (engelska alfabetet + kan sedan innehålla siffror samt _ ) Ge programmet ett beskrivande namn! Undvik å/ä/ö och andra specialtecken October 14,
30 Tips: använd bara engelska alfabetet! Det går att använda svenska tecken när ni programmerar men... Svenska tecken representeras olika på olika datorer och i olika Eclipse-versioner Använder ni svenska tecken kan ni får problem om ni flyttar över er kod till en annan dator T ex mellan din laptop och din labbkompis dator, eller från datorn i labbsalen och din egen laptop Bäst att helt undvika svenska tecken i er kod! använd engelska namn... eller använd svenska namn men "ta bort prickarna", t ex "anvand" istället för "använd" October 14,
31 Ett Javaprogram Klasser och metoder Ett program består av en eller flera Java-klasser En klass innehåller en samling instruktioner som löser ett visst problem används för att bryta ner problemet En klass sparas normalt i en fil (finns undantag) -> Flera klasser = flera filer Filen måste ha samma namn som klassen + ändelsen.java Exempel: MittProgram.java innehåller klassen MittProgram Vi kommer att börja med enkla program som bara består av en klass = sparas i en enda fil Varje klass har normalt en eller flera metoder Metoderna innehåller instruktionerna som ska utföras October 14,
32 Ett Javaprogram Metoden main main är huvudmetoden själva huvudspåret i programmet, där programmet börjar Senare i kursen kommer vi att se andra metoder, men vi börjar med att använda bara main När ett Javaprogram exekveras söker interpretatorn efter metoden main Finns den inte får man ett felmeddelande Annars börjar exekveringen här October 14,
33 Ett Javaprogram Struktur och syntax class Meddelande public static void main (String[] args) // här skriver vi vad programmet ska göra October 14,
34 Kommentarer rader med text som hoppas över när programmet körs Används för att kunna beskriva vad programmet betyder och gör för andra programmerare (eller för dig själv) Ni måste använda kommentarer för att beskriva vad ni gjort i lösningarna till labbuppgifterna Två typer av kommentarer: // indikerar att resten av raden är en kommentar /*... */ indikerar att allt mellan /* och */ är en kommentar, kan vara flera rader text kallas för block-kommentar October 14,
35 Ett Javaprogram Exempel class Meddelande public static void main (String[] args) System.out.println( Lycka till! ); Varje instruktion du ger till datorn avslutas med ";" October 14,
36 Ett Javaprogram Exempel 2 class Meddelande2 public static void main (String[] args) System.out.println( Lycka till! ); System.out.println( Lycka till igen! ); October 14,
37 Ett Javaprogram Exempel 3 class Meddelande3 public static void main (String[] args) System.out.println( Lycka till! ); //utskrift System.out.println( Lycka till igen! ); /* Det här är en kommentar......på flera rader */ October 14,
38 Eclipse October 14,
39 Vad är Eclipse? En avancerad "texteditor" för programmeringsspråk Smarta funktioner för att underlätta programmering Färgkodning av reserverade ord med speciell betydelse i språket lättare att se strukturen Indentering lättare att se strukturen Syntaxkontroll (tänk stanvingskoll ) markerar fel i programkoden medan ni skriver "kollar med" kompilatorn Funktioner för att testköra och felsöka Automatisk kompilering Finns även mer avancerade funktioner för att stega sig igenom program (vi använder dessa först senare i kursen) Köra program inifrån programmeringsmiljön October 14,
40 Eclipse och Java 1.6 ladda ner (finns redan på labbdatorerna) Ladda ner och installera Eclipse (Helios finns på labbdator) Finns olika paket, välj antingen Eclipse classic eller Ett paket för Java developers och följ installationsinstruktionerna Vissa paket innehåller Java När du använder Eclipse tänk på att du alltid ska jobba i Java Perspective Är du osäker, eller ser gränssnittet konstigt ut: gå till menyn Window, välj Open Perspective och klicka på det som heter bara Java eller Java (default) Kontrollera att du använder rätt Java-version Preferences -> Java -> Installed JREs (Här ska Java SE 6 vara markerad i listan - finns den inte att välja på måste du installera Java 6) Ladda ner Java Development Kit (om ej inkluderat i Eclipse) Med JDK följer även JRE (Java Runtime Environment interpretatorn för att kunna köra program) Vilken version? Språket utvecklas ständigt! Vi jobbar med Java 6 (dvs 1.6), finns även 7 men innehåller sådant vi inte tar upp i kursen och vi kommer rätta era uppgifter med Java 1.6 October 14,
41 Skapa och köra ett första program inifrån Eclipse Skapa ett projekt i din workspace -mapp Högerklicka i Package explorer och välj New -> Java Project Ge projektet ett namn (t ex Labbar ) och klicka Finish Skapa en ny Java-klass i ditt projekt Högerklicka på projektmappen och välj New -> Class Ge klassen ett namn och klicka i rutan för att skapa en tom main-metod automatiskt Skriv koden för ditt program innanför klamrarna till metoden main Tänk på att göra koden begriplig genom... Kommentarer Indentering Testkör ditt program inifrån Eclipse Högerklicka på klass-filen och välj Run as Java Application Se resultatet och eventuella felmeddelanden i Eclipse:s console/terminalfönster October 14,
42 Exekvering och felrapporter När ett program körs syns en röd markering (liknar rec på en videokamera) i överkant på Eclipse:s console När programmet är klart blir markeringen grå Verkar programmet ha hängt sig eller fortsätter upprepa sig utan att ta slut? Ctrl-C avslutar ett program Fel = Exception ( undantag ) Felrapporter skrivs ut i Eclipse:s console Öva på att läsa felrapporter och analysera var felet finns Ofta talar rapporten om i vilken klass och på vilken rad i metoden/filen felet uppstod Ofta gör ett fel att exekveringen avbryts October 14,
43 Exempel 1 och 2 i Eclipse October 14,
44 Köra ett kompilerat program utanför Eclipse Leta rätt på den kompilerade filen Klassnamnet + ändelsen.class Kör programmet med kommandot java + klassnamnet Kör klassen i java-interpretatorn Letar efter en main metod inne i den kompilerade koden October 14,
45 Köra exempel 1 och 2 utanför Eclipse October 14,
46 Eclipse tutorials Att komma igång med Java i Eclipse video tutorial Lesson 1-2 Ni behöver inte använda paket (package) i början, och vi kommer inte att skapa egna nya metoder förrän senare Notera att de inte använder senaste versionen av Eclipse vissa knappar och menyer kan se lite annorlunda ut! Grundläggande funktioner i Eclipse video tutorial Mycket detaljerat ni behöver inte kunna allt detta, men får ni problem med gränssnittet finns svaret säkert här Notera att de inte använder senaste versionen av Eclipse vissa knappar och menyer kan se lite annorlunda ut! October 14,
47 Dags att börja programmera... October 14,
48 Standardutmatning class Meddelande public static void main (String[] args) System.out.println("Lycka till!"); Punktnotation: <klassnamn>.<metodnamn> Vi återkommer till detta senare!! det gör inget att ni inte förstår alla detaljer just nu System.out.println() skriver ut en rad med text till standard output, dvs det terminalfönster där programmet körs Textsträngar anges mellan " " October 14,
49 Standardutmatning forts. System.out.println() skriv ut och avsluta raden System.out.print() skriv ut men stanna kvar på samma rad Delsträngar kan sättas samman med + Exempel: class Meddelande public static void main (String[] args) System.out.println("Lycka " + "till!"); System.out.print("Lycka "); System.out.print("till!"); October 14,
50 Exempel i Eclipse October 14,
51 Finn fem fel... class Mitt Meddelande public static void main (String[] arg) / kommentar System.out.println(Lycka till!") /* en till kommentar October 14,
52 Vad säger Eclipse? October 14,
53 Är detta fel? class Meddelande public static void main (String[] args) System.out.println("Lycka till!"); Inget fel......men svårt att läsa och tolka Följ konventionerna som finns på documentation/codeconvtoc html October 14,
54 Standardutmatning - formatering class Meddelande public static void main (String[] args) System.out.print("Lycka till! \n"); System.out.print("Lycka \t till! \n"); System.out.print("Vi säger: \"Lycka till! \""); \n betyder radslut \t betyder tabb \ anger att ett reserverat tecken som kommer efter ska skrivas ut som det är October 14,
55 Vi testar i Eclipse... October 14,
56 Variabler Vad är en variabel? Ett namn på en lagringsplats för ett värde vi "bokar upp" en plats i datorns minne för att lagra värden på Jfr. "x" i matematiken kan stå för vilket tal som helst X namn En variabel har alltid en typ vilken sorts sak kan vi stoppa i lådan? Typer är t ex heltal, flyttal och tecken Vi måste bestämma oss vad vi vill lagra när vi skapar variabeln October 14,
57 Variabler Tilldelning och uppdatering Deklarera = skapa en variabel av en viss typ Initiera = ge variabeln ett första (initialt) värde Tilldelning = lagra ett värde Uppdatera = en tilldelning där vi byter ut det lagrade värdet class Variabel public static void main (String[] args) int tal; //här deklareras variabeln tal = 3; //här initieras variabeln, dvs tilldelas ett värde tal = 5; //här uppdateras värdet genom tilldelning tal = tal + 4; //här uppdateras värdet igen System.out.print("Talet är: " + tal); October 14,
58 Vi skapar några variabler i Eclipse... October 14,
59 Variabler Konstanter Konstant = värde som inte ändras Konstanter skrivs oftast med stora bokstäver class Konstant public static void main (String[] args) final int TIMMAR = 24; October 14, System.out.print("Timmar på ett dygn: " + TIMMAR);
60 Datatyper Översikt över grundläggande datatyper i Java: datatypes.html byte short int long heltal - byte är "kortast" (minst), long är "längst" (störst) - vanligast: använd int float double flyttal/decimaltal - float är "kortast" (minst), double är "längst" (störst) - vanligast: använd double boolean char booleska värden, sanningsvärden - sant/falskt tecken - a, b c, 0, 4, %, #... October 14,
61 Datatyper - Heltal byte positivt eller negativt heltal som bara tar upp en byte = 8 bitar Ligger mellan -128 och 127 short positivt eller negativt heltal som tar upp två byte = 16 bitar Ligger mellan och int - positivt eller negativt heltal som tar upp fyra byte = 32 bitar Ligger mellan och long - positivt eller negativt heltal som tar upp åtta byte = 64 bitar Ligger mellan och October 14,
62 Datatyper Heltal (forts.) Försöker du lagra något som är större än vad datatypen tillåter får du ett kompileringsfel Tal som ska lagras som long måste avslutas med bokstaven L class LongVariabel public static void main (String[] args) long storttal = L; System.out.print("Talet är: " + tal); October 14,
63 Vi testar i Eclipse... October 14,
64 Datatyper - Flyttal float decimaltal som tar upp 4 byte minne Sparar minne och ger snabbar bearbetning...men mindre noggrannhet och mindre talområde Ett tal som ska lagras som en float måste avslutas med F Exempel: float f1 = 1.23F; double decimaltal som tar upp 8 byte minne Talen lagras i tre delar (med basen 2): tecken mantissa exponent Exempel: kan avrundas till +1.23E-7 Observera att talen avrundas till ett visst antal siffror i matissan, därför kan det uppstå avrundningsfel October 14,
65 Exempel med flyttal October 14,
66 Datatyper booleska värden/ sanningsvärden För att representera sanningsvärden sant/falskt, ja/nej... värdena representeras av orden true och false class Sanning public static void main (String[] args) boolean kvinna = true; System.out.print("Eva är en kvinna: " + kvinna); October 14,
67 Datatyper Tecken char datatyp för att lagra enskilda tecken som tar upp 2 byte minne tecken representeras internt som en siffra översätts till ett tecken via en teckentabell Java använder Unicode-systemet ( - en lättläst tabell för att slå upp koderna för vanliga alfabet finns här: Exempel: siffran 65 står för bokstaven A, och 97 för a Finns mängder med specialtecken, t ex ny rad, tabb, retur osv. October 14,
68 Unicode October 14,
69 Datatyper Tecken (forts.) class Tecken public static void main (String[] args) char tecken = 'B'; char tecken2 = 66; System.out.print(tecken + " " + tecken2); Tecken skrivs inom ' ' medan textsträngar inom " " October 14,
70 Vi testar i Eclipse... October 14,
71 Skilj på tecken och siffra class TeckenSiffra public static void main (String[] args) char tecken = '9'; int tal = 9; System.out.print(tecken + " " + tal); Tecknet 0 (Unicode 48), heltalet 0, nolltecknet ("null" används för att markera en tom variabel Unicode 0) October 14,
72 Tecken och siffror, exempel i Eclipse... October 14,
73 Operationer - Heltal De fyra räknesätten: + - * / Resten vid heltalsdivision: % Tecken: + - Prioritet: unära + - * / % + - Inom en grupp utförs operationerna i den ordning de står Använd parenteser för att få en viss bestämd ordning October 14,
74 Operationer Heltal (forts.) class Operationer public static void main (String[] args) int a = 2; int b = 3; int c = a + b * a; // c blir 8 int d = a * b / a; // d blir 3 System.out.print("Resultat: " + c + " och " + d); October 14,
75 Vi testar i Eclipse... October 14,
76 Operationer på tal (forts.) Flyttal Motsvarande som för heltal (utom % - nu kan vi lagra decimaltalet istället, dvs använda / direkt) Division med 0 Heltal: felmeddelande (undantag kastas) Flyttal: du får ett speciellt värde tillbaka +/- Infinity 0.0/0 ger svaret NaN (Not a Number) October 14,
77 Operationer på en variabel öka variabel med ett värde (+=): a = a + 2 är samma som a += 2 öka med 1: a++ multiplicera med ett värde (*=): a = a * 2 är samma som a *= 2 minska med ett värde (-=): a = a - 2 är samma som a -= 2 minska med 1: a-- dela med ett värde (/=): a = a / 2 är samma som a /= 2 resten av division (%=): a = a % 2 är samma som a %= 2 October 14,
78 Operationer - Exempel 1 class ExempelOperationer public static void main (String[] args) int i = 2; double d= 2.2; char c = 'a'; int resultat = i + c; double resultat2 = d + c; System.out.print("Resultat: " + resultat + " och " + resultat2); October 14,
79 Vi testar i Eclipse... October 14,
80 Operationer - Exempel 2 class ExempelOperationer2 public static void main (String[] args) char b = 'c'; char c = 'a'; String resultat = "hej"; resultat = resultat + " " + c + " " + b; System.out.print("Resultat: " + resultat); October 14,
81 Ett exempel till i Eclipse... October 14,
82 Vad händer egentligen vid en tilldelning? Först beräknas resultatet av det som står till höger om likamedtecknet... värdena som används för beräkningen är de som gäller just då när programmet körs...sen lagras värdet av det resultatet i variabeln October 14,
83 Exempel: vi tittar på en programkörning class ExempelOperationer public static void main (String[] args) int i = 2; double d= 2.2; char c = 'a'; int resultat = i + c; double resultat2 = d + c; System.out.print("Resultat: " + resultat + " och " + resultat2); i October 14,
84 Exempel: "substitution" class ExempelOperationer d public static void main (String[] args) int i = 2; double d= 2.2; char c = 'a'; int resultat = i + c; double resultat2 = d + c; System.out.print("Resultat: " + resultat + " och " + resultat2); October 14, i
85 Exempel: "substitution" class ExempelOperationer d int double public static void main (String[] args) int i = 2; double d= 2.2; char c = 'a'; int resultat = i + c; double resultat2 = d + c; System.out.print("Resultat: " + resultat + " och " + resultat2); October 14, i c char
86 Exempel: "substitution" class ExempelOperationer d int double public static void main (String[] args) int i = 2; double d= 2.2; char c = 'a'; int resultat = i + c; double resultat2 = d + c; System.out.print("Resultat: " + resultat + " och " + resultat2); October 14, i c char
87 Exempel: "substitution" class ExempelOperationer d int double public static void main (String[] args) int i = 2; double d= 2.2; char c = 'a'; int resultat = ; double resultat2 = d + c; System.out.print("Resultat: " + resultat + " och " + resultat2); October 14, i c char
88 Exempel: "substitution" class ExempelOperationer d int double public static void main (String[] args) resultat int i = 2; double d= 2.2; int char c = 'a'; int resultat = 99; double resultat2 = d + c; System.out.print("Resultat: " + resultat + " och " + resultat2); October 14, i char c
89 Exempel: "substitution" class ExempelOperationer d int double public static void main (String[] args) resultat int i = 2; double d= 2.2; int char c = 'a'; int resultat = i + c; double resultat2 = d + c; System.out.print("Resultat: " + resultat + " och " + resultat2); October 14, i char c
90 Exempel: "substitution" class ExempelOperationer d int double public static void main (String[] args) resultat int i = 2; double d= 2.2; int char c = 'a'; int resultat = i + c; double resultat2 = ; System.out.print("Resultat: " + resultat + " och " + resultat2); October 14, i char c
91 Exempel: "substitution" class ExempelOperationer d int double public static void main (String[] args) resultat int i = 2; double d= 2.2; int char c = 'a'; int resultat = i + c; double resultat2 = 99.2; System.out.print("Resultat: " + resultat + " och " + resultat2); October 14, i char c
92 Exempel: "substitution" class ExempelOperationer public static void main (String[] args) int i = 2; double d= 2.2; char c = 'a'; int resultat = i + c; double resultat2 = 99.2; October 14, System.out.print("Resultat: " + resultat + " och " + resultat2); i int resultat2 double char c d double resultat int
93 Exempel: "substitution" class ExempelOperationer public static void main (String[] args) int i = 2; double d= 2.2; char c = 'a'; int resultat = i + c; double resultat2 = d + c; October 14, System.out.print("Resultat: " + resultat + " och " + resultat2); i int resultat2 double char c d double resultat int
94 Exempel: "substitution" class ExempelOperationer public static void main (String[] args) int i = 2; double d= 2.2; char c = 'a'; int resultat = i + c; double resultat2 = d + c; October 14, System.out.print("Resultat: " " och " ); i int resultat2 double char c d double resultat int
95 Exempel: "substitution" class ExempelOperationer d int double public static void main (String[] args) resultat int i = 2; resultat2 double d= 2.2; int char c = 'a'; double int resultat = i + c; double resultat2 = d + c; System.out.print("Resultat: 99 och 99.2"); i char evabl45> Resultat: 99 och 99.2 c October 14,
96 Vi stegar oss igenom programmet i Eclipse! October 14,
97 Sammanfattning Varför programmering? Viktigt både för den som vill bli programmerare och den som "bara" vill jobba med miljön där systemen finns och utvecklas Vad är programmering? Ett sätt för oss att ge en dator instruktioner för att utföra en uppgift i ett språk som datorn kan tolka Java ett programmeringsspråk Kompilator + interpretator behövs Utvecklingsmiljön vi använder är Eclipse Grunderna i Java Strukturen för ett program Klasser och klassbibliotek (Java API) Utmatning av textsträngar Grundläggande datatyper och variabler + operationer October 14,
98 Nästa gång? Typomvandling Jämförelser Villkor och val Textsträngar mer avancerade operationer Mer om Javas klassbibliotek och att läsa Javadoc October 14,
99 October 14,
Föreläsning 3: Typomvandling, villkor och val, samt textsträngar
Föreläsning 3: Typomvandling, villkor och val, samt textsträngar Camilla Kirkegaard camilla.kirkegaard@liu.se Linköpings universitet Sweden October 14, 2013 1 Innehåll n n n n n Repetition Typomvandlingar
Objektorienterad Programmering (TDDC77)
Objektorienterad Programmering (TDDC77) Föreläsning II: utmatning, variabler, typer Ahmed Rezine IDA, Linköpings Universitet Hösttermin 2016 Kompilera och köra programmet under terminal 2: I Skapa Hej.java
I Skapa Hej.java och skriv programmet. I Kompilera med javac Hej.java. I Rätta fel och repetera tills du lyckas kompilera ditt program
Kompilera och köra programmet Objektorienterad Programmering (TDDC77) Föreläsning II: utmatning, variabler, typer Ahmed Rezine IDA, Linköpings Universitet Hösttermin 2016 under terminal 2: I Skapa Hej.java
Översikt 732G11 PROGRAMMERING 1. Personal. Kursens mål. Litteratur. Kursens innehåll 2010-04-22
Översikt 732G11 PROGRAMMERING 1 Institutionen för datavetenskap Om kursen Vad är programmering (bra för)? Programmeringsspråket Java Utvecklingsmiljön Eclipse Genomgång av några programexempel Programmering
732G Linköpings universitet 732G11. Johan Jernlås. Översikt. Repetition. Felsökning. Datatyper. Referenstyper. Metoder / funktioner
732G11 Linköpings universitet 2011-01-21 1 2 3 4 5 6 Skapa program Kompilera: Källkod Kompilator bytekod Köra: Bytekod Virtuell maskin Ett riktigt program Hej.java class Hej { public static void main (
ITK:P1 Föreläsning 1. Programmering. Programmeringsspråket Java. Stark typning Explicit typning Strukturerat Hög säkerhet
ITK:P1 Föreläsning 1 Att programmera i språket Java DSV Peter Mozelius Programmering Olika typer av programmering som t ex: o Imperativ programmering (C, Pascal m fl) o Funktionell programmering (Lisp,
Kompilering och exekvering. Föreläsning 1 Objektorienterad programmering DD1332. En kompilerbar och körbar java-kod. Kompilering och exekvering
Föreläsning 1 Objektorienterad programmering DD1332 Introduktion till Java Kompilering, exekvering, variabler, styrstrukturer Kompilering och exekvering Ett program måste översättas till datorns språk
SMD 134 Objektorienterad programmering
SMD 134 Objektorienterad programmering Dagens agenda: Typer i Java: primitiva datatyperna, referenstyper Variabler och variabeltilldelningar med primitiva typer Konstanter av de olika typerna. Heltalsräkning
Programmering med Java. Grunderna. Programspråket Java. Programmering med Java. Källkodsexempel. Java API-exempel In- och utmatning.
Programmering med Java Programmering med Java Programspråket Java Källkodsexempel Källkod Java API-exempel In- och utmatning Grunderna Ann Pan panda@nada.kth.se Rum 1445, plan 4 på Nada 08-7909690 Game.java
OOP Objekt-orienterad programmering
OOP Objekt-orienterad programmering OOP F1:1 Delkursansvarig Epost Kursens webbsidor sm@fc.dsv.su.se http://people.dsv.su.se/~sm/oop/ Föreläsning 1 Introduktion till kursen OOP Vad är Java? Ett första
Laboration 1. "kompilera"-ikonen "exekvera"-ikonen
Programmerade system I1 Syfte Laboration 1. Syftet med denna laboration är dels att göra dej bekant med de verktyg som kan vara aktuella i programmeringsarbetet, dels ge en första inblick i att skriva
Föreläsning 1 & 2 INTRODUKTION
Föreläsning 1 & 2 INTRODUKTION Denna föreläsning Vad händer under kursen? praktisk information Kursens mål vad är programmering? Skriva små program i programspråket Java Skriva program som använder färdiga
F4. programmeringsteknik och Matlab
Programmeringsspråk Föreläsning 4 programmeringsteknik och Matlab 2D1312/ 2D1305 Introduktion till Java Kompilering, exekvering, variabler, styrstrukturer 1 Ett program är en eller flera instruktioner
Vem är vem på kursen. Objektorienterad programvaruutveckling GU (DIT011) Kursbok Cay Horstmann: Big Java 3rd edition.
Institutionen för Datavetenskap Göteborgs universitet HT2009 DIT011 Vem är vem på kursen Objektorienterad programvaruutveckling GU (DIT011) Kursansvarig : Katarina Blom, tel 772 10 60 Rum: 6126 (E-huset)
Objektorienterad Programmering (TDDC77)
Objektorienterad Programmering (TDDC77) Föreläsning II: utmatning, variabler, typer Ahmed Rezine IDA, Linköpings Universitet Hösttermin 2017 Outline Java Språket Utmatning av Sträng litteraler Variabler
NetBeans 7. Avsikt. Projektfönster
NetBeans 7 Avsikt Att bekanta dig med NetBeans programmeringsmiljö, dvs att med hjälp av NetBeans 1. skapa ett nytt projekt 2. skriva in källkod (sparas som.java-fil) 3. kompilera (översätta) koden till
Boken?!?! Vad är ett program? Kompilerande-Interpreterande Programmeringsmiljö Hello World! Att programmera och ett enkelt program Variabler printf
Föreläsning1 Boken?!?! Vad är ett program? Kompilerande-Interpreterande Programmeringsmiljö Hello World! Att programmera och ett enkelt program Variabler printf scanf Ni behöver läsa boken både för att
Programmering för språkteknologer I, VT2012. Rum
Programmering för språkteknologer I, VT2012 evelina.andersson@lingfil.uu.se Rum 9-2035 http://stp.lingfil.uu.se/~evelina/uv/uv12/pst1/ Idag - Kursplan - Börja programmera - Lokala variabler - aritmetiska
Laboration 1. "kompilera"-ikonen "exekvera"-ikonen
Syfte Laboration 1. Objektorienterad programmering, Z1 Syftet med denna laboration är dels att göra dej bekant med de verktyg som kan vara aktuella i programmeringsarbetet, dels ge en första inblick i
Programmering i C++ En manual för kursen Datavetenskaplig introduktionskurs 5p
Programmering i C++ En manual för kursen Datavetenskaplig introduktionskurs 5p Skriven av Michael Andersson Introduktion Programmering I högnivåspråk fokuserar på själv problemet (algoritmen) istället
Eclipse. Avsikt. Nu ska ett fönster liknande figuren till höger synas.
Eclipse Avsikt Att bekanta dig med Eclipse programmeringsmiljö, dvs att med hjälp av Eclipse 1. skapa ett nytt projekt 2. skriva in källkod (sparas som.java-fil) 3. kompilera (översätta) koden till byte-kod
NetBeans 5.5. Avsikt. Projektfönster
NetBeans 5.5 Avsikt Att bekanta dig med NetBeans programmeringsmiljö, dvs att med hjälp av NetBeans 1. skapa ett nytt projekt 2. skriva in källkod (sparas som.java-fil) 3. kompilera (översätta) koden till
(Man brukar säga att) Java är... Denna föreläsning. Kompilering av Java. Historik: Java. enkelt. baserat på C/C++ Allmänt om Java
(Man brukar säga att) Java är... Denna föreläsning Allmänt om Java Javas datatyper, arrayer, referenssemantik Klasser Strängar enkelt baserat på C/C++ objekt-orienterat från början dynamiskt utbyggbart
Hej Då, Karel! Programmering. Vårt första Javaprogram. hh.se/db2004. Java. Grundtyper, variabler och arrayer
Programmering hh.se/db2004 Föreläsning 3: Java. Grundtyper, variabler och arrayer Hej Då, Karel! Verónica Gaspes www2.hh.se/staff/vero www2.hh.se/staff/vero/programmering Center for Research on Embedded
Anteckningar 1: Grundläggande saker
UPPSALA UNIVERSITET Institutionen för lingvistik och filologi Mats Dahllöf http://stp.ling.uu.se/ matsd/uv/uv11/pst1/ Programmering för språkteknologer I Anteckningar 1: Grundläggande saker 1 Programmering
Programmering A. Johan Eliasson johane@cs.umu.se
Programmering A Johan Eliasson johane@cs.umu.se 1 Jag Undervisar mest grundläggande programmering på Institutionen för datavetensakap Applikationsutveckling för iphone Applikationsutveckling i Java Datastrukturer
Objektorienterad Programmering (TDDC77)
Objektorienterad Programmering (TDDC77) Föreläsning I: kursinfo, att programmera datorer, första programmet Ahmed Rezine IDA, Linköpings Universitet Hösttermin 2015 Outline Hemsida Organization Examination
Outline. I Vi kan lätt göra samma sak för fyra variabler... I Hur gör vi för 400 inlästa värden? I Ofta behöver man flera likadana variabler
Outline Objektorienterad Programmering (TDDC77) Föreläsning V: arrayer, metoder, räckvidd (scope), eclipse Ahmed Rezine IDA, Linköpings Universitet Hösttermin 2016 Vända om inlästa värden Vända om inlästa
Objektorienterad programmering i Java
bild 1 Objektorienterad programmering i Java Föreläsning 1 Kapitel 1-3 i kursboken Java Software Solutions bild 2 Läsanvisningar Kapitel 1 är en repetition av det ni förväntas kunna sedan tidigare. Det
Editering, Kompilering och Exekvering av Javaprogram
UMEÅ UNIVERSITET Institutionen för informatik B.1, Programmeringens grunder, 5 poäng Editering, Kompilering och Exekvering av Javaprogram Introduktion Syftet med kursmomentet Programmeringens grunder (B.1)
Objektorienterad Programmering (TDDC77)
Objektorienterad Programmering (TDDC77) Föreläsning V: arrayer, metoder, räckvidd (scope), eclipse Ahmed Rezine IDA, Linköpings Universitet Hösttermin 2016 Outline Arrayer Metoder Räckvidd (Scope) Eclipse
Command line argumenter. Objektorienterad Programmering (TDDC77) Vad blir resultatet? Nu då? Ahmed Rezine. Hösttermin 2016
Command line argumenter Objektorienterad Programmering (TDDC77) Föreläsning VI: eclipse, felsökning, felhantering Ahmed Rezine IDA, Linköpings Universitet Hösttermin 2016 /* Cla. java * Programmet illustrerar
Objektorienterad Programmering (TDDC77)
Objektorienterad Programmering (TDDC77) Föreläsning VI: eclipse, felsökning, felhantering Ahmed Rezine IDA, Linköpings Universitet Hösttermin 2016 Outline Felhantering Eclipse Felsökning Command line argumenter
Grundläggande programmering DVG A08 & ISG A04. Allmän information. Å vem är jag då. Karlstads Universitet, Johan Öfverberg 1
Grundläggande programmering DVG A08 & ISG A04 Allmän information Grupp C och D slås ihop Schemat är ändrat Kurs i programmering utan förkunskaper Hjälp oss med detta Lita inte på era klasskamrater De ställer
Introduktion till programmering och Python Grundkurs i programmering med Python
Introduktion till programmering och Python Hösten 2009 Dagens lektion Vad är programmering? Vad är en dator? Filer Att tala med datorer En första titt på Python 2 Vad är programmering? 3 VAD ÄR PROGRAMMERING?
Datatyper och kontrollstrukturer. Skansholm: Kapitel 2) De åtta primitiva typerna. Typ Innehåll Defaultvärde Storlek
De åtta primitiva typerna Java, datatyper, kontrollstrukturer Skansholm: Kapitel 2) Uppsala Universitet 11 mars 2005 Typ Innehåll Defaultvärde Storlek boolean true, false false 1 bit char Tecken \u000
OOP F1:1. Föreläsning 1. Introduktion till kursen OOP Vad är Java? Ett första Java-program Variabler Tilldelning. Marie Olsson
OOP F1:1 Föreläsning 1 Introduktion till kursen OOP Vad är Java? Ett första Java-program Variabler Tilldelning OOP Objekt-orienterad programmering Delkursansvarig: First Class-konferens: Kursens webbsidor:
Kompilera och exekvera Javakod
Kompilera och exekvera Javakod Förberedelser För att kunna göra dessa övningar måste du ha installerat Java Development Kit, JDK, som bland annat innehåller Java kompilatorn, javac. Hur du installerar
Lektion Java Grunder. Javas historia. Programmeringsspråket Java. Skillnaderna mellan Java och C++ JVM (Javas Virtuella Maskin)
Lektion Java Grunder Javas historia Ursprungligen utvecklades Java (1991) för att användas i olika typer av konsumentelektronik (mikrovågsugnar, videoapparater) av programmerare på Sun. Språket kallades
Labb i Datorsystemteknik och programvaruteknik Programmering av kalkylator i Visual Basic
Labb i Datorsystemteknik och programvaruteknik Programmering av kalkylator i Visual Basic Inledning Starta Microsoft Visual Studio 2005. Välj create Project Välj VB + Vindows Application och välj ett nytt
725G61 - Laboration 7 Implementation av ett API. Johan Falkenjack
725G61 - Laboration 7 Implementation av ett API Johan Falkenjack December 13, 2013 1 Inledning Hittills i kursen har vi tittat på grundläggande programmering och grundläggande objektorientering. I den
Introduktion till Datalogi DD1339. Föreläsning 2 22 sept 2014
Introduktion till Datalogi DD1339 Föreläsning 2 22 sept 2014 Namn Fält1 Fält2 Fält3 Metod1 Metod2 Metod3 Metod4 public class { public class { Åtkomst, public betyder fullt tillgänglig utifrån public
Här beskrivs Eclipse, den programutvecklingsmiljö som utnyttjas i programmeringskurserna. Mera information finns på:
Bilaga C Eclipse 1 Inledning Här beskrivs Eclipse, den programutvecklingsmiljö som utnyttjas i programmeringskurserna. Mera information finns på: www.eclipse.org help.eclipse.org www.eclipse.org/downloads/
Användarhandledning Version 1.2
Användarhandledning Version 1.2 Innehåll Bakgrund... 2 Börja programmera i Xtat... 3 Allmänna tips... 3 Grunderna... 3 Kommentarer i språket... 4 Variabler... 4 Matematik... 5 Arrayer... 5 på skärmen...
Programstruktur och terminologi. Programmet producerar följande utskrift i terminalfönstret: Ett Javaprogram består av en eller flera klasser
// En första version av BankKonto-klassen class BankKonto { private String namn; private long nr; private double saldo; private double ränta; // Klassen TestaBankKonto // Klassens uppgift är att skapa
Laboration 10 - Eclipse
Laboration 10 - Eclipse Avsikten med laborationen är att du ska träna på att använda paket, att du ska packa några klassfiler i en jar-fil och slutligen använda innehållet i en jar-fil från en annan klass
TDIU01 - Programmering i C++, grundkurs
TDIU01 - Programmering i C++, grundkurs Sammanfattning period 1 Eric Elfving Institutionen för datavetenskap 1 oktober 2013 Översikt Ett C++-programs uppbyggnad Variabler Datatyper Satser Uttryck Funktioner
EDAA20 Programmering och databaser. Mål komprimerat se kursplanen för detaljer. Checklista. Föreläsning 1-2 Innehåll. Programmering.
EDAA20 Programmering och databaser Mål komprimerat se kursplanen för detaljer Läsperiod 1 7.5 hp anna.aelsson@cs.lth.se http://cs.lth.se/edaa20 Mer information finns på kursens webbsida samt på det utdelade
Övning 1. Datateknik A, Java I, 5 poäng. Att ladda hem och installera Java Att skriva ditt första Javaprogram Att kompilera och exekvera ditt program
Datateknik A, Syfte: Att ladda hem och installera Java Att skriva ditt första Javaprogram Att kompilera och exekvera ditt program Att läsa: Lektion 1 Antal uppgifter: 3 Inlämning: Sker via inlämningsuppgifter
Klassdeklaration. Metoddeklaration. Parameteröverföring
Syntax: Class Declaration Modifier Class Body Basic Class Member Klassdeklaration class Class Member Field Declaration Constructor Declaration Method Declaration Identifier Class Associations Motsvarar
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 Presentation av kursen Vad är programmering? Lite om java och utvecklingsmiljöer Aktivitetsdiagram Ett första program Deitel: 1.1-1.9, 2.1-2.3 DA101A Programmering Programmering, DA101A Kursansvarig:
Projektuppgift - Biblioteket
Projektuppgift - Biblioteket 2013 1. Projekt - syfte, instruktioner och uppgift Syftet med den här projektuppgiften är att ni nu ska tillämpa allt det ni har lärt er i kursens två labbdelar, dvs både kunskaper
Objektorienterad programmering i Java I. Uppgifter: 2 Beräknad tid: 5-8 timmar (OBS! Endast ett labbtillfälle) Att läsa: kapitel 5 6
Laboration 2 Objektorienterad programmering i Java I Uppgifter: 2 Beräknad tid: 5-8 timmar (OBS! Endast ett labbtillfälle) Att läsa: kapitel 5 6 Syfte: Att kunna använda sig av olika villkors- och kontrollflödeskonstruktioner
Programmering A C# VT 2010. Ett kompendie över Programmering A (50p) i c# Stefan Fredriksson 2010 02 08
Programmering A C# VT 2010 Ett kompendie över Programmering A (50p) i c# Stefan Fredriksson 2010 02 08 Innehåll Hjälp och referenser... 3 Kap 1 Introduktion... 3 Steg för steg... 3 Kapitel 2 Variabler...
TDDC77 Objektorienterad Programmering
TDDC77 Objektorienterad Programmering Föreläsning 1 Sahand Sadjadee IDA, Linköpings Universitet Hösttermin, 2018 Outline Kursinfo Introduktion till Programmering Java Development Kit(JDK) Kursinfo Hemsida
Föreläsning 1 & 2 INTRODUKTION
Föreläsning 1 & 2 INTRODUKTION Denna föreläsning Vad händer under kursen? praktisk information Kursens mål vad är programmering? Skriva små program i programspråket Java Skriva program som använder färdiga
Lite om felhantering och Exceptions Mer om variabler och parametrar Fält (eng array) och klassen ArrayList.
Institutionen för Datavetenskap Göteborgs universitet HT2009 DIT011 Objektorienterad programvaruutveckling GU (DIT011) Föreläsning 3 Innehåll Lite om felhantering och Exceptions Mer om variabler och parametrar
Projektuppgift - Banken
Projektuppgift - Banken 2013 1. Projekt - syfte, instruktioner och uppgift Syftet med den här projektuppgiften är att ni nu ska tillämpa allt det ni har lärt er i kursens två labbdelar, dvs både kunskaper
F2 Datatyper och variabler. ID1004 Objektorienterad programmering Fredrik Kilander
F2 Datatyper och variabler ID1004 Objektorienterad programmering Fredrik Kilander fki@kth.se Datatyper Java är ett starkt typat språk Varje slags data har en datatyp Datatyp Javasyntax Exempel Teckensträng
Föreläsning 2. Täcker material från lektion 1, 2, 3 och 4:
(22 januari 2016 F2.1 ) Föreläsning 2 Täcker material från lektion 1, 2, 3 och 4: Datatyper Aritmetik Tecken och strängar Klasser, Objekt Metoder Villkor, villkorssatser och iterationer main-metoden Kodstandard
Programmering för språkteknologer II, HT2011. Rum
Programmering för språkteknologer II, HT2011 evelina.andersson@lingfil.uu.se Rum 9-2035 http://stp.ling.uu.se/~evelina/uv/uv11/pst2/ Kursplan Mål Efter avslutad kurs skall studenten för att förtjäna betyget
Java: Utvecklingsverktyg, datatyper, kontrollstrukturer
Java: Utvecklingsverktyg, datatyper, kontrollstrukturer Sven-Olof Nyström Uppsala Universitet 13 juni 2005 1 Utvecklingsverktyg för Java Vi rekommenderar Suns utvecklingsverktyg (SDK, tidigare JDK), se
Föreläsning 3. Programmering, C och programmeringsmiljö
Föreläsning 3 Programmering, C och programmeringsmiljö Vad är programmering? Ett väldigt kraftfullt, effektivt och roligt sätt att kommunicera med en dator Att skapa program / applikationer till en dator
Kort repetition. Programmeringsteknik för Bio1 och I1. Vad ska vi lära oss idag? Ett exempel
Programmeringsteknik för Bio1 och I1 Övning 2 Kort repetition Övningsgrupp 3 (Sal E33) Johannes Hjorth hjorth@nada.kth.se Rum 4538 på plan 5 i D-huset 08-790 69 02 Kurshemsida: http://www.nada.kth.se/kurser/kth/2d1310/
LÖSNINGSFÖRSLAG Programmeringsteknik För Ing. - Java, 5p
UMEÅ UNIVERSITET Datavetenskap 010530 LÖSNINGSFÖRSLAG Programmeringsteknik För Ing. - Java, 5p Betygsgränser 3 21,5-27 4 27,5-33,5 5 34-43 Uppgift 1. (4p) Hitta de fel som finns i nedanstående klass (det
Föreläsning 2. Variabler, tilldelning och kodblock{} if-satsen Logiska operatorer Andra operatorer Att programmera
Föreläsning 2 Variabler, tilldelning och kodblock if-satsen Logiska operatorer Andra operatorer Att programmera Variabler Det är i variabler som all data (information) lagras. Genom att ändra värde på
Föreläsning 2. Operativsystem och programmering
Föreläsning 2 Operativsystem och programmering Behov av operativsystem En dator så som beskriven i förra föreläsningen är nästan oanvändbar. Processorn kan bara ges enkla instruktioner såsom hämta data
Klasser i Java kan ha metoder och egenskaper. Metoder beskriver funktioner som klassen kan utföra. Egenskaper beskriver innehållet i klassen.
TT Kapitel 3. Husdjur & Fisk Javaklasser Translation by Leif Lourié Java program består av klasser som beskriver saker (objekt) som finns på riktigt. Även om det finns många olika sätt att skriva program
Inledande programmering med C# (1DV402) 27+15=42 1 (22)
27+15=42 1 (22) Variabler Upphovsrätt för detta verk Detta verk är framtaget i anslutning till kursen Inledande programmering med C# vid Linnéuniversitetet. Du får använda detta verk så här: Allt innehåll
Projektuppgift - Gymmet
Projektuppgift - Gymmet 2013 1. Projekt - syfte, instruktioner och uppgift Syftet med den här projektuppgiften är att ni nu ska tillämpa allt det ni har lärt er i kursens två labbdelar, dvs både kunskaper
Undervisning. Examination
Kursinfo Objektorienterad programmering Undervisning Föreläsning 1 Kursinformation Allmänt om programmering Java - några inledande exampel Grundbegrepp: variabler, uttryck, satser, typer. Föreläsningar
Grundkurs i programmering, 6 hp (725G61) Dugga 2 tillfälle 2
AID-nummer: Datum: 2014-12-18 Kurskod: 725G61 Provkod: LAB1 Grundkurs i programmering, 6 hp (725G61) Dugga 2 tillfälle 2 Skrivningstid: 2014-12-18 klockan 8.00-10.00. Hjälpmedel: Inga. För varje fråga
Objektorienterad programmering Föreläsning 2
Objektorienterad programmering Föreläsning 2 Copyright Mahmud Al Hakim mahmud@webacademy.se www.webacademy.se Agenda Inläsning av data via dialogrutor Repetitioner (While-satsen och For-satsen) Nästlade
Programmering, grundkurs, 8.0 hp, Elektro, KTH, hösten 2010. Programmering: att instruera en maskin att utföra en uppgift, kräver olika språk:
Föreläsning 1 OH: Övergripande information Programmering: att instruera en maskin att utföra en uppgift, kräver olika språk: * maskinspråk = ettor och nollor, kan bara en maskin förstå. * programmeringsspråk
Extramaterial till Matematik Y
LIBER PROGRAMMERING OCH DIGITAL KOMPETENS Extramaterial till Matematik Y NIVÅ ETT Taluppfattning och tals användning ELEV Det finns många olika programmeringsspråk. Ett av dem är Python, som du ska få
Objektorienterad Programmering (TDDC77)
Objektorienterad Programmering (TDDC77) Föreläsning I: kursinfo, att programmera datorer, första programmet Ahmed Rezine IDA, Linköpings Universitet Hösttermin 2017 Outline Hemsida Organization Examination
Alla filer som bearbetar PHP script ska avslutas med ändelsen.php, exempelvis ska en indexsida till en hemsida heta index.php
Introlektion PHP är ett av de enklare språken att lära sig just pga. dess dynamiska struktur. Det används för att bygga upp båda stora och mindre system. Några vanliga system som använder sig av PHP är
TDDC77 Objektorienterad Programmering
TDDC77 Objektorienterad Programmering Föreläsning 5 Sahand Sadjadee IDA, Linköpings Universitet Hösttermin 2018 Outline Arrayer Metoder Räckvidd och Livslängd Arrayer Vända om inlästa värdena Vända om
Föreläsning 1: Intro till kursen och programmering
Föreläsning 1: Intro till kursen och programmering λ Kursens hemsida http:www.it.uu.se/edu/course/homepage/prog1/mafykht11/ λ Studentportalen http://www.studentportalen.uu.se UNIX-konton (systemansvariga
Objektorienterad programmering i Java I
Laboration 0 Objektorienterad programmering i Java I Uppgifter: 2 Beräknad tid: ca 2 3 timmar Att läsa: sidan 45 52 Syfte: Att ladda hem och installera utvecklingsmiljön Att skriva ditt första Javaprogram
TDDC77 Objektorienterad Programmering
TDDC77 Objektorienterad Programmering Föreläsning 3 Sahand Sadjadee IDA, Linköpings Universitet Hösttermin 2018 Outline Operatorer Java Standard Library Inmatning Operatorer operatorer En operator är en
TUTORIAL: SAMLING & KONSOLL
TUTORIAL: SAMLING & KONSOLL Denna tutorial är en fortsättning på den tutorial där vi skapade klassen Car och sedan objekt av denna klass. Vi skall nu lära oss att lagra dessa objekt i en samling och även
Föreläsning 1: Intro till kursen och programmering
Föreläsning 1: Intro till kursen och programmering Kursens hemsida http:www.it.uu.se/edu/course/homepage/prog1/vt11 Studentportalen http://www.studentportalen.uu.se Lärare: Tom Smedsaas, Tom.Smedsaas@it.uu.se
EDAA20 Programmering och databaser. Mål komprimerat se kursplanen för detaljer. Om att lära sig programmera. Föreläsning 1-2 Innehåll.
EDAA20 Programmering och databaser Mål komprimerat se kursplanen för detaljer Läsperiod 1 7.5 hp anna.axelsson@cs.lth.se http://cs.lth.se/edaa20 Mer information finns på kursens webbsida samt på det utdelade
Laboration 1 Introduktion till Visual Basic 6.0
Laboration 1 Introduktion till Visual Basic 6.0 Förberedelse Förbered dig genom att läsa föreläsningsanteckningar och de kapitel som gåtts igenom på föreläsningarna. Läs även igenom laborationen i förväg.
Programmering B med Visual C++ 2008
Programmering B med Visual C++ 2008 Innehållsförteckning 1 Repetition och lite nytt...5 I detta kapitel... 5 Programexekvering... 5 Loop... 5 Källkod... 6 Verktyg... 6 Säkerhetskopiera... 6 Öppna, kompilera,
SMD 134 Objektorienterad programmering
SMD 134 Objektorienterad programmering Lärare: pl@cdt.luth.se A 3113 Tomas Klockar klockar@sm.luth.se A 3019 Mats Folke folke@sm.luth.se A 3019 Labhandledare: Natasja Saburova Fredrik Jonsson Lars Persson
Eclipse. Kort genomgång
Eclipse Kort genomgång Installation för den som vill ha Eclipse på sin egen maskin Du behöver först och främst ett Java Development Kit (JDK). Om du inte har något, installera JDK 7.0 från http://www.oracle.com/technetwork/java/javase/downloads/
Outline. Objektorienterad Programmering (TDDC77) Kursinfo. Outline. Hemsida. Organization. Ahmed Rezine Examination. Webreg.
Outline Objektorienterad (TDDC77) Föreläsning I: kursinfo, att programmera datorer, första programmet Ahmed Rezine IDA, Linköpings Universitet Hösttermin 2017 Kursinfo Outline I hemsida: http://www.ida.liu.se/~tddc77
Föreläsning 3. Programmering, C och programmeringsmiljö
Föreläsning 3 Programmering, C och programmeringsmiljö Vad är programmering? Ett väldigt kraftfullt, effektivt och roligt sätt att kommunicera med en dator Att skapa program / applikationer till en dator
Programutveckling med Java 7.5 p, ht 2007 (D0019N) STUDIEHANDLEDNING - ALLMÄN INFORMATION
Programutveckling med Java 7.5 p, ht 2007 (D0019N) STUDIEHANDLEDNING - ALLMÄN INFORMATION Hej, jag heter Ingela Johansson och hälsar dig välkommen till kursen Programutveckling med Java. Den är på 7.5
Laboration 1. Objektorienterad programmering, Z1. Syfte
Syfte Laboration 1. Objektorienterad programmering, Z1 Syftet med denna laboration är dels att göra dej bekant med de verktyg som kan vara aktuella i programmeringsarbetet, dels ge en första inblick i
Laboration 1 - Grunderna för OOP i Java
Uppdaterad: 2006-08-31 Laboration 1 - Grunderna för OOP i Java Inledning Laborationen går ut på att lära sig grunderna för objektorienterad programmering, samt motsvarande språkkonstruktioner i Java. Labben
Introduktion till programmering D0009E. Föreläsning 1: Programmets väg
Introduktion till programmering D0009E Föreläsning 1: Programmets väg 1 Vad är en dator? En maskin vars beteende styrs av de innehållet (bitmönster) som finns lagrade i datorns minne (inte helt olikt förra
2 Eclipse en handledning
2 Eclipse en handledning Inledning Här beskrivs Eclipse, den programutvecklingsmiljö som utnyttjas i programmeringskurserna. Mera information finns på: http://www.eclipse.org http://help.eclipse.org http://www.eclipse.org/downloads/
Objektorienterad Programmering DAT043. Föreläsning 1 15/1-18 Moa Johansson
Objektorienterad Programmering DAT043 Föreläsning 1 15/1-18 Moa Johansson Information Lärare: Moa Johansson Assistenter: Klara Granbom Niklas Gustafsson Elias Hällqvist Jakob Wall (lab mån) (lab fre) (lab
Verktyg och Utvecklingsmiljö. Föreläsning 2 Eclipse
Verktyg och Utvecklingsmiljö Föreläsning 2 Eclipse Verktyg Modern programutveckling innebär att man måste behärska ett antal verktyg. Editorer Kompilatorer Avlusare(debugger) Versionshantering(kommer i
Grundläggande programmering, STS 1, VT Sven Sandberg. Föreläsning 12
Grundläggande programmering, STS 1, VT 2007. Sven Sandberg Föreläsning 12 I torsdags: Klassen TelefonKostnad Exemplifierar objektorienterad design, metoder, konstruktorer static Standardklassen Math Matematiska
JAVA Mer om klasser och objektorientering
JAVA Mer om klasser och objektorientering Begreppet package - paket Package används när man t ex vill skapa ett eget bibliotek med klasser. Sen är det då meningen att man ska importera detta paket i det
Enkla datatyper minne
Enkla datatyper minne 143.56 sant Sonja A falskt 18 1999-10-29 Bertil Gralvik, KTH Ingenjörsskolan 1 Addera två tal Algoritmen Summera tal Mata in två tal Beräkna Skriv ut resultat Mata in tal 1 Mata in