我将编写一个相当大/复杂的WinForm应用程序,如Paint.NET,SharpDevelop等。我认为构建这样一个应用程序最重要的事情之一是正确构建项目以提高可维护性和控制力复杂性。
那么我使用的是什么样的模式或实践呢?任何博客文章,论文,开源项目都受到欢迎。我正在尝试从SharpDevelop那里学到一些东西,但这对我来说相当巨大。
PS:我是一名经验丰富的程序员,以前的目标是网络开发(asp.net,rails等)。所以我知道一些设计原则以及如何在实现业务逻辑时使用它们。也许我现在真的需要一个开始使用WinForm应用程序的示例,以便我可以实现如何处理菜单,控件和其他。我已经了解了MVP模式的一些内容,但仍然不自觉地启动了大型/复杂的应用程序。
答案 0 :(得分:4)
对于大型项目,您使用的方法和工具与建筑设计同样重要。您需要从第一天开始设置源控制系统(如SVN)。此外,拥有标准构建过程并每天执行构建是非常好的。构建过程应该包括运行所有测试,您还应该从一开始就付出一些努力。
关于结构,我认为最重要的一点是将项目划分为彼此具有极小依赖性的构建块。通过这种方式,您可以同时考虑系统的一小部分,而不必面对完整的复杂性。如果你有这个机会,它还有助于将一些工作委托给其他程序员。
为了开始使用,我建议您尽可能快地实现最小化。然后努力使其更好并添加功能。这会让你保持积极性,因为你将有一些具体的工作。它还可以帮助您尽早发现主要设计缺陷和重要问题,以便纠正它们。
答案 1 :(得分:4)
这是微软自己的一本很好的初学者指南:
http://msdn.microsoft.com/en-us/beginner/default.aspx
检查那里的Windows track。
掌握基础知识后 - 由于您是经验丰富的开发人员 - 您也可以查看Microsoft的本书"patterns & practices Application Architecture Guide 2.0“。
答案 2 :(得分:0)
我认为许多成功的Web项目技术将转化为Winforms项目。从小处开始,逐步增加应用程序。尝试在添加一个功能的同时保持整个应用程序的构建/工作。