“应用框架”是什么意思?

4

其他可能的重复和相关内容:https://dev59.com/qXRB5IYBdhLWcg3wFz8g https://dev59.com/fHE85IYBdhLWcg3w9orw https://dev59.com/Lm855IYBdhLWcg3w3Ifs - dmckee --- ex-moderator kitten
3个回答

7
这里有一个更简单的答案:应用程序框架使编写应用程序变得更容易。创建应用程序很难,应用程序必须通过操作系统语义提供输入和输出。现代应用程序通常是基于图形用户界面(GUI)的,而GUI应用程序比非GUI应用程序复杂得多。框架将与操作系统交互的所有复杂性简化为您所需的内容。它为您处理了所有繁琐的细节。显然,某些框架在此方面做得比其他框架更好。使用应用程序框架的一个缺点很少被讨论(可能是因为我们都对我们没有做的工作感到满意),即为了提供操作环境的简化视图,框架必须将您限制在某种“风格”中。如果您的应用程序与通常的应用程序形式足够不同,那么您很可能会在框架中感到沮丧,因为它会使您想要做的事情变得非常困难。这部分是因为您现在必须做框架隐藏的所有事情,另一部分是因为框架可能是一个封闭的系统。

谢谢,现在我掌握了这个行话。:-) - PraveenMax
@Tergiver,关于“框架使编写应用程序更容易”……在现实生活中并非必需。请参见http://discuss.joelonsoftware.com/default.asp?joel.3.219431.12 - Pacerier
@Pacerier 这是一篇非常有趣的文章,而且在这里非常合适。 - Tergiver

2

框架是软件库的一种特殊情况,它们是封装在定义明确的应用程序编程接口(API)中的可重用代码抽象,但它们包含一些关键的区别于普通库的特征。

应用程序框架由软件开发人员使用的框架组成,用于实现特定开发环境下应用程序的标准结构。


2
如你所料,维基百科的解释是,应用程序框架是开发应用程序的框架。
一个应用程序通常提供用户界面。"应用程序框架"可以宽泛地指代仅提供一组低级用户界面控件的用户界面框架,例如MFC、Swing、Qt等等。
然而,将这些区分开来与更强大的框架(例如Eclipse Rich-Client Platform和Netbeans Platform)有用,后者提供了一个更高级别的框架——建立在这些低级工具包之上——用于开发应用程序。
我个人只将"应用程序平台"用于后者,将低级API称为"用户界面工具包"。

Qt被提及为应用程序框架和UI框架(再次引起混淆)。我们可以像Java一样在其中编程,还是仅限于GUI(类似于GUI构建器)? - PraveenMax

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接