Ce diaporama a bien été signalé.
Nous utilisons votre profil LinkedIn et vos données d’activité pour vous proposer des publicités personnalisées et pertinentes. Vous pouvez changer vos préférences de publicités à tout moment.
Writing code 
that lasts. 
Rafael Dohms 
@rdohms 
photo: djandyw.com
Writing code 
you won’t hate tomorrow. 
Rafael Dohms 
@rdohms 
photo: djandyw.com
Let me 
introduce 
you to 
someone…
No Tests. 
shhh.. don’t tell Grumpy. 
Wrote his own framework. 
.. and used it. 
Used Singletons! 
.. and every other anti...
photo: Rob Allen (@akrabat)
REWRITE 
ALL THE CODE!
photo: Glyn Lowe Photoworks 
Real Developers, 
SHIP STUFF.
How do we find 
balance? 
photo: Kalexanderson
Code has an 
expiration date 
photo: CarbonNYC
Code is 
photo by: massdistraction 
perishable, it rots.
Code Evolves 
photo by: kevin dooley
Languages evolve. 
photo by: raneko
You evolve. 
photo by: Kaptain Kobold
Complexity 
kills 
Comprehension 
photo: osbornb
Bad Design 
photo: miskan
Bad specs
NIH 
photo by: John 'K' 
source: Urban dictionary
NIH 
| nɒt ɪnˈventɪd hɪə | 
Not Invented Here —The German art of humiliating any technology, 
agricultural product, or (me...
The Solution™ 
photo: Ian Sane
Improve code
make it easier to comprehend 
Improve code
make it easier to comprehend 
make it flexible 
Improve code
make it easier to comprehend 
make it flexible 
make it tested 
Improve code
make it easier to comprehend 
make it flexible 
make it tested 
Improve code 
make it easier to replace, refactor
make it easier to comprehend 
make it flexible 
make it tested 
Improve code 
make it easier to replace, refactor 
make it...
Testing 
photo by: jeffkrause
Good Design 
Concepts
SOLID 
Single Responsibility 
Open and Close 
Liskov substitution 
Interface Segregation 
Dependency Inversion 
photo by j...
photo by lofink 
STUPID 
Singleton 
Tight Coupling 
Untestability 
Premature Optimization 
Indescriptive Naming 
Duplicati...
photo by halloweenstock 
Design Patterns
Composer
PIE 
Proudly 
Invented 
Elsewhere
guzzle/guzzle 
HTTP client for RESTful API clients 
photo by j_regan
morrisonlevi/ardent 
A library of collections for PHP
Readability 
photo: Morgenland
paragraphs 
photo: Trossachs Photography
whitespace
Cape Town São Paulo 
R&D Team for MIH/Naspers
Object 
Calisthenics 
photo by: boston_public_library
Calisthenics 
/ˌkaləsˈTHeniks/ 
Calisthenics are a form of dynamic exercise consisting of a variety of 
simple, often rhyt...
Its about perception, 
not rules or standards photo by: david_a_l
#1 
Only one 
indentation level 
per method. 
photo by: justinliew
#2 
Do not 
use else 
photo by: justinliew
#3 
Wrap primitive 
types, if they 
contain behavior 
photo by: justinliew
#4 
Only one 
-> per line 
photo by: justinliew
#5 
Do not 
abbreviate. 
photo by: justinliew
#6 
Keep your 
classes small. 
photo by: justinliew
#7 
Limit your 
instance variables 
to less then 5 
photo by: justinliew
#8 
Use first class 
collections 
photo by: justinliew
#9 
Use getters 
and setters. 
photo by: justinliew
#10 
Document 
your code. 
photo by: justinliew
Your turn.
Improve 
yourself!
Read lots of 
code!
Write simple 
code.
Try Object Calisthenics 
for a month.
Use someone 
else’s code.
Share bite size 
libraries.
Thank you. 
@rdohms 
https://joind.in/12734 
http://doh.ms 
http://slides.doh.ms 
please rate me!
http://l.doh.ms/oc-links 
Video recording 
Slides 
Books 
Resources on 
Object Calisthenics
Writing code you won't hate tomorrow
Writing code you won't hate tomorrow
Writing code you won't hate tomorrow
Writing code you won't hate tomorrow
Writing code you won't hate tomorrow
Writing code you won't hate tomorrow
Writing code you won't hate tomorrow
Writing code you won't hate tomorrow
Writing code you won't hate tomorrow
Writing code you won't hate tomorrow
Prochain SlideShare
Chargement dans…5
×

Writing code you won't hate tomorrow

20 649 vues

Publié le

As developers we write code everyday, only to frown at it a week after that. Why do we have such a hard time with code written by others and ourselves, this raging desire to rewrite everything we see? Writing code that survives the test of time and self judgment is a matter of clarity and simplicity. Let's talk about growing, learning and improving our code with calisthenics, readability and good design.

Publié dans : Ingénierie, Technologie

Writing code you won't hate tomorrow

  1. Writing code that lasts. Rafael Dohms @rdohms photo: djandyw.com
  2. Writing code you won’t hate tomorrow. Rafael Dohms @rdohms photo: djandyw.com
  3. Let me introduce you to someone…
  4. No Tests. shhh.. don’t tell Grumpy. Wrote his own framework. .. and used it. Used Singletons! .. and every other anti-pattern out there. 500 line methods. … not even methods, they were functions
  5. photo: Rob Allen (@akrabat)
  6. REWRITE ALL THE CODE!
  7. photo: Glyn Lowe Photoworks Real Developers, SHIP STUFF.
  8. How do we find balance? photo: Kalexanderson
  9. Code has an expiration date photo: CarbonNYC
  10. Code is photo by: massdistraction perishable, it rots.
  11. Code Evolves photo by: kevin dooley
  12. Languages evolve. photo by: raneko
  13. You evolve. photo by: Kaptain Kobold
  14. Complexity kills Comprehension photo: osbornb
  15. Bad Design photo: miskan
  16. Bad specs
  17. NIH photo by: John 'K' source: Urban dictionary
  18. NIH | nɒt ɪnˈventɪd hɪə | Not Invented Here —The German art of humiliating any technology, agricultural product, or (medical) scientific work that has not been invented or produced in Germany, Switzerland, or Austria. photo by: John 'K' source: Urban dictionary
  19. The Solution™ photo: Ian Sane
  20. Improve code
  21. make it easier to comprehend Improve code
  22. make it easier to comprehend make it flexible Improve code
  23. make it easier to comprehend make it flexible make it tested Improve code
  24. make it easier to comprehend make it flexible make it tested Improve code make it easier to replace, refactor
  25. make it easier to comprehend make it flexible make it tested Improve code make it easier to replace, refactor make it not exist
  26. Testing photo by: jeffkrause
  27. Good Design Concepts
  28. SOLID Single Responsibility Open and Close Liskov substitution Interface Segregation Dependency Inversion photo by j_regan
  29. photo by lofink STUPID Singleton Tight Coupling Untestability Premature Optimization Indescriptive Naming Duplication
  30. photo by halloweenstock Design Patterns
  31. Composer
  32. PIE Proudly Invented Elsewhere
  33. guzzle/guzzle HTTP client for RESTful API clients photo by j_regan
  34. morrisonlevi/ardent A library of collections for PHP
  35. Readability photo: Morgenland
  36. paragraphs photo: Trossachs Photography
  37. whitespace
  38. Cape Town São Paulo R&D Team for MIH/Naspers
  39. Object Calisthenics photo by: boston_public_library
  40. Calisthenics /ˌkaləsˈTHeniks/ Calisthenics are a form of dynamic exercise consisting of a variety of simple, often rhythmical, movements, generally using minimal equipment or apparatus. photo by: boston_public_library
  41. Its about perception, not rules or standards photo by: david_a_l
  42. #1 Only one indentation level per method. photo by: justinliew
  43. #2 Do not use else photo by: justinliew
  44. #3 Wrap primitive types, if they contain behavior photo by: justinliew
  45. #4 Only one -> per line photo by: justinliew
  46. #5 Do not abbreviate. photo by: justinliew
  47. #6 Keep your classes small. photo by: justinliew
  48. #7 Limit your instance variables to less then 5 photo by: justinliew
  49. #8 Use first class collections photo by: justinliew
  50. #9 Use getters and setters. photo by: justinliew
  51. #10 Document your code. photo by: justinliew
  52. Your turn.
  53. Improve yourself!
  54. Read lots of code!
  55. Write simple code.
  56. Try Object Calisthenics for a month.
  57. Use someone else’s code.
  58. Share bite size libraries.
  59. Thank you. @rdohms https://joind.in/12734 http://doh.ms http://slides.doh.ms please rate me!
  60. http://l.doh.ms/oc-links Video recording Slides Books Resources on Object Calisthenics

×