那么学习Java需要多长时间呢?十年,十周,还是一天?也许你的一生?您可能会在某些在线论坛上找到这个问题的非常特殊的答案。让我们从一开始就说清楚。在本文中“了解 Java”并不意味着您可以编写“Hello world 程序”。它是关于足够了解 Java 以找到您的第一份工作。标题中巴斯光年的座右铭并不是一个玩笑。您真的可以在余生中继续学习 Java 或任何其他语言。原因是语言在不断发展,它的范围在变化,而且……好消息,朋友们!没有理由恐慌!Java 任务的学习绝对有可能在 3 到 12 个月内完成,但是,我们将在本文中讨论许多细微差别。在这里,我们也将尝试回答“如何快速学习 Java”这个问题。
Yuliya Deinega,自学成才的软件开发人员。Yulia 在 LinkedIn 担任 REACH 学徒工程师,她还创建了YouTube 频道,分享她在硅谷学习计算机编程和找工作的经历
我们可以将开始学习Java的人分为三大类:
PS:那你呢?你现在学Java多久了?这个过程艰难吗?或者您可能已经找到了第一份与 Java 相关的工作?很难吗?或者也许你刚刚开始寻找它?在这里分享您的经验!
我们如何寻找答案
“学习 Java 需要多长时间”这个问题有点棘手。我们将其拆分为更具体的子问题并在此处进行回答。更准确地说,我们使用了对 CodeGym 学生的采访、开源和调查中的统计数据。该调查是关于 Java 学习过程和寻找第一份工作的。它是由当地的 CodeGym 单位之一进行的。调查参与者是 30 级及以上的 CodeGym 学生,他们找到了第一份与 Java 相关的工作或参加了 Java 实习。“了解 Java”是什么意思?
对这个问题最准确但也非常笼统的答案是“能够使用 Java 解决问题”。这样的问题可能是“通过考试”或“找到工作”的目标。或者它可以是一项技术任务,可以是一个大任务,例如“为 Play Market 创建足够好的我自己的项目”,也可以是一个小任务,例如“了解如何编写满足您需要的代码”。 当然,你的问题会随着时间而改变。获得第一份工作后,您将需要成长为职位(例如,从 Java Junior Developer 到 Java Middle/Senior Developer)。第一个编码任务之后是第二个。此外,当您这样做时,会出现一些新的目标。让我们回到我们的问题。您应该知道哪些主题才能在您的简历中写下“我知道 Java”?Java 学生通常学习以下主题:- 核心Java 或
- 核心 Java + JUnit或
- 核心 Java + 数据库或
- 核心 Java + 工具或
- 核心 Java + 库或
- 核心 Java + Spring + SpringBoot + Hibernate或
- 核心 Java + Android SDK 或
- ......以及所有上述组合。
- 基本类型和对象
- 基本构造(特殊运算符、循环、分支)
- OOP 概念
- 包装类
- 收藏品
- 多线程
- 输入输出流
- 异常处理
你的个人方式。学习 Java 是为了什么?
在本文中,我们不考虑诸如“我学习 Java 只是为了好玩”或“我想在未来教 Java”之类的选项。在这里,我们谈论的是 Java 在 IT 中的专业用法。目前,大多数情况下教授 Java 是为了采用以下三种方式之一:- Java 开发人员,从实习生/初级开发人员到高级开发人员
- Android 开发人员,独立开发者或在公司工作(初级到高级)
- QA 自动化(使用 Java)
开发人员
Java 开发人员的范围非常广泛,对 Java 知识的要求是为了获得第一份工作,这可能会有很大差异。根据 CodeGym 调查,有些人在获得第一份 Java Junior 工作时只了解 Java Core,仅此而已。公司准备在工作过程中对他们进行培训。然而,这是一个非常罕见的事件。更多的时候这样的人可以参加实习或者通过一些考试后成为Java实习生。通常 Java Junior 申请人应该了解的不仅仅是 Java Core 才能获得第一份工作。这里列出了 Java 开发人员应该了解的相关技术。- 核心Java
- 开发接口
- Java 8(拉姆达表达式)、Java 11
- 测试库 (JUnit)
- 弹簧框架
- Spring Boot 和 Spring MVC
- 休眠
- JDBC
安卓开发者
Android 开发人员可以为公司工作或拥有自己的项目。他们应该肯定了解 Java Core 和其他一些技术。这里我们有一个信息图,展示了 Android 开发人员的一种方式。 好吧,列表中有很多要点,但其中没有多少是直接关于 Java 的(只有测试工具,实际上是 Core Java)。通常开发人员都认为自己学习 Android 编程比企业开发更容易、更快。尽管如此,即使对于那些渴望成为 Java Junior 职位的人来说,创建 Android 项目来训练您的编程技能也是有用的。质量保证自动化
一个好的 QA Automation 应该非常了解编程语言,这是这个行业最重要的技能之一。连接到Java- 核心 Java(尤其是 OOP、Collection、FileOperations)
- 测试库 (JUnit)
- IntelliJ IDEA
- Selenium RC/WebDriver 框架
- 页面对象模型
- HTML/CSS
- 数据库
谁在问?潜在的Java学生画像
“我认为这取决于你的背景和你可以花在学习上的时间。当我开始我的软件开发之旅时,我每周至少要花 40 个小时学习。经过 6 个月的全日制学习,我有足够的信心自己掌握任何新技术。为了找到您作为软件工程师的第一份工作,您不仅需要学习 Java,还需要了解计算机科学、面向对象编程的基础知识,并编写一些可以展示您的工作的项目。我认为这可能需要九到十二个月的时间。我知道这听起来工作量很大,但不要气馁!如果您发现编码的哪些方面给您带来快乐并允许自己玩,那么这段旅程会非常有趣。”- “菜鸟”。零经验。好吧,这里有一些对编程一无所知的人。
- “中间”。编程经验很少或混乱的学生。那些人在学校、大学或课程中学习编程,但这并不是认真的学习。
- “优点”。了解其他编程语言(一种或多种)的软件开发人员。
- 33.3% 绝对是新手
- 17.6% 的人至少知道一种编程语言
GO TO FULL VERSION