Answers:
您走在正确的轨道上。无需花费数月的时间进行计划,但是您绝对应该制定某种计划。
计划将帮助您组织思想,确定您可能需要的技术,弄清问题点,并为您制定可行的路线图,从而分解为可衡量的目标。
此外,您可能需要进行几天的计划,才能发现这很浪费您的时间。也许在计划时,您意识到自己已经超出了联盟范围,或者您尝试做的事情无法推广。最好是现在就找到答案,这样您就可以将时间重新投入到已有的其他想法中,而不是走这条路而迷失在树林中,周围是严密的代码藤蔓和容易出错的逻辑线索打成结。
规划最低可行产品,并加以实施。然后倾听您的用户并计划下一个逻辑增强,并加以实现。重复。
无论您在计划和设计程序上花费了多少时间,总是总是要重写部分程序。这就像引力,不是聪明地否认它的存在。
必须意识到重构是开发的正常部分,而这只是决定何时进行的问题。等待很长时间,您最终会得到大量的意大利面,恳求彻底重写。不好笑。
我的建议是计划一些,但要尽快开始编码并进行重构,重构,重构以保持代码的形状。干的原则(不要重复自己)是一个很好的指标。
当我担任这个职位时,有时我会使用TDD(测试驱动的开发)并开始为我正在开发的系统中最复杂的部分计划一些测试。另外,对于最复杂的区域,我可以整理一些高级伪代码。我发现此过程为我提供了一个宽松的行动计划,并帮助我确定了哪些区域可能是最耗时的。
对我来说,这种方法之所以有效,是因为它介于编码和计划之间。一旦有了测试思路和/或伪代码,就可以遍历每个逻辑部分并实现代码。我通常首先解决建议的解决方案中最难的部分,因为最难的部分通常是应用程序的核心功能,您总是可以延迟任何麻烦。
由于您评论说大部分代码都在您的脑海中,并且您准备开始学习和编程,因此使用此方法可以帮助您专注于每个部分,而不会被整个系统所困扰。
总而言之,可以说“首先解决最困难的部分,用伪代码和/或TDD计划进行分而治之”!