Journal Articles
Browse in : |
All
> Journals
> CVu
> 302 (12)
All > Topics > Programming (877) All > Journal Columns > Code Critique (70) All of these categories |
- Options:
- View Article Map
- View Archives
Note: when you create a new publication type, the articles module will automatically use the templates user-display-[publicationtype].xt and user-summary-[publicationtype].xt. If those templates do not exist when you try to preview or display a new article, you'll get this warning :-) Please place your own templates in themes/yourtheme/modules/articles . The templates will get the extension .xt there.
Does Test-Driven Development Harm Clarity?
Martin Moene
05 August 2014 16:05:50 +01:00
Is clarity the key thing to aim for when writing software? Andy Balaam considers if TDD harms clarity and if this matters.
Note: when you create a new publication type, the articles module will automatically use the templates user-display-[publicationtype].xt and user-summary-[publicationtype].xt. If those templates do not exist when you try to preview or display a new article, you'll get this warning :-) Please place your own templates in themes/yourtheme/modules/articles . The templates will get the extension .xt there.
Musings on Python – by a C++ Developer
Martin Moene
04 August 2014 16:10:10 +01:00
Python and C++ are very different languages. Sergey Ignatchenko walks through things in Python that can confuse a C++ programmer.
Note: when you create a new publication type, the articles module will automatically use the templates user-display-[publicationtype].xt and user-summary-[publicationtype].xt. If those templates do not exist when you try to preview or display a new article, you'll get this warning :-) Please place your own templates in themes/yourtheme/modules/articles . The templates will get the extension .xt there.
Activatable Object
Martin Moene
03 August 2014 19:30:42 +01:00
Using locks will slow down threaded code. Len Holgate demonstrates how an Activatable Object can reduce the time spent blocked.
Note: when you create a new publication type, the articles module will automatically use the templates user-display-[publicationtype].xt and user-summary-[publicationtype].xt. If those templates do not exist when you try to preview or display a new article, you'll get this warning :-) Please place your own templates in themes/yourtheme/modules/articles . The templates will get the extension .xt there.
KISSing SOLID Goodbye
Martin Moene
02 August 2014 19:38:51 +01:00
Can you remember what SOLID stands for? Chris Oldwood distills it down to two easy to remember principles.
Note: when you create a new publication type, the articles module will automatically use the templates user-display-[publicationtype].xt and user-summary-[publicationtype].xt. If those templates do not exist when you try to preview or display a new article, you'll get this warning :-) Please place your own templates in themes/yourtheme/modules/articles . The templates will get the extension .xt there.
TDD Discussions and Disagreements
Martin Moene
01 August 2014 19:47:09 +01:00
Recently people have been arguing about the benefits and pitfalls if TDD. Seb Rose summarises the differing standpoints and presents his own.
Note: when you create a new publication type, the articles module will automatically use the templates user-display-[publicationtype].xt and user-summary-[publicationtype].xt. If those templates do not exist when you try to preview or display a new article, you'll get this warning :-) Please place your own templates in themes/yourtheme/modules/articles . The templates will get the extension .xt there.
Branching Strategies
Martin Moene
05 June 2014 07:11:00 +01:00
Branching can either be embraced or avoided. Chris Oldwood documents the pros and cons of three main branching strategies.
Note: when you create a new publication type, the articles module will automatically use the templates user-display-[publicationtype].xt and user-summary-[publicationtype].xt. If those templates do not exist when you try to preview or display a new article, you'll get this warning :-) Please place your own templates in themes/yourtheme/modules/articles . The templates will get the extension .xt there.
Beauty in Code
Martin Moene
04 June 2014 07:15:36 +01:00
Attractiveness matters. Adam Tornhill uses a Clojure example to show how generalisation can be more beautiful than special cases.
Note: when you create a new publication type, the articles module will automatically use the templates user-display-[publicationtype].xt and user-summary-[publicationtype].xt. If those templates do not exist when you try to preview or display a new article, you'll get this warning :-) Please place your own templates in themes/yourtheme/modules/articles . The templates will get the extension .xt there.
The Code Is Not the Most Important Thing
Martin Moene
03 June 2014 18:48:21 +01:00
Choose the right sort of problem, focus on strategies for solving it, and the code will come easily. Seb Rose teaches kids to code.
Note: when you create a new publication type, the articles module will automatically use the templates user-display-[publicationtype].xt and user-summary-[publicationtype].xt. If those templates do not exist when you try to preview or display a new article, you'll get this warning :-) Please place your own templates in themes/yourtheme/modules/articles . The templates will get the extension .xt there.
Stop the Constant Shouting
Martin Moene
02 June 2014 18:54:11 +01:00
CONSTANTS often shout. Jonathan Wakely considers why this happens in C and what the alternatives are in C++.
Note: when you create a new publication type, the articles module will automatically use the templates user-display-[publicationtype].xt and user-summary-[publicationtype].xt. If those templates do not exist when you try to preview or display a new article, you'll get this warning :-) Please place your own templates in themes/yourtheme/modules/articles . The templates will get the extension .xt there.
Minimal Overhead for Multiple Interfaces
Martin Moene
01 June 2014 18:57:24 +01:00
Using multiple interfaces can slow things down. Daniel Gutson and Pablo Oliva present an alternative.
Note: when you create a new publication type, the articles module will automatically use the templates user-display-[publicationtype].xt and user-summary-[publicationtype].xt. If those templates do not exist when you try to preview or display a new article, you'll get this warning :-) Please place your own templates in themes/yourtheme/modules/articles . The templates will get the extension .xt there.
Size Matters
Martin Moene
07 April 2014 06:52:54 +01:00
Should you target 32 or 64 bits? Sergey Ignatchenko and Dmytro Ivanchykhin consider the costs and benefits.
Note: when you create a new publication type, the articles module will automatically use the templates user-display-[publicationtype].xt and user-summary-[publicationtype].xt. If those templates do not exist when you try to preview or display a new article, you'll get this warning :-) Please place your own templates in themes/yourtheme/modules/articles . The templates will get the extension .xt there.
Enforcing the Rule of Zero
Martin Moene
06 April 2014 06:58:18 +01:00
We’ve had years to get used to the old rules for making classes copyable. Juan Alday sees how the new standards change them.
Note: when you create a new publication type, the articles module will automatically use the templates user-display-[publicationtype].xt and user-summary-[publicationtype].xt. If those templates do not exist when you try to preview or display a new article, you'll get this warning :-) Please place your own templates in themes/yourtheme/modules/articles . The templates will get the extension .xt there.
Quality Matters #8: Exceptions for Recoverable Conditions
Martin Moene
05 April 2014 18:14:35 +01:00
Too many programs deal with exceptions incorrectly. Matthew Wilson suggests practical steps to improve your code.
Note: when you create a new publication type, the articles module will automatically use the templates user-display-[publicationtype].xt and user-summary-[publicationtype].xt. If those templates do not exist when you try to preview or display a new article, you'll get this warning :-) Please place your own templates in themes/yourtheme/modules/articles . The templates will get the extension .xt there.
Static – A Force for Good and Evil
Martin Moene
04 April 2014 18:22:00 +01:00
We’ve all learnt to avoid the use of the static keyword. Chris Oldwood questions this wisdom.
Note: when you create a new publication type, the articles module will automatically use the templates user-display-[publicationtype].xt and user-summary-[publicationtype].xt. If those templates do not exist when you try to preview or display a new article, you'll get this warning :-) Please place your own templates in themes/yourtheme/modules/articles . The templates will get the extension .xt there.
Search with CppCheck
Martin Moene
03 April 2014 07:03:33 +01:00
Finding code of interest is a vital skill but our tools are often too simple. Martin Moene tries something better.
Note: when you create a new publication type, the articles module will automatically use the templates user-display-[publicationtype].xt and user-summary-[publicationtype].xt. If those templates do not exist when you try to preview or display a new article, you'll get this warning :-) Please place your own templates in themes/yourtheme/modules/articles . The templates will get the extension .xt there.
Windows 64-bit Calling Conventions
Martin Moene
02 April 2014 07:00:53 +01:00
How the stack works is useful to understanding your programs’ behaviour. Roger Orr compares and contrasts.
Note: when you create a new publication type, the articles module will automatically use the templates user-display-[publicationtype].xt and user-summary-[publicationtype].xt. If those templates do not exist when you try to preview or display a new article, you'll get this warning :-) Please place your own templates in themes/yourtheme/modules/articles . The templates will get the extension .xt there.
Static Polymorphic Named Parameters in C++
Martin Moene
05 February 2014 11:29:49 +00:00
Adding parameters to an object can be messy. Martin Moene demonstrates how method chaining can make code more readable.
Note: when you create a new publication type, the articles module will automatically use the templates user-display-[publicationtype].xt and user-summary-[publicationtype].xt. If those templates do not exist when you try to preview or display a new article, you'll get this warning :-) Please place your own templates in themes/yourtheme/modules/articles . The templates will get the extension .xt there.
Integrating the Catch Test Framework into Visual Studio
Martin Moene
04 February 2014 11:19:27 +00:00
Visual Studio’s Test Explorer allows native C++ tests to be run under a managed wrapper. Malcolm Noyes takes it a step further using Catch to drive the tests.
Note: when you create a new publication type, the articles module will automatically use the templates user-display-[publicationtype].xt and user-summary-[publicationtype].xt. If those templates do not exist when you try to preview or display a new article, you'll get this warning :-) Please place your own templates in themes/yourtheme/modules/articles . The templates will get the extension .xt there.
Anatomy of a Java Decompiler
Martin Moene
03 February 2014 10:21:07 +00:00
Java byte code can be reverted back into source code. Lee Benfield and Mike Strobel show how.
Note: when you create a new publication type, the articles module will automatically use the templates user-display-[publicationtype].xt and user-summary-[publicationtype].xt. If those templates do not exist when you try to preview or display a new article, you'll get this warning :-) Please place your own templates in themes/yourtheme/modules/articles . The templates will get the extension .xt there.
Optimizing Big Number Arithmetic Without SSE
Martin Moene
02 February 2014 07:53:06 +00:00
Addition and multiplication can be slow for big numbers. Sergey Ignatchenko and Dmytro Ivanchykhin try to speed things up.