乐趣区

关于android:如何成为一名合格的Android开发工程师技能篇

前言

前段时间,一位计算机专业大四行将毕业的同学关注了我的公众号,而后问了我一系列的问题,表白出他对将来的迷茫:

 我是一个二本科班的应届生,往年毕业,想晓得须要把握什么样的安卓技能能力加入工作?我在 b 站上看了很多安卓的教学视频,很多是 16 年左右的,内容很旧,想晓得我学完这些,间隔加入工作,还有哪些要去补充的?十分迷茫!

我认真看了一下他提出的问题,演绎总结无非就是: 计算机专业的应届生,须要把握哪些技能能力找到 Android 方面的工作?

我置信有这种纳闷的同学肯定也不在少数,那么明天我就联合我的理论教训,来简略介绍一下,作为一名行将毕业的计算机专业的应届生,咱们须要做哪些功课能力帮忙咱们更快地找到 Android 相干的工作。

自我介绍

在开讲之前,我先简略地做一下自我介绍:

我是南通大学 12 级网络工程毕业,一个再一般不过的二流中央院校。16 年毕业,15 年 10 月找到的实习单位加入工作,两头跳槽了几家公司,始终从事 Android 相干的开发工作,目前已有 5 年无余。

平时喜爱逛逛 github,看看掘金,有空就保护一下 github 上的开源我的项目,没空就写写文章,发发牢骚,是个再一般不过的屌丝程序猿。

说了我的这些经验,无非就是想通知大家:我一个一般二流本科生能做到的,大家也肯定能做到。所以大家不用放心,只有你可能依照我的领导去做的话,你肯定能够比我更加优良!

把握扎实的基本功

俗话说: 根底不牢,地动山摇

作为应届生,因为没有什么理论的我的项目教训,所以在面试过程中,用人单位会更看重应届生的基础知识把握水平以及倒退潜质。

所以,作为一名应届生,咱们肯定要把基本功的晋升放在首位。那么要想成为一名 Android 开发者,咱们须要着重把握哪些内容呢?

  • 根底学科知识 。如计算机组成原理、数据结构、计算机网络、操作系统、数据库设计、数字电路等。这些科目向咱们介绍了计算机的工作原理,把握了这些就能够帮忙咱们更好地了解程序的实质。
  • Java 基础知识 。包含语言的个性、语法、标准等。例如:Java 数据类型、运算符、面向对象、汇合类、泛型、注解、反射、多线程并发、Java 虚拟机、设计模式等内容。
  • Android 基础知识 。例如:Android 四大组件、Activity 的生命周期以及启动模式、动画、自定义 View、Android 不同版本的个性、SQLite、内存透露、ANR、Context、Handler 机制、View 绘制渲染机制、事件散发机制等内容。

如果咱们可能牢牢地把握下面列举的内容,那么里面的公司相对是抢着要你的。

认清学校与社会的差距

不要天真地认为把学校里学到的货色都学会了就能够顺利找到工作了,当然也不要认为学校里学的都是些没有用的货色。

作为一名应届生,咱们十分有必要认清学校与社会存在的差距。

  • 学校里教的都是些十分重要且根底的货色,我称之为业余素养。这些货色十分重要,它间接决定了咱们日后倒退的天花板在哪里。
  • 社会上教的都是些具体工作畛域方面的常识,我称之为职业技能。这些内容能够帮忙咱们更好地实现工作。

所以,咱们除了要把学校里学的内容打扎实,还须要尽早地接触社会,找到对口的实习工作,把握必要的职业技能。

咱们在找实习单位的时候,能够参考以下几点:

  • 无论是大厂还是小厂,进去都会有所播种。进大厂咱们能够播种不错的履历和人脉(这十分有用),学习到优良的管理制度和流程管制,进步技术的深度。而在小厂能够磨难你的意志、取得更多主导的机会、更大的自由度,拓展技术的广度等。
  • 第一家实习单位可能极大影响集体的职场观和价值观,抉择时需谨慎。切忌去小微企业或者守业型公司,因为这类公司每天都可能彷徨在开张的边缘上,所以并不会器重人才的造就。
  • 在抉择实习单位的时候,要多理解和把握企业的信息,走正规渠道。不正规不牢靠的千万别去;入职前,以任何借口让你交钱的公司不要去。

进步本人的入手能力

做技术搞开发的,入手能力永远是须要作为首要能力进行造就的。 除非你是业内公认的技术大佬,否则秀出你的代码才是证实你实力的最佳形式。

很多小白在入门某一项语言或者技术的时候,通常都是购买网课或者买一本入门书籍翻看,抄一抄视频或者书中的源码,就天真地认为本人曾经彻底把握了。他们殊不知,这些只是一些皮毛而已,当条件略微产生一点变动的时候,他们就彻底懵逼,不知所措了。

那么怎样才能解脱这样的窘境呢?其实非常简单,多敲代码,多练习,多思考,游刃有余嘛。

上面我简略举几个例子,给大家一点启发:

  • 如果你明天学了 Android 如何自定义 View 控件,那么你就能够依照本人的想法写一个 Android 尚未提供给咱们的控件或者是仿 xxx 的控件等。
  • 如果你明天学了 Android 的事件散发机制,那么你就能够尝试着解决几个层级较为简单的事件抵触问题。
  • 如果你明天学了 Google 提供给咱们进行利用开发的 Jetpack 框架组件,那么你就能够尝试用这个 Jetpack 组件去写个属于本人的 app。

如何进步本人的入手能力

正如 Linux 之父的那句 ”Talk is cheap. Show me the code.”,嘴上说千遍,也不如间接上代码撸一遍更加令人印象粗浅。

说到这儿,可能又有敌人想问了:对于一个素来就没有具体我的项目教训的人来说,该从何做起呢?

这里我还是举荐大家多到 github 或者 gitee 这种开源代码托管平台去找一些优良的开源我的项目,这些我的项目很多都是历经了各种简单业务考验的高价值我的项目,临摹他们的代码,能够极大地晋升咱们的技术水平和编码程度。

那么当初我是怎么锤炼我的编码能力的呢?上面我就简略介绍一下供大家参考:

  • 1. 首先到开源代码托管平台寻找到适宜本人的指标我的项目。
  • 2. 浏览我的项目的代码,初步理解我的项目的实现原理以及架构。
  • 3. 本人新建一个我的项目,而后依照本人的了解去本人实现一个相似的我的项目,不懂的时候能够借鉴或者 copy 指标我的项目的代码(指标我的项目就相似于参考答案)。
  • 4. 最低的要求是可能失常运行并且实现目标我的项目的次要性能,要求高一点的就是可能有一些属于本人的优化点或者个性等。
  • 5. 最初对本人做的这个我的项目进行演绎总结,优良一点的能够写一篇 README 介绍或者原理剖析。

如果你可能依照我下面所说的,来回写个 4~5 个我的项目之后,置信你的入手能力肯定会有质的飞跃。

最初

在这里,我想给老手敌人们一点倡议:很多时候,很多事件,并不像你设想中的那么简略,千万不要自认为简略而不违心去做,很多货色只有你亲手去做了之后,才会发现事件并不像你最后想的那么简略。

我是 xuexiangjys,一枚酷爱学习,喜好编程,致力于 Android 架构钻研以及开源我的项目教训分享的技术 up 主。获取更多资讯,欢送微信搜寻公众号:【我的 Android 开源之旅】

退出移动版