我已阅读“设计模式”一书中的四人帮,该框架影响应用程序的整体架构。现在我知道例如使用.NET时,您需要从System.Windows.Form
继承来创建表单(虽然我认为我在这里有一个很大的误解,)。但任何人都可以使用任何框架在代码中描述框架如何影响应用程序体系结构?框架如何影响应用程序的结构?
回答
大约有话题了一些有趣的笔记Wikipedia:
软件框架由冻点和热点组成。冻结 斑点定义了软件系统的整体架构(...)。 这些在 应用程序框架的任何实例化中保持不变(冻结)。热点代表那些使用框架的程序员添加他们自己的代码(...)的部分。
据此,您的应用程序可以由您正在使用的框架来定义。例如,在使用Struts框架的Java World中,意味着您使用的是MVC architecture,或者使用Spring Framework强制您应用Dependency Injection Pattern。如果软件架构是由软件模式定义的,那么一些框架是预先构建的模式供您使用。另一方面,没有任何软件应用程序仅由Patterns/Frameworks制作,而Hot Spots是有用的:它们是Software Frameworks提供的扩展/使用框架功能并根据你的要求和领域。
例如,假设您正在使用Spring MVC Framework构建Web应用程序。在项目中配置Framework之后,您的应用程序的每个请求都将被委派给一个名为DispatcherServlet
的类。这个类是内置在框架中,你不应该修改它,所以它是一个冻结点的完美例子。 DispatcherServlet
将查找您的项目配置并将请求处理委托给Controller
。 Controller
通常是由程序员制作的类,并负责处理请求。所以你的手工制作的控制器,它是一个热点为你扩展框架。
而DispatcherServlet是Front-Controlller Patttern的实现,并且Controller的使用是典型的MVC应用程序;所以你的应用程序被你正在使用的框架高度定义。
在不同框架中传递,存储或评估数据的方法有多种。如果您使用的是Windows窗体应用程序,则可以从项目的任何位置访问您的视图元素,因为它们全部位于计算机的本地内存中,而不在其他位置。
但是,如果您使用的是ASP.NET应用程序,那么消费项目,客户端和服务器的方面会有所不同,而且事情会变得更加复杂。你所做的设计几乎没有什么共同的形式。
如果您使用的是ASP.NET MVC应用程序,则有三个层次:ModelViewController,并且操作分为这些层次,从现在开始,您需要以适合这些层次的方式进行设计。你有MVC提供的数据库表 - 对象关系,可以完全改变设计。
另外编程语言躺在程序下改变设计,因为它可以是功能性的,等
总之面向对象的,这不是一个问题建设性。在使用不同的编程语言和技术之后,你会找出这个问题的答案。
正如我在问题中所解释的那样,我想知道框架如何影响应用程序,我相信它有一个很深的一面,那就是我想知道的。我不希望埃里克伽玛不小心抛出这样的话。无论如何,我认为你误解了我的问题先生,不过谢谢你。 –
我必须说一个干净的架构(也称为设计模式)并不依赖于正在使用的框架,工具包或库。体系结构描述了软件系统(层和层)的高层结构,而不是详细描述它是如何实现的。它是一组帮助我们实现安全性,可用性,可扩展性,可靠性,可用性,可用性等特定目标的原则。让我们看一个简单的示例:
模型视图控制器(MVC)是一个软件体系结构(或设计模式)将域的建模,表示和基于用户输入的操作分为三个独立的类。 MVC背后的核心思想是代码的可重用性和关注点的分离。您可以使用多种编程语言或类似ASP.Net MVC,Java的支柱,PHP干燥,CakePHP的框架应用MVC ....
假设您设计了一个框架,您的框架可能会影响您的框架用户如何构建其应用程序的方式? ASP.NET MVC强制你遵循MVC模式,但这并不意味着你不能在ASP.NET中应用MVC,对吧? –
- 1. iOS,向应用程序添加框架,影响性能
- 2. 锁屏如何影响应用程序?
- 3. MonadCatchIO的问题将如何影响使用Snap框架构建的应用程序?
- 4. 构建Web应用程序的框架
- 5. Rails:应用程序框架的体系结构
- 6. Web应用程序测试框架的组织和结构
- 7. 实体框架 - WPF/MVVM应用程序中的基础结构
- 8. 使用Eclipse for Java应用程序对框架代码的影响分析
- 9. 从ios应用程序中删除结构框架
- 10. 开源桌面应用程序体系结构/框架?
- 11. 实体数据框架和Web应用程序体系结构
- 12. 如何构建实体框架应用程序(使用MEF)
- 13. 代码的重构会影响应用程序的性能吗?
- 14. 文件夹结构是否会影响Windows Phone应用程序的性能?
- 15. 影响所有应用程序的CultureInfo
- 16. iPhone4 960x640 - 对应用程序的影响?
- 17. Perfmon对应用程序的影响
- 18. 如何为许多应用程序构建凤凰伞框架
- 19. 如何从框架中查看应用程序构建设置
- 20. Alljoyn框架Raspberry Pi和Alljoyn Android应用程序不会互相影响?
- 21. ATG Dynamo应用程序框架框架
- 22. 'client_min_messages'设置如何影响使用libpq的应用程序?
- 23. Android应用程序架构
- 24. Web应用程序架构?
- 25. Silverlight应用程序架构
- 26. Web应用程序架构
- 27. Android应用程序架构?
- 28. 如何简化应用程序结构?
- 29. 如何在实体框架操作期间让我的应用程序响应?
- 30. 消息框影响我的程序
我更关心冻结点如何限制你。 –
我添加了一个例子,使其更加清晰 –