The full title of the book is Design Patterns: Elements of Reusable Object-Oriented Software, by Erich Gamma, Richard Helm,Ralph Johnson, and John Vlissides. Before I start, I'll warn you that the copyright on this book is from 1995. As a result, the ideas in this book should not be news to you. Unfortunately, they were. This is the book that answered the one question I've always answered my biggest question: "What's so darned special about OOP that means it makes software reusable ...
Inspired by Zekes passionate blogging here, I decided to write a blog. On a topic that I think deserves a bit of thought... *drumroll* Casting in C++. Oh yeah. It's pretty, eh? Code: const int i = 10; char* c = reinterpret_cast<char*>(const_cast<int*>(&i)); If coming from a C background you are likely to have a face expression similar to this: - longing for your good old Code: char* c = (char*)&i; And I can honestly understand why people despise ...
const int i = 10; char* c = reinterpret_cast<char*>(const_cast<int*>(&i));
char* c = (char*)&i;
stdin and stdout that is. Now, a great many programs have their output going out on stdout, and this allows for a great amount of versatility using stdin. When you pipe input from one program to another, or reroute stdin, then stdin is a great mechanism for building command-line utilities. However, there is one notable thing I have never done with stdin. I have never taken user input from stdin. I've made quite a few production programs, and in every ...
Well, it's been a year since I was last was here. Actually over a year. I really can't explain why I've been away for so long. No, I haven't been inside or on the missions to Darkest Africa. Just life. Christmas, in Canada, was dreadful. I'd gotten engaged, and had met the family on a few occasions, but cooped up in a house in coldest Canada, unable to go out. Yep cabin Fever. It all ended February. By email. Back in the UK and work was really hectic ...
Why is it no matter how hard I try to use networks properly, I never can? Be it routers, modems, socket programming, network programs, doesn't matter, every part of networks hate me. I've observed people put together their home network dozens of times, and the network works fine for a long time. I've done the same, put together networks the same way, and they'll work for about a half-hour and cut out. Or, possibly, they will simply not work altogether. Socket programming, even when I code it right, ...
Updated 10-08-2009 at 04:25 AM by ZekeDragon (WTF Moment)
I used to just like the things you could make with programming, and treated programming in itself as a necessary evil. Certainly I still love being productive, but I've been really getting into learning all of the deep nooks and crannies of my computer, digging through source code and altering to fit my needs, identifying parts of the Linux Kernel I want to change and rebuilding it the way I like it. I've been gradually getting more interested in Assembly, but haven't taken the leap into writing ...
In the course of becoming a programmer, you reach a point where you feel like your problem isn't with knowing the language. This is where a book like this comes in. It's a list of practical tips for improving how you approach the process of programming. It includes a list of 70 tips (such as learn a code editor well). These are organized around several major techniques. Prototyping is one, incremental development is another. If some of these techniques seem contradictory, they ...