|
Prev: Proxy pattern: remote chat proxy and interfaces
Next: Derived class calling overriden base class methods
From: topmind on 31 Jan 2008 17:16 On Jan 30, 1:56 pm, Robert Martin <uncle...(a)objectmentor.com> wrote: > On 2008-01-11 06:07:51 -0600, alexcpn <alex...(a)gmail.com> said: > > > Maybe I should frame the question more clearly- what is it so special > > in OO that makes it so successfully industrially. I really don't > > 'believe' that it is because of the way OO entity help us in closely > > modeling real life etc > > > Is it the Open Closed Principle > > Or is it because there are not many choices > > OO languages, like Java, C#, C++, Ruby, Python, Smalltalk, etc, are > more successful than procedural languages like C, Pascal, etc. because > they allow more options for partitioning source code and managing the > dependencies between modules. > > The prime benefit of OO comes from the ability to put code into > meaningful partitions, and minimize the dependencies between those > partitions. > > That is, after all, what the Open Closed principles is all about. > Indeed, that's what all the S.O.L.I.D. principles are about. Can you demostrate that with your own payroll example? Now you have some runnable procedural/relational code to compare it to: http://www.geocities.com/tablizer/payroll2.htm I'm tired of OOP verbal claims of curing cancer and saving Dolphins. Let's see it as code. gauntlet.throw.direction = down; > > -- > Robert C. Martin (Uncle Bob) | email: uncle...(a)objectmentor.com -T-
From: S Perryman on 31 Jan 2008 17:20 topmind wrote: > Can you demostrate that with your own payroll example? Now you have > some runnable procedural/relational code to compare it to: > http://www.geocities.com/tablizer/payroll2.htm > I'm tired of OOP verbal claims of curing cancer and saving Dolphins. > Let's see it as code. > gauntlet.throw.direction = down; Where is your reply to the "Robert Martins' payroll example (Was: Why is Object Oriented so successfull)" posting I made this week to comp.object .... Regards, Steven Perryman
From: Robert Martin on 31 Jan 2008 17:20 On 2008-01-18 11:05:55 -0600, topmind <topmind(a)technologist.com> said: > An approximate version of what's in Robert Martin's OO code from the > book can be found here: > > http://www.codeproject.com/KB/books/PatternsPractices.aspx No, not quite. That link is just the nascent GUI for the payroll system; it's not the payroll system itself. -- Robert C. Martin (Uncle Bob)��| email: unclebob(a)objectmentor.com Object Mentor Inc.� � � � � ��| blog:��www.butunclebob.com The Agile Transition Experts��| web:���www.objectmentor.com 800-338-6716� � � � � � � � ��|
From: Robert Martin on 31 Jan 2008 17:27 On 2008-01-18 11:05:55 -0600, topmind <topmind(a)technologist.com> said: > > If you want to create and compare a sample app to show OO being good, > how about using Robert Martin's payroll example: > > http://www.geocities.com/tablizer/payroll2.htm The C++ source code for the Payroll example is in the book: Agile Software Development: Principles, Patterns, and Practices, Robert C. Martin, Prentice Hall, 2002. The C# source code can be found in: Agile Principles, Patterns, and Practices in C#, Robert C. Martink, Micah D. Martin, Addison Wesley, 2006 -- Robert C. Martin (Uncle Bob)��| email: unclebob(a)objectmentor.com Object Mentor Inc.� � � � � ��| blog:��www.butunclebob.com The Agile Transition Experts��| web:���www.objectmentor.com 800-338-6716� � � � � � � � ��|
From: topmind on 31 Jan 2008 17:29
On Jan 30, 2:20 pm, S Perryman <q...(a)q.com> wrote: > topmind wrote: > > Can you demostrate that with your own payroll example? Now you have > > some runnable procedural/relational code to compare it to: > >http://www.geocities.com/tablizer/payroll2.htm > > I'm tired of OOP verbal claims of curing cancer and saving Dolphins. > > Let's see it as code. > > gauntlet.throw.direction = down; > > Where is your reply to the "Robert Martins' payroll example (Was: Why is > Object Oriented so successfull)" posting I made this week to comp.object I don't have the book with me right now. Maybe on the weekend. And, I did not see your evidence of "procedural combinatorial explosion" for the library publications example. Do you need to retreive a book to answer that one? Hint: my code implements features, NOT noun taxonomies. If there is mass duplication in feature implementation, then I use subroutine factoring. The DB tracks classifications of specific nouns or kinds of nouns (unless it is trivial and rarely-changing). > ... > > Regards, > Steven Perryman -T- |