And lets be clear, tony is arguing that they are “EXACTLY THE SAME”. This is completely nonsensical when you actually look at the meanings behind them. Tony didn’t say “They are similar” or “they are related” or “one is a refinement of the other” his argument is “They are exactly the same”. If you look from a mile high “all cars are the same”. Of course on a car message board we would discuss in detail the differences between a bugatti and a mazerati. On a programming forum we should discuss the differences between programming concepts.
That’s why I’m talking about semantics and “letter of the law”. It’s similar to talking about the Ford Shelby GT350 and a base model Ford Mustang. Technically they are different cars as the trim levels, motors, etc are different. But from a layman’s term, they are still Mustangs.
In only ONE of the many quotes I’ve seen you make did he say they were EXACTLY the same. Otherwise, he just said they were the same (which in layman’s term, they essentially are).
I’m just saying let’s not lose the forest for the trees. The basic concept is if people follow EITHER SoC or SRP, they’re heading down the right track. If they follow SRP, it’s better because the more specific it is, the better it is in the long run.
Let’s take a step back then, Tony is using the idea that SoC is identical to SRP in order to say that his 9000 line class follows SRP ( http://pastebin.com/m76ZAUZc ) would you say he’s going down the right track?
Read what I wrote! They use different words to describe the same concept. This means that the concept is the same, but that the words used to describe that concept are different. The results of applying either description of that concept will be the same, so the two descriptions have the same meaning.
No it is NOT display logic. Display logic is the CODE which is used to transform data into a specific format for display. The Model passes data to the View, and the View transforms it for output. Some of the data which can be passed to the View could be meta-data which affects the processing in the View, but it is still DATA and not CODE.
First off, let’s have a little perspective - there’s really about 7,000 lines, not 9,000. There are almost 1,700 lines of comments (something that most developers - even good ones - really suck at but is critical for anyone that follows needs), probably more than 300 blank lines for readability sake, and 50-100 lines of commented out code (not needed if any sort of source control is used, but unfortunately common practice in every shop I’ve ever worked at. The class could do with a review/rewrite because it seems like it does too much, and can definitely be simplified (I found 2-3 blocks of code which could be combined/refined).