Föreläsning 2 Verktyg m.m.
|
|
- Viktoria Falk
- för 8 år sedan
- Visningar:
Transkript
1 Föreläsning 2 Verktyg m.m.
2 Innehåll Java-paket Utvecklingsmiljö (development environment) Hur man organiserar sin utvecklingsmiljö Verktyg (tools) Editorer, debuggers, IDE's (integrated development environments), m. m. Ingenjörsmässigt arbetssätt Best practices, m.m... 2
3 Organisation av Java Program Program består normalt av (väldigt) mycket kod Java JDK 1.5, ncss (non commenting source statements) Koden organiserad i 671 klasser, gränssnitt, enum, m.m. Hur organiserar man program med (väldigt) många klasser, gränsnitt, m.m.??? Eclipse 3.0, klasser Vi behöver en större enhet..! 3
4 Paket (Packages) [Java] Programs are organized as sets of packages. //Java language Specification 3Ed Chapter 7 Program Paket (UML symbol) 4
5 OBS: Begrepp En applikations delar Paket? Moduler? Komponenter? Subsystem? Oklara begrepp Ibland samma sak, ibland olika, ibland överlappande,... Finns ingen allmänt accepterad definition 5
6 Paketmedlemmar Paketmedlemmar är klassertyper (class, enum), gränssnittyper (interface, m.fl.) och (sub) paket Unika namn inom paketet Eftersom paket kan vara medlemmar får vi en hierarki, återkommer... I fortsättningan; Typ = class, interface eller enum 6
7 OBS: Språk All programutveckling sker på Engelska Alla filer/kataloger på Engelska Alla kod skrivs på Engelska (även kommentarer) Undvik namn med, : och liknande 7
8 Paketdeklaration Anger i vilket paket typen ingår Anges först i filen m.h.a. package // File Operator.java package calculator; public class Operator { Typer tillhör exakt ett paket Anges inget tillhör det default package Paketnamn skrivs med enbart små bokstäver 8
9 Subpaket Subpaket anges med punktnotation toplevel.sub.subsub //Subpackage of calculator package calculator.gui; public class MainFrame { 9
10 Paket och Synlighet Default: Typer bara synliga inom paketet package calculator; class Operator{ //Use in calculator only } Kan göras tillgänglig för andra paket package calculator; public class Operator { } Undantag: java.lang.* (importeras automatiskt) 10
11 Paket och Synlighet (forts) Om man utelämnar accesspecificationen (public, private, protected) gäller paketsynlighet Typer i samma paket kommer alltså åt instansvariabler, dåligt Ange alltid access 11
12 Kvalificerade typnamn Kvalificerade typnamn = paketnamn + typnamn package calculator.gui; public class MainFrame { } // Fully qualified name calculator.gui.mainframe 12
13 Unika kvalificerade typnamn Måste ha unika typnamn Skall inte uppstå problem då man t.ex. hämtar kod från nätet Skapa unika kvalificerade typer genom ett antal inledande tomma paket // edu.chl.hajo just to make type name // unique (no types in packages) package edu.chl.hajo.calculator.gui public class MainFrame { 13
14 Import deklarationer Om man använder typer från anda paket Måste referera till en typens kvalifierade namn Jobbigt att skriva En import-deklaration gör att man kan använda det okvalificerade typnamnet En ren bekvämlighet Inget speciellt händer Ibland problem (måste ange kvalificerat namn) java.util.date och java.sql.data (i samma klass) 14
15 Pakettillhörighet Hur placera typer i paket? Icke-trivialt (finns inget givet svar) Logiskt sammanhörade i samma paket De utför tillsammans en bestämd uppgift Kallas ofta subsystem Klasser som representera den data programmet arbeter med Kallas ofta OO-modellen (eller analys modell eller domän modell) Rena hjälpklasser 15
16 Paket och Filsystem I Java en koppling mellan paket och mappar i filsystemet Ett paket (den logiska enheten) motsvaras av en (sub) mapp i filsystemet (konkret enheten) //Must be in directory calculator package calculator; public class Operator {... //Must be in subdirectory gui of calculator package calculator.gui; public class MainFrame {... 16
17 Några Typiska Paket edu.chl.hajo.calculator Toppaket för en applikation som skall heta calculator. Innehåller enbart Main-klassen edu.chl.hajo.calculator.gui GUI delar till programmet edu.chl.hajo.calculator.core Klasser so utgör själva kärnan I programmet edu.chl.hajo.calculator.util Diverse hjälpklasser 17
18 Paket och Programdesign Ingår t.ex. i design mönstret Facade Fördelar Information hiding på typnivå (dölja typer) Minimera beroenden mellan paket Möjligt att byta ut ett helt paket (kanske kommit en effektivare implementation) 18
19 Nästa Organisationsnivå Om man har väldigt många paket? Skapa jar-filer (bibliotek) med ett antal paket Skapas med kommandot jar jar cvf calculator.jar C bin edu Bygg upp programmet med bibliotek Om man har många bibliotek (med många olika versioner)... Eventuellt; jar hell 19
20 Utvecklingsmiljö Ett program består av mer än Java-filer Paket, konfigurationsfiler, ikoner, program-externa texter (i18n), testsviter, m.m. Då man startar utvecklingen organiserar man sin miljö Normalt skapas en projektkatalog Ev. redan klart I labbar 20
21 Källkod och Binärer Vill vi skilja på källkod (source = *.java) och binärer (binaries = *.class) Annars får vi dubbelt antal (snarlika) filer på samma ställe, rörigt class-filer ointressanta arbetar inte med dessa Binärerna kan vi kasta, nya efter varje kompilering 21
22 Filstruktur Utvecklingsmiljö Struktur projektkatalog (.ep = Eclipse project, mer strax...) myproj.ep // project directory bin // binaries edu // package hierarchy... //...created at compilation src // source edu // package hierarchy... //...created by you 22
23 OBS: Filhantering Måste ha full kontroll på filer! Vilka har jag? Var de finns? Vad kör jag? Annars: Problem!!! Skulle ha lyssnat på Joachim... 4 timmar senare... 23
24 Kompilera och Exekvera Java kompilatorn måste veta var alla java-filer finns (en enda rad) javac sourcepath src edu.chl.hajo... Main.java d /bin Java-maskinen måste veta var alla class-filer finns Om du står i projektkatalogen (-v) java cp./bin edu.chl.hajo... Main cp = classpath = där pakethierarkin för binärer börjar Därefter: Kvalificerade namnet på klassen som innehåller main-metoden (enkelt: Den heter Main) 24
25 Verktyg Vi kommer att använda Open Source Finns gratis på Webben 25
26 Eclipse i Princip Skapa projekt Kommer att skapa projektkatalogen enligt föregående Lägg till filer och annat m.m. av File > New... Koda, kör, felsök Använd Eclipse för att generera kod Vid behov strukturera om för att få bättre namn m.m. (refactor) Klart: Skapa en jar-fil för leverans till kund 26
27 Eclipse Begrepp View, ett internt fönster t.ex. Package Explorer Editor, ett fönster där man kan behandla text (i vårt fall bara Java kod) Generellt finns massor med editorer, C/C+ +/PHP/Perl/... Perspective, en viss uppsättning view's och editor's ordnade på ett visst sätt (layout) Vi använder: Java Perspective, Debug perspective Allt finns under Window menyn 27
28 Eclipse Demo Ni kommer att göra all detta i eftermiddag Demon går för snabbt Eclipse video tutorial här 28
29 OBS: Eclipse, se upp! Ibland uppdateras inte ikoner m.m. I GUI:et Felmarkeringar ligger kvar. Spara så uppdateras GUI:et Eclipse kompilerar automatisk i bakgrunden hela tiden Men om konstiga saker händer kan man tvinga Eclipse att verkligen kompilera om allt Meny: Project > Clean... 29
30 Felsökning Läs felutskrifter!!! Läs uppifrån och ner! Skala ner d.v.s. kommentera bort bit för bit till felet försvunnit Avkommentera en bit i taget till felet hittats ALDRIG ta bort (görs då man vekligen vet)!! Använd en debugger Finns inbyggt I Eclipse Undvik System.out.println() 30
31 Debugger Ett program som kan köra ditt program steg för steg "i slow motion" Kör sats för sats (statement) Före/efter varje sats kan man inspektera variabelvärden m.m. 31
32 Eclipse Debug Demo Detta kommer ni också att göra... 32
33 Kodkvalité För att skriva högkvalitativ kod krävs lång och bred erfarenhet Finns böcker Finns samlingar av s.k. best practices d.v.s. hur man erfarenhetsmässigt bör göra Se t.ex. Collected Java Practices Finns gott om verktyg för att analysera kodkvaité t.ex. Findbugs 33
34 Findbugs Undersöker koden utifrån ett stort antal kvalitets -regler (bug patterns) Bug patterns Statisk analys av binärer Vårt program körs inte Om programmet bryter mot någon regel ges en varning Delar upp felen i olika kategorier Correctness, Bad practice, Dodgy Visar var i källkoden problemet finns 34
35 Findbugs Demo Ni kommer att göra detta i eftermiddag 35
Verktyg och Utvecklingsmiljö. Jochim von Hacht
Verktyg och Utvecklingsmiljö Jochim von Hacht Verktyg Modern programutveckling innebär att man måste behärska ett antal verktyg Editorer Kompilatorer Avlusare (debugger) Versionhantering (kommer i projektkurs)
Läs merVerktyg 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
Läs merNetBeans 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
Läs merHä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/
Läs merNetBeans 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
Läs merEclipse. 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
Läs merPaket i Java. Joachim von Hacht
Paket i Java Joachim von Hacht The Java Language Specification (JLS) Beskriver formellt språket Java (senaste Java SE 8 edition) http://docs.oracle.com/javase/specs/ Ofta tung läsning (15.12.1) med det
Läs merEclipse en handledning
LUNDS TEKNISKA HÖGSKOLA EDAA01 Programmeringsteknik fördjupningskurs Institutionen för datavetenskap VT 2015 Eclipse en handledning 1 Inledning Här beskrivs Eclipse, den programutvecklingsmiljö som utnyttjas
Läs mer2 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/
Läs merEclipse en handledning
LUNDS TEKNISKA HÖGSKOLA VT 2014 Institutionen för datavetenskap Eclipse en handledning 1 Inledning Här beskrivs Eclipse, den programutvecklingsmiljö som utnyttjas i programmeringskurserna. Mera information
Läs merKompilering av Java-program med eclipse SDK för den som kan BlueJ
1 (5) Kompilering av Java-program med eclipse SDK för den som kan BlueJ Inledning Eclipse är ett kraftfullt kodutvecklingsverktyg för Java. Det kan laddas ner gratis från www.eclipse.org. I detta papper
Läs merAtt använda Java SE JDK 6
Att använda Java SE JDK 6 Programmeringsspråket Java är utvecklat av det amerikanska företaget Sun Microsystems. Sun erbjuder gratis en utvecklingsmiljö för java-programmering, Java 2 SE (Standard Edition).
Läs merLaboration 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
Läs merEditering, 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)
Läs mer725G61 - 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
Läs merProgrammering 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
Läs merLaboration 10 - NetBeans
Laboration 10 - NetBeans 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
Läs merProgramutveckling med Java Development Kit. (JDK 1.1.x) och Programmers File Editor (PFE 7.02)
UMEÅ UNIVERSITET Institutionen för datavetenskap Thomas Johansson Oktober 1998 Programutveckling med Java Development Kit (JDK 1.1.x) och Programmers File Editor (PFE 7.02) Umeå universitet 901 87 Umeå.
Läs merFöreläsning 10. Paket Synlighet Arkiv. DA129A Programmering 1
Föreläsning 10 Paket Synlighet Arkiv Paket I java placeras klasser i paket. Klasser som hör ihop placeras i samma paket. Vill man använda en klass i ett program måste paketet importeras (om inte program
Läs merEclipse. 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/
Läs merJava: 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
Läs merKompilering 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
Läs merInledande programmering med C# (1DV402) Ditt första C#-program med Visual Studio
Ditt första C#-program med Visual Studio 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å
Läs merSKAPA DET FÖRSTA PROJEKTET I mikrobasic PRO for AVR
SKAPA DET FÖRSTA PROJEKTET I mikrobasic PRO for AVR 2 Projekt mikrobasic PRO for AVR organiserar applikationer som projekt vilka består av en enda projektfil (med filändelsen.mbpav) och en eller flera
Läs mer2I1049 Föreläsning 9. Iterativ programutveckling. Iterativ programutveckling. Modularisering, återanvändning och JavaBeans
2I1049 Föreläsning 9 Modularisering, återanvändning och JavaBeans KTH-MI Peter Mozelius Iterativ programutveckling Iterativ utveckling evolutionär utveckling inkrementell utveckling Att bygga programmen
Läs merArv. Fundamental objekt-orienterad teknik. arv i Java modifieraren protected Lägga till och modifiera metoder med hjälp av arv Klass hierarkier
Arv Fundamental objekt-orienterad teknik arv i Java modifieraren protected Lägga till och modifiera metoder med hjälp av arv Klass hierarkier Programmeringsmetodik -Java 165 Grafisk respresentation: Arv
Läs merVersionshantering. Jan Erik Moström
Versionshantering Jan Erik Moström Johan Eliasson Versionssystem Gjorda för att användas av en eller flera personer på en eller flera platser, exempelvis: För en ensam användare som jobbar med ett projekt
Läs merAtt använda Java SE JDK 6
Att använda Java SE JDK 6 Programmeringsspråket Java är utvecklat av det amerikanska företaget Sun Microsystems. Sun erbjuder gratis en utvecklingsmiljö för java-programmering, Java 2 SE (Standard Edition).
Läs merJAVA 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
Läs merProgrammering i C++ Kompilering från kommandoraden
Programmering i C++ Kompilering från kommandoraden Sven Gestegård Robertz Datavetenskap, LTH 9 november 2015 Sammanfattning Ibland vill man, av olika anledningar, inte använda en stor integrerad utvecklingsmiljö
Läs mer732G 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 (
Läs merImperativ programmering. Föreläsning 4
Imperativ programmering 1DL126 3p Föreläsning 4 Imperativa paradigmer Ostrukturerad programmering Strukturerad programmering Procedurell programmering Objektorienterad programmering Klassbaserad programmering
Läs merTDDC30 Programmering i Java, Datastrukturer och Algoritmer Lektion 2. Länkade listor Stackar Köer MyList Iteratorer Lab 2 Exceptions Paket
TDDC30 Programmering i Java, Datastrukturer och Algoritmer Lektion 2 Länkade listor Stackar Köer MyList Iteratorer Lab 2 Exceptions Paket 1 Länkade listor Likadant som i Ada-kursen. 2 Stack MyStack MyStack
Läs merF4. 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
Läs merSå här skriver du ditt första program i C++
Så här skriver du ditt första program i C++ Introduktion till att skapa Solution, Project och källkodsfil i Visual Studio 2013 Författare Anne Norling Kurs: Strukturerad programmering med C++ Kurskod:1DV433
Läs merÖ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
Läs merKort om klasser och objekt En introduktion till GUI-programmering i Java
Kort om klasser och objekt En introduktion till GUI-programmering i Java Klasser En klass är en mall för hur man ska beskriva på något. Antag att vi har en klass, Bil. Den klassen innehåller en lista på
Läs merArv: Fordonsexempel. Arv. Arv: fordonsexempel (forts) Arv: Ett exempel. En klassdefinition class A extends B {... }
En klassdefinition class A extends B {... Arv definierar en klass A som ärver av B. Klassen A ärver alla fält och metoder som är definierade för B. A är en subklass till B. B är en superklass till A. class
Läs merDesign av interaktiv multimedia. Läs i förväg om det som övningarna kommer att beröra. Träna hemma både före och efter övningarna.
Använd olika lager. Döp lagren! Organisera era bibliotek! Design av interaktiv multimedia Ge era symboler instansnamn för att hitta dem med AS. Nytt för denna kurs: Ingen ActionScript-kod i.fla-filen!
Läs merAVR Studio 4 Och AVRFLASH
Komma igång med AVR Studio 4 Och AVRFLASH Kjell Fällman 2010 Rev: 1 Laboration 1 AVR Studio 4, WinAVR(AVR-GCC) och AVRFLASH AVR Studio 4, ATMELs IDE för 8bits AVR MCU http://www.atmel.com/dyn/products/tools_card.asp?tool_id=2725
Läs merTDDC30 Programmering i Java, Datastrukturer och Algoritmer Lektion 2. Laboration 2 Datastrukturer En liten uppgift Frågor
TDDC30 Programmering i Java, Datastrukturer och Algoritmer Lektion 2 Laboration 2 Datastrukturer En liten uppgift Frågor 1 Laboration 2 - Datastrukturer Länkade datastrukturer Stack Kö (En. Queue) Lista
Läs merTentamen i TDP004 Objektorienterad Programmering Praktisk del
Tentamen i TDP004 Objektorienterad Programmering Praktisk del Datum: 2011-04-28 Tid: 08-12 Plats: SU-salar i B-huset. Jour: Per-Magnus Olsson, tel 281456 Jourhavande kommer att besöka skrivsalarna ungefär
Läs merOmkoppling av in- och utmatning. In- och utmatning i Unix. Kommando exempel, ls, pipe forts. Kommando exempel, ls, pipe
In- och utmatning i Unix Program i Unix skriver och läser till och från filer. En fil betyder här en vanlig fil med text eller binära data, ett tangentbord, en skärm, ett annat program etc. Innan ett program
Läs merReguljära uttryck. Reguljära uttryck. Nu kommer en siffra78 och en till SIFFRA(78) men utan 7kstuga SIFFRA(89)
Reguljära uttryck Ett sätt att söka och manipulera text Reguljära uttryck Konstruerar mönster som försöker hitta nåt i text Viktigt, användbart, många resurser http://regex.info/ http://etext.lib.virginia.edu/services/helpsheets/unix/regex.html
Läs merITK: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,
Läs merTentamen i TDP004 Objektorienterad Programmering Praktisk del
Tentamen i TDP004 Objektorienterad Programmering Praktisk del Datum: 2011-08-22 Tid: 14-18 Plats: SU-salar i B-huset. Jour: Per-Magnus Olsson, tel 281456 Jourhavande kommer att besöka skrivsalarna ungefär
Läs merFö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
Läs merCommand 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
Läs merObjektorienterad 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
Läs merRefaktorisering och UML med Eclipse
1. Introduktion Refaktorisering och UML med Eclipse Eclipse är en utvecklingsmiljö för allehanda uppgifter. Den innehåller bland annat ett mycket kvalificerat stöd för programutveckling i Java. Den är
Läs merIdag. statiska metoder och variabler. private/public/protected. final, abstrakta klasser, gränssnitt, delegering. wrapper classes
Idag statiska metoder och variabler private/public/protected final, abstrakta klasser, gränssnitt, delegering wrapper classes ett lite större exempel Objectorienterad programmering Sida 1 Vad vi vet om
Läs merUML. Klassdiagr. Abstraktion. Relationer. Överskugg. Överlagr. Aktivitetsdiagram Typomv. Typomv. Klassdiagr. Abstraktion. Relationer.
Översikt Klasshierarkier UML klassdiagram Relation mellan klasser mellan klasser och objekt Association ning ing andling Programmering tillämpningar och datastrukturer 2 UML UML Unified Modeling Language
Läs merKompilera 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
Läs merObjekt, Klasser, Paket m. m.
Objekt, Klasser, Paket m. m. Bildserie 3 Objekt Ett objekt karakteriseras av - Identitet, det som gör det möjligt att särskilja objektet från andra objekt - Tillstånd, den data som finns i objektet - Beteende,
Läs merLÖ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
Läs merTentamen Programmering fortsättningskurs DIT950
Tentamen Programmering fortsättningskurs Datum: 2015-03-17 Tid: 08.30-12.30 Hjälpmedel: Engelskt-Valfritt språk lexikon Betygsgränser: U: -23 G: 24-43 VG: 44-60 (max 60) Lärare:. Någon besöker ca 10.00
Läs merTENTAMEN. Kurs: Objektorienterad programmeringsmetodik 5DV133 Ansvarig lärare: Anders Broberg. VT-13 Datum: 13-06-05 Tid: kl 16.00-20.
Umeå Universitet Datavetenskap Anders Broberg 130605 TENTAMEN Kurs: Objektorienterad programmeringsmetodik 5DV133 Ansvarig lärare: Anders Broberg VT-13 Datum: 13-06-05 Tid: kl 16.00-20.00 Namn: Personnummer:
Läs merRefaktorisering och UML med Eclipse
1. Introduktion Refaktorisering och UML med Eclipse Eclipse är en utvecklingsmiljö för allehanda uppgifter. Den innehåller bland annat ett mycket kvalificerat stöd för programutveckling i Java. Den är
Läs merObjektorienterad 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
Läs merUpplägg. Introduktion. Examination. Mål. Konsekvenser. Java. Kursen heter konstruktion, ej design eller formgivning.
Introduktion Upplägg Kursen heter konstruktion, ej design eller formgivning. det handlar främst om att lära sig att bygga gränssnitt som är sunda den är praktiskt orienterad; vetenskapliga teorier finns,
Läs merA ToolGuide for Eclipse: En fördjupning i några av verktygen i Eclipse och hur de underlättar XP s practices
A ToolGuide for Eclipse: En fördjupning i några av verktygen i Eclipse och hur de underlättar XP s practices Mattias Jarheden och Thomas Forsström Sammanfattning Denna djupstudie försöker ge en inblick
Läs merCode-Lite tutorial ( /RoJ)
Code-Lite tutorial (2013-03-20/RoJ) Följ dessa anvisningar för att skapa projekt, kompilera/länka och testa dina laborationsuppgifter 3,4. Project Projekt, innehåller bland annat ett antal källtextfiler
Läs merWindows Forms Winstrand Development
2013-01-23 1 Winstrand Development Användargränssnitt Hittills har vi skapat program för kommandoraden. Den bakomliggande koden fungerar som den ska, men vi upptäcker snabbt att programmen är begränsade
Läs merObjektorienterad Programkonstruktion. Föreläsning 3 9 nov 2015
Objektorienterad Programkonstruktion Föreläsning 3 9 nov 2015 Kursnämnd Namn kommer... UML: Klassdiagram UML: Relationer Ärver från superklass Implementerar gränssnitt Dubbelriktad eller oriktad relation
Läs merLaboration 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
Läs merVem ä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)
Läs merÖversikt. Programmering tillämpningar och datastrukturer. Vad kursen täcker. Lärare. Rekommenderad litteratur. Kursmål 729G58 (HKGBB7)
Översikt Programmering tillämpningar och datastrukturer 729G58 (HKGBB7) Kursinformation Objektorienterad programmering: Klasser och objekt Arv Polymorfism Metoder Programexempel Programmering tillämpningar
Läs merGrundkurs i programmering - intro
Grundkurs i programmering - intro Linda Mannila 4.9.2007 Dagens föreläsning Allmän kursinformation: mål, syfte, upplägg, examination, litteratur, etc. Hur arbetar en dator? Hur vi får datorn att förstå
Läs merGrundlä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
Läs merTDDC30. Objektorienterad programmering i Java, datastrukturer och algoritmer. Föreläsning 2 Jonas Lindgren, Institutionen för Datavetenskap, LiU
TDDC30 Objektorienterad programmering i Java, datastrukturer och algoritmer. Föreläsning 2 Jonas Lindgren, Institutionen för Datavetenskap, LiU På denna föreläsning: Konstruktorer Statiska metoder & attribut
Läs merAndroid och iphone. Kalle Prorok April 2011
Android och iphone Kalle Prorok April 2011 Jämförelse - Utvecklingsplattform Apple iphone Slutet Kostar Kontrollerat Beprövat Pålitligt Begränsat En tillverkare Populärt Android Öppet Gratis Fritt Nytt
Läs merLaboration 2: Ett kommunikationssystem
Laboration 2: Ett kommunikationssystem 1 Syfte Att arbeta ännu mer med OO-design och programmering, framför allt programmering mot gränssnitt. Undantag och felhantering. Parallellism 2 Uppgift Ni skall
Läs merInledning. Vad är ett datorprogram, egentligen? Olika språk. Problemlösning och algoritmer. 1DV433 Strukturerad programmering med C Mats Loock
Inledning Vad är ett datorprogram, egentligen? Olika språk Problemlösning och algoritmer 1 (14) Varför använda en dator? Genom att variera de program som styr datorn kan den användas för olika uppgifter.
Läs merGuide till RefWorks Skapa ett RefWorks-konto Under Citera och referera > RefWorks Hjälp funktioner i RefWorks Help Tutorial Help
Guide till RefWorks Denna guide beskriver kort hur du kommer igång med RefWorks, hur du importerar referenser till RefWorks, delar dina referenser med andra samt hur du refererar och skapar referenslistor.
Läs merLaboration 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.
Läs merLabb 1: Vad, hur, och varför?
Labb 1: Vad, hur, och varför? jonas.kvarnstrom@liu.se 2017 "En sak i taget": Öva grunder innan det blir mer komplicerat Starkt önskemål från studenter: Prova på kontrollstrukturer Labb 1: Intro till grunder
Läs merObjektorienterad 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
Läs merUTVECKLINGSVERKTYG. Praktiska tips för PUM-projekten
UTVECKLINGSVERKTYG Praktiska tips för PUM-projekten TEKNIKER I PROJEKTEN ios 2 C#.NET 1 Java (inkl Android) 6 Webb (HMTL/JS) 4 En genomskumning av de tilldelade projektförslagen ger ovanstående uppfattning
Läs merVersionshantering med Git
Versionshantering med Git Vad, varför och hur? Magnus Nielsen Institutionen för datavetenskap, LiU magnus.nielsen@liu.se Vad ska jag ha Git till? Versionshantering Sparar källkod (eller vad som helst)
Läs merObjektorienterad Programkonstruktion. Föreläsning 3 7 nov 2016
Objektorienterad Programkonstruktion Föreläsning 3 7 nov 2016 Klass/instans Med hjälp av nyckelordet static kan vi bestämma att en metod eller ett fält ska tillhöra själva klassen i stället för en specifik
Läs merKomponenter med COM (och COM+/VC++ 7.0)
MÄLARDALENS HÖGSKOLA Komponenter med COM (och COM+/VC++ 7.0) Med Visual C++ 7.0 COM-komponent EI0230 Komponentbaserad applikationsutveckling oktober 2003 Om denna sammanfattning Denna sammanfattning innehåller
Läs merDetta dokument skall ge en kortfattad introduktion till Jasmine installationen vid DSV.
Detta dokument skall ge en kortfattad introduktion till Jasmine installationen vid DSV. Kortfattat skall ni lära er följande. - Ni skall lära er att koppla upp er mot den lokala Jasmine databasen - Köra
Läs merStackar, köer, iteratorer och paket
Stackar, köer, iteratorer och paket Programmering för språkteknologer 2 Sara Stymne 2013-09-18 Idag Paket Stackar och köer Array resp länkad struktur Iteratorer Javadoc Kommentarer lab 1 Bra att de flesta
Läs merFö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:
Läs merTDP005, Projekt: objektorienterade system
TDP005, Projekt: objektorienterade system Laboration: Eclipse Höstterminen 2011 Introduktion Detta material innehåller övningar för Eclipse. Redovisning Dessa övningar behöver inte redovisas, men ni får
Läs merTDDC30 Programmering i Java, Datastrukturer och Algoritmer Lektion 3
TDDC30 Programmering i Java, Datastrukturer och Algoritmer Lektion 3 Laboration 3 Visualisering (och implementering) av sortering Exempel på grafik (med Swing-paketet) Frågor 1 Laboration 3 Visualisering
Läs merGissa ordet, tutorial
Gissa ordet, tutorial Detta är en introduktion till hur du kommer igång med Android-programmering för smartphones. I huvuduppgiften gör du ett enkelt spel, Vilket ord tänker jag på?, och laddar ned det
Läs merTUTORIAL: KLASSER & OBJEKT
TUTORIAL: KLASSER & OBJEKT I denna tutorial lär vi oss att använda klasser och objekt samt hur vi bygger en enkel applikation kring dessa. I tutorialen kommer det finnas en mängd kod som du antingen kan
Läs merChapter 4: Writing Classes/ Att skriva egna klasser.
Chapter 4: Writing Classes/ Att skriva egna klasser. I dessa uppgifter kommer du att lära dig om hur man definierar egna objekt genom att skriva klasser. Detta är grunden för att förstå objekt orienterad
Läs merLab 1: Första labben (2p) Inledning:
Data och Informationsteknik / Computer Science and Engineering Chalmers University of Technology and University of Gothenburg Magnus Myréen, men mycket av materialet är från Erland Holmströms kurs 2013
Läs merID1020 Introduktion av Maven. Dr. Jim Dowling
ID1020 Introduktion av Maven Dr. Jim Dowling jdowling@kth.se Vad använder ni för byggverktyg? Inget En IDE - NetBeans, Eclipse, IntelliJ, osv. Ant bättre* Maven Gradle *Gradle har en högre inlärningströskel
Läs merID1004 Laboration 3, 5-6 November 2012
18-okt-2012/FK ID1004 Laboration 3, 5-6 November 2012 Labben bör göras individuellt. Beräknad tid ca 2 timmar. Instruktionen antar att labben utförs i datasal, med hjälp av den integrerade utvecklingsmiljön
Läs merEDAA45 Programmering, grundkurs
1 / 50 EDAA45 Programmering, grundkurs Läsvecka 4: Objekt Björn Regnell Datavetenskap, LTH Lp1-2, HT 2017 2 / 50 4 Objekt Vad är ett objekt? Singelobjekt Paket Tupler Fördröjd initialisering Funktioner
Läs merTUTORIAL: 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
Läs merDesign av en klass BankAccount som representerar ett bankkonto
Klasser Kommer ta upp följande begrepp: Design av en klass Implementera en klass Testa en klass med en mainmetod Instansvariabler, lokala variabler, formella parametrar, aktuella parametrar och variablers
Läs merOutline. 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
Läs merFöreläsning 8 - del 2: Objektorienterad programmering - avancerat
Föreläsning 8 - del 2: Objektorienterad programmering - avancerat Johan Falkenjack johan.falkenjack@liu.se Linköpings universitet Sweden December 4, 2013 1 Innehåll Arv och andra viktiga begrepp Abstrakta
Läs merSKAPA DET FÖRSTA PROJEKTET I mikrobasic PRO for PIC
SKAPA DET FÖRSTA PROJEKTET I mikrobasic PRO for PIC TILL VÅRA VÄRDEFULLA KUNDER Jag vill framföra mitt tack till er för att ni är intresserade av våra produkter och för att ni har förtroende för MikroElektronika.
Läs merInkapsling tumregler. Åtkomstmodifikatorer, instantiering, referenser, identitet och ekvivalens, samt klassvariabler. public och private
Inkapsling tumregler Åtkomstmodifikatorer, instantiering, referenser, identitet och ekvivalens, samt klassvariabler Tobias Wrigstad (baserat på material från Tom Smedsaas) 5 november 2010 1. Man skall
Läs merTentamen i TDP004 Objektorienterad Programmering Praktisk del
Tentamen i TDP004 Objektorienterad Programmering Praktisk del Datum: 2009-08-24 Tid: 14-18 Plats: SU-salar i B-huset. Jour: Per-Magnus Olsson, tel 285607 Jourhavande kommer att besöka skrivsalarna ungefär
Läs mer