{"id":3723,"date":"2010-06-28T16:24:57","date_gmt":"2010-06-28T21:24:57","guid":{"rendered":"http:\/\/bobbeaty.com\/wp\/?p=3723"},"modified":"2010-07-01T09:45:29","modified_gmt":"2010-07-01T14:45:29","slug":"the-value-of-good-code-layout","status":"publish","type":"post","link":"https:\/\/bobbeaty.com\/wp\/archives\/3723","title":{"rendered":"The Value of Good Code Layout"},"content":{"rendered":"<p>I've been trying to get a handle on what's in the current version of <em>The Magic Schoolbus<\/em> and it's <strong>hard.<\/strong> I mean it's a lot harder than it has to be. There are complete <em>non-template<\/em> implementations in header files, there are classes grouped - some logically, some not, into the same files... it's a mess. Trying to see what's happening - a real important thing in OO design, is next to impossible.<\/p>\n<p>Many people have criticized me for making my code too verbose. Maybe it is. But every one of those people were <strong><em>never<\/em><\/strong> trying to understand it. They were trying to shy away from it as a coding standard, and <em>simply write less.<\/em> Hey, I understand lazy. It's easy to understand: You want to do less than you have to. Easy. But it's always going to cost you in the end.<\/p>\n<p>Take this codebase... if they had taken the time to make header and implementation files for each class, then it'd be a lot easier to see what's happening. I wouldn't have a 277,000 line header file that's really a header with all the implementation in it. I'd have a good set of headers for use with a pre-compiled binary library and people would be able to use it like they should.<\/p>\n<p>But that wasn't the path chosen.<\/p>\n<p>I want to choose the better path. So I'm writing the entire thing over from scratch. Using Boost every single time I can to make it portable while not sacrificing capability and speed. I'm going to make this project something to be proud of, and I hope, I <strong>really<\/strong> hope that it catches on.<\/p>\n<p>If not, I'm still going to do it.<\/p>\n<p>That's just the way I roll. Baby.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>I&#8217;ve been trying to get a handle on what&#8217;s in the current version of The Magic Schoolbus and it&#8217;s hard. I mean it&#8217;s a lot harder than it has to be. There are complete non-template implementations in header files, there are classes grouped &#8211; some logically, some not, into the same files&#8230; it&#8217;s a mess. [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3,6],"tags":[],"class_list":["post-3723","post","type-post","status-publish","format-standard","hentry","category-coding","category-cube-life"],"_links":{"self":[{"href":"https:\/\/bobbeaty.com\/wp\/wp-json\/wp\/v2\/posts\/3723","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/bobbeaty.com\/wp\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/bobbeaty.com\/wp\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/bobbeaty.com\/wp\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/bobbeaty.com\/wp\/wp-json\/wp\/v2\/comments?post=3723"}],"version-history":[{"count":1,"href":"https:\/\/bobbeaty.com\/wp\/wp-json\/wp\/v2\/posts\/3723\/revisions"}],"predecessor-version":[{"id":3724,"href":"https:\/\/bobbeaty.com\/wp\/wp-json\/wp\/v2\/posts\/3723\/revisions\/3724"}],"wp:attachment":[{"href":"https:\/\/bobbeaty.com\/wp\/wp-json\/wp\/v2\/media?parent=3723"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/bobbeaty.com\/wp\/wp-json\/wp\/v2\/categories?post=3723"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/bobbeaty.com\/wp\/wp-json\/wp\/v2\/tags?post=3723"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}