D
dbeavon
Guest
Your main concern with using OO seems to be related to KISS. I do agree with KISS, but it has so many caveats when you are writing real-world applications. A developer has to quickly move beyond "keep it simple" and get to the point where they are creating an *abstraction* of a complex problem that *appears* simple even it it is not. The way to building that abstraction, however, may *not* be trivial and it *may* involve complex OO patterns. Here is a quote from Einstein about KISS: "Everything Should Be Made as Simple as Possible, But Not Simpler." That last part is the key. My complaint with ABL (as compared to application development languages like C# or Java) is that it pretentiously tries to make things simple but when you try to use it to build larger and larger applications, you realize that its (over-)simplicity is often the thing that slows you down the most. (I think of ABL as an "assembly language" for the development of business applications. If the pinnacle of your app is to add a record to a database, or update a record in a database, or ... -wait-for-it- ... delete a record from a database, then ABL is the language for you. But if you need to do a lot more than that you might want to expand your toolbox and start looking to add in another more robust and oo-centric language.)
Continue reading...
Continue reading...