Some very good references there. I'd recommend Streamlined Object Modeling: Patterns, Rules, and Implementation. The book shows 12 core patterns for the pieces of your architecture and the reasoning for their existence. I believe using these patterns your application will be in a manageable state as it grows.
On Jul 4, 9:42 pm, adz <[email protected]> wrote: > Hi All, > I gave a talk at Adelaide.rb last night about OO in > Rails.http://www.slideshare.net/adzdavies/oo-and-rails > > I wasn't sure where to go with it, but it ended up being aimed at > motivations for practical OO design.... > ...what I've absorbed, and what is online to make better code, and > especially, as it applies to Ruby. > > For those interested, below is run through of some of my sources -- some > talks & books I found really interesting... > > --- > > My first point was that we are lucky to have (some) of the creators of our > core ideas still with us... > In understanding OO design, we can look at the creators of this stuff. > > Barbara Liskov gave a great speech, very interesting on the early > thinking... > - How did they come up with OO? 40ish years ago? > - What were they thinking? What problems were certain techniques solving? > - BTW: Barbara was at the forefront of programming research then, and > still is today!http://www.infoq.com/presentations/liskov-power-of-abstraction/ > > Stefan Ram wanted clear definition on what OO was, so he asked the guy who > coined the term (Alan > Kay):http://userpage.fu-berlin.de/~ram/pub/pub_jf47ht81Ht/doc_kay_oop_en > > --- > > FREE ONLINE BOOK: Objects on Rails: Flexible Web Application Desigin, Avdi > Grimm > - Excellent book, a tour in building an app with practical design in mind > - Avdi applies principle and patterns along the way (in fact, he sneaks > them in) > - The goal? Producing single-responsibility, decoupled code... > - Buy the deluxe version! > -> You get an EXCELLENT 2.5h recorded discussion between Avdi and Sandi > Metzhttp://objectsonrails.com/ > > BOOK: Agile Software Development, Principles, Patterns, and Practices > - The point? > - How to write good code > - General guiding principles helping you to decouple dependencies > - Lot's of code (unfortunately its java and C++) > - He demonstrates, with code examples, how to apply "S.O.L.I.D." principles > - He does the same with design patterns > - Also on agile practices > > SOLID is a set of guiding principles first gathered together by Robert C > Martin in this book... > > So, they seemed to come out of static languages? > But... Uncle Bob is no stranger to dynamic languages, having been into > Smalltalk and now Ruby. > > Is SOLID relevant at all to Ruby??? > Yes, especially the first three. but sometimes not exactly the same way > > VIDEO PRESENTATION: SOLID Ruby, by Jim Weirich > - Jim tries to get the ideas *behind* SOLID > - How to best apply them to > ruby?http://www.confreaks.com/videos/185-rubyconf2009-solid-ruby > > VIDEO PRESENTATION: SOLID OO Design, by Sandi Metz > - Shows off SOLID in how it applies to Ruby > - Real code samples show how the code gets better with little effort > - WATCH > IT!http://www.confreaks.com/videos/240-goruco2009-solid-object-oriented-... > > VIDEO: RailsConf 2009 Keynote: "What killed smalltalk could kill ruby too" > - An interesting talk by Uncle Bob, entertaining... > - C++ guys HAD to do good design just to do anything...! > - Smalltalkers could 'get away' with bad design because it was far more > powerful... but not forever... > - They walled themselves off from the rest of the world > - They didn't want to deal with that ugly enterprise > stuffhttp://blip.tv/railsconf/railsconf-09-robert-martin-what-killed-small... > > PODCASTS: Ruby Rogues - in-depth technical > discussionshttp://rubyrogues.com/object-oriented-programming-in-rails-with-jim-w...http://rubyrogues.com/046-rr-objects-in-rails-part-2/http://rubyrogues.com/056-rr-david-heinemeier-hansson/ > > PODCASTS: Ruby Rogues on > SOLIDhttp://rubyrogues.com/rr-60-solid-with-jim-weirich/ > > BOOK: Practical Object Oriented Design in Ruby, by Sandi Metz > - Not-yet-released (can get a 'rough cut') > - Looks to be awesome > > Review: > > > There’s a lot of Ruby community interest lately about applying extra rigor > > to SOLID OOP and recognizing where procedural habits, coupling, and > > unnecessary dependencies sneak into our code. This book positions itself as > > a pragmatic superset of all the trends I’ve been reading more and more of > > lately. > > > I believe this book has some of the most clear, concise, and pragmatic > > presentations of these topics I’ve come across to date. It’s inspiring and > > is a great transition to more theoretical OOP material. > > >http://blog.oneif.net/2011/12/04/5-min-book-review-practical-object-o... > > Hope you find some of that interesting, and continue to delve into the > 'practical' side of OO design. > Adam -- You received this message because you are subscribed to the Google Groups "Ruby or Rails Oceania" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/rails-oceania?hl=en.
