User Tools

Site Tools


glossary:natural_class

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
glossary:natural_class [2025-09-26 22:31] – old revision restored (2025-09-25 07:51) christianglossary:natural_class [2025-09-27 01:10] (current) – created rudolphworthen
Line 1: Line 1:
-====== Natural Class ====== +Here’s the truth, living in London means you’ve had to work around awkward spaces. From wonky walls in old terraces to tiny kitchens with no counter space, London homes don’t exactly make life easy. That’s where [[http://www.koha-community.cz/mediawiki/index.php?title=U%C5%BEivatel:Latosha4915|custom joinery London]]-built furniture comes in. And no, you don’t have to be loaded to get something bespoke. Bespoke is for anyone—especially if you’re tired of living with wobbly, badly-fitted bits. No two flats or houses in this city are alike. So why would you settle for something made for someone else’s space?
-===== Meaning 1 =====+
  
-==== Alternative Terms ==== +I once helped family in Walthamstow who had this tiny dining space under the stairsNo shop-bought table would fit—trust me,  bespoke furniture London store they triedSo we had a bench seat built into the wall, and suddenly the room worked perfectlyThat’s the kind of difference custom piece can make. Another client in Islington had an awkward loft bedroom with sloping ceilingStandard wardrobes didn’t fitWe worked with local joiner to create a built-in unit that used every inch.
-/*i.e. alternative names meaning the same thing*/ +
- +
- +
-==== Definition ==== +
-A **natural class** is class which was not artificially created as part of the solution but derived from the problem domain of the software. +
- +
- +
-==== Description ==== +
- +
-Someone with no technical knowledge but knowledge about the application domain can come up with natural classes as they are just concepts and abstractions derived from the problem domainSoftware typically also requires some [[artificial class|artificial classes]] for its solution but the [[principles:Model Principle]] tells to avoid them in favor of natural classes if there is no greater benefit from introducing an artificial class. According to [[principles:Model Principle|MP]] and [[principles:Tell don't Ask/Information Expert|TdA/IE]] functionality is mapped to natural classes and artificial ones are only created for special purposes. Often [[patterns]] make creating artificial classes necessaryalthough this is not always the case. +
- +
-Note that natural classes and [[domain class|domain classes]] are related but not the same notionsEach domain class is a natural class but not the other way around. A domain class is a class which is part of a [[patterns:domain model]] (typically stored in a database, etc.) whereas a natural class is just one which is not artificially createdEven classes like ''DatabaseConnection'' or ''HttpRequest'' are natural classes, because they represent natural concept which exists independent of the software. Classes like ''BeanFactory'' or ''InvocationHandler'' on the other hand are not meaningful outside the context of the software, of the solution. So these are artificial classes. +
- +
-==== Examples ==== +
- +
-  * Classes like ''Book'', ''User'', ''Contract'', ''Order'', ''OrderItem'', etc. are natural classes and also domain classes. +
-  * Classes like ''Button'', ''TextField'', ''DatabaseConnection'', ''HttpRequest'', ''Time'', ''Integer'', ''Velocity'', ''Voltage'', etc. are also natural classes but typically not domain classes. +
-  * Classes like ''ActionListener'', ''ConnectionAdapter'', ''BeanFactory'', ''InvocationHandler'', etc. are //not// natural but artificial classes. +
- +
-==== Alternative Definitions ==== +
-/*i.e. slightly different definitions for basically the same thing*/ +
- +
- +
-==== See Also ==== +
- +
-  * [[Artificial Class]] +
-  * [[Natural Coupling]] +
- +
-==== Further Reading ==== +
- +
- +
----- +
-===== Other Meanings ===== +
-/*i.e. the same term referring to something different; put short mentions here or better add more detailed descriptions as additional sections */ +
- +
----- +
-===== Discussion ===== +
- +
-Discuss this wiki article and the term on the corresponding [[talk:glossary:Natural Class|talk page]].+
  
 +Now it looks sleek and smart. When you go bespoke, you also get a say in the design details. Want solid oak? You’ve got it. Hate chrome legs? You can skip all that. It’s your furniture,  handmade bespoke furniture London your way. I’m not saying everything has to be custom. There’s a time and place for IKEA. But for the stuff you use daily, custom is just better.
glossary/natural_class.txt · Last modified: by rudolphworthen