JavaRush /Java 博客 /Random-ZH /为什么要开发Android?从个人经验来看。推理与事实
Oleksandr Klymenko
第 13 级
Харків

为什么要开发Android?从个人经验来看。推理与事实

已在 Random-ZH 群组中发布
如果您是那些尚未决定在哪里应用 Java 知识的人之一,那么这篇文章绝对适合您。文章讨论了android开发这样一个方向。我如何成为一名 Android 开发人员的故事。选择android开发的技巧和前景。进来!
为什么要开发Android? 从个人经验来看。 推理与事实 - 1
JavaRush 的同学们大家好!你们中的许多人已经了解 IT 领域的哪些行业使用我们喜爱的 java。你们中的一些人可能已经决定并做出了选择。在这篇文章中,我将告诉你我是如何成为一名 Android 开发人员的。我会解释为什么我认为这个方向是最有前途的。我将带您了解什么是Android开发。当然,我会分享一些技巧,帮助您成功开启 Android 开发者的职业生涯。
为什么要开发Android? 从个人经验来看。 推理与事实 - 2

我将从历史开始

据我所知,很多人喜欢阅读其他 JavaRush 学生的开发/成功故事。对此产生兴趣也是理所应当的。其他人的错误、正确的行动、经验——所有这些都有助于某人在真实情况下做出决定。但也有一些人对所有这些故事并不特别感兴趣。下面是其中一个故事,阅读它仅取决于您的愿望 =) 我第一次接触 Android 是在 2016 年夏天。那时我根本不懂Java。我唯一的知识就是大学一年级的 C/C++ 编程经验和一些 html/css 布局方面的知识。同年,我得到了第一部运行 Android 操作系统的智能手机。我记得我是如何被强烈的欲望所征服的,想要在上面编写并启动我自己的应用程序。我没有浪费时间,开始研究。事实证明,Android开发的主要编程语言是java。没有绝望,我开始观看培训视频,告诉我如何准备和配置开发环境。浏览了当时互联网上免费提供的所有课程后,我认为最有趣且计划周全的是亚历山大·克里莫夫的课程。在大约两周内完成18节课后,我出发去自由游泳。我有自己的想法,并与 Google 一起尝试实现它们。我在 xml 标记中进行了大部分开发 - 这是屏幕的可视化表示。如果需要直接编辑 java 代码,那么我只需在 Google 中输入我想要获取的内容的描述,然后复制现成的代码(通常来自 StackOverFlow)。然后在 Android Studio 中我编辑它直到它起作用。这种低效的方法让我清楚地知道,如果不了解 java 的基础知识,我就走不远。在了解了一个月的 Android 后,机缘巧合,我被邀请去我父亲担任 iOS 开发人员的公司开发 Android 应用程序。当然,不存在任何薪水的问题,这是一种自愿的做法,如果我的代码对某些东西有用,它就会留在最终产品中。事情就这样发生了,一个月之内我或多或少地理解了 xml 布局,并且能够重新设计其中一个应用程序的许多屏幕。公司老板通知我,我的工作成果已成功卖给客户,并奖励我100美元。所以我留在这家公司工作,薪水非常非常非常低,但有机会从实际项目中学习。经过几天的深入研究这些项目,并且没有好心员工的帮助,我弄清楚了java和android开发的要点。于是,月复一月,我把大学学习和工作学习结合起来。2017 年春天,我从同学那里了解到了 JavaRush 项目,她购买了订阅并完成了大部分课程。我产生了兴趣并决定尝试一下。对我来说,浏览 JavaRush 的免费部分主要是出于研究目的,因为…… 我的知识水平高于课程的目标受众。构建我的知识对我来说也非常重要,因为...... 我有一次错过了这一点,因为我从一个话题奔向另一个话题。你知道,在经历了10个关卡并完成了所有任务之后,我有幸读到了一本非常好的书!在知识中,一切终于水到渠成。由于时间不够,也因为很多话题之前已经研究过,所以我没有继续下去。现在,我继续以更高的速度在同一家公司工作,并微笑着回忆起我职业生涯初期的有趣任务。写文章的动机是一种竞争,以及结构化知识的需要和分享知识的愿望,这就是我在上一篇关于 Reflection API 的文章中所做的。

为什么 Android 开发对于 Java 初学者来说是一个有前途的方向?

我将首先描述 Android 开发的概况以及入门需要哪些知识。
Почему Android-разработка? Из личного опыта. Рассуждения и факты - 3
在所有以java为主要技术工具的领域中,android开发对于这种特定编程语言的知识要求是最高的。android中的许多java功能由于无用而没有被使用,其中许多功能在某些版本的gradle builder中被完全排除。就此而言,java本身知识的入门门槛是完成JavaRush课程的水平:java核心和java语法。当然,您不应该忘记了解多线程;在这里,这样的经验将非常有用。有了这样的Java知识你就会感到非常有信心。让我们看一下 android 的 UI(用户界面)部分。应用程序元素的布局或排列是使用 xml 层进行的。这里需要组合不同的标签才能得到预期的结果。如果您处理过 html 布局,那么您很快就会掌握它的窍门。但即使您不熟悉 html,它也没有什么复杂的,并且互联网上有大量关于此主题的材料。Android Studio IDE 中的 xml 标记示例:
Почему Android-разработка? Из личного опыта. Рассуждения и факты - 4
接下来,重要的一点是对git版本控制系统的认识和理解。很难想象如果没有这项技术来开发 Android 应用程序。但在这里您不需要成为高级专家。作为初学者,您很少需要对存储库执行复杂的操作。另外,如果使用终端并不断输入一些命令对您来说很陌生,而使用 git 正是这个意思,那么有一个流行的图形 shell SourceTree,它将绘制您的所有分支并清楚地了解您所在的位置。好了,现在我们来谈谈选择Android发展方向的前景。尽管如此,学习Android的门槛相当低,背后却隐藏着一座大山的机会和发展路径!Android 操作系统是一个发展相当迅速的平台。几乎每年都会发布新版本,为用户带来新功能,为开发人员带来各种好处。就这一点而言,你的工作永远不会变成支持特定稳定版本的例行公事,总会有新的东西,总会有地方可动。例如,不久前谷歌宣布Kotlin作为Android的官方开发语言。他们还使用 MVVM(模型-视图-视图模型)设计模式为 Android 应用程序提供了一种新的架构。不要忘记该平台的受欢迎程度:
Почему Android-разработка? Из личного опыта. Рассуждения и факты - 5
就职业发展而言,你不必不断地先为一份薪水编写代码,然后再为另一份薪水编写代码,等等。最近,一个流行的职位是架构师,其任务是监督和设计应用程序,促进他对架构的愿景。有了对设计模式的正确了解,这些门将为您打开。运行 Android 的大量小工具和设备表明没有必要只编写移动应用程序。您可以为手表、电视、汽车甚至冰箱开发程序!正如你所看到的,有很多前景,这个列表还可以继续,但恐怕文章的篇幅会相当大。但为了让所有这些可能性成为现实,我想与您分享一些技巧。如上所述,Android 正在以相当快的速度发展,许多开发元素已经过时了。不要浪费时间研究它们。最有可能的是,新的方法已经取代了这些方法;最好花时间研究更现代的方法。一定要听取那些在这个领域工作时间比你长的人的建议,有时一些建议比谷歌上的任何信息都更有价值。并且不要害怕向这些人寻求建议。为自己寻找有关 Android 世界的其他信息来源,例如Habré或其他流行 IT 社区的移动开发人员文章摘要。我就到这里结束吧。我希望我的文章能帮助您想象 Android 开发的世界,并且您学到了一些有用的东西 =) 在评论中写下您的反馈或点赞支持。谢谢大家,祝您在 Java 的任何方向上好运!
评论
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION