在码农港湾
做一个实实在在的内行人

入门网页开发,你最好知道这20件事

编者按:刚开始网页开发的时候,本文作者Daan不了解很多事情,也因此而产生了与实际相差甚远的期望。但回过头来看,他认为,如果有人能够提前告诉他这些事情最好不过。现在,Daan把他认为新开发者应当知道的20件事情写下来,帮助读者对自己的工作建立正确的期望。原文标题20 Things That Are Good to Know When You Start Web Developing

入门网页开发,你最好知道这20件事

图片来源:Helloquence / Unsplash

当我刚开始做网页开发时,很多事情我都不知道,但要是我知道就好了。事后看来,我的许多期望与实际情况相差甚远。在这篇文章中,我将告诉你20件事,这些事情是当你即将开始或刚刚开始你的网页开发生涯时,你应该知道的事情。它们将帮助你管理期望,让你走上正确的道路。

1. 编程不需要学位

想开始编程的话,不需要学位。大多数编程知识都可以在网上找到,尤其是基础的东西。在互联网的帮助下,你可以自学编程。

2. 搜索是一种重要技能

由于你刚刚开始网页开发,还没有掌握解决问题需要的所有知识,这完全OK,但这并不意味着你没有办法解决这些问题。知道如何使用搜索工具是一项很重要的技能,它可以帮你节省很多时间。

3. 你没必要什么都学

要学的东西太多了。看看现在流行的JavaScript框架都有几个:React、Vue和Angular,你不可能全部学会,而且也没有必要全部学习。你只需关注你最喜欢的JavaScript框架或你公司正在使用的JavaScript框架。

4. 编写简洁的代码是最难的

大多数缺乏经验的开发人员编写的代码都很花哨。这实际上是一种炫耀的方式,他们想让其他开发人员知道他们写的代码有多好。这不是你应该做的,你应该使代码尽可能地简单。

5. 你很可能没时间做适当的测试

根据我的经验,开发人员在测试时有点懒惰。大多数开发人员可能都会认同这一点:测试不是他们工作中最有趣的那部分。

而且我们还有截止日期。大多数情况下,你的任何项目都会有截止日期。一旦因为拖延症导致自己在截止日期前可能完成不了任务,你首先要放弃的事情之一就是测试。这确实发生过,尽管每个人都认为这种选择对最终结果不好。

6. 时间估计从来就不准

无论你的任务是在几个小时内评估一个特性,还是别的什么小任务,都是这样的,软件开发中的时间评估从来都不是很准。你认为你会在一个小时内写完某个功能的代码,但一旦打开文件,你可能发现,如果要使这个功能可用,你必须对应用程序的很大一部分重写。时间估计?一点也不准。

7. 当你回看自己的旧代码时,你会感到羞愧

你刚开始做开发的时候,可能只想着修复一些东西,如果代码能正常运行,你就觉得没有什么问题了。对于刚上手的开发人员来说,能运行的软件和好软件是同一个意思。但是随着你作为开发人员逐渐成长,你看到自己写过的旧代码,你会想:我真的写了这些意大利面条一样混乱的代码吗?在这种情况下,你能做的只有两件事:好好笑一笑,把你之前写得一团糟的代码变干净。

8. 你将耗费非常多的精力去找bug

调试代码是工作的重要部分——写出没有bug的代码简直不可能,尤其是当你刚入门,没有那么丰富的经验时更是如此。对于缺乏经验的开发人员来说,调试非常耗时,究其原因,是因为他们不知道从哪里入手,有时他们甚至不知道要找什么。最糟糕的是,很多时候,是你自己写下了这些bug。

9. IE是有史以来最差的浏览器

Internet Explorer,我一般叫它Internet Exploder(爆裂器),它愧对你写的所有CSS。即使是最基本的样式也会在Internet Explorer中变得面目全非。有那么几个崩溃的时候,你会向全世界发问:为什么有这么多不同的浏览器!大多数公司解决这个问题的办法是只支持Internet Explorer 11和更新的版本,这是有帮助的。

10. 服务器关闭时,工作也就停止了

最终,开发服务器或版本控制服务器将会关闭。如果你没在本地开发,一旦这些服务器关闭,你将无所事事,而且你对此无能为力。好吧,该喝杯咖啡休息一下了。

11. 你可能会假装自己听懂了同事说的每句话

在工作中,你将至少与一位对新技术或工具非常感兴趣的开发人员进行一次对话,而且你认同对方说的大部分见解。但事实是,他说的大部分话你都听不懂。

12. 你不需要记住所有东西

编程就是应用知识,但你没必要记住所有的东西,毕竟我们总是可以在互联网上找到资源。你需要知道的事在哪里可以找到合适的资源。当你有了更多的经验,在做某个项目的时候,以往开发中使用过的知识就会浮现在脑海。

13. 你需要成为一个好的问题解决者

最重要的是,你需要有创造力。编程就是解决问题,而同样的问题可以用多种方法解决,创造将在其中发挥作用,它让你能够以一种简单有效的方式解决问题。

14. 你需要读很多书

你将花很多时间在阅读上。你需要阅读新技术、最佳实践、最新工具相关的书籍,了解行业中新近发生的事情。千万不要忘记读书,阅读是扩展知识、与时俱进的好方法。

15. 强迫症可能是一种痛苦

想让你的网页在所有设备上看起来都很棒也许是一件很让人痛苦的事情,因为要适配的设备、浏览器太多了,所以总有一个浏览器和设备的组合让你的网页看起来不太好。

16. 知道如何调试可以节省很多时间

调试可能非常耗时,特别是当你不知道在哪里找bug或不知道bug到底是什么时。了解代码的工作原理并掌握调试工具将为你节省大量时间。提高调试技能的一个好方法是学习浏览器中的开发工具是如何工作的。

17. 你会搜到一些对你的问题没啥用的建议及解决方案

当你遇到一个你不知道如何解决的问题,你可能会搜索解决方案。大多数时候,你会在论坛上找到合适的解决方案,比如StackOverflow论坛,它会是一个很好的助力,帮助你朝着正确的方向前进。但大多数情况下,你并不能简单地复制粘贴那些解决方案的代码。这需要你提高解决问题的能力和创造力。

18. 一个好的集成开发环境(IDE)会让你的工作更轻松

在开始输入任何代码之前,你应该花一点时间搜索一个好的IDE。市面上有很多很好的IDE,免费的和付费的都有,这将使你作为开发人员工作地更加游刃有余。IDE可以帮助你突出显示语法、显示语法错误。大多数IDE都支持插件,允许自定义。

19. 使用终端工作可以让你更有效率

如果你习惯于使用图形用户界面(GUI),那么使用终端乍一看可能有点吓人。但是使用终端可以让你更有效率。终端是一个非常强大的工具,它可以比图形工具更快地完成任务。使用终端应该是你真正想要学习并适应的东西。

20. 不要白费力气

当你想要写入一些基本功能时,你应该在GitHub上找一找相关代码,确保你没有重复劳动。如果你希望创造新代码,你也应该搜一搜,网上可能已经有他人写好的代码了,在这当中,你应该选择的是文档比较优秀的活动项目。如果你想添加额外的功能或重写某些功能,你总是可以创建合并请求或派生项目。


码农刷题必备工具 VS 码农进阶必读书籍

IT面试宝典宝典書城