1
9
我已经按你的要求做了。在我的案例中,它是一个(业余)保龄球比赛管理系统:会员数据库管理(个人信息、IRS/赢球信息、邮件列表等)、比赛管理(球员分配、得分、球道罚单生成、赢球和边罐检查登记等)以及IRS EDI通用为某一年的所有获奖者。加上大约10亿个小物件分散在大约50个屏幕/子屏幕上。 关键是理解客户——你必须清楚他们明白这不是小事;这对你们两个来说都是一次新的冒险(特别是如果你是vb.net的新手),如果他们喜欢你之前的工作,那么他们很可能会给你在他们的nic上学习vb.net的余地/自由。凯尔。 阅读之前的一些答案,让我提出一些建议(基于30年的软件开发经验,其中最后20年是顾问……)
所以如果你 仍然 阅读之后,我将告诉你,我在vb.net中的应用程序的第二次尝试是从vb6转换/移植到一个工作模型的大约1/3的时间…我也在学习这个框架。(如果你对自己的技能有信心,那么多年来你已经学会了一些语言,你将很快了解vb.net的要旨——这是需要一段时间的微妙之处。) 我必须提醒你,如果你不充分地宣传客户的理解,那么真正会让你丧命的是,他们是否想在你移植时进行更改(这很可能是因为他们已经使用了一段时间了……我的情况也是如此。 这里没有硬性规定。这可能是因为更改实际上将帮助您更快地更好地理解框架,或者更改可能是一个真正的痛苦。只有你才能确定它们的味道。如果它们看起来是痛苦的类型——您可能会要求首先进行转换,以便可靠地复制功能——然后返回并检查代码以进行更改,并在必要时利用框架。但是,正如我所说,这里没有硬性规定——不要让纯粹主义者对你说的不同——记住,他们可能就是说帕斯卡要接管世界的人! |
2
4
你得问问 为什么? 他们希望这件事完成。 客户一时兴起做技术决策是个糟糕的计划。在应用任何解决方案之前,请彻底了解他们的需求和问题。只有当你像他们那样理解了问题之后,你才能提出建议。 可能是他们迷恋一个流行语,想用最新的东西,也可能是其他一百万种东西中的任何一种。解决他们的问题可能非常容易,但如果你不知道他们的问题是什么,你永远不会知道解决问题的最佳方法。 |
3
3
我会计划花费大约50%的时间和精力来创建它。 我完全按照你的要求做了一个商业软件产品,它大约由500 kloc组成。我们平衡了重构的欲望和尽快让某些东西工作和发布的欲望。 几乎整个团队花了整整一年的时间才完成……一个产品用了4年的时间才创造出来。这是一项不可低估的巨大事业。 |
4
2
我们现在做的正是这个,不过有点不同。不是一个巨大的应用程序,而是有许多较小的应用程序。不过,名单上还有几个更大的。我们发现,这项工作比我们最初想象的要少得多。但是…最大的未知数与我们拥有的第三方控制有关。如果你有很多基本的重新设计,你可能会看到更多的工作。 我的一个好建议是使用visual studio 2008进行转换(而不是vs 2005)。在vs 2008中使用内置转换器的问题要比在vs 2005中少得多。不知道为什么,就是那样。 所以,我不能说你不会再花500个小时,但很可能不会。您的大部分时间应该花在测试上,以验证没有丢失任何功能。 |
5
2
在我看来, visual basic 6和visual basic.net是如此不同,以至于您应该忘记它们在名称上的一致性,并将其视为迁移到.net=p 我认为你有一大优势和一大劣势:
既然你必须学习.net,如果你必须估计的话,我想你应该假设它会把你 至少与上一个应用程序相同 ,甚至更多。 我的建议是也要抓住机会学习这门新语言。如果你更倾向于拒绝这个项目,让我再给你一个主意…也许你可以估算一下你的应用程序的一个小模块,然后告诉客户你将试着去做这个模块,看看你需要多少。客户应该支付这个小模块,即使你决定不继续。 你不能告诉客户你知道所有的需求,所以他们在某种程度上和你一起省钱。他们应该冒这个小风险(我们说的是一个小模块),因为谁比你更擅长做这个项目,你完全了解旧的应用程序! 如果客户对此是正确的,你可以用更多的论据来做出决定。如果你最终决定继续,完成这个小模块,你可以比以前更好地估计整个项目。 对不起,我的英语不是很好,可能我犯了很多数学错误。 编辑 语法错误…= P |
6
1
这是一个巨大的话题。 你应该看看女士的免费书- Upgrading Microsoft Visual Basic 6.0 to Microsoft Visual Basic .NET . 如果要从头重写,而不是简单地尝试移植前一个应用程序,则不应花费太长时间。net的一些特性将使新的应用程序构建变得更短。因为你似乎还不了解vb.net,所以花在你身上最多的时间是学习如何做事。 新途径 (TM) . |
7
1
这次我要去两个月。 但说真的,这可能不远,甚至不低,因为客户会有一些 原因 因为需要完成端口。这将不仅仅是一个直接的港口-他们将需要一些“小的增强”将炸毁整个项目。 另外,我会担心第三方控制。剩下的大部分应该可以转换,但有时在.net中找到一个与第三方控件很好的模拟存在问题。 我还担心你不使用vb.net。如果你是一个c用户,并且想用这种方式重新实现,你会很好,但否则这是一个非启动。net与vb6的差别已经足够让你陷入麻烦了。 除此之外,我希望这次的工作比上次少,因为你面前摆着一个非常明确的设计,你只需要遵循它。 |
JabbaWook · vb.net-主方法或每个方法的错误处理 8 年前 |
It'sMe · WPF在等待用户选择的同时保持UI响应 11 年前 |
Mogli · 将VB6项目转换为.net-引用错误? 11 年前 |