尝试尽早获得反馈
如果您是初学者,可以安全地假设将有很多方法可以改进您的代码。如果该方法没问题,也许您忘记在提交之前应用代码样式。或者,也许您在使用 Git 时犯了许多小错误之一,这可能与在提交消息中使用错误的时态一样微妙。
从你的高级同事或导师的角度来看,不可能预测可能出现什么问题。您需要对您的输出进行审查,然后在那里,可以纠正您移动的方向。您越早获得反馈,整个过程就会越快。例如:
- 在开始更改代码之前写下您认为可以解决问题的方式
- 在开始构建界面之前绘制界面的线框
- 在更新所有单元测试和 E2E 测试之前为实现创建合并请求
在您请求审核之前,不需要完全完成任务。审查事情很快,如果你幸运的话,那么你的同事将能够在你花太多时间走错路之前进行审查。这是写作与阅读的差异——我花了大约 3 或 4 个小时写文章,对你来说可能是 10 分钟的阅读时间。
尽早沟通
从你的高级同事或导师的角度来看,不可能预测可能出现什么问题。您需要对您的输出进行审查,然后在那里,可以纠正您移动的方向。您越早获得反馈,整个过程就会越快。例如:
- 在开始更改代码之前写下您认为可以解决问题的方式
- 在开始构建界面之前绘制界面的线框
- 在更新所有单元测试和 E2E 测试之前为实现创建合并请求
在您请求审核之前,不需要完全完成任务。审查事情很快,如果你幸运的话,那么你的同事将能够在你花太多时间走错路之前进行审查。这是写作与阅读的差异——我花了大约 3 或 4 个小时写文章,对你来说可能是 10 分钟的阅读时间。
image.png理解需求
第一步:确保确实需要“需要什么”。有时,您会收到添加不应成为系统一部分的功能的请求。或者已经有一些用户或编写票证的同事不知道的东西。或者要求是“很高兴拥有”的东西,而不是真正重要的东西。
简而言之,尝试充分理解需求,以便能够评估它们是否确实必要。
找到第三方服务
最后,没有办法谈论向系统添加功能。下一个最佳解决方案是找到一个外部提供商来为您完成繁重的工作。例如:
用于将地址输入从自由文本转换为地图上某个位置的云提供商
完整的支付解决方案 — 适用于在线或实体店
一种邮件服务,可让您发送电子邮件而不必担心垃圾邮件过滤器
集成通常是一个令人头疼的问题,但如果你找到一个拥有良好 API 的提供商,它可以为你节省大量编写和维护自己的代码的时间。
找到第三方api
某些任务太小,无法将它们从应用程序中抽象出来并从外部工具获取。对于许多典型和不太典型的需求,您可以找到第三方库来提供一些帮助。库需要权衡:
它们为某些问题提供了解决方案
但需要您学习他们的 API
有时会带来自己的问题
如果你选错了库,可能会给你带来很多痛苦。在决定使用库之前,您可以评估一些关于库的内容:文档;项目在 GitHub 上的外观;与其他在线选项的比较。关于库的其他事情,不是那么多:库将拥有什么样的未来,以及只要您的项目需要它,它是否会得到维护。
图书馆为我们提供了哪些东西:
对日期进行操作的方法
与金钱相关的功能,因此您不必担心结果0.1 + 0.2
生成图表
重用代码
某些任务太小,无法将它们从应用程序中抽象出来并从外部工具获取。对于许多典型和不太典型的需求,您可以找到第三方库来提供一些帮助。库需要权衡:
它们为某些问题提供了解决方案
但需要您学习他们的 API
有时会带来自己的问题
如果你选错了库,可能会给你带来很多痛苦。在决定使用库之前,您可以评估一些关于库的内容:文档;项目在 GitHub 上的外观;与其他在线选项的比较。关于库的其他事情,不是那么多:库将拥有什么样的未来,以及只要您的项目需要它,它是否会得到维护。
图书馆为我们提供了哪些东西:
对日期进行操作的方法
与金钱相关的功能,因此您不必担心结果0.1 + 0.2
生成图表
保证代码质量
当所有这些都失败时——尽可能少地写以满足需求,但尽可能写好。以有意义的方式命名类、方法、参数和变量。记录代码。编写单元测试和一些集成测试。添加一条提交消息,说明代码中发生的情况及其原因。
当所有这些都失败时——尽可能少地写以满足需求,但尽可能写好。以有意义的方式命名类、方法、参数和变量。记录代码。编写单元测试和一些集成测试。添加一条提交消息,说明代码中发生的情况及其原因。
不要着急
不用担心,没有人可以快速编程。你听说过 10x 开发者的神话吗?据说,一些开发人员比他们的同行快 10 倍——也许那里有一些天才,但恐怕在大多数情况下,人们会通过偷工减料来快速行动。在短期内走捷径可能是必要的,但这样做会产生技术债务,需要解决项目的长期健康。因此,对这个神话的回应是:10x 开发人员是需要 10 个开发人员来清理他们的开发人员。
乐观对待生活
日常工作充满了可能引发缓慢感觉的情况。前几天,我花了 2 个小时尝试连接网络打印机,而我的解决方案需要将其移动到客厅。每隔一段时间,我就会花费数小时来解决由一些小问题引起的问题 - 拼写错误,在错误的地方追逐错误或任何其他愚蠢的错误。
我是否为那些“失败”而对自己苛刻?不。为什么?这是工作的一部分 - 有时您需要快速交付解决方案,有时则需要更多时间。
总结
作为一名初级程序员,你的工作是学习东西并找到可以在项目中提供帮助的方法。每个理性的人都明白学习需要时间。在一个好的工作场所,你会得到进步所需的支持,不会被迫更快地发展。
对我来说,快速的初级程序员听起来很可怕。我宁愿有一个缓慢的初级同事,最终把事情做好。快速学习者,响应反馈 - 这听起来很棒。但是,一个只是抽出变化很快的人 - 不是那么多。
网友评论