#3Software planning
refactor
Vermijdt dubbele code Welke code lijkt veel op elkaar?
Nieuwe functie / member maken Verhuizen naar (super)object Verhuizen naar ‘free function’
Assertions Abstractie niveaus Eindopdracht
Om goede parameters te garanderen assert(x > 0) Om het bestaan van data te controleren assert(texture != 0) Om het programma te laten stoppen assert(false)
Iets hoort nooit te gebeuren Iets is nog niet geimplementeerd
Action Script 3 if (!expression) throw new Error("Assertion failed!"); C++ assert(expression); C# Assert.Test(expression);
Abstractie
Low level
case 0xF: if (channel == 0xF) // META event { param1 = *(m_event + 1); uint8_t *p2 = m_event + 2; length = GetVLQ(&p2); data = m_event + 3; m_nextEvent = m_event length; }
Low level API
DirectX OpenGL GX LibGMC FMOD BASS IrrKlang ODE Havok Ageia Graphics Geluid Physics
Low level API Wrappers
IDirect3DTexture9GLuintGXTexObj TextureD3DTexturePS3TextureWii Texture2D
IDirect3DTexture9GLuintGXTexObj TextureD3DTexturePS3TextureWii Texture2D TextureInterface Texture3D
Low level API Wrappers Engine
Code Editor Content pipeline (Maya plugin, etc) Etc.
Entrypoint Mainloop InputhandlerRenderer Artificial IntelligenceGame-world update
Zie USAT blog voor youtube link
Schrijf een refactoring-plan voor je medical project in maximaal 2 A4tjes Uiterlijk 19 maart in mijn mailbox.
Bekijk de video Scrum et al. en vat deze samen in maximaal 2 A4tjes Uiterlijk 19 maart in mijn mailbox.