SlideShare una empresa de Scribd logo
1 de 12
Descargar para leer sin conexión
Πρακτικές,
Συμβάσεις,
Design
Patterns,
κλπ
κλπ...

Ποιος;


  Νίκος
Δημητρακόπουλος

  Απόφοιτος
Παν.
Πελοποννήσου.
:
Ε
&
Τ


   Τηλεπικοινωνιών

  nospam@nikosd.com,
http://nikosd.com


  Γενικό
background
σε
web
(all‐around
monkey!)

  3
χρόνια
«παιχνιδιού»
με
το
Rails

  1
χρόνο
«δουλειάς»
σε
Rails


✔  Ακόμα
1η
επιλογή


✖  Αλλά
βλέπω
πλέον
“The
dark
side”
of
Rails.

Things
learned
*from*
Rails?


  Μεθοδολογίες,
πρότυπα
κλπ
που
είναι:

    Γενικά

    Μπορούν
να
εφαρμοστούν
ΕΥΚΟΛΑ
και
σε
άλλα

    frameworks
/
γλώσσες
προγραμματισμού



  No
“Lock‐in”

Things
learned
*from*
Rails?


  Άλλα
Ruby
Web
Frameworks:

    Merb

    Meck

    …

  Web
Frameworks
σε
άλλες
γλώσσες:

    Django
(Python)

    Πολλααααλά
frameworks
σε
Java

    PHP
CakePHP,
Symphony,
…

Κύρια
σημεία


  Γενικές
«αρχές»
και
συμβάσεις


  Υποστηριζόμενες
από
μεθοδολογίες

  Και
Design
Patterns


  Έχουν
ως
αποτέλεσμα:

    Πιο
αποδοτικό
και
αποτελεσματικό
software

    development


    Και
Παγκόσμια
Ειρήνη

Συμβάσεις


  Κατ’
αρχάς:

     Ακολουθούμε
τις
συμβάσεις
όταν
είναι
δυνατόν!



  Γιατί;

     Για
να
*μην*
χρειάζεται
να
παίρνουμε
*τις
ίδιες*

     σχεδιαστικές
αποφάσεις
*κάθε*
φορά!


  Και
τέλος:

     Οι
συμβάσεις
είναι
για
να
σπάνε
(όταν
δε
μας

     κάνουν
και
ξέρουμε
και
γιατί!)

Παραδείγματα
συμβάσεων


  Όνομα
πίνακα
σε
πληθυντικό:
`people`

  Όνομα
μοντέλου
(Ruby
αντικειμένου)
που

  σντιστοιχεί
στον
πίνακα
people
σε
ενικό:

  `Person`


  Στήλη
σε
πίνακα
που
είναι
«κλειδί»
για

  σχέση
με
άλλο
πίνακα:

  όνομα_άλλου_πίνακα_id


Αρχές


  Be
DRY
(Don’t
Repeat
Yourself)

  Επαναχρησιμοποίηση
κώδικα:

    Plugins

    Modules

    Gems
(Libraries)

  Γράψτε
Tests
για
το
κώδικά
σας

    Test,
test,
test!

    Και
μετά
λίγο
ακόμα...

    Και
μετά
γράψτε
και
τον
αληθινό
κώδικα
(Test
Driven

    Development
/
Behavior
Driven
Development)

Design
Patterns


  MVC

  ORM



  REST



  URLs
are
NOT
pointers
to
files!


Μεθοδολογίες


  Agile

  Version
Control
of
code
base

  TDD/BDD

Συμπέρασμα;


  Μπλα
μπλα
μπλα



  Πάρτε
τις
γνώσεις
και
μεταφέρτε
τες
σε

  άλλα
περιβάλλοντα


  Εξελίξτε
αυτές
τις
ιδέες




  Φτιάξτε
καινούριες!

Αναφορές

  Παρουσιάσεις
στα
ελληνικά:

        Εισαγωγή
στην
Ruby:
http://nikosd.com/files/Introduction_to_Ruby_v1.0.1.pdf


        Εισαγωγή
στο
Rails
(αναφέρεται
στο
Rails
1):

         http://nikosd.com/files/Ruby_On_Rails_Introduction_v1.0.pdf



  Sites
(αγγλικά):

        http://guides.rails.info/

        http://groups.google.com/group/rubyonrails‐talk


  Βιβλία:

      http://www.pragprog.com/titles/ruby/programming‐ruby

      http://www.pragprog.com/titles/rails3/agile‐web‐development‐with‐rails‐third‐
       edition

      http://www.amazon.com/gp/product/0321445619?
       ie=UTF8&tag=nid06‐20&linkCode=as2&camp=1789&creative=9325&creativeASI
       N=0321445619


Más contenido relacionado

La actualidad más candente

2009 06 Study Wireless Korinthos
2009 06 Study Wireless Korinthos2009 06 Study Wireless Korinthos
2009 06 Study Wireless KorinthosTelco News
 
Nailtips Seminar for Emf Gels
Nailtips Seminar for Emf GelsNailtips Seminar for Emf Gels
Nailtips Seminar for Emf Gelsnailtips
 
εθελοντισμός
εθελοντισμόςεθελοντισμός
εθελοντισμόςVasso Servou
 
2005 Culture Marketing
2005 Culture Marketing2005 Culture Marketing
2005 Culture MarketingJin Lee
 
En la fuente, segunda parte
En la fuente, segunda parteEn la fuente, segunda parte
En la fuente, segunda parteAna Ovando
 
Protaseis gia yposthriktiko yliko 2
Protaseis gia yposthriktiko yliko 2Protaseis gia yposthriktiko yliko 2
Protaseis gia yposthriktiko yliko 2ssuser04ff74
 
Principles of amazon growth & leadership 사업 성장 원칙과 아마존 리더십 원칙
Principles of amazon growth & leadership 사업 성장 원칙과 아마존 리더십 원칙 Principles of amazon growth & leadership 사업 성장 원칙과 아마존 리더십 원칙
Principles of amazon growth & leadership 사업 성장 원칙과 아마존 리더십 원칙 Jahee Lee
 
Los campesinos
Los campesinosLos campesinos
Los campesinosAna Ovando
 
En la fuente, primera parte
En la fuente, primera parteEn la fuente, primera parte
En la fuente, primera parteAna Ovando
 
Θουκυδίδου Ιστορίαι, μετ Ελ. Βενιζέλου Βιβλίον Η
Θουκυδίδου Ιστορίαι, μετ Ελ. Βενιζέλου Βιβλίον ΗΘουκυδίδου Ιστορίαι, μετ Ελ. Βενιζέλου Βιβλίον Η
Θουκυδίδου Ιστορίαι, μετ Ελ. Βενιζέλου Βιβλίον Ηssuserc13fb9
 
National Report Greece Otoe Gr
National Report Greece Otoe GrNational Report Greece Otoe Gr
National Report Greece Otoe GrAristoteles Lakkas
 
Penelope Lazana 150195989
Penelope Lazana 150195989Penelope Lazana 150195989
Penelope Lazana 150195989ssuser4cebc11
 

La actualidad más candente (18)

El Cíclope
El CíclopeEl Cíclope
El Cíclope
 
Innovative Εducation Τechniques
Innovative Εducation ΤechniquesInnovative Εducation Τechniques
Innovative Εducation Τechniques
 
2009 06 Study Wireless Korinthos
2009 06 Study Wireless Korinthos2009 06 Study Wireless Korinthos
2009 06 Study Wireless Korinthos
 
Nailtips Seminar for Emf Gels
Nailtips Seminar for Emf GelsNailtips Seminar for Emf Gels
Nailtips Seminar for Emf Gels
 
εθελοντισμός
εθελοντισμόςεθελοντισμός
εθελοντισμός
 
2005 Culture Marketing
2005 Culture Marketing2005 Culture Marketing
2005 Culture Marketing
 
En la fuente, segunda parte
En la fuente, segunda parteEn la fuente, segunda parte
En la fuente, segunda parte
 
Protaseis gia yposthriktiko yliko 2
Protaseis gia yposthriktiko yliko 2Protaseis gia yposthriktiko yliko 2
Protaseis gia yposthriktiko yliko 2
 
Principles of amazon growth & leadership 사업 성장 원칙과 아마존 리더십 원칙
Principles of amazon growth & leadership 사업 성장 원칙과 아마존 리더십 원칙 Principles of amazon growth & leadership 사업 성장 원칙과 아마존 리더십 원칙
Principles of amazon growth & leadership 사업 성장 원칙과 아마존 리더십 원칙
 
Los campesinos
Los campesinosLos campesinos
Los campesinos
 
En la fuente, primera parte
En la fuente, primera parteEn la fuente, primera parte
En la fuente, primera parte
 
RefWorks step by step
RefWorks step by stepRefWorks step by step
RefWorks step by step
 
Aoratos po
Aoratos poAoratos po
Aoratos po
 
Θουκυδίδου Ιστορίαι, μετ Ελ. Βενιζέλου Βιβλίον Η
Θουκυδίδου Ιστορίαι, μετ Ελ. Βενιζέλου Βιβλίον ΗΘουκυδίδου Ιστορίαι, μετ Ελ. Βενιζέλου Βιβλίον Η
Θουκυδίδου Ιστορίαι, μετ Ελ. Βενιζέλου Βιβλίον Η
 
Eolo
EoloEolo
Eolo
 
National Report Greece Otoe Gr
National Report Greece Otoe GrNational Report Greece Otoe Gr
National Report Greece Otoe Gr
 
About SEO - Presentation
About SEO - Presentation About SEO - Presentation
About SEO - Presentation
 
Penelope Lazana 150195989
Penelope Lazana 150195989Penelope Lazana 150195989
Penelope Lazana 150195989
 

Destacado

Hungry planet
Hungry planetHungry planet
Hungry planetloups56
 
Cali Grandit
Cali GranditCali Grandit
Cali Granditloups56
 
Microsoft Hellas Dev Days 09: IronRuby
Microsoft Hellas Dev Days 09: IronRubyMicrosoft Hellas Dev Days 09: IronRuby
Microsoft Hellas Dev Days 09: IronRubyNikos Dimitrakopoulos
 
(NOW 3.0) MMORPG Architecture for dummies
(NOW 3.0) MMORPG Architecture for dummies(NOW 3.0) MMORPG Architecture for dummies
(NOW 3.0) MMORPG Architecture for dummiessquid
 
RECONÓCETE (R.B.G.)
RECONÓCETE   (R.B.G.)RECONÓCETE   (R.B.G.)
RECONÓCETE (R.B.G.)RBG
 

Destacado (7)

Hungry planet
Hungry planetHungry planet
Hungry planet
 
Cali Grandit
Cali GranditCali Grandit
Cali Grandit
 
A Blink Into The Rails Magic
A Blink Into The Rails MagicA Blink Into The Rails Magic
A Blink Into The Rails Magic
 
Microsoft Hellas Dev Days 09: IronRuby
Microsoft Hellas Dev Days 09: IronRubyMicrosoft Hellas Dev Days 09: IronRuby
Microsoft Hellas Dev Days 09: IronRuby
 
Athens Ruby Meetup #3: IronRuby
Athens Ruby Meetup #3: IronRubyAthens Ruby Meetup #3: IronRuby
Athens Ruby Meetup #3: IronRuby
 
(NOW 3.0) MMORPG Architecture for dummies
(NOW 3.0) MMORPG Architecture for dummies(NOW 3.0) MMORPG Architecture for dummies
(NOW 3.0) MMORPG Architecture for dummies
 
RECONÓCETE (R.B.G.)
RECONÓCETE   (R.B.G.)RECONÓCETE   (R.B.G.)
RECONÓCETE (R.B.G.)
 

Things Learned From Rails