Agile, test-driven development
Moose – Found Without Searching
The CPAN Test::Class::Moose module is still in beta; I only learned of its existence at the Perl YAPC conference  in early June in Austin, Texas – just a few hours before deadline for this issue. My first impression is that it is very stable; however, if you find any bugs, the author welcomes reports or patches for the module.
The advantage of test-driven development is undoubtedly the ever-growing test suite, which – if the developer works to plan – provides virtually 100 percent code coverage. If the customer suddenly springs change requests on you in the course of the project, TDD enthusiasts can adopt them without any worries, as the test suite guarantees that their adoption won't introduce fatal errors to previously working parts of the code.
Agile developers also need not worry too much about the most elegant way to implement a specific feature. A straightforward approach is good enough for the time being, and once the test suite shows green, they can move on to the next feature.
After spending a certain time in rapid development, you will naturally come across ugly pieces of code that need to be fixed every few iterations to make the software maintainable: If you find a duplicated piece of code, it can usually be swapped out into a function, and if parts of the system turn out to be known software patterns, you will want to convert them to their reference implementations.
This refactoring is a natural part of the process and does not usually cause any problems – again, thanks to the existing test suite and its extensive code coverage. If the test suite shows you a green light, your spring cleaning was successful.
- Listings for this article: ftp://ftp.linux-magazin.com/pub/listings/magazine/154
- Test::Class::Moose: http://search.cpan.org/~ovid/Test-Class-Moose-0.12/lib/Test/Class/Moose.pm
- Yet Another Perl Conference: http://www.yapc.org
Buy this article as PDF
HP's annual Cyber Risk report offers a bleak look at the state of IT.
But what do the big numbers really mean?
.NET Core execution engine is the basis for cross-platform .NET implementations.
The Xnote trojan hides itself on the target system and will launch a variety of attacks on command.
Spammers go low-volume, and 90% of IE browsers are unpatched.
Adobe scrambles to release patches for vulnerable Flash Player.
Four-inch-long computer on a stick lets you boot a full Linux system from any HDMI display device.
New statute would require companies to report break-ins to consumers.
Weird data transfer technique avoids all standard security measures.
FIDO alliance declares the beginning of the end for old-style login authentication.