经验丰富的程序员,对如何从头开始编写rails应用程序感到困惑

mag*_*e f 3 ruby design-patterns ruby-on-rails ruby-on-rails-3

我过去曾参与过几个ruby on rails项目,但我加入了这些项目,其中包含完整构建的rails应用程序,包括规范测试,工厂,模型,视图,控制器和一些自定义库.我做了数百次提交来修复这些项目中的已分配票证,我对Rails MVC架构了如指掌.

但现在是我需要从头开始创建一个Rails应用程序的时间,尽管我有铁杆经验,但我没有信心开始.

我最大的问题是,如何决定我将创建的控制器,我创建的控制器的目的是什么,Web应用程序的整个设计,现在有很多东西在我脑海中运行,我只是无法解决它.

有没有人有同样的情况,或者像我一样遇到过同样的问题?

the*_*RON 6

在开始一个新的应用程序时,我通常会(在纸面上)概述我认为应用程序的核心模型将会是什么,以及它们如何相互关联.显然,随着应用程序在开发过程中的演变,这些可能会发生变化,但这是一个很好的起点.

然后,从该池中,我确定了应用程序目的最"核心"的模型 - 然后我开始生成它rails g model ModelName.例如:我最近在酒店目录上工作,并从Hotel模型开始.

然后我应用一些非常基本的TDD方法并开始为该模型的单元测试编写规范,运行测试,构建,编写更多规范,重构等.随着位的到位,执行提交并继续.这样,如果你走错了路,很容易再次回到健康的地方,你不必担心(尽可能多)犯错误.

我通常会发现,通过从核心模型的单元测试开始,您的应用程序的其余部分将自然地演变出来.一旦您决定进行功能和集成测试,您应该清楚地了解所有部分如何组合在一起以及用户应该如何"流动"您的应用程序.这自然会引导您开发适合您不同用户场景的控制器.

最重要的是,练习是习惯从头开始练习的最佳方式.构建一些具有非常明确结果的基本应用程序,例如博客或简单的计划工具.它将帮助您适应这个过程,因此当您转向更大或更抽象的应用程序时 - 您将更加擅长开始.