初级iOS开发人员6个月后获得的8个关键知识


我于2017年7月开始在臭名昭著的猫鼬(comparethemarket.com)背后的公司工作。我刚刚结束了为期3个月的编码课程,专注于Ruby和Javascript全栈Web开发,在完成我的最终项目后,我结束了加入流行的Meerkat电影应用程序背后的团队。 我很高兴有机会开始使用我以前没有经验的技术,并且从头开始学习如何成为移动开发人员。 我不仅要向自己证明,而且要向我的团队证明,尽管我缺乏相关技能,但确实有可能。 因此,我白天进行了视频课程,晚上则阅读了编程书籍,在同事的帮助和支持下,我很快就会发现自己为我们应用程序的代码库做出了贡献,并每天都在捡票。

但是,达到这一能力水平绝对是一路颠簸,途中遇到了许多主要障碍。 在许多领域,我仍然是一个完整的新手,需要学习更多知识。 但是,到目前为止,我所面临的挑战以及克服这些挑战的经验证明是宝贵的经验。 因此,我希望通过分享这份建议清单,我可以启发甚至帮助其他有抱负的(移动)开发人员,他们发现自己处于与六个月前相似的状况。 请享用!


1.开始使用该应用

如果您已经接受工作或开始工作,这无庸置疑。 但是,如果您正在公司面试,那么了解可能要使用的应用程序同样重要。 尝试像用户一样使用它,并进行一些案例分析-也许您会想到一些有关如何改进应用程序的想法。 就我而言,我将研究要看的电影,看一些预告片,通过搜索或使用当前位置找出在哪里看电影,兑换我的优惠券代码,最后购买我的打折电影票并去电影院。 这不仅帮助我更好地理解了产品(尤其是从用户的角度),而且还帮助了我要开发的代码库。

2. 找一位导师

…如果可能的话。 我没有被任命为正式的导师,但是从一开始我就很自然地开始受到我们团队中一名高级人员的监督。 关于我的发展和重点领域,我们经常进行代码审查和每月召开的会议,并且有人在跟踪我的进展并向我提供反馈。 这在开始时至关重要,因为要评估自己的进度并决定要专注于什么可能会非常困难,尤其是在刚开始的时候!

3. 制定计划

–并制定明确的目标。 如果没有计划,学习会变得势不可挡,尤其是当清单和资源似乎无限时。 制定目标和时间表,并要求您提供有关您的进度和正在进行的工作的反馈。 极大地帮助了我的一件事是创建了Trello板,其中包含针对iOS工程的概述技术路线。

4. 了解何时寻求帮助

重要的是要学习如何自己找到答案,而不要依赖他人来完成您的工作。 因此,我建议在寻求帮助之前,总是尝试自己解决所有问题。 但是,如果您尝试查找错误的时间超过30分钟,或者如果某个特定的概念没有被点击,那么向某人寻求帮助当然是相关的-绝对应该这样做。 但是,学习如何以最佳方式找到平衡使用资源的方法,而又不会滥用具有更多经验的人坐在您旁边的事实。 并非总是如此。

5. 交流!

如果您无法在约定的时间内完成分配给您的任务,请让相关人员知道并共同制定新计划。 另外,在冲刺计划会议中保持直言不讳,并参与评估票务,尤其是要处理的票证。 对自己的能力诚实是很重要的,并且有责任让您的团队知道您是否对某项工作的某个时间表存在疑问和忧虑。 但请放心,在您作为开发人员的第一份工作中,至少前3到6个月,您的工作速度会慢得多。

6. 做代码审查

参与他人的代码; 进行代码审查,并请您的同事向您介绍他们的代码。 看到更有经验的开发人员如何解决问题并让他们向我解释他们的工作方式,我学到了很多东西。 确保您有足够的时间与编写该代码的人一起阅读复杂的代码,以便以后理解。 另外,请尝试让年长者与您一起检查您自己的代码,并获得关于您工作的口头反馈,而不仅仅是对Github的评论。 最后,配对程序-这可能并非总是可行,但是我认为这是最好的学习方法之一。

7. 找到自己的学习方法

互联网上充斥着各种各样的学习资源,有时这可能会让人有些不知所措。 各种各样的书籍,博客,播客和视频课程无处不在,并且很难知道该选什么和从哪里开始。 问题是,没有“最佳”道路。 有些人通过阅读学习得更好,其他人则通过学习视频教程来学习。 但是,我将分享三个对我的学习最有帮助的资源,我将向在同一路径上的任何人推荐:

  • 使用Swift开发iOS 11应用
    –斯坦福大学的热门iOS课程。 对于我来说,这是学习iOS开发基础的最佳资源。 不要跳过“作业”。
  • Swift编程语言
    –这是苹果公司自己的有关Swift的书,我会推荐给任何试图掌握该语言的人。 这也是查找特定概念的有用方法。
  • 雷·温德利希
    –收集了大量关于几乎所有Swift和iOS相关主题的视频教程。 对我而言,订阅该网站非常物有所值,当我必须学习新知识时,这是我的首选资源。

8. 开始一个项目

…宜早不宜迟! 您可能已经拥有一个或多个小型项目,如果是这样,那就太好了! 但是,如果没有,那么开始一个人可能是一个好主意。 到目前为止,这是最好,最有趣的学习方式。 别担心,如果这是一个像天气应用程序这样的想法,已经产生了上千次,您仍然会学到很多东西,之后会有一些值得骄傲的事情。 我一直推迟启动项目,因为我觉得我必须创建一些超级复杂,独特且有用的工具。 而且我不觉得我已经为此做好了准备。 但问题是,在开始使用自己的应用程序之前,总会有更多可以学习的知识。 那么如何一路学习呢? 询问您的公司是否有时间(也许每周)进行处理。 快速学习应该符合您雇主的最大利益,这是这样做的最佳方法之一,因此不要害怕问。


最后的想法

最后,我只想分享一些发现,这些发现可能并不会让您感到惊讶,但对我却是:

  • 很多东西要学。 这是一个必须不断扩展知识的领域,每当您觉得自己掌握了某些概念或主题时,就会为学习新的事物打开大门。
  • 与个人/学校项目相比,企业代码库更难解决。 从浏览代码库到版本控制的所有过程都更加复杂,并且理解它的每个部分都将花费更长的时间。 特别是因为您不是自己写的。
  • ……这使我到最后一点; 文档和清晰易读的代码的重要性。 通过投入到我没有经验的语法编写的大型代码库中,我真正了解了注释和记录您的代码以及在编写代码时考虑其他人(或您将来的自己)的重要性。

希望本文对您有所帮助。 感谢您的阅读,并祝您作为开发者的未来好运!

Interesting Posts