Photo: newharbinger

Developers, as any other human, are limited by the amount of complexity that we are able to understand and handle. For that reason, we group code using mental models like, architectural layers, components and systems. That’s the very known divide and conquer approach.

“The architecture of a system is defined by a set of software components and the boundaries that separate them.” — Robert C Martin

When it comes to separating the code, the objective is always to get code segregated in layers/components maximizing cohesion and minimizing coupling. This brings the benefits of creating reusable, modifiable and understandable systems. That’s…

Frank Valbuena

I’m an iOS Developer and a Mathematician. “Truth is ever to be found in the simplicity, and not in the multiplicity and confusion of things.”

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store