Rails Makes You Stupid
I’ll preface this post by saying that I am a fan of Ruby on Rails, and that’s where I do most of my software development these days. I have, however, been working in Rails for sufficiently long now that the honeymoon is over, and I’m gaining a sense of some things that are not so great about it.
Long before doing any development in Rails, I had begun honing my skills as a developer pf Object Oriented software, learning TDD, learning about design patterns, learning good software architectural principles such as Law of Demeter, Single Responsibility Principle, preferring encapsulation over inheritance, etc. Now, after focusing more and more on Rails development for the last few years, I find my practices to have eroded somewhat, and I’m now endeavoring to re-invigorate them.
Long before doing any development in Rails, I had begun honing my skills as a developer pf Object Oriented software, learning TDD, learning about design patterns, learning good software architectural principles such as Law of Demeter, Single Responsibility Principle, preferring encapsulation over inheritance, etc. Now, after focusing more and more on Rails development for the last few years, I find my practices to have eroded somewhat, and I’m now endeavoring to re-invigorate them.
Some Problems with Rails
Rails is an opinionated framework, and as we learn the Rails philosophy, we also learn to stick with the standards except where we have good reasons not to. The problem with that is — while the Rails standards work great for simple CRUD applications, it turns out that there are very few simple CRUD applications in the world. To the extent that we do keep trying to shoehorn our our applications into the Rails paradigm when they grow to become neither “simple” nor primarily “CRUD”, we start to damage their quality and maintainability.
Even though we may come to Rails relatively competent developers who always strive to improve our craft, to the extent that we get seduced into writing Rails applications and doing them the Rails way, we can easily find ourselves suffering a decline.
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/301743/viewspace-742775/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- makes the current sessionSession
- 幽默:STUPID原則 - simon
- Why MongoDB? It's the developers, stupidMongoDBDeveloper
- [Rails學習之路]Rails路由配置AI路由
- DrawERD makes it easy to visualize your database structure.DatabaseStruct
- You've got to find what you loveGo
- BlueStore原始碼分析之Stupid分配器原始碼
- 精簡版的Rails框架->Rails::APIAI框架API
- 【棧】RailsAI
- Ruby on Rails 生成指定版本的 Rails 專案AI
- rails on ruby,ruby on rails 之程式碼塊(二)AI
- oracle 豎表,橫表(a stupid way,want the smart way)Oracle
- 表意清晰的精髓——KISS原則(Keep it simple,stupid)
- 從Rails到Clojure再到Java,最後回到RailsAIJava
- jscalpel A small feature library that makes it easier to manipulate objectsJSObject
- Rails Security (上)AI
- Rails安裝AI
- Rails Code QuestionsAI
- [ruby] rails renderAI
- Rails分頁AI
- Rails的模板AI
- where are you going ? 反序為:going you are whereGo
- robbin的自白:You've got to find what you loveGo
- Modular Rails: The complete Guide to Modular Rails Applications 筆記AIGUIIDEAPP筆記
- Stupid && 祖傳Fortran程式碼救贖之路(編譯Dll)編譯
- ruby on rails 小技巧AI
- Rails 一對多AI
- rails graphql的使用AI
- rails 配置使用mysqlAIMySql
- Rails 4.0.1 釋出AI
- Rails 3.2.7 釋出AI
- Ruby on Rails 相關AI
- Ruby On Rails 技術AI
- BackboneJS與RailsJSAI
- How do you pronounce IT?
- When you're goneGo
- [譯] 如何使用 Rails HelperAI
- Ruby on Rails Ping ++ 支付AI