17
13. Individual Project 3, Double Buffering, Pair Programming Minhaeng Lee IEDU Programming Activity, Summer, 2015

13. Pair Programming - ics.uci.eduminhaenl/class/2015/summer/13. Pair... · Pair Programming Pair programming (sometimes referred to as peer programming) is an agile software development

  • Upload
    others

  • View
    14

  • Download
    0

Embed Size (px)

Citation preview

Page 1: 13. Pair Programming - ics.uci.eduminhaenl/class/2015/summer/13. Pair... · Pair Programming Pair programming (sometimes referred to as peer programming) is an agile software development

13.IndividualProject3,DoubleBuffering, PairProgramming

MinhaengLee

IEDUProgrammingActivity,Summer,2015

Page 2: 13. Pair Programming - ics.uci.eduminhaenl/class/2015/summer/13. Pair... · Pair Programming Pair programming (sometimes referred to as peer programming) is an agile software development

DoubleBuffering

• Forgamedeveloper

• Blinking,whenwearedrawinganimatedobject.• Reason– Drawingtoscreenisrelativelyslow– Mightbeslowerthanframe-rate-per-second(FPS)

• Thinkwhenwehave100differentobjectsingamescreen

• InsteadofDrawingdirectly,• Drawmemoryimagefirstthencopytheimagetoactual

screen

Page 3: 13. Pair Programming - ics.uci.eduminhaenl/class/2015/summer/13. Pair... · Pair Programming Pair programming (sometimes referred to as peer programming) is an agile software development

DoubleBuffering

DoubleBuffering.java

Page 4: 13. Pair Programming - ics.uci.eduminhaenl/class/2015/summer/13. Pair... · Pair Programming Pair programming (sometimes referred to as peer programming) is an agile software development

PairProgramming

Pairprogramming(sometimesreferredtoaspeerprogramming)isanagilesoftwaredevelopmenttechniqueinwhichtwoprogrammersworkasapairtogetherononeworkstation.One,thedriver,writescodewhiletheother,theobserver,pointerornavigator,reviewseachlineofcodeasitistypedin.Thetwoprogrammersswitchrolesfrequently.

-wikipedia

Page 5: 13. Pair Programming - ics.uci.eduminhaenl/class/2015/summer/13. Pair... · Pair Programming Pair programming (sometimes referred to as peer programming) is an agile software development

PairProgramming

• 20mineachperson(becausewehaveonly120min)

• Ifyou– Haveenoughprogress– or– Hateworkwithother

• Thenyou– Canworkalone

• Otherwise– DoPairprogramming

Page 6: 13. Pair Programming - ics.uci.eduminhaenl/class/2015/summer/13. Pair... · Pair Programming Pair programming (sometimes referred to as peer programming) is an agile software development

IndividualProject:Tetris

• Basic– GetBlock(andother)images– Generation2DMap– Keyinput– ThreadbasedTimingControl• Framecontrol

– Game,Score,Nextzone• Advanced– Continuefromprevious– Item– AutoPlay

Page 7: 13. Pair Programming - ics.uci.eduminhaenl/class/2015/summer/13. Pair... · Pair Programming Pair programming (sometimes referred to as peer programming) is an agile software development

IndividualGoal:Tetris

• Oct11• Oct18• Oct25– Midcheckpoint

• Nov1• Nov8• Nov15– HTMLpagedrawing,– Final

Page 8: 13. Pair Programming - ics.uci.eduminhaenl/class/2015/summer/13. Pair... · Pair Programming Pair programming (sometimes referred to as peer programming) is an agile software development

IndividualProject:SneakGame

• Basic– GetSneakPartsimages– Generate2DMap– Keyinput– ThreadbasedTimeControl• Framecontrol

– Game,Scorezone• Advanced– Continuefromprevious– Item– AutoPlay

Page 9: 13. Pair Programming - ics.uci.eduminhaenl/class/2015/summer/13. Pair... · Pair Programming Pair programming (sometimes referred to as peer programming) is an agile software development

IndividualGoal:SneakGame

• Done– Moving,

• Oct11

• Oct18• Oct25– Midcheckpoint

• Nov1• Nov8• Nov15– HTMLpagedrawing,– Final

Page 10: 13. Pair Programming - ics.uci.eduminhaenl/class/2015/summer/13. Pair... · Pair Programming Pair programming (sometimes referred to as peer programming) is an agile software development

IndividualProject:MusicPlayer

• Basic– Getrequiredbuttonimages(play,stop…etc.)– CoverFlow(templateprovided)• ExampleGUI–CoverFlowDemo.java

– FileScanning– Fileload/save– PlayListManagement– MusicPlay/Stop

• Advanced– MusicEqualize

Page 11: 13. Pair Programming - ics.uci.eduminhaenl/class/2015/summer/13. Pair... · Pair Programming Pair programming (sometimes referred to as peer programming) is an agile software development

IndividualGoal:MusicPlayer

• Oct11– MusicPlayTest– CheckMP3Player.java,WAVPlayer.java

• Oct18• Oct25– Midcheckpoint

• Nov1• Nov8• Nov15– HTMLpagedrawing,– Final

Page 12: 13. Pair Programming - ics.uci.eduminhaenl/class/2015/summer/13. Pair... · Pair Programming Pair programming (sometimes referred to as peer programming) is an agile software development

IndividualProject:Calendar

• Basic– Datecontrol– JComponents– LayoutusingMigLayout(ExampleProvided)• ExampleGUI–DashboardDemo.java,SwingDemo.java

– EventAdd/Delete/Edit

• Advanced– Synctotheweb

Page 13: 13. Pair Programming - ics.uci.eduminhaenl/class/2015/summer/13. Pair... · Pair Programming Pair programming (sometimes referred to as peer programming) is an agile software development

IndividualGoal:Calendar

• Oct11– Prepare:Datelibrary– Goal:?

• Oct18• Oct25– Midcheckpoint

• Nov1• Nov8• Nov15– HTMLpagedrawing,– Final

Page 14: 13. Pair Programming - ics.uci.eduminhaenl/class/2015/summer/13. Pair... · Pair Programming Pair programming (sometimes referred to as peer programming) is an agile software development

IndividualProject:Flashcards

• Basic– Layout– Filemanagement(read/write)

• Advanced– FancyGUI– Onlinedatamanagement

Page 15: 13. Pair Programming - ics.uci.eduminhaenl/class/2015/summer/13. Pair... · Pair Programming Pair programming (sometimes referred to as peer programming) is an agile software development

IndividualGoal:FlashCards

• Oct11• Oct18• Oct25– Midcheckpoint

• Nov1• Nov8• Nov15– HTMLpagedrawing,– Final

Page 16: 13. Pair Programming - ics.uci.eduminhaenl/class/2015/summer/13. Pair... · Pair Programming Pair programming (sometimes referred to as peer programming) is an agile software development

Homework

• RecordYourProgressduringweek–WhatProblemyouhave–Whathaveyoudone– Noprogress,nothingtolearn• ReadLayoutSource– ExampleGUI–DashboardDemo.java