Settings

Theme

What are abstractions in software engineering

thevaluable.dev

4 points by spinlock_ 3 years ago · 2 comments

Reader

rucamzu 3 years ago

I couldn't bother reading to the end because of how much it beats around the bush.

Also, the article doesn't really align with my own understanding and misses a key term: complexity - that's what we abstract.

Abstraction is simply the process of hiding complexity by replacing something complex with something simpler that can better fit in our brains. We abstract complexity all the time, in all aspects of our lives, both consciously and subconsciously. It's not a trait exclusive of software engineering.

  • thanato0s 3 years ago

    Author here. Thanks for the feedback!

    I agree I could have been more direct, but I also wanted to explain the concept in detail, especially for beginners to understand it. When I was beginning in the industry myself, it was difficult for me to understand abstraction, and the articles I was reading didn't really improve my understanding; they often speak about the way to create abstraction instead of explaining what is abstraction and why we need to abstract things. I don't have the presumption I did better, but I tried.

    I speak about simplicity in the article; therefore about complexity, but indirectly. Maybe I should have been more direct on that point though.

    And I also do many analogies with abstractions outside of software development.

Keyboard Shortcuts

j
Next item
k
Previous item
o / Enter
Open selected item
?
Show this help
Esc
Close modal / clear selection