This time:
- Beyond programmable shading course
- TDD
- GotW & C++11 Style
- Properties
- OpenGL talk from NVidia
I tried not only to put the links but also add some thoughts on most of articles/presentations.
http://bps12.idav.ucdavis.edu/
Beyond programmable shading course.
backwards-is-forward-making-better-games-with-test-driven-development
This is quite old (from March 2006) article, but one of the best about Test Driven Development. It is worth reading especially by game developers. TDD is a programming methodology that puts (unit)tests as a main foundation for creating the software. The process is a 'reverse' of waterfall approach - where you test after the milestone (or event at the end of the development). Here is the basic form of TDD:
- divide the project into smaller parts, and for each part, (for each small functionality):
- write a simple test
- run it and get errors (because there is no code yet...)
- write the simplest code that passes the test
- refactor and improve the unit
- this iteration should be very fast (even several minutes)
Disadvantages: more code is written (but sometimes it can be an advantage), slows down development at the beginning (but this can be treated as an investment).
More links:
- http://gamesfromwithin.com/when-is-it-ok-not-to-tdd
- http://gamesfromwithin.com/exploring-the-c-unit-testing-framework-jungle
- http://code.google.com/p/googletest/
http://herbsutter.com/ - GotW & C++11 Style
Web page of Herb Sutter. Should be known to any cpp programmer. There are two links I would like to describe:
Article by Allen Hollub that explains pros and cons of using properties (in C# this time). In general properties are not so bad and from time to time one can use this. It is important, though, to know their disadvantages. Key issue is the lack of encapsulation when using them. Objects should be black boxes to their users. When you expose public int SuperValue { get; set; } then that SuperValue is visible to other users and this might be a problem when you want to change implementation of the class (but not the interface).
I can agree with most of the author's view on that matter. More and more I get the feeling that OOP is quite hard :)
NVIDIA OpenGL in 2012 Speaker(s): Mark Kilgard, NVIDIA
Mark is one of the most influential person in OpenGL world. In this rather short presentation he explains new features of OpenGL 4.3 and adds thoughts about new versions. It is worth to mention that in this year we have 20th anniversary of the OpenGL standard!
image from: openclipart.org