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.
-
7I suggest reading this summary of the philosophical and strategical differences between functional and OOP styles, for a start. It begins to get at what I want to say, which is the less state you need to track, the better functional-style is; and conversely, the more state you need to track, the better OOP is. In general OOP helps you not blow your foot off as system complexity goes up. (this assumes a sane OOP system -- eg. like Python, unlike C++.) As complexity goes up, you do more stupid things, and the safety provided by OOP is more valuable.kampu– kampu2013-05-19 07:02:08 +00:00Commented May 19, 2013 at 7:02
-
5OO is overrated. It just solved problems that needed to be solved when they needed to be solved. Then it became just too popular to be stopped. But it is not required to solve those problems and it is not the best in solving them.MaiaVictor– MaiaVictor2013-05-19 08:11:33 +00:00Commented May 19, 2013 at 8:11
-
7@Euphoric, there are dozens of better approaches. OOP is pretty useless outside of a very narrow field (namely, agent-based simulations). OOP does not help fighting the complexity - modularity does. People too often give credits to OOP which in fact belong to modularity, a much more generic concept.SK-logic– SK-logic2013-05-19 10:48:57 +00:00Commented May 19, 2013 at 10:48
-
5@Euphoric, as I said, there are dozens of models. You should not use a single approach for everything, you have to pick up the right one for each problem domain. A Language-Oriented Programming is a kind of a unifying approach, which allows you to choose the right methodology and the right semantics for each little sub-task. OOP is just one of the tiny tools in this huge model, barely useful. And no, you're wrong, all the "complexity"-related properties of OOP are nothing but modularity. And in OOP it is pathetic - compare it to, say, SML module system.SK-logic– SK-logic2013-05-19 11:04:21 +00:00Commented May 19, 2013 at 11:04
-
1@MarcusJ It is Victor Maia, a common Brazilian name. You can hear it by typing "Vitor Maia" (mute "c") on Google translate for Portuguese (br).MaiaVictor– MaiaVictor2018-02-01 18:52:38 +00:00Commented Feb 1, 2018 at 18:52
|
Show 13 more comments
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