JavaRush /Java 博客 /Random-ZH /喝咖啡休息#12。程序员应该摆脱的刻板印象和无法回避的技能

喝咖啡休息#12。程序员应该摆脱的刻板印象和无法回避的技能

已在 Random-ZH 群组中发布

程序员应该避免的刻板印象

来源:Freecodecamp 你具备程序员所需的一切吗?您的答案很可能基于一系列刻板印象和误解。让我们看一下根据刻板印象,程序员应该具备但实际上根本不需要的一些东西。 喝咖啡休息#12。 程序员最好摆脱的刻板印象和无法避免的技能 - 1

特殊倾向

忘记“拥有就好”的事情。想成为开发者的人不一定非得是天才,甚至数学家。你不需要有特殊的心态或任何特殊的大脑。编程是一种技能。就像弹吉他或跑马拉松一样。要发展这项技能,您需要编程。投入时间和精力。你需要向别人学习。这是一项技能,直接取决于你付出了多少努力。

成为一名计算机专家

程序是在计算机上编写的。这是真实的。因此,无论你怎么看,你都需要一台电脑来工作。但您不必知道如何自己组装计算机。您不需要了解其内部工作原理。您不必成为您所有朋友解决所有计算机问题的人。当然,您对工具了解得越多,如果该工具出现任何问题,您就会越独立。但即使你不知道如何修理你阿姨的笔记本电脑,你也可以成为一名优秀的程序员。

拥有计算机科学学位。完全有文凭

作为一名大学毕业生,如果你足够幸运能够在那里学习,通常是很棒的。作为计算机科学专业的毕业生就更好了。但这对于程序员来说并不是绝对必要的。IT 领域充满了令人惊叹的专家,他们没有接受过高等教育(专业教育和其他教育)。给自己设定了成为一名程序员的目标后,您无需大学毕业就可以轻松实现。

提供最新的计算机和(或)昂贵的软件

我曾经认为,既然程序员是给计算机写程序的,那么他自己必然需要最先进、最强大的计算机。在我看来,要开发程序肯定需要专门且昂贵的软件。就像参与设计或处理视频的人一样。但后来我惊讶地发现,创建第一个网站所需的只是 Windows 中已安装的记事本。笔记本!!最朴素、最无聊的节目。最普通、最基础的文本编辑器。所以,是的,要学习如何做最简单的事情,您可以使用旧计算机,无需任何附加功能。但是,对于专业工作,您将需要一辆更好的汽车。

良好的英语水平

英语知识肯定对你有用。编程语言是在英语国家发明和发展的。无论好坏,英语在软件开发行业占据主导地位。编程语言中使用的单词是英语。说明和文章的很大一部分也是英文的。因此,如果您对这门语言有很好的理解,它将对您有所帮助。但如果您不懂英语,这不应该成为您学习编程的障碍。只需具备基础英语水平,您就可以学习并成为一名优秀的专家。

做一个电脑迷。做一名游戏玩家

对计算机的热情是好的,对游戏的热情是美妙的。但您可以轻松成为开发团队的一员,而无需对一般计算机或特别是计算机游戏感兴趣。现在已经不是90年代了,现在有各种各样的人在这个行业工作。

做一个内向的人

这里也是一样。不存在最适合该职业的特定性格类型。无需在自己身上寻找任何特征来表明这项活动是否适合您。你对此事的态度更为重要。成功的一个关键要素是能够承受失败并坚持下去。这是一种后天获得的技能,而不是性格特征。

年轻的时候

从事 IT 工作并不需要很年轻。要成为一名优秀的程序员,你也不必在年轻时就开始这条路。我39岁开始读书,40岁找到第一份工作。除了我之外,还有很多不同年龄段的人也成功地完成了类似的转变。学习永远不会太晚。也改变职业。此外,只寻求雇用年轻人的公司仍然不太可能成为好的工作场所。

做个男人

这是显而易见的,但值得一说。你不必成为一个男人才能成为一名程序员。尽管男性在程序员中仍然占主导地位,但情况正在迅速发生变化。性别对于一个人的程序员水平没有影响。没有染色体或特殊的大脑结构提供对这一职业的倾向。你只需要能够解决问题。就这样。

2020 年开发人员应掌握的 10 项技能

来源:Dev.to 如果您想在开发中取得成功,您需要掌握区分初学者和中级程序员的技能。在这篇文章中,我将分享我认为你今年需要学习的 10 项技能。该列表并不完整,但它将为您提供进一步学习的良好起点。

1.容器(Docker和Kubernetes)

2020 年,每个程序员、开发工程师、数据科学家甚至团队负责人都应该了解 Docker 和 Kubernetes 等容器。在他们的帮助下,您不仅能够在单一环境中测试应用程序,还可以简化部署它们的过程。使用 Docker,您可以快速部署具有所有依赖项支持的应用程序,并且不必担心可扩展性。容器会自动执行此操作。如果你学习 Docker 和 Kubernetes,你将成为一名更受欢迎的专业人士。

2. 云平台(AWS、Google Cloud 或 Azure)

除了容器之外,云是 2020 年每个开发人员和数据科学家都应该了解的另一件事。大大小小的公司越来越多地将数据转移到云端,以节省资金并提高可扩展性。因此,迟早你仍然需要使用云平台。此外,在数据科学开发、机器学习和人工智能领域也离不开它们。只有云才能提供这种资源密集型模型所需的计算能力。

3.数据结构与算法

如果你想成为一名程序员,你必须对数据结构和算法有很好的了解。这里没有选项。在任何采访中总是会被问及这些问题。此外,如果不了解数组、集合、链表、映射,您将无法编写应用程序。

4.版本控制工具(Git)

您必须学习使用版本控制工具,例如 Git 和 SVN。幸运的是,Git 和 GitHub 占据了市场主导地位,超过 70% 的公司使用 Git,您可以限制自己只学习这个工具。但不要忘记,您还必须熟悉高级版本控制概念,例如分支和合并,以及在命令行上工作和使用 GUI。

5.文本编辑器

我在工作中没有一天不使用文本编辑器。对于任何程序员来说,它仍然是最重要的工具之一。我主要在 Windows 上使用 NotePad,在 Linux 上使用 VIM,但如今,您可以使用具有类似 IDE 功能的高级编辑器(例如 Sublime 和 NotePad++)进行多种选择。

6.IDE(VSCode或IntelliJIDEA)

对于Java程序员来说,有Eclipse、NetBeans和IntelliJIDEA这三大IDE可供选择。我更喜欢Eclipse,但IntelliJIDEA也相当不错。

7. 数据库和SQL

SQL 是一种经典语言,该语言已经存在了 30 多年,我认为它将继续使用大约相同的时间。鉴于数据库无处不在,程序员应该知道如何使用数据库;还了解标准化和表设计,也熟悉 SQL。有许多数据库,例如 Oracle、MySQL、Microsoft SQL Server、PostgreSQL 等。至少知道一个就足够了。您还应该能够插入、更新、删除数据以及编写 SQL 查询来检索数据。

8.UNIX(Linux)

与 SQL 一样,UNIX 也经受住了时间的考验。由于程序员大部分时间都在基于 UNIX 的计算机(例如 Linux 服务器)上工作,因此充分了解 Linux 命令行至关重要。

9. 面向对象的编程语言(C++、Java或Python)

当然,您不需要了解面向对象的编程语言,例如 C++、Java、Python 或 JavaScript。你可以选择任何你想要的,但我个人的建议是你至少了解Java。它很容易上手,是初学者的正确选择。

10. 网络基础知识

在现代世界,没有计算机网络是不可能的。无论您走到哪里,从使用 Wi-Fi 的家到使用局域网 (LAN) 的学校、学院和办公室,您都会发现计算机网络。您编写的大多数应用程序将以客户端-服务器方式运行,其中请求通过网络发送到服务器。最重要的是,您必须了解网络基础知识才能开发和维护您的应用程序。
评论
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION