in the book of Meyers about effective programming(item 38) I found some absract terms: application domain, implementation domain, will be very gr开发者_Python百科ateful if somebody explain me the difference, please do not copy from the book I know how to read, thanks in advance
The application domain describes the problem you're trying to solve, using its terminology and concepts ("a molecule is a collection of atoms, an ion has a weight and a charge"). The implementation domain describes the programming language you're using to solve it, where terminology like "abstract", "polymorphic", "interface", "stack", "heap" are appropriate.
In a higher-level language, you typically look for ways to model the concepts of the application domain (e.g. by mapping them to classes), so that you're solving the problem directly, rather than constantly worrying about how to solve implementation issues such as memory management, etc.
精彩评论