You are here
SOLID principles of object-oriented design are an important consideration for anyone looking for good software design. The problem is they can be hard to understand and implement. In my personal experience unit-testing can actually help understanding these principles better and provide a genuine use case for implementing them.
A "webapp" short for web application is a computer application that works over the internet in the Internet browser. It does not require installation of any software except for the Internet browser itself. Web applications are a relatively new concept. There are some popular webapps around, the most well known are perhaps Facebook and Flickr and lesser known Trello. The success of these webapps has prompted some companies to attempt to convert their traditional client only or client-server applications into webapps. But writing webapps can be far more challenging than writing traditional client only or client-server applications. So before you start take a look at these gotchas and ensure you are well prepared for them.
C++ (not C) has a convenience feature that allows programmers to specify default parameters on functions when declaring them. The compiler uses the default value if no value is supplied by the caller for that parameter, instead of complaining about a missing parameter value. I am not going to discuss the mechanics of declaring these default parameters; any C++ book will explain this. I’m going to delve into what problems happen over time when using default parameters during software maintenance phase as code ages and changes hands between programmers.
The #define directive in C++ is usually glossed over in most books that attempt to teach the C++ language. It obviously takes much lower precedence than more important language constructs like if and switch. However this directive deserves far more credit than it gets. Here are some of the feats this directive can perform.
Lego Mindstorms NXT robotics kit has been out for a while. It is a successor to the original Mindstorms Robotic Invention System (RIS) also from Lego. If you are interested in robotics the Mindstorms NXT is for you. You can start building and programming a robot straight out of the box.
It seems that when it comes to programming computers there is no escaping the mention of the word pointers. Recent programming language trend is to automatically handle pointers, hiding gory details from the programmer. While this might be a good language feature, will it eventually result in a new generation of programmers who do not understand pointers?