Hi Ted > > IMO, that's completely backward. We need more layers and, better yet, > > more standard layers to make software more flexible and more reliable. > > Yes and no. A two-story building made of concrete slab is solid and > inexpensive. A five-story building built the same way is a death trap.
All buildings, even a dog house is built from modules. Individual 2x4 objects are connected to each other with nail objects. Even a bic pen is built from modules. A car engine is composed of components but even the spark plug is connected to the engine via a coil pack and a wire. The wire even has components. > > The big problems I ran into the nineties was the level of trust you > had to place on the vendors of the middleware. If ADO.Net dotNext > decides to deprecate the way you do things, you could find yourself > with serious problems. In 1996 (?), removing VFP from the Desktop ODBC > Drivers mean that users who updated MS Office broke database > applications. I've seen similar problems with updating Oracle client > components, UPS ActiveX controls and other 3rd-party libraries. You put separation layers between your systems (not just UIs). I'm not just talking about third party layers. I'm saying that our own "systems" no matter if it's a "layer" or not should be layered. The car engine is a layer yet is internally AND externally layered. > > Increasing the layers of the software can introduce greater > flexibility and the ability to substitute one component for another, > with the risk that components will run differently. Also, every API > you need to code increases the complexity of the result, meaning more > testing (automated is good!), more complex error-handling between > layers, etc. Writing tightly-coupled code results in a solid but more > brittle result. > > The right answer is to use the right pattern for the right problem. > Layer when layers are needed, understanding the risks. Write tight > code when a monolith is the right pattern. We're not supposed to write tightly-coupled code. What is engineered monolithic in the real world? Keyboard keys? The shell is designed for a spring and other connectors. The ink on top is a component. Toothpicks? Ball bearings? They're components and are monolithic. Only the smallest components can afford to be monolithic. Right? _______________________________________________ Post Messages to: [email protected] Subscription Maintenance: http://leafe.com/mailman/listinfo/profox OT-free version of this list: http://leafe.com/mailman/listinfo/profoxtech Searchable Archive: http://leafe.com/archives/search/profox This message: http://leafe.com/archives/byMID/profox/[EMAIL PROTECTED] ** All postings, unless explicitly stated otherwise, are the opinions of the author, and do not constitute legal or medical advice. This statement is added to the messages for those lawyers who are too stupid to see the obvious.

