关于如何克服这种思维障碍并确保我的应用程序可扩展的任何想法?
问题的症结不是可扩展性。问题的症结在于认为您会在第一次就解决问题。
您应该专注于编写干净的代码。因为当您将来(不可避免)要更改某些内容时,简洁的代码可最大程度地提高便利性。那是您应该拥有的真正目标。
您现在想要做的就是尝试考虑编写完美的代码。但是,即使您设法做到这一点,谁会说要求不会改变,或者您可能是基于错误的信息或错误的沟通来做出决定的?
即使不是你的错,也无法避免犯错误。专注于编写易于在以后进行更改的代码,而不是希望编写将来不需要更改的代码。
对项目和我已经编写的代码越来越重视,
我对此表示同情。但是,附加到您编写的代码是一个问题。
唯一应该恒定的是您希望解决特定问题。解决该问题的方式只是次要问题。
如果明天发布的新工具会将您的代码库减少80%,您是否会因为不再使用代码而感到沮丧?还是对代码库变得更小,更干净/更易于管理感到高兴?
如果是前者,则有一个问题:您没有看到代码的解决方案。换句话说,您只专注于代码,而没有看到更大的图景(它旨在提供的解决方案)。
我担心我所做的所有其他工作都将在不久的将来被推翻,因为随着业务的增长,该应用程序的扩展性将不佳。
对于不同的日子,这是一个不同的问题。
首先,您要构建可行的东西。其次,您可以改进代码以修复可能仍然显示的任何缺陷。您当前正在做的事情是推迟执行第一项任务,因为您担心随后必须执行第二项任务。
但是还有其他选择吗?你不能告诉未来。如果您花时间思考未来的可能性,无论如何您最终都会猜测。猜测总是容易犯错。
而是构建应用程序,并证明确实存在问题。问题解决后,便可以开始解决。
换句话说:亨利·福特从未制造过符合2018年标准/期望的汽车。但是如果他没有按现代标准制造出有缺陷的T型车,就没有人会开始使用汽车,就没有汽车工业,也没有人会尝试改进汽车。
我曾经让雇主质疑我的选择,即在面试时不使用任何网络框架,这只会使我进一步怀疑我以前的工作。
这里的重要部分不是您使用的是哪个框架(任何以此为依据对您进行评估的雇主都无法正常工作)。这里的重要部分是知道您在做什么以及为什么这么做。
例如,您可能会特别避免使用现有框架,因为您想通过首先采用困难的方式来了解为什么框架有用。或者,您可能正在尝试制作自己的框架。
唯一的错误答案是“我不知道”,因为这表明缺乏做出明智决定的能力。对雇主而言,这是一个危险信号。
我只是不知道任何Web框架,也不知道要开始使用哪个框架。
同样的问题在这里出现。解决方案不是思考更多,而是采取行动:
- 停止思考完美的答案。
- 选择一个框架。除非您有偏好,否则请随机选择一个。使用飞镖,掷骰子,掷硬币,挑卡片。
- 用它。
- 您喜欢使用它吗?有什么令人讨厌的东西吗?
- 查找如何防止这些不良因素。您是否滥用了框架,或者这仅仅是框架应该如何工作的?
- 一旦您对框架有所了解(不管您是否喜欢),就选择一个新框架并重复该过程。
要了解更多信息,请阅读《做事的心态》>《思考的心态》。作者尽我所能解释。
但是完成应用程序的压力越来越大,我正在考虑完全废弃该应用程序并重新开始
除非当前的代码库是绝对无法维持的混乱;您正在做出相反的决定。
开发人员通常认为扔东西是更好的选择。这是非常普遍的感觉。但这很少是正确的选择。
丢掉代码并从头开始,就像在上班途中卡在交通中,担心自己上班迟到(错过最后期限),而是开车回家尝试再次沿着同一条路行驶。这没有道理。您可能会遇到交通拥堵的情况,但与在家时相比,您离工作更近了。