Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Architecting Rails Apps
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Iago Dahlem Lorensini
December 10, 2018
0
320
Architecting Rails Apps
Iago Dahlem Lorensini
December 10, 2018
Tweet
Share
Featured
See All Featured
VelocityConf: Rendering Performance Case Studies
addyosmani
333
24k
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2k
SEO for Brand Visibility & Recognition
aleyda
0
4.2k
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
3.2k
Six Lessons from altMBA
skipperchong
29
4.1k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
The agentic SEO stack - context over prompts
schlessera
0
640
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
0
140
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
9.9k
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
1
5.2k
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
9.5k
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
1.8k
Transcript
ARCHITECTING ARCHITECTING RAILS RAILS APPS APPS Studies and thoughts from
a Front End perspective.
IAGO DAHLEM IAGO DAHLEM Passionate about web and it's ecossystem
JavaScript Addicted (also like Ruby) Software Developer at Codeminer 42 Florianópolis
WE ARE HIRING! WE ARE HIRING!
[email protected]
DISCLAIMERS DISCLAIMERS No code examples :( Keep focus on the
theory Don't get it to hard
WHY FRONT-END WHY FRONT-END PERSPECTIVE? PERSPECTIVE? Common problems Same responsibilities
None
None
THE BAD RAILS THE BAD RAILS Built on top of
MVC Changes affects other parts of the app Top level structure screams the web framework We don't know what it does
"MVC is a delivery design pattern." - Uncle Bob
WHAT IS ARCHITECTURE WHAT IS ARCHITECTURE ANYWAY?! ANYWAY?! Independent of
technology/framework Makes software easier to change and test
Domain layer Application layer Infrastructure layer Input layer
DOMAIN LAYER DOMAIN LAYER Entities and business Rules Used by
the application layer to de ne use cases Examples: User, Article
APPLICATION LAYER APPLICATION LAYER Use cases and actual behavior Interacts
with Domain units Adapts the Infrastructure Layer Examples: CreateUser, CreateArticle
INFRASTRUCTURE LAYER INFRASTRUCTURE LAYER Interacts with the external world of
the application The lowest of them Databases, email services, external APIs Examples: UserRepository, MailChimpService, ArticlesService
INPUT LAYER INPUT LAYER The entry point Should only receives
user input Returns a response to the user Controllers, CLIs, WebSockets, GUIs Examples: UsersController, ArticlesController
SUMMARIZING SUMMARIZING Keep it simple You don't need to use
everything Find what works better for and your business Make it fun
ADDITIONAL ADDITIONAL INFORMATION INFORMATION The Miners - Scalable Frontend #1
Uncle Bob - Architecture the Lost Years
THANKS! THANKS! @iagodahlem iagodahlem.com