SlideShare una empresa de Scribd logo
1 de 23
Descargar para leer sin conexión
Merb, Le framework tellement bien qu’il sera int´gr´ dans Rails
                                                ee




               Merb, Le framework tellement bien qu’il sera
                            int´gr´ dans Rails
                               ee

                                                     Cyril Mougel


                                                     07 Mars 2009
Merb, Le framework tellement bien qu’il sera int´gr´ dans Rails
                                                ee
 Merb, c’est quoi ?




            Merb, c’est quoi ?
       1



            Les concepts de Merb
       2



            Les diff´rentes partie de Merb
                   e
       3



            En pratique ?
       4
Merb, Le framework tellement bien qu’il sera int´gr´ dans Rails
                                                ee
 Merb, c’est quoi ?



      Un coquille vide ?




               Non, car utilis´ dans plein de projet
                              e
               Non, car sinon il ne serait pas merg´ dans Rails
                                                   e
               Non, car il a entrain´ des flameware comme Vim/Emacs
                                    e
               Non, car la majeur partie des Merbistes sont des Railers
Merb, Le framework tellement bien qu’il sera int´gr´ dans Rails
                                                ee
 Merb, c’est quoi ?



      C’est partie comment ?




               ”Start has a hack”
               http ://pastie.org/14416
               Ezmobius et Wycats
               ”No code is faster than no code”
Merb, Le framework tellement bien qu’il sera int´gr´ dans Rails
                                                ee
 Les concepts de Merb




            Merb, c’est quoi ?
       1



            Les concepts de Merb
       2



            Les diff´rentes partie de Merb
                   e
       3



            En pratique ?
       4
Merb, Le framework tellement bien qu’il sera int´gr´ dans Rails
                                                ee
 Les concepts de Merb



      La diff´rence par rapport ` Ruby On Rails ?
            e                  a




               ORM Agnostic
               Javascript Agnostic
               Modulaire
               API Public
Merb, Le framework tellement bien qu’il sera int´gr´ dans Rails
                                                ee
 Les concepts de Merb



      Les points communs avec Ruby On Rails




               MVC
               View Agnostic
               Rack based (nouveau chez Rails 2.2)
               Thread safe (nouveau chez Rails 2.2)
Merb, Le framework tellement bien qu’il sera int´gr´ dans Rails
                                                ee
 Les diff´rentes partie de Merb
         e




            Merb, c’est quoi ?
       1



            Les concepts de Merb
       2



            Les diff´rentes partie de Merb
                   e
       3



            En pratique ?
       4
Merb, Le framework tellement bien qu’il sera int´gr´ dans Rails
                                                ee
 Les diff´rentes partie de Merb
         e



      Merb-core




               ´quivalent ` ActionPack mais en light
               e          a
               Routing, Rack, Bootloader, Controller
Merb, Le framework tellement bien qu’il sera int´gr´ dans Rails
                                                ee
 Les diff´rentes partie de Merb
         e



      Merb-more




               Le reste d’ActionPack
               Des gems pratiques pour certaine options (merb-mailer,
               merb-cache, merb-action-args)
               Utile, mais non critique
Merb, Le framework tellement bien qu’il sera int´gr´ dans Rails
                                                ee
 Les diff´rentes partie de Merb
         e



      Merb-plugins




               Maintenu par le Merb Core Team
               Les gems de communication avec les diff´rentes briques
                                                     e
               (merb-sequel, merb-datamapper, merb-activerecord, etc...)
               Non essentiel
Merb, Le framework tellement bien qu’il sera int´gr´ dans Rails
                                                ee
 En pratique ?




            Merb, c’est quoi ?
       1



            Les concepts de Merb
       2



            Les diff´rentes partie de Merb
                   e
       3



            En pratique ?
       4
Merb, Le framework tellement bien qu’il sera int´gr´ dans Rails
                                                ee
 En pratique ?



      Render - Display - provides




               On affiche une vue (Render)
               On rend une resource (Display)
               On fournit des formats (provides)
Merb, Le framework tellement bien qu’il sera int´gr´ dans Rails
                                                ee
 En pratique ?



      Render


       Un exemple de controller utilisant render :

 1     c l a s s Widgets < A p p l i c a t i o n
 2         def l i c e n c e
 3             render
 4         end
 5
 6       d e f manual
 7          @manual = . . .
 8           r e n d e r @manual
 9       end
10     end
Merb, Le framework tellement bien qu’il sera int´gr´ dans Rails
                                                ee
 En pratique ?



      Display
       Un exemple de controller utilisant Display :
 1     Class Users < Application
 2
 3         p r o v i d e s : xml , : j s o n , : yaml
 4
 5        # A p p e l l a v u e demande p a r l a r e q u e t e s u i v a n t
 6        # ce qui e s t f o u r n i ( p r o v i d e s )
 7        # : xml , : j s o n , : yaml
 8        d e f show
 9            @ u s e r = U s e r . g e t ( params [ : i d ] )
10            d i s p l a y @user
11        end
12
          # r e c u p e r e / app / v i e w / u s e r s / i n d e x . ( h t m l | xml | j s o n | yaml ) . haml
13
14        def index
15          @users = User . a l l
16          d i s p l a y @users
17        end
18
19     end
Merb, Le framework tellement bien qu’il sera int´gr´ dans Rails
                                                ee
 En pratique ?



      merb-action-args




               Des param`tres sur les actions ?
                        e
               Simplifie les controllers
               Bas´ sur ParseTree
                  e
Merb, Le framework tellement bien qu’il sera int´gr´ dans Rails
                                                ee
 En pratique ?



       Sans
  1    c l a s s Users < Application
  2        d e f show
  3            @ u s e r = U s e r . g e t ( params [ : i d ] )
  4            d i s p l a y @user
  5        end
  6
  7       def index
  8         @ u s e r s = U s e r . p a g i n a t e ( params [ : page ] ,
  9                                                   params [ : p e r p a g e ] )
 10         d i s p l a y @users
 11       end
 12
 13    end


       Avec
  1    c l a s s Users < Application
  2        d e f show ( i d )
  3            @user = User . get ( i d )
  4            d i s p l a y @user
  5        end
  6
  7       d e f i n d e x ( page =1 , p e r p a g e =10)
  8           @ u s e r s = U s e r . p a g i n a t e ( page ,
  9                                                     per page )
 10           d i s p l a y @users
 11       end
 12
 13    end
Merb, Le framework tellement bien qu’il sera int´gr´ dans Rails
                                                ee
 En pratique ?



      Les routeurs




               Resources ( resources :articles )
               Tr`s lisible ( match(”/about”).to( :controller =¿
                 e
               ”main”, :action =¿ ”about”).name( :about) )
               url( :about)
Merb, Le framework tellement bien qu’il sera int´gr´ dans Rails
                                                ee
 En pratique ?



      merb-slice



               Inspir´ des app de Django
                     e
               Une sorte de mini application Merb
               On y d´fini :
                     e
                       Ses routes
                       Ses controllers dans un namespace
                       Ses mod`les
                               e
               router.rb : slice( :merb static pages slice, :path =¿ ”static”)
               merb-auth la slice d’authentification
Merb, Le framework tellement bien qu’il sera int´gr´ dans Rails
                                                ee
 En pratique ?



      merb-cache




               Une seule m´thode : cache
                          e
               On invalid le cache avec eager cache
               Pas diff´rente m´thode, juste diff´rente option
                      e       e                e
Merb, Le framework tellement bien qu’il sera int´gr´ dans Rails
                                                ee
 En pratique ?




  1    c l a s s Posts < Application
  2
  3       a f te r : clear fragment cache , : only = [ : create ]
                                                    >
  4
  5       c a c h e : show
  6       cache : index , : s t o r e = : a c t i o n s t o r e
                                       >
  7       eager cache : create , : index
  8
  9       def index
 10         @posts = Post . a l l
 11         render
 12       end
 13
 14       d e f show
 15          @ p o s t = P o s t . f i r s t ( : i d = params [ : i d ] )
                                                      >
 16           render
 17       end
 18
 19       def c r e a t e
 20         ...
 21       end
 22
 23       private
 24
 25       def c l e a r f r a g m e n t c a c h e
 26         Merb : : Cache [ : memcached ] . d e l e t e ( ” c u s t o m k e y ” )
 27       end
 28
 29    end
Merb, Le framework tellement bien qu’il sera int´gr´ dans Rails
                                                ee
 En pratique ?



      Les resources ?




               http ://wiki.merbivore.org
               http ://merbivore.org/documentation.html
               http ://merbunity.com/
Merb, Le framework tellement bien qu’il sera int´gr´ dans Rails
                                                ee
 En pratique ?




                                                questions ?

Más contenido relacionado

Destacado

Presentación Agendas Ciudadanas por la Transparencia
Presentación Agendas Ciudadanas por la TransparenciaPresentación Agendas Ciudadanas por la Transparencia
Presentación Agendas Ciudadanas por la TransparenciaTransparenciaporColombia
 
Plagiodiegorojas 110312064548-phpapp01
Plagiodiegorojas 110312064548-phpapp01Plagiodiegorojas 110312064548-phpapp01
Plagiodiegorojas 110312064548-phpapp01biblioterapia
 
Controles basicos final
Controles basicos finalControles basicos final
Controles basicos finalprofesorpfpd
 
Site web communal et référents dans l'administration
Site web communal et référents dans l'administrationSite web communal et référents dans l'administration
Site web communal et référents dans l'administrationPhilippe Allard
 
Alimentacion saludable
Alimentacion saludableAlimentacion saludable
Alimentacion saludablePrivada
 
New plaquette ips group
New plaquette ips groupNew plaquette ips group
New plaquette ips groupharissonbcd
 
Norma Mexicana para la Interoperabilidad de Entornos de Objetos de Aprendizaje
Norma Mexicana para la Interoperabilidad de Entornos de Objetos de AprendizajeNorma Mexicana para la Interoperabilidad de Entornos de Objetos de Aprendizaje
Norma Mexicana para la Interoperabilidad de Entornos de Objetos de AprendizajeGabriel López-Morteo
 
Connaître les principaux points à risques pour rénover sa salle de bains
Connaître les principaux points à risques pour rénover sa salle de bains Connaître les principaux points à risques pour rénover sa salle de bains
Connaître les principaux points à risques pour rénover sa salle de bains Travauxlib
 
8 Sources de Trafic Web que vous pouvez suivre grâce au Call Tracking
8 Sources de Trafic Web que vous pouvez suivre grâce au Call Tracking8 Sources de Trafic Web que vous pouvez suivre grâce au Call Tracking
8 Sources de Trafic Web que vous pouvez suivre grâce au Call TrackingDexem
 
Aminas página inicial scvc
Aminas página inicial scvcAminas página inicial scvc
Aminas página inicial scvcPrivada
 
Guy Mamou-Mani - Extrait Livre Blanc 80 #PortraitDeStartuper - Les start-up r...
Guy Mamou-Mani - Extrait Livre Blanc 80 #PortraitDeStartuper - Les start-up r...Guy Mamou-Mani - Extrait Livre Blanc 80 #PortraitDeStartuper - Les start-up r...
Guy Mamou-Mani - Extrait Livre Blanc 80 #PortraitDeStartuper - Les start-up r...Sébastien Bourguignon
 
Ampollanohereditaria
AmpollanohereditariaAmpollanohereditaria
AmpollanohereditariaPrivada
 
Diapo axelle
Diapo axelleDiapo axelle
Diapo axelleAxelle11
 

Destacado (19)

Presentación Agendas Ciudadanas por la Transparencia
Presentación Agendas Ciudadanas por la TransparenciaPresentación Agendas Ciudadanas por la Transparencia
Presentación Agendas Ciudadanas por la Transparencia
 
2012 03-02-sdl-sgi-v03
2012 03-02-sdl-sgi-v032012 03-02-sdl-sgi-v03
2012 03-02-sdl-sgi-v03
 
Plagiodiegorojas 110312064548-phpapp01
Plagiodiegorojas 110312064548-phpapp01Plagiodiegorojas 110312064548-phpapp01
Plagiodiegorojas 110312064548-phpapp01
 
Controles basicos final
Controles basicos finalControles basicos final
Controles basicos final
 
Site web communal et référents dans l'administration
Site web communal et référents dans l'administrationSite web communal et référents dans l'administration
Site web communal et référents dans l'administration
 
Alimentacion saludable
Alimentacion saludableAlimentacion saludable
Alimentacion saludable
 
New plaquette ips group
New plaquette ips groupNew plaquette ips group
New plaquette ips group
 
Neel
NeelNeel
Neel
 
Norma Mexicana para la Interoperabilidad de Entornos de Objetos de Aprendizaje
Norma Mexicana para la Interoperabilidad de Entornos de Objetos de AprendizajeNorma Mexicana para la Interoperabilidad de Entornos de Objetos de Aprendizaje
Norma Mexicana para la Interoperabilidad de Entornos de Objetos de Aprendizaje
 
Introduction TD 03122016
Introduction TD 03122016Introduction TD 03122016
Introduction TD 03122016
 
Connaître les principaux points à risques pour rénover sa salle de bains
Connaître les principaux points à risques pour rénover sa salle de bains Connaître les principaux points à risques pour rénover sa salle de bains
Connaître les principaux points à risques pour rénover sa salle de bains
 
8 Sources de Trafic Web que vous pouvez suivre grâce au Call Tracking
8 Sources de Trafic Web que vous pouvez suivre grâce au Call Tracking8 Sources de Trafic Web que vous pouvez suivre grâce au Call Tracking
8 Sources de Trafic Web que vous pouvez suivre grâce au Call Tracking
 
Aminas página inicial scvc
Aminas página inicial scvcAminas página inicial scvc
Aminas página inicial scvc
 
Guy Mamou-Mani - Extrait Livre Blanc 80 #PortraitDeStartuper - Les start-up r...
Guy Mamou-Mani - Extrait Livre Blanc 80 #PortraitDeStartuper - Les start-up r...Guy Mamou-Mani - Extrait Livre Blanc 80 #PortraitDeStartuper - Les start-up r...
Guy Mamou-Mani - Extrait Livre Blanc 80 #PortraitDeStartuper - Les start-up r...
 
Ampollanohereditaria
AmpollanohereditariaAmpollanohereditaria
Ampollanohereditaria
 
Type with expo
Type with expoType with expo
Type with expo
 
Diapo axelle
Diapo axelleDiapo axelle
Diapo axelle
 
transmision Line cert
transmision Line certtransmision Line cert
transmision Line cert
 
Intervention lycee BTS
Intervention lycee BTSIntervention lycee BTS
Intervention lycee BTS
 

Similar a Merb Le Framework Tellement Bien Qu Il Sera Integré Dans Rails

Initiation Rails Rspec
Initiation Rails RspecInitiation Rails Rspec
Initiation Rails RspecCyril Mougel
 
.Net pour le développeur Java - une source d'inspiration?
.Net pour le développeur Java - une source d'inspiration?.Net pour le développeur Java - une source d'inspiration?
.Net pour le développeur Java - une source d'inspiration?Rui Carvalho
 
International Journal of Engineering Research and Development (IJERD)
International Journal of Engineering Research and Development (IJERD)International Journal of Engineering Research and Development (IJERD)
International Journal of Engineering Research and Development (IJERD)IJERD Editor
 
Séminaire Ruby on Rails (novembre 2010)
Séminaire Ruby on Rails (novembre 2010)Séminaire Ruby on Rails (novembre 2010)
Séminaire Ruby on Rails (novembre 2010)Novelys
 
Alphorm.com Formation Le langage Ruby
Alphorm.com Formation Le langage RubyAlphorm.com Formation Le langage Ruby
Alphorm.com Formation Le langage RubyAlphorm
 
Comment reprendre un (gros) projet Ruby on Rails
Comment reprendre un (gros) projet Ruby on RailsComment reprendre un (gros) projet Ruby on Rails
Comment reprendre un (gros) projet Ruby on RailsNovelys
 
Conférence "Architecture Android" du 19 Mars 2013 par Mathias Seguy fondateur...
Conférence "Architecture Android" du 19 Mars 2013 par Mathias Seguy fondateur...Conférence "Architecture Android" du 19 Mars 2013 par Mathias Seguy fondateur...
Conférence "Architecture Android" du 19 Mars 2013 par Mathias Seguy fondateur...Mathias Seguy
 
Ruby on Rails - Part 1
Ruby on Rails - Part 1Ruby on Rails - Part 1
Ruby on Rails - Part 1Hugo DG
 

Similar a Merb Le Framework Tellement Bien Qu Il Sera Integré Dans Rails (13)

Initiation Rails Rspec
Initiation Rails RspecInitiation Rails Rspec
Initiation Rails Rspec
 
Hadoop Graph Analysis par Thomas Vial
Hadoop Graph Analysis par Thomas VialHadoop Graph Analysis par Thomas Vial
Hadoop Graph Analysis par Thomas Vial
 
.Net pour le développeur Java - une source d'inspiration?
.Net pour le développeur Java - une source d'inspiration?.Net pour le développeur Java - une source d'inspiration?
.Net pour le développeur Java - une source d'inspiration?
 
Ruby
RubyRuby
Ruby
 
International Journal of Engineering Research and Development (IJERD)
International Journal of Engineering Research and Development (IJERD)International Journal of Engineering Research and Development (IJERD)
International Journal of Engineering Research and Development (IJERD)
 
Séminaire Ruby on Rails (novembre 2010)
Séminaire Ruby on Rails (novembre 2010)Séminaire Ruby on Rails (novembre 2010)
Séminaire Ruby on Rails (novembre 2010)
 
Alphorm.com Formation Le langage Ruby
Alphorm.com Formation Le langage RubyAlphorm.com Formation Le langage Ruby
Alphorm.com Formation Le langage Ruby
 
Comment reprendre un (gros) projet Ruby on Rails
Comment reprendre un (gros) projet Ruby on RailsComment reprendre un (gros) projet Ruby on Rails
Comment reprendre un (gros) projet Ruby on Rails
 
Presentation Spring
Presentation SpringPresentation Spring
Presentation Spring
 
Conférence "Architecture Android" du 19 Mars 2013 par Mathias Seguy fondateur...
Conférence "Architecture Android" du 19 Mars 2013 par Mathias Seguy fondateur...Conférence "Architecture Android" du 19 Mars 2013 par Mathias Seguy fondateur...
Conférence "Architecture Android" du 19 Mars 2013 par Mathias Seguy fondateur...
 
Ruby on Rails - Part 1
Ruby on Rails - Part 1Ruby on Rails - Part 1
Ruby on Rails - Part 1
 
Arel
ArelArel
Arel
 
Introduction à Uml
Introduction à UmlIntroduction à Uml
Introduction à Uml
 

Más de Cyril Mougel

Super marmite-pourquoi-choisir-mongodb
Super marmite-pourquoi-choisir-mongodbSuper marmite-pourquoi-choisir-mongodb
Super marmite-pourquoi-choisir-mongodbCyril Mougel
 
Cucumber Le Text Qui Test
Cucumber Le Text Qui TestCucumber Le Text Qui Test
Cucumber Le Text Qui TestCyril Mougel
 
Google Wave, le dernier de chez Google
Google Wave, le dernier de chez GoogleGoogle Wave, le dernier de chez Google
Google Wave, le dernier de chez GoogleCyril Mougel
 
Migration Rails 2.0 2.2
Migration Rails 2.0 2.2Migration Rails 2.0 2.2
Migration Rails 2.0 2.2Cyril Mougel
 

Más de Cyril Mougel (6)

Errbit
ErrbitErrbit
Errbit
 
Mongoid
MongoidMongoid
Mongoid
 
Super marmite-pourquoi-choisir-mongodb
Super marmite-pourquoi-choisir-mongodbSuper marmite-pourquoi-choisir-mongodb
Super marmite-pourquoi-choisir-mongodb
 
Cucumber Le Text Qui Test
Cucumber Le Text Qui TestCucumber Le Text Qui Test
Cucumber Le Text Qui Test
 
Google Wave, le dernier de chez Google
Google Wave, le dernier de chez GoogleGoogle Wave, le dernier de chez Google
Google Wave, le dernier de chez Google
 
Migration Rails 2.0 2.2
Migration Rails 2.0 2.2Migration Rails 2.0 2.2
Migration Rails 2.0 2.2
 

Merb Le Framework Tellement Bien Qu Il Sera Integré Dans Rails

  • 1. Merb, Le framework tellement bien qu’il sera int´gr´ dans Rails ee Merb, Le framework tellement bien qu’il sera int´gr´ dans Rails ee Cyril Mougel 07 Mars 2009
  • 2. Merb, Le framework tellement bien qu’il sera int´gr´ dans Rails ee Merb, c’est quoi ? Merb, c’est quoi ? 1 Les concepts de Merb 2 Les diff´rentes partie de Merb e 3 En pratique ? 4
  • 3. Merb, Le framework tellement bien qu’il sera int´gr´ dans Rails ee Merb, c’est quoi ? Un coquille vide ? Non, car utilis´ dans plein de projet e Non, car sinon il ne serait pas merg´ dans Rails e Non, car il a entrain´ des flameware comme Vim/Emacs e Non, car la majeur partie des Merbistes sont des Railers
  • 4. Merb, Le framework tellement bien qu’il sera int´gr´ dans Rails ee Merb, c’est quoi ? C’est partie comment ? ”Start has a hack” http ://pastie.org/14416 Ezmobius et Wycats ”No code is faster than no code”
  • 5. Merb, Le framework tellement bien qu’il sera int´gr´ dans Rails ee Les concepts de Merb Merb, c’est quoi ? 1 Les concepts de Merb 2 Les diff´rentes partie de Merb e 3 En pratique ? 4
  • 6. Merb, Le framework tellement bien qu’il sera int´gr´ dans Rails ee Les concepts de Merb La diff´rence par rapport ` Ruby On Rails ? e a ORM Agnostic Javascript Agnostic Modulaire API Public
  • 7. Merb, Le framework tellement bien qu’il sera int´gr´ dans Rails ee Les concepts de Merb Les points communs avec Ruby On Rails MVC View Agnostic Rack based (nouveau chez Rails 2.2) Thread safe (nouveau chez Rails 2.2)
  • 8. Merb, Le framework tellement bien qu’il sera int´gr´ dans Rails ee Les diff´rentes partie de Merb e Merb, c’est quoi ? 1 Les concepts de Merb 2 Les diff´rentes partie de Merb e 3 En pratique ? 4
  • 9. Merb, Le framework tellement bien qu’il sera int´gr´ dans Rails ee Les diff´rentes partie de Merb e Merb-core ´quivalent ` ActionPack mais en light e a Routing, Rack, Bootloader, Controller
  • 10. Merb, Le framework tellement bien qu’il sera int´gr´ dans Rails ee Les diff´rentes partie de Merb e Merb-more Le reste d’ActionPack Des gems pratiques pour certaine options (merb-mailer, merb-cache, merb-action-args) Utile, mais non critique
  • 11. Merb, Le framework tellement bien qu’il sera int´gr´ dans Rails ee Les diff´rentes partie de Merb e Merb-plugins Maintenu par le Merb Core Team Les gems de communication avec les diff´rentes briques e (merb-sequel, merb-datamapper, merb-activerecord, etc...) Non essentiel
  • 12. Merb, Le framework tellement bien qu’il sera int´gr´ dans Rails ee En pratique ? Merb, c’est quoi ? 1 Les concepts de Merb 2 Les diff´rentes partie de Merb e 3 En pratique ? 4
  • 13. Merb, Le framework tellement bien qu’il sera int´gr´ dans Rails ee En pratique ? Render - Display - provides On affiche une vue (Render) On rend une resource (Display) On fournit des formats (provides)
  • 14. Merb, Le framework tellement bien qu’il sera int´gr´ dans Rails ee En pratique ? Render Un exemple de controller utilisant render : 1 c l a s s Widgets < A p p l i c a t i o n 2 def l i c e n c e 3 render 4 end 5 6 d e f manual 7 @manual = . . . 8 r e n d e r @manual 9 end 10 end
  • 15. Merb, Le framework tellement bien qu’il sera int´gr´ dans Rails ee En pratique ? Display Un exemple de controller utilisant Display : 1 Class Users < Application 2 3 p r o v i d e s : xml , : j s o n , : yaml 4 5 # A p p e l l a v u e demande p a r l a r e q u e t e s u i v a n t 6 # ce qui e s t f o u r n i ( p r o v i d e s ) 7 # : xml , : j s o n , : yaml 8 d e f show 9 @ u s e r = U s e r . g e t ( params [ : i d ] ) 10 d i s p l a y @user 11 end 12 # r e c u p e r e / app / v i e w / u s e r s / i n d e x . ( h t m l | xml | j s o n | yaml ) . haml 13 14 def index 15 @users = User . a l l 16 d i s p l a y @users 17 end 18 19 end
  • 16. Merb, Le framework tellement bien qu’il sera int´gr´ dans Rails ee En pratique ? merb-action-args Des param`tres sur les actions ? e Simplifie les controllers Bas´ sur ParseTree e
  • 17. Merb, Le framework tellement bien qu’il sera int´gr´ dans Rails ee En pratique ? Sans 1 c l a s s Users < Application 2 d e f show 3 @ u s e r = U s e r . g e t ( params [ : i d ] ) 4 d i s p l a y @user 5 end 6 7 def index 8 @ u s e r s = U s e r . p a g i n a t e ( params [ : page ] , 9 params [ : p e r p a g e ] ) 10 d i s p l a y @users 11 end 12 13 end Avec 1 c l a s s Users < Application 2 d e f show ( i d ) 3 @user = User . get ( i d ) 4 d i s p l a y @user 5 end 6 7 d e f i n d e x ( page =1 , p e r p a g e =10) 8 @ u s e r s = U s e r . p a g i n a t e ( page , 9 per page ) 10 d i s p l a y @users 11 end 12 13 end
  • 18. Merb, Le framework tellement bien qu’il sera int´gr´ dans Rails ee En pratique ? Les routeurs Resources ( resources :articles ) Tr`s lisible ( match(”/about”).to( :controller =¿ e ”main”, :action =¿ ”about”).name( :about) ) url( :about)
  • 19. Merb, Le framework tellement bien qu’il sera int´gr´ dans Rails ee En pratique ? merb-slice Inspir´ des app de Django e Une sorte de mini application Merb On y d´fini : e Ses routes Ses controllers dans un namespace Ses mod`les e router.rb : slice( :merb static pages slice, :path =¿ ”static”) merb-auth la slice d’authentification
  • 20. Merb, Le framework tellement bien qu’il sera int´gr´ dans Rails ee En pratique ? merb-cache Une seule m´thode : cache e On invalid le cache avec eager cache Pas diff´rente m´thode, juste diff´rente option e e e
  • 21. Merb, Le framework tellement bien qu’il sera int´gr´ dans Rails ee En pratique ? 1 c l a s s Posts < Application 2 3 a f te r : clear fragment cache , : only = [ : create ] > 4 5 c a c h e : show 6 cache : index , : s t o r e = : a c t i o n s t o r e > 7 eager cache : create , : index 8 9 def index 10 @posts = Post . a l l 11 render 12 end 13 14 d e f show 15 @ p o s t = P o s t . f i r s t ( : i d = params [ : i d ] ) > 16 render 17 end 18 19 def c r e a t e 20 ... 21 end 22 23 private 24 25 def c l e a r f r a g m e n t c a c h e 26 Merb : : Cache [ : memcached ] . d e l e t e ( ” c u s t o m k e y ” ) 27 end 28 29 end
  • 22. Merb, Le framework tellement bien qu’il sera int´gr´ dans Rails ee En pratique ? Les resources ? http ://wiki.merbivore.org http ://merbivore.org/documentation.html http ://merbunity.com/
  • 23. Merb, Le framework tellement bien qu’il sera int´gr´ dans Rails ee En pratique ? questions ?