Next previous Refactoring och lite mönster kodade i Java Innehåll Vad är refactoring? Ett större refactoringexempel Några mönster kodade i Java OOMPA 2000.

Slides:



Advertisements
Liknande presentationer
Föreläsning 3 25 jan 2010.
Advertisements

Samtala om böcker.
Hur kan vi arbeta mot mobbning. eller Hur kan vi arbeta för vänskap
VÄRDEGRUNDSARBETE Åmålsgården, Åmåls Kommun
Hur skapar vi objekt och klasser? Några grundläggande regler
Alternativa tillvägagångssätt Registrera ny intervju i BCFPI
Barnanpassad utredning
Utveckla en applikation Kursbok: “Objects First with Java - A Practical Introduction using BlueJ”, David J. Barnes & Michael Kölling Fredric Ragnar
Skriftspråksförändringar
Learning Study / Stöd för genomförande och dokumentation
Föreläsning 7, Kapitel 7 Designa klasser Kursbok: “Objects First with Java - A Practical Introduction using BlueJ”, David J. Barnes & Michael Kölling.
 För att få kunskaper om arbetslivet  Förstå vad det betyder för människan och samhället att arbeta.  Lära sig om att få vara med och bestämma och.
Golv, väggar, tak. fönster och en dörr
Slöjd Presentation! Av: Malte Bergman.
Tekniken, fördelar och nackdelar Av Elin och Johan Olofsson ht-07
Smartare administration i Quality Center HUGS 3 april 2008 Jan Czajkowski
Next previous XP: varför fungerar det? Något om tentan. Innehåll Introduktion till eXtreme Programming (XP) Varför fungerar XP? Något om tentan Vad ska.
Funktioner och programorganisation
Instruktioner Vilken grupp av frågor känner du att du instämmer mest med? Instämmer du i hög grad med de första 10 frågorna är din självkänsla lägre.
Det industriella genombrottet
Syftet med en personlig handlingsplan
Ingrid Svensson, Eva Horneij Inquiry-based learning ( IBL) - En pedagogisk metod som stimulerar till nyfikenhet och gränsöverskridande lärande”
Fortsättningskurs i Programmering lektion 3 Johan Hjerling
Logikprogrammering Ons, 25/9
Föreläsning 7 Analys av algoritmer T(n) och ordo
Dialogkort - arbetsmiljö och hälsa
Föreläsning 2 Datalogi för E1 2D1343
K ALLE K ARLSSON IUP vt J AG GÅR I SKOLAN FÖR ATT …
© Patrick Blackburn, Johan Bos & Kristina Striegnitz FL 7: Cut och negation (kap. 10) Teori –Förklarar hur man kontrollerar Prologs backtracking-beteende.
I taket lyser stjärnorna Johanna Thydell
IKT i nöd och lust! Hur får man eleverna att ta eget ansvar? Hur får man dem att samarbeta? Och hur får man lärare att vilja jobba ämnesövergripande?
Java. Kortfattat om Java Syntaxen påminner i hög grad om C++ Stöd för objektorientering Kod kan köras i en virtuell maskin som finns tillgänglig för nästan.
Du ÖnskAs en rigtigt gOD jul GOD JUL Först, klicka på stjärnan på julgranen, så vi kan få ljus i den….
Vad är du för typ av person?
Workshop inför Projektet
Resultatfokus Den resultatfokuserade definitionen av en vinnare handlar om tre saker: resultat jämförelse med andra undvika misstag.
+ stadsplanering Dansande robot!. + Motivering Vilken plats valde du, och varför?
Positiv Livskraft © Att komma dit du vill
Subjekt, predikat, objekt Huvudsats, bisats
Ett naturvetenskapligt arbetssätt
Att sälja Lions Quest-kurser till skolor /14.
Design En process på modet i organisationer Patrik Persson Ekonomihögskolan, Linnéuniversitetet.
Barns delaktighet _____________________________________________________________________________________________________________________________________________________________________________________________________________________________________________
Exder EPC. Exder EPC Välkommen! I det här bildspelet går vi igenom hur man lägger upp nya artiklar samt skickar artikelinformation. Du bläddrar framåt.
Frågor om elevinflytande till elever i åk 3 – 9 i grundskolan
Tredje världskriget Emma Augustin, Matilda Blohm, Oscar Pettersson, Adam Qvirist, Caroline Pettersson & Matilda Krantz.
Next previous Mjukvaruprocessen: översikt och repetition. XP: problemformulering. JUnit. Innehåll Allmännt om utvecklingsprocesser från Bruegge kapitel.
Problemlösning Veckodagsproblemet Gissa talet Siffersumman.
Efterfrågemodeller R. D. Jonsson, Transportmodellkurs Trafikverket
Jonny Karlsson INTRODUKTION TILL PROGRAMMERING Föreläsning 7 ( ) INNEHÅLL: -Klasser -Att definiera egna klasser -Klassvariabler -Klassmetoder.
Vad är en bra webbplats? KANO Förtroendeingivande Effektiv Användbar Tillgänglig Ändamålsenlig Snabb och responsive Sökoptimerad Lättdelad Åtkomlig.
Samhällsvetenskapliga metoder
MDI och användbarhet Måndagen den 27/3 Design och utvärdering, 5 poäng.
Utvecklingsprocessen Webbutveckling. Utvecklingsprocessen Bli inte rädd för alla begrepp och alla verktyg man verkar behöva kunna. Du måste inte använda.
Att förstå beteenden- grundläggande inlärningsteori
7 1 Programmerare vs. Designers Sus Lundgren. 7 2 Programmerare vs. Designers Sus Lundgren.
Läsbar prolog CM 8.1. allmäna principer correctness user-friendliness efficiency readability modifiability robustness documentation.
Några möjliga steg i arbete med förändring och utveckling Eva Aalbu, den 8 april 2011 Folkhälsocentrum Demokrati, mer än valdeltagande.
KONSTEN ATT SKRIVA BRA ÅTERANVÄNDBAR KOD Pierre Setteskog, Pontus Munck
Dax att rösta Händerna på knapparna. Vilket ref-program använder du idag? 1.Inget 2.EndNote 3.EndNote Web 4.Refworks 5.Reference Manager 6.Connotea 7.CiteULike.
Räkneord Numeral.
Att Skapa Serier.
Textilarbete Alice Höök.
Satslogik, forts. DAA701/716 Leif Grönqvist 5:e mars, 2003.
OOP F5:1 Stefan Möller OOP Objekt-orienterad programmering Föreläsning 5 Klasser och objekt Skapa objekt - new Referenser Konstruktorer Inkapsling.
Jonny Karlsson PROCESSPROGRAMMERING Föreläsning 6 ( )‏ Innehåll:  Att designa parallella program - manuell vs. automatisk parallellisering.
Föreläsning 1 Introduktion till kursen. Algoritmer
Program indata ? utdata 1/20 Vahid Mosavat, Nada, KTH.
Hur kan jag öka arbetsglädjen
Anpassa fri programvara - Frihet ett, hur nyttjar man den? Copyright © 2006, 2007 Marcus Rejås Rejås Datakonsult Jag ger härmed rätten till alla att nyttja.
Presentationens avskrift:

next previous Refactoring och lite mönster kodade i Java Innehåll Vad är refactoring? Ett större refactoringexempel Några mönster kodade i Java OOMPA 2000 Föreläsning 10

previous next 2 Refactoring och lite mer designmönster Vad är refactoring? Definition 1 –Refactoring (som substantiv): är en förändring som av mjukvarans interna struktur som görs för att det skall bli lättare att förstå respektive förändra den, utan att behöva förändra dess observerbara beteende Definition 2 –Refactoring (som verb): att omstrukturera mjukvara genom att göra en serie ”refactorings” utan att för den skull ändra dess observerbara beteende

previous next 3 Refactoring och lite mer designmönster Dom två hattarna När du kodar är det bra att ha (minst) två hattar! –En har du på dig då du lägger till funktionalitet –En har du på dig då du omstrukturerar och ändrar på andra sätt för att koden skall bli bättre/snyggare, dvs gör refactoring

previous next 4 Refactoring och lite mer designmönster Varför bör man göra refactoring? Refactoring förbättrar mjukvarans design –Koden ”ruttnar” annars lätt med tiden Man gör (snabba) kortsiktiga förändringar utan att fullt ut tänka på designen –Med kontinuerlig förbättring av koden behövs vanligen mindre kod för att göra samma sak som om man hade använt ”fulare” kod Refactoring gör att det blir enklare att förstå mjukvaran –Ett syfte med refactoring är att få snyggare kod, så...

previous next 5 Refactoring och lite mer designmönster … Refactoring hjälper dig att hitta fel (buggar) –När man gör refactoring så måste man förstå koden bättre för att kunna designa om den vilket ofta leder till att man hittar buggar Refactoring hjälper dig att programmera snabbare –Kanske lite motstridigt till intuitionen eftersom du måste utföra flera aktiviteter, men i långa loppet ökas produktiviteten då man hela tiden gör refactoring

previous next 6 Refactoring och lite mer designmönster När ska man utföra refactoring? 3-regeln –Inte första gången –Inte andra gången man gör något liknande –Men tredje gången Då du lägger till funktionalitet När du måste fixa en bug Vid kodinspektion

previous next 7 Refactoring och lite mer designmönster Varför fungerar refactoring? Program som är svåra att förstå är svåra att modifiera Program som har logiken duplicerad är svåra att modifiera Programförändringar med ger nytt beteende som kräver förändring av existerande kod är svåra att göra Program med komplicerad ”villkorslogik” är svåra att förändra

previous next 8 Refactoring och lite mer designmönster Nu blir det vanliga OH-bilder Med ett större refactoring-exempel från Fowlers bok ”Refactoring Improving the Design of Existing Code” Med designmönster applicerade i Java-program från Jias bok ”Object-Oriented Software Development Using Java”