You are not logged in. Your edit will be placed in a queue until it is peer reviewed.
We welcome edits that make the post easier to understand and more valuable for readers. Because community members review edits, please try to make the post substantially better than how you found it, for example, by fixing grammar or adding additional resources and hyperlinks.
Required fields*
-
4One disadvantage I don't think you covered is that the use of lazy-loading can create issues. To say it prevents performance problems seems a little backwards in my experience. It saves space iff you aren't using everything. But the first things to come along and ask could have to wait for a while and maybe error out. On a slightly different note, you also won't know about a configuration issue with those services until they are requested. Often you end up 'warming' things up which defeats the purpose.JimmyJames– JimmyJames2018-12-20 21:13:52 +00:00Commented Dec 20, 2018 at 21:13
-
1@JimmyJames better?candied_orange– candied_orange2018-12-21 02:12:02 +00:00Commented Dec 21, 2018 at 2:12
-
1Your argument about creation and behavior being separate doesn't make much sense to me. Generally, creation is where most if not all of the complex behavior should happen, unless the object is intrinsically mutable. I feel that this philosophy nudges towards making more singletons and services than what is absolutely necessary.Kafein– Kafein2018-12-21 10:20:58 +00:00Commented Dec 21, 2018 at 10:20
-
@Kafein I already provided one link about that. Here's another. Maybe you should post a question.candied_orange– candied_orange2018-12-21 11:32:39 +00:00Commented Dec 21, 2018 at 11:32
-
2@Kafein - Even if the object is not intrinsically mutable, it may still have a boatload of complex behaviours inside - for instance, knowing how best to pass data from one source to another. If the object is stateless (or stateful, but immutable), the creation logic might be very simple but the internal logic very complex.Sebastian Lenartowicz– Sebastian Lenartowicz2018-12-21 12:26:05 +00:00Commented Dec 21, 2018 at 12:26
|
Show 1 more comment
How to Edit
- Correct minor typos or mistakes
- Clarify meaning without changing it
- Add related resources or links
- Always respect the author’s intent
- Don’t use edits to reply to the author
How to Format
-
create code fences with backticks ` or tildes ~
```
like so
``` -
add language identifier to highlight code
```python
def function(foo):
print(foo)
``` - put returns between paragraphs
- for linebreak add 2 spaces at end
- _italic_ or **bold**
- indent code by 4 spaces
- backtick escapes
`like _so_` - quote by placing > at start of line
- to make links (use https whenever possible)
<https://example.com>[example](https://example.com)<a href="https://example.com">example</a>
How to Tag
A tag is a keyword or label that categorizes your question with other, similar questions. Choose one or more (up to 5) tags that will help answerers to find and interpret your question.
- complete the sentence: my question is about...
- use tags that describe things or concepts that are essential, not incidental to your question
- favor using existing popular tags
- read the descriptions that appear below the tag
If your question is primarily about a topic for which you can't find a tag:
- combine multiple words into single-words with hyphens (e.g. design-patterns), up to a maximum of 35 characters
- creating new tags is a privilege; if you can't yet create a tag you need, then post this question without it, then ask the community to create it for you