Vb.net 关于从VB6'过渡到面向对象编程的建议;风格';
我是一名小型IT部门的vb.net开发人员,在实现完全使用对象编程方面遇到了困难 我了解面向对象编程(OOP)、设计模式、单元测试等的原理,但在开发应用程序时,要么我的对象设计很差,要么我完全不使用对象进行构建。我知道如何创建单元测试,但对我创建的单元测试没有信心 我几乎只构建数据驱动的数据输入/报告类应用程序。在大多数情况下,大部分业务逻辑都在存储过程和UDF中的数据库中。我为内部和外部客户开发ASP.NET和Winforms应用程序 我已经在堆栈上询问了关于这方面的问题,我可以查看这些问题,以了解良好的设计和测试,但大部分都是简短的。我读过很多关于设计的书 摆脱我的旧“VB6”方式的好的第一步是什么Vb.net 关于从VB6'过渡到面向对象编程的建议;风格';,vb.net,unit-testing,oop,Vb.net,Unit Testing,Oop,我是一名小型IT部门的vb.net开发人员,在实现完全使用对象编程方面遇到了困难 我了解面向对象编程(OOP)、设计模式、单元测试等的原理,但在开发应用程序时,要么我的对象设计很差,要么我完全不使用对象进行构建。我知道如何创建单元测试,但对我创建的单元测试没有信心 我几乎只构建数据驱动的数据输入/报告类应用程序。在大多数情况下,大部分业务逻辑都在存储过程和UDF中的数据库中。我为内部和外部客户开发ASP.NET和Winforms应用程序 我已经在堆栈上询问了关于这方面的问题,我可以查看这些问题,
谢谢 一位同事让我迷上了埃里克·埃文斯的《领域驱动设计》一书。当Nessary的时候,它真的开始让我远离数据驱动的开发 此外,在你们所在地区加入一个.NET用户群也将帮助你们找到愿意帮助你们的人
- 在VB6中更容易实现李>
- 在VB6中,总是工作得更快李>
- 这是同样的事情…只是看起来更好李>
- VB6有更多的功能
看起来很熟悉吗?我推荐两件事:
几年前我处在你的位置。我记得读过一篇文章,估计你会花6个月到一年的时间阅读面向对象开发,然后才能开始“理解” 我开始只是尝试在我的日常程序编程中引入对象。然后我尝试尽可能多地从UI中获取处理。然后我尝试为我的业务逻辑和数据访问创建“层”。我知道您的很多业务逻辑可能已经存在于数据库中,但在发生变化的情况下,有一个BL层是没有坏处的。现在,它几乎可以作为一个通行证 我还有Eric Evan的领域驱动设计书要读,但有几本书对我有帮助,分别是“和我目前正在读的书”。这本书,也许比你现在真正需要的更多,是第一本帮助我真正理解这些层以及如何实现它们的书
无论如何,祝你旅途好运。记住,这将是一个过程,而不是目的地 除了在其他答案中给出的建议外,你应该放弃VB.NET,学习C#
它不会为你做任何事,但它会帮助你摆脱旧的思维方式。我听到了,伙计。我也是,生活在你的世界里。商界人士要求报告的世界。复杂的报告。使用复杂存储过程轻松构建的报表。在这个世界上,人们很容易认为数据库是王者,它驱动着应用程序。这种思路导致了复杂的数据库TSQL代码、视图、函数和存储过程 当然,如果它确实是您需要的报告,那么复杂的sql语句可能就是答案。然而,您想知道如何摆脱数据驱动的世界,进入面向对象的世界 我认为典型的OO设计教程不会对你有好处。谁在乎狗是不是一种动物,德国牧羊犬是不是一种狗。这并不能解释你是如何在工作中做生意的。此外,这只是OO继承的一个例子。其他OO模式,如组合和依赖项注入,在大多数情况下更有用 我认为您处理下一个项目或任务的方式是暂时忘记数据库。假设您生活在一个神奇的世界中,不必从数据库获取数据,也不必将数据写回数据库。您生活在一个始终使用正确数据填充对象的世界中。首先在抽象世界中为对象建模。在这样做之后,然后(并且只有那时)关心获取和写入数据库的混乱实现细节。数据库只是用来保存数据的。您的数据是活动的,因为您已经对其进行了建模,使其符合域的规则 理解UML将对这种类型的mo有极大的帮助