快速学习VB6的最佳方法或资源是什么?我需要尽快适应一个新的职位,我来自一个自学的VBA基础。所以我有两个主要需求。首先,消除坏习惯,其次(更重要的是)理解构建代码和函数等的有效方法。
谢谢
发布于 2012-03-20 02:15:21
如果你还是一个年轻的、充满活力的程序员,那就滚开吧!VB6是个死胡同。只有当你把自己定位为一名VB6租用者(“有笔记本电脑,将会旅行”)类型时,这份COBOL工作才有意义--如果你幸运的话,你可能会成为一名像COBOL程序员一样必不可少的人。所以如果你必须..。
查看MarkJ在上面的评论中给出的链接。你也可以在谷歌上搜索"vb6编码标准“或"visual basic6书籍”来获取更多的想法。Bruce McKinney的"Hardcore Visual Basic“,可以在http://vb.mvps.org/hardcore/ (这里有很多关于Win32应用编程接口和COM的好东西)上免费获得,第1章,”语言净化“,值得一读,应该对解决一些坏习惯有帮助。
我的建议是在业余时间学习C#或Java (就像MarkJ推荐的那样),并找到关于为这些语言编写的编码标准和最佳实践的好书或网站。在此基础上,尽可能地采用或调整您的VB6编码风格。
以下是我的VB6特定的反坏习惯提示:
(1)始终使用Option Explicit。小心使用其他Option语句,或者避免使用其他the语句。
(2)避免DoEvents --取而代之的是用计时器或事件来实现它。了解什么是主事件循环。知道消息泵是什么。要知道,VB6应用程序的核心是一个为其消息泵(对VB6程序员隐藏的)提供服务的主事件循环。DoEvents是一个经常以泪水收场的骗子。
(3)避免Option Base。在对数组进行维数计算时避免使用To。数组的第一个元素的索引应为零。
(4)不要在If ... EndIf、Do ... Loop、For ... Next或任何其他这样的代码块中使用Dim变量-这将导致在VB.NET领域(或对于熟悉其他语言的人)对范围的混淆。这可能会使代码更难阅读或遵循。
(5)始终使用As的Dim -即,除非绝对必要,否则不要使用Variant或Object。取消变量修饰,如$(字符串)或%(整数)-换句话说,不要使用它们,使用As。
(6)在可能和适当的情况下,优先使用For Each而不是For。
(7)对于不会被Sub或Function更改为副作用的数值参数,首选ByVal而不是ByRef。
(8)将On Error Resume Next视为有毒的东西,并尽可能避免。你一定要用它吗?长篇大论地解释为什么需要它,然后尽快关闭它。可以将其封装在自己的Sub或Function中。
(9)了解模型/视图/控制器(MVC)设计模式。避免将任何业务逻辑放入表单中。
(10)更喜欢Boolean (True vs False)而不是Integer (0 vs 1或-1)或(天哪!) String ("N" vs <代码>D32)。假设Dim MyFlag As Boolean,know,If MyFlag = True Then引起了我的怀疑,那就是另一个程序员没有得到Boolean。首选If MyFlag Then和If Not MyFlag Then。
(11) ActiveX/COM开发不是针对wimps的--应该在正确理解二进制兼容性的情况下,在Virtual PC中进行。
发布于 2012-03-19 21:22:10
无论您是为了维护现有的VB6而学习VB6,还是将其迁移到.NET或其他更现代的语言,您都应该努力掌握标准的面向对象方法。类、对象、封装、继承(VB6主要使用接口继承,但如果你能处理好这一点,那么你就可以做到90% )。此外,VBA没有正确的表单,因此您需要了解VB6图形用户界面表单体系结构是如何工作的。
https://stackoverflow.com/questions/9769079
复制相似问题