Jul*_*s F 3 php oop frameworks
我目前遇到了一个我自己无法解决的问题:
我开始编写一个"小"框架(browsergame-framework),它以某种方式遵循MVC模式.
现在我有我的索引,引导程序,数据库适配器,调度程序,包装器,但我真的不知道"如何"链接它们.我编写了他们的方法等,但我不知道如何设计它们像引擎一样工作.
接下来的问题是我的控制器,我不知道如何"链接"它们以便它们可以轻松访问整个框架....是的,这很令人困惑,这就是为什么我需要你的帮助,一些通用方案"框架程序如何流动"应该是非常好的.
谢谢.
你把车放在马前.框架不是写的,它们是成长的.参见四人帮之一拉尔夫约翰逊的演变框架.
编辑
我不明白,作者对"应用程序"的意思是什么,这是否意味着原始编码项目,或者这是否意味着具有基本功能的项目将被带到后面的框架.
要么,取决于您在编程和问题领域的专业知识.这是重要的目标(一个有用的框架),该过程应该只是支持您尽可能地实现它.您可能要么开始慢,在相同的问题域中开发三个应用程序而不需要在它们之间共享任何代码,只需查看代码库并查看它们的共同点,并可能重构这三个已完成的应用程序以汇总代码,并提取常见的作品.在第二个和第三个应用程序的开发过程中,这不会给你任何提升,但它也不会阻碍它们与前一个应用程序同时重构的开发.
假设你想要一个框架来轻松编写基于浏览器的回合制策略.
你的第一个又是写一个这样的游戏,无需再使用这个单机游戏外的代码的想法,但同时注意代码重用内 它:重构无情,应用程序的所有原则:OCP, SRP,DRY等特别干燥.代码重用(Do not Repeat Yourself)是编程的基本原则,也是框架路径的第一步.您最终会得到一个在整个游戏中使用的类和/或函数库.
你的第二个转折是使用第一个游戏的代码编写,遵循上面提到的原则,另一个基于浏览器的回合制策略.你会发现它的大部分都是第一款游戏特有的.使用适合于第二个不经修改,重构那些有用的,但让他们是有用的,不太合身的作品做在两场比赛的配合.
在第三场比赛中重复此过程.
三是最小的数字,它给你任何希望到达在整个问题领域真正可重用的代码(想想三角测量),而不是保证它会发生.OTOH,在没有实际应用程序支持的情况下获得一个有用的框架,这是一堆无用废话的可靠方法.
约翰逊:
只需简单地设置和思考问题域,就不可能开发可重用的框架.没有人有洞察力来提出适当的抽象.
仔细阅读"三个例子"部分.
| 归档时间: |
|
| 查看次数: |
1453 次 |
| 最近记录: |