a developer's journey to craftsmanship

Post on 18-Aug-2015

45 Views

Category:

Technology

1 Downloads

Preview:

Click to see full reader

TRANSCRIPT

A Developer's Journey to Craftsmanship

from imperative programming to application architecture

Imperative programming

• get the computer do what you tell it to

• functions to group repeating functionality

• learn the tools of the trade

Object-Oriented Programming

• examples are too simple, project is too complex

• classes are more a collection of functions

• Util/

Modular structure• packaging principles

• modules

• MVC

• behaviour

• refine OOP knowledge

• refactoring

Performance considerations

• database optimisations

• caching

• logs

• minification

• metrics

Test-driven development

• treat current codebase as legacy

• cover with tests one module a time

• prevent regression

• embrace continuous integration

• observe incidents occurance diminishing

Service-oriented interactions

• data access shifts from monolithical (fat model) to services

• horizontal scalability

• improve caching approach

• eventual consistency

Domain-driven design

• complete mindset change

• core domain

• bounded context

Architecture

• able to address each colour of the rainbow

• choose your battles wisely

• don’t stop learning

top related