我在大型项目上进展不大。源头是巨大的,有许多层物体,通心粉代码,多重继承的双钻石图,原始作者离开时冻结的半生不熟的功能,而且没人知道为什么如此设计很多东西。
我想任何有能力的程序员都会遇到一些麻烦,要想尽一切办法解决错误,完成未完成的工作并添加新功能。但是,我怀疑我会比典型的程序员慢。
我如何判断消息来源是否异常糟糕,我是否做到了任何人都能做到的,而消息来源对于这样的项目来说是典型的,而我只是机智或技能不足?
我在大型项目上进展不大。源头是巨大的,有许多层物体,通心粉代码,多重继承的双钻石图,原始作者离开时冻结的半生不熟的功能,而且没人知道为什么如此设计很多东西。
我想任何有能力的程序员都会遇到一些麻烦,要想尽一切办法解决错误,完成未完成的工作并添加新功能。但是,我怀疑我会比典型的程序员慢。
我如何判断消息来源是否异常糟糕,我是否做到了任何人都能做到的,而消息来源对于这样的项目来说是典型的,而我只是机智或技能不足?
Answers:
首先,我不会花太多时间担心您可能“机智低落或技能不足”。有些项目很难掌握,大型项目通常需要一些时间才能快速掌握。认为自己“愚蠢”或没有完成任务不会以任何方式帮助您。
听起来您需要代码方面的帮助,因此请考虑您的资源。您可以使用原始编码器吗?如果它们可用,它们可能是很好的信息资源。有哪些可用的文档?如果缺少文档,请拿出笔记本并开始创建自己的个人文档。
这里的一个大想法是,您应该期望这个过程会花费一些时间,并且您花费在精神上殴打自己的时间越少,您就越需要精力来分析代码并加以解决。祝好运!
一次解剖一次
您的情况很普遍,“难以控制”时间需要时间,就像其他人已经提到的那样。
我发现的是,如果您一次“解决”一个问题,那么不管项目有多复杂,您都可以解决。您只需要对此保持逻辑。
首先说一个按钮,深入研究源代码,放置断点,然后逐步查看发生了什么。您需要完成两件事:
如何采取不同的看法:您需要了解有关此代码的哪些信息,您有办法对其进行衡量吗?例如,如果您尝试修复错误,则可能需要与尝试将代码从一种语言迁移到另一种语言(例如,从VBScript到C#)进行不同的尝试。如果您试图使所有要求脱离当前代码,那可能要花一些时间,尽管我怀疑大多数人都会遇到这种问题。