English Deutsch Français Italiano Español Português 繁體中文 Bahasa Indonesia Tiếng Việt ภาษาไทย
All categories

6 answers

Now think about that question realistically, of course you can! You can have too much food, you can have too much alcohol , you can have too many things that you don't need. As my mum used to say too much of anything is NOT a good thing.

2007-09-25 10:05:23 · answer #1 · answered by Anonymous · 0 0

movie stars have more then they need but they work really hard for it Abstractions: You can have too much of a good thing
Architects love abstracting things. And why wouldn't they - it allows you to hide those pesky implementation details out of the way so they don't trouble your callers, and lets you completely change the implementation at a later stage, provided the interface isn't changed. But like most of the good things in life, there comes a point where more is no longer better.

All of the Enterprise Library application blocks include great examples of abstraction, generally through the use of the Factory and Plug-In patterns. An application using an Enterprise Library application block need only code against an interface or abstract base class, such as Database, AuthorizationProvider or Validator (or in some cases this is abstracted even further via a façade class such as Logger or ExceptionPolicy). The concrete implementation of each class is determined at runtime by a factory class, which will do things like inspect configuration files and attributes to figure out which one is appropriate. This pattern provides a lot of great benefits, as you can write code at an abstract level, such as "validate this!", "log this!" or "call this stored procedure!", while the specifics of how each of these is done can be encapsulated into a different class and changed without impacting your code.

Over the years I've spoken to a lot of people who wanted to (or actually did) take this a step further by completely abstracting away the use of application blocks by hiding them behind their own interfaces and factories. The main arguments I've heard for doing this are as follows:

It provides an insurance policy just in case you ever need to get rid of Enterprise Library, by letting you build your own alternative implementation without requiring you to change your application code
It lets you build reusable assets that can be used by different users who may or may not want to use Enterprise Library
I appreciate that these goals can be important for at least some people, however I'm far from convinced that abstracting away an Enterprise Library block is a good solution. David Hayden started a vibrant discussion on this topic around achieving this second goal in the Repository Factory, and continued it with a number of blog posts (here, here and here). Persistent though David is, I don't buy his arguments. This is not because I think the blocks are perfect and that nobody would ever want to use anything different. However since the blocks already expose an abstracted interface, any further abstractions would need to expose an almost identical interface (or potentially a much watered-down subset). David didn't share his example, but I'm assuming he built something like this for the DAAB:

2007-09-25 17:07:23 · answer #2 · answered by Effie 2 · 0 0

Ask Hollywood actors. I think so!

2007-09-25 17:00:35 · answer #3 · answered by red 7 · 0 0

yes. Anger.

2007-09-25 17:05:29 · answer #4 · answered by amandalynnesmith19 3 · 0 0

depends on what it is...kissing has no limits when you love someone...

2007-09-25 17:01:10 · answer #5 · answered by Anonymous · 0 0

i think...

2007-09-25 17:01:14 · answer #6 · answered by Anonymous · 0 0

fedest.com, questions and answers