IT技术博客大学习 共学习 共进步

随便说说对应用程序框架设计看法

最近在修改别人遗留的一个程序,里面的底层框架是他人写的一个MVC类的东西,让我很是不爽,本人一直是一个框架艺术的爱好者。所以,很看不惯一些东西,心存鄙视,借此发泄一下,也讲讲我心里的框架设计吧。

先讲讲应用程序框架。
应用程序框架是大家都觉得很酷的“架构”中的一小个分支,说简单点,仅仅要求我们做一个程序的基础设施,使业务逻辑构建在应用程序框架之上,方便我们的开发和维护。

框架这个简单的东西,好多人都会弄。把常用的函数、方法收集起来,再把什么缓存,日志,模板处理,之类加进来,然后通通放到includes里面,基本搞定~高级点的再弄个号称mvc的东西,也算是略有小成了,还有的搞个各种环境支持,各国语言支持等,总之就是把乱七八糟的东西揉成一坨,用一个包或者命名空间,或者同一个目录把这一坨包装起来就成了。

人人都能做框架,就像人人都能画画一样;但不是人人都会做框架,就像不是人人都会画画一样。框架是一种像画一样的艺术,人人可以做,但能做成像样的,能拿出来给别人用的,很少,堪称艺术的,就更是凤毛麟角了。

罗嗦了一堆,要说明什么?
框架是艺术,大家都可以做,但是要是你做的框架是给大家用的时候,你就要小心了。
1、你是否有能力去设计出一个好框架?
如果你连这个问题都无法回答,那么请别继续下去了,别人会通过你弄出来的东西,嘲笑你,诅咒你。
2、是否有能力应对后续框架对业务的支持性开发的挑战?越来越多的需求降临,你能否保持框架的优雅?
不好的框架会让你的框架越来越难以维护,越来越沦为业务的附庸甚至阻碍。

自己在心里想想自己如何回答上面的问题呢?

我认为做框架分为两部分:框架和人
框架需要的灵魂
1、简单。越简单的框架越容易随机应变。
2、优雅。优雅的框架让开发者愉悦,在这种框架基础上开发应用是一种快乐的旅程。
3、部件化。所有的部分可以拆出来,而不涉及其他的功能。
4、对开发者引导和规范。开发者能更容易开发出符合框架要求的代码和功能,所有的应用都在框架的控制中。

人要有的素质
1、专业的知识。各种开发思想、模式和语言基础,这是基本功。
2、渊博的见识。我们不能只局限于眼前,要更开阔,这样才能游刃有余解决各种问题。
3、大局观。要从全局的角度全面考量每一个细微的设计。
3、天赋。和我们生活中的好多事情一样。开发框架是需要天赋的,有些人有这种天赋他们开发出的框架天马行空,可以把所有他们看到的东西都融合到框架里面来,但这不是最重要的。

框架开发的最高境界是什么?
框架和人合而为一变成一个整体。通过框架可以了解这个人的性格和内心。

就这么多啦!自己都搞不懂自己在说什么,晕死~

建议继续学习

  1. 如何寻找一个不会让你后悔的PHP开发框架 (阅读 6,506)
  2. 对于PHP大型开发框架的看法 (阅读 5,123)
  3. 也谈谈前端,架构,框架与库 (阅读 4,964)
  4. 异步编程与响应式框架 (阅读 4,883)
  5. 自己写的一个轻量级javascript框架的设计模式 (阅读 4,761)
  6. PHP API 框架开发的学习 (阅读 4,723)
  7. 服务框架演变过程 (阅读 4,602)
  8. JQuery,Extjs,YUI,Prototype,Dojo 等JS框架的区别和应用场景简述 (阅读 4,002)
  9. 使用CSS框架的优点和缺点 (阅读 3,784)
  10. Web开发框架安全杂谈 (阅读 3,480)