1
lyragosa 2014-03-28 11:27:54 +08:00
我自己的网站也面临过这种问题。
曾经是大二的时候学习php+html的时候写的一个练手项目,没啥规划就是写着玩。 后来发现面向过程控制不住了……然后因为大学那个时候又没啥系统学习(加上本人也不是计算机专业也不太懂底层)代码写得简直乱如麻。 本来想用后来接触到的框架重制,然后看了CI和TP,感觉等于重写一个。麻烦。 然后花了差不多半年的业余时间,自制了一个框架 取名Lyragosa Engine 1.0 现在这个框架升级到了3.5并且已经和项目本身高度耦合……想取出来都不可能了。 好吧此回答估计对题主没什么帮助,求折叠。 |
2
hithorse OP 可否讲讲思路?因为现在有一些客户了,他们的层次结构都不相同,怎么能做这么一个灵活的层次架构显示出来呢?
|
3
sun019 2014-03-28 12:50:14 +08:00
用现成的框架 重新
|
4
Actrace 2014-03-28 12:50:49 +08:00
送你一句话:不要老想着重构.
|
5
opennet 2014-03-28 12:52:56 +08:00
首先,你得理解什么是面向对象,如果明白,就可以根据你们产品业务逻辑使用PHP的面向对象来重写代码。
|
6
raincious 2014-03-28 12:55:24 +08:00 1
这个不叫重构了,叫重建。
按照数据库建好Model,再按照页面的逻辑建好Controller。除了这个还能咋样?万事开头难呗。先选择好一个框架吧。 |
7
davansy 2014-03-28 13:05:44 +08:00 1
先理解下,什么是面向对象,面向对象并不是 用几个class 然后 new 一下就表示这是面向对象。推荐三本书 1. 深入PHP:面向对象、模式与实践(第2版) 2.http://book.douban.com/subject/4746407/ 2.重构 : 改善既有代码的设计 http://book.douban.com/subject/4262627/
3.设计模式 http://book.douban.com/subject/1052241/ 希望对你有帮助! |
8
johnsneakers 2014-03-28 23:29:14 +08:00
@davansy
第一本( 深入PHP:面向对象、模式与实践)出第三版了为什么推荐是第一版呢? |
9
davansy 2014-03-29 00:10:27 +08:00
@johnsneakers 那就是最新的第三版!
|
10
konakona 2014-03-29 01:12:54 +08:00
1.读懂现在面向过程的代码中核心业务部分
2.将可以作为函数库的东西单独隔离出来,以便OOP中使用,会很方便 3.先了解OOP、MVC,最好对CI、TP等这类OO框架至少一个有较深入的使用经验(至少半年),不然你没法写好OOP,你会花很多时间在这上面,又由于项目时间紧缺而做的不伦不类 4.有一份较为详尽的功能说明文档或功能规格文档。这一条不是必须得,但如果有,你会事半功倍 5.你可以开始了 |
12
pubby 2014-03-29 02:09:58 +08:00
1. 找个好点的框架重写一个 (A)
2. 来需求了,复制 (A) -> (B) ,修改 (B) 满足要求 3. 又来需求了, 从 (A,B)里挑个最接近的, 复制成(C) ,修改之 ..... N. 又来.... 总有一款接近需求的吧 哈哈 想做万能的,太天真了,你永远赶不上需求变化 |
13
picasso250 2014-03-30 06:17:24 +08:00
@lyragosa 答主,你逛知乎逛到这种地步……
|