- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我最近对 Web 应用程序中的正确 OOP 设计产生了兴趣。我想我了解大部分原则和设计模式,但有时我在将它们付诸实践时遇到问题。
我使用 MVC,我认为我能够以 OOP 方式设计 Controller 和 View 。我面临的问题是模型。一般来说,我特别着迷于依赖注入(inject)和控制反转。它在小示例中效果很好,但我在设计复杂的多层模型时遇到了麻烦 - 我正在考虑将依赖项注入(inject)较低层等的各种方法。
所以我决定寻找一些我可以研究的更有经验的 OOP 程序员制作的项目。我正在寻找 PHP Web 应用程序,最好是使用 MVC 架构模式制作的。我也不介意它是否有贫血模型(这通常被认为是反模式,但在基于大量数据的应用程序中,我经常被迫使用贫血模型)。
非常感谢。
编辑:我不是在寻找框架,而是在寻找完整的应用程序。框架通常与模型架构没有太多关系。
最佳答案
Code igniter 是 php4,我不太推荐它。从那时起,PHP OOP 发生了变化。一个更好的主意是 kohana
我通过查看 Konstrukt 学到了很多东西.创作者在 SO 上也处于半活跃状态 =)
关于具有优秀OOP设计的PHP项目,供学习使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3613084/
在单元格中有这样的文字:Sum(d5:d10),请注意没有“=”。我想在另一个带有“=”的单元格中使用此文本,并计算范围 d5:d10 之和的结果,我想要的返回不是文本。 我的目的不是计算总和,但我想
我在 java 中创建了这个方法,用于指示整数数组是否已排序。它的复杂性是什么?我想如果好的是最坏情况下的 O(1) 是平均情况下的 O(n)? static boolean order(int[]
1.什么样的人,才能称得上“优秀”? 其实就看这三点: (1)普通的人改变结果; (2)优秀的人改变原因; (3)顶级优秀的人改变模型。 2.举个例子: 有一家公司为员工提供午餐和晚餐。 吃着吃着,大
我在表中有一个具有以下公式的列 =IF([@[JoBM]]>0; IF([@[JoBF]]>0;[@[Median1]]/[@[Median2]];"-");"-") 该列看起来像这样:0.9、0.8
根据他们的工作,您如何区分出色的 SQL 开发人员? 示例可能包括: 很少使用 CURSOR,并试图将它们重构掉。 很少使用临时表,并试图将它们重构掉。 自信地处理 OUTER JOIN 中的 NUL
我是一名优秀的程序员,十分优秀!