基于什么信息,我们可以识别某种东西作为软件开发框架吗?例如,维基百科关于“软件框架”的文章声称它应该包括支持程序、编译器、代码库等等。但是我知道有一些公司把代码库称为“框架”!
一个特定的开发环境应该包含什么作为“框架”?
发布于 2012-12-12 03:46:27
框架与库的区别在于控制反转:调用库,但不调用框架--框架调用您。
或者换一种说法:当您使用库编写应用程序时,您编写应用程序并在其上留下“漏洞”,以获取无聊的细节,然后使用库进行“填充”。(这样一个无聊的细节可能是“如何排序列表”;您不会为此编写代码,只需调用库的sort
例程。)
当您使用框架编写应用程序时,该框架已经为您提供了应用程序,并为您必须填写的有趣细节留下了漏洞。
https://softwareengineering.stackexchange.com/questions/179139
复制