Search






My Shopping Cart

[ 0 ] items in cart

View Cart | Checkout


Game Developer Research
bullet Research Reports

Gamasutra
bullet Contractor Listings

GDC Vault
bullet Individual Subscription

GDC Audio Recordings
bullet App Developers Conference 2013
bullet GDC Next 2013
bullet GDC Europe 2013
bullet GDC 2013
bullet GDC Online 2012
bullet GDC Europe 2012
bullet GDC 2012
bullet GDC 2011
bullet GDC 10
bullet GDC 09
bullet GDC Austin 08
bullet GDC Mobile 08
bullet GDC 08
bullet GDC Austin 07
bullet GDC Mobile 07
bullet GDC 07
bullet GDC 06
bullet GDC 05
bullet GDC 04
bullet GDC 03
bullet GDC 01
bullet GDC 2000 & Before


Newest Item(s)
bullet

Why Now Is the Best Time Ever to Be a Game Developer

Ingress: Design Principles Behind Google's Massively Multiplayer Geo Game

Playing with 'Game'

Gathering Your Party with Project Eternity (GDC Next 10)

D4: Dawn of the Dreaming Director's Drama (GDC Next 10)

Using Plot Devices to Create Gameplay in Storyteller (GDC Next 10)

How I Learned to Stop Worrying and Love Making CounterSpy (GDC Next 10)

Luck and Skill in Games

Minimalist Game Design for Mobile Devices

Broken Age: Rethinking a Classic Genre for the Modern Era (GDC Next 10)


Storefront > GDC Vault Store - Audio Recordings > GDC 2006


View larger image
 


QTY:

Backwards Is Forward: Making Better Games with Test-Driven Development
Price $5.95
Adjustment
Type
Stock Unlimited
Status
Weight 0 lb, 0 oz
SKU GDC-06-021
Statistics
Description
Backwards Is Forward: Making Better Games with Test-Driven Development,
1528

Programming, Lecture

Noel Llopis
Senior Architect, High Moon Studios

Sean Houghton
Senior Programmer, High Moon Studios
Test-Driven Development (TDD) is a relatively new technique that, despite gathering a lot of momentum, has made very few inroads in our industry. However, this is a technique that is too useful to overlook any longer. In an industry where we're constantly pushing the boundaries and exploring the unknown, the benefits of TDD are a very good match for many of our development problems. Developing software with TDD might seem backwards at first glance: First a short unit test is written, then the code to make that unit test pass is implemented, and finally the code can be refactored (without changing its functionality). At that point, the cycle is repeated over and over, always starting with a unit test. The cycle itself should be short, in the order of a couple of minutes and all of the tests are required to run before moving forward. TDD has some very interesting consequences: It creates a safety net of unit tests, which allows for major refactorings or introducing new features late in development without fear of breaking existing code, it forces the developer to use his own code first, so it is always written from the point of view of the user of the code, it encourages more modular, simpler code that can be easily modified and reused, and it serves as a form of documentation that, unlike comments or documents, can never get out of date. Last but not least, it provides the developer with instant feedback, building his confidence in the code and even making the programming experience much more enjoyable. The talk starts with a general overview of TDD, followed by a detailed explanation of how to put it into practice, and a live TDD demonstration implementing a high-level game task fully in TDD. The second half of the session is dedicated to some of the unique aspects of game development, such as having different hardware platforms, dealing with graphics, or using middleware and how they affect TDD. Finally, the session concludes with the lessons learned at High Moon Studios from using TDD in a variety of projects.

Test-Driven Development (TDD) is a relatively new technique that, in spite of gathering a lot of momentum, has made very few inroads in our industry. This session explains what TDD is, how to effectively apply it to games, and what benefits we can expect from it. The presenters draw on over three years of experience applying TDD to games. TDD is currently being used for all code developed by the R&D team at High Moon Studio, as well as by the two teams working on game projects using the Unreal Engine 3 (which adds its own set of challenges to TDD).

Programmers of all levels and technical directors interested in a better way of developing software. The ideas of this session can be applied right away at the individual level, or rolled out to whole teams.

Please leave this field blank.

There are no related products to display.

Related Products...

Please leave this field blank.