最近我发现自己处在困境中。现在已经与一个编程伙伴一起玩了将近8个月的游戏。我们都是从去年8月左右开始学习编程的新手,他是CS的二年级学生,我是一名IT贸易技术支持人员,并且是一位自学成才的程序员,拥有大量的书籍和在线订阅。
我一直看到的问题是,当我们写出一段代码时,它常常会被黑在一起,会有很多失败,如果这对我们中的一个人来说是一个全新的概念,那就是天真的解决方案。很好,我们正在学习,我希望我们的两个代码在第一遍或第二遍都被一起破解。当涉及到实际修复和重构那些被黑在一起的行为时,就会出现问题。
我的伴侣将坚持自己刚凑齐的行为,公然拒绝看到任何错误,因为它开始起作用。即使从结构上声称接近完美,即使它具有注释以及适当命名的方法和字段,我什至都无法尝试使用。无论我多么努力,我都无法让他看到明显的明显缺陷,这些缺陷将阻止行为的任何进一步更改或扩展,而又不会完全破坏行为,而与行为如此紧密耦合的所有事物也可能属于同一类。被黑客入侵的解决方案将永远保持被黑客入侵,深思熟虑的设计会像最初构思和测试时那样保持原样。
我花了很多时间来照顾新代码,就像我自己编写代码一样,我不知道该怎么做。我的伴侣今晚输了它,并明确表示,无论是什么,基准,常规做法,无可辩驳的证明,他的代码都将保持其最初的用法。即使已经写了整本关于您为什么要避免做某事的书,他也会拒绝承认其有效性,声称这只是别人的意见。
我对我们的项目有既得利益,但是我不确定是否可以继续与我的合作伙伴一起工作。我似乎有三个选择。
- 不再关心编译后的代码库功能,而只是尝试维护和解析几乎没有发展的行为。希望一旦事情开始严重破裂,他将看到并尝试做更多的事情,而不是仅仅对根本存在缺陷的设计施加创可贴。
- 继续对十年前其他能力更强的人提出的问题进行无休止的争论。
- 停止对该项目进行编程,放弃我的代码将近10,000行,并花费大量的时间进行设计工作,然后尝试自己寻找一个新项目。
我可以采取哪种方法来确定是否值得与这个人继续进行此项目?还是哪些因素会影响我的决定?我们已经编写了很多代码,除非有必要,否则我不想放弃。