Access denied, Please sign in and make sure you have proper permission.
看完后,我的第一反应是,能否完全重写,如果有现成的需求文档和之前的设计文档。
顺便可以升级一下 Layout,这样 Front end 那块就不用重构了。直接从新开始,可能更快。
Constant 代替 Model 没看懂,能贴些代码上来不?
Redirect -> Redirect -> Redirect 我以前接一个 Java 的项目也是,害我将所有 Redirect 画在纸上才明白它在干啥 :-) ,太痛苦了
不过你说的问题,在其它language也是一样,最近接的一个十年历史的C#也是差不多,全部table view + pop up box, inline css + inline js(without framework)。所以我觉得重写更快一些,但也碰到过一些项目,几年下来,上千个 table,没有 comment,没有文档,根本无从入手,还要不是英文的,变量名字都没看懂。
BTW,看旧代码很伤神的,快听听音乐舒服一下。
@MaFai
因為功能持續開發中,加上完全沒有文擋,所以只有重構這個選擇。
Constant 代替 Model 這個部分,因為代碼牽扯到公司機密,所以我隨便舉個不相干的例子供你參考。
假設一個 User 會有一種 Role,每種 Role 會有各自的屬性,且可能被更改。
正常來講我們會開一個 User model 和 一個 Role model 去做一對多的連結,如果要修改 Role 的屬性就從後台修改。
而我指的 Constant 代替 Model 就是指開一個 User model,把所有 Role 寫成 constant 放在 User model 裡面。
ex:
class User < ActiveRecord::Base
Role = {
:normal => { :attribute1 => xxx, attribute2 => xxxx },
:manager => { :attribute1 => xxx, attribute2 => xxxx },
:admin => { :attribute1 => xxx, attribute2 => xxxx }
}
end
讓應該用 model 管理的東西跑到代碼裡。