0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何成为一名Android高级工程师

工程师人生 来源:网络整理 作者:工程师吴畏 2018-08-28 09:13 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

什么是Android高级工程师

这个强调一个概念,快速。

如果一个开发者,想成为一个高级工程师,去做高级工程师需要做的事,了解一个高级工程师需要的知识,然后一步一步学习,都弄懂弄会,这样就是一个高级工程师了,这个过程可以量化,就是学习会这些知道就行,如果想继续进阶可能就不是量化的问题了,这里只讨论Android高级工程师的问题。那么如何成为一个高级Android工程师,就变得比较清晰了。

学会基础知识

Java基础,多线程,泛型,反射,IO,异常处理,集合框架等等都需要吃透。

Android基础,四大组件,Android的是异步调用,View的 绘制流程,触摸事件流程,都应该吃透

还有很多不一一列举了,这些是基础部分。

进阶学习

基础的东西,也要进阶,这个是同步的,比如多线程应该了解多线程并发库等高级用法,什么类加载器,垃圾回收等等都应该有个自己的了解,还有第三方库,至少都会使用大部分库吧,什么Gson,FastJson,EventBus,Volley,Okhttp ,Glide,Fresco,ButterKnife 。等等都应该有会熟练使用把。这写也只是中级程序员就应该掌握了的内容。

高级程序员应该掌握上面的所有内容作为基础内容,还要了解每个技术的原理和作用。对第三方库不只是使用,还要了解原理,还要能根据原理自己写出一部分库。能封装自己的库。而不是只停留在使用上面,这些东西使用都是非常简单的,看一下文档就能用了,可能用额不够精准,但是作为一个高级程序员,是一定一定要知道他们实现的原理的,计算写不出一样的代码,也能知道人家是怎么实现的,这是一个高级程序员最低的标准了。

快速成为Android高级工程师会遇到的问题

多看书,多做项目,看什么书网上推荐的特别多。

那么问题来了。看书就能成为高级工程师,做项目就能成为高级工程师,看看文章就能成为高级工程师。如果可以的话,那么我直接买几本书,在家看看,然后做几个小项目就好了。如果这样就能成为高级工程师,那么我就先在家好好学习学习,然后成为高级工程师,再去找工作吧,这样不是很好么。当然这是不可能的,或者说大多数人是不可能的,不排除有那些天才啦,还有刻苦和会学习的人。或许很多人会说,这个是看工作年限的, 如果你工作都没工作,怎么可能会是高级工程师呢,这确实是个问题,虽然你的能力确实跟你工作年限有关,但是这些东西确实不只是靠年限堆出来的。而且这些东西确实也不是只看书就能看出来的,这里需要的是一个系统的学习过程。

这里强调一下,一定是一个系统的学习过程,要把很多东西方方面面都了解,吃透,这个过程需要很长一段时间,快的话二三年,慢的画5年以上也正常。确实不是很快能吃透的,第一是东西确实挺多,第二是东西确实比较抽象,真的理解还会使用,需要一个系统的学习和使用过程。但是大部分二三的工程师达不到这个水平,可以说真的少之又少,那么这些东西学多久适合呢,我定的标准是三年,如果一个工程师,按正常的流程学习,正常工作,一点点进步,三年左右达到这个水平,一般都是可以的。只是这样的工程师真的不多,而大多数是三年之后,最多是个中级水平。这个就是现在软件开发的现状。

我见过太多三五年的工程师的基础太烂了,为什么强调基础,如果基础不吃透,你去学习别的东西会花费更多的时间,而很多人就是这样不注重基础,他们可能会很多新的框架,新的技术,但是就是不去学习基础,然后他们最多也只是会用别人的框架,根本连框架原理都弄不明白,更别说写一个框架了,所以这里强调基础的重要就是,只有你有基础你才能真的去理解别人的代码,你能更有效的控制你的代码。

那么为什么现在的工程师很多是这样的呢,第一点,就是大多数人,不知道应该如何学,很多东西,也想学不知道如何下手,别人代码看不懂,又觉得自己基础还行,不爱看基础的东西,总想直接学好更高级的东西,这样恶性循环就变成了,基础没学好,高级的东西学不会。如果有人注重基础,慢慢一步一步啃会是什么样子呢,那么他会花很大一部分时间去学习基础的理论,然后基础弄扎实了,在学习高级点的东西,这样可以么。答案又是否定的。如果死扣基础,不去学习高级的东西。这个过程会遇到一系列新的问题,基础不知道应该学什么,学到什么程度,需要花费多少时间学习,然后学完了怎么用,然后什么时候复习这些问题。就变成了不知道学什么了反而基础也没有学好,还是没有什么用的状态。

那么如何快速成为Android高级工程师呢

通过上面的分析之后我们考虑,我们如何快速的成为一个优秀的Android开发工程师呢。

第一步 夯实基础。

Java基础,多线程,泛型,反射,IO,异常处理,集合框架等等都需要吃透。

Android基础,四大组件,Android的是异步调用,View的 绘制流程,触摸事件流程,都应该吃透

这个是前提

第二步 多写代码。

只看不写效果是最差的,只写不看都比这好一点,那么代码一定要写出来,然后一步步测试。让代码在自己的掌握之中。

做项目会让你看到很多你需要了解的东西,能检验你对很多东西的了解。

做项目会让你积累很多看书无法了解的东西。

第三步 分析代码。

如果你有基础,你可以分析别人写的代码,看看人家代码的原理,这个是必须要了解的。

要不要自己写各种第三方库,能写当然是好的,但是精力有限。全写必然费时费力。你有那么多时间么,所以可以写几个就行了。

也可以看网上的文章,看别人如何分析第三方库原理的,做到理解,这样能快速的理解第三方库的原理,但是这样做也有弊端,就是你只是看了一遍,然后也就忘了,最好跟着人家的分析简单写写代码,看看你写的跟人家到底有什么区别,一个是了解自己的实力,一个是能真的看到人家是如何去实现这个东西的,了解项目的精髓。

第四步 开发自己的框架库。

如果前几个做好了,这个就变成水到渠成的东西了。

开发自己的框架有很多好处。

第一个就是证明自己的能力,有能力开发一个适合自己在工作中使用的框架的能。比如说一个工具类库。

第二个对代码的掌控力,有自己的框架,如果项目需求有什么修改,自己能知道如何修改达到自己的项目需求,如果使用的是第三方的,可能没办法去修改。

第三个就是开发自己的框架,能更快速的开发自己的项目。自己写的东西总比别人的熟悉。

这个过程做完,基本也就达到一个高级工程师应该有的水平了,这些东西只要学都能学会。

这样一步一步来肯定能成功,但是这并不是一个优等的方案。一个好的方案是,有一个更好的指导,指导我什么时候应该看什么,应该学什么,知道自己哪里不会,然后知道如何去学,可是这个东西确实缺失的,不会有那么一个人,那么了解我的情况。然后根据我的情况,帮我量身定做一个学习计划,然后根据具体情况,制定不同时期的不同计划,然后给我讲解,我看不懂的东西。其实我在学习的过程中一直希望有那么一个人,会一直指引我去学习,一直指导我,如何去进步,帮我解决我工作学习过程中遇到的问题。

计划

本人做Android7年,也经历了各种迷茫期,各种瓶颈期。我想做一个东西,这个东西,能帮更多的程序员,从一个技术小白到一个高级的Android工程师。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Android
    +关注

    关注

    12

    文章

    3986

    浏览量

    133088
  • 工程师
    +关注

    关注

    59

    文章

    1600

    浏览量

    70660
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    嵌入式工程师的进阶之路

    (TensorFlow Lite 边缘推理 + 机械臂控制),需提交完整的需求文档、代码注释和测试报告。 薪资对标:线城市月薪 2 万 - 3.5 万,二线城市 1.5 万 - 2.5 万。 (三)高级工程师(5 年
    发表于 08-13 11:08

    作为一名PCB质检工程师,我为什么在用手持式面铜测试仪?

    在PCB行业,铜厚直是决定阻抗、散热与可靠性的关键指标。过去,工程师把板子搬到实验室、等待台式铜厚仪出结果;作为一名PCB质检工程师,如今,我更愿意把“实验室”揣进口袋——手持式面铜
    发表于 08-11 11:59

    问,成为硬件工程师需要几只手?#硬件工程师 #YXC晶振 #扬兴科技 #搞笑

    硬件工程师
    扬兴科技
    发布于 :2025年04月25日 17:15:37

    如何成为一名合格的KaihongOS南向驱动开发工程师

    如何成为一名合格的南向驱动开发工程师 1. 我需要具备哪些方面的知识? KaihongOS南向适配的方向分为:驱动开发、内核开发。根据适配方向划分,需要掌握的知识技能分别为: 驱动开发
    发表于 04-23 08:02

    如何成为一名合格的KaihongOS北向应用开发工程师

    如何成为一名合格的北向应用开发工程师 在快速发展的软件开发领域,北向应用开发工程师个专注于系统级应用开发的高需求职位。 以下是
    发表于 04-23 06:46

    工程师经验分享:社区之星 赵云 沉着稳定才能做好技术

        嘉宾介绍: 赵云 ,张飞实战电子电机驱动软件高级工程师,FOC课程主讲老师,专注电机驱动研发,主要负责电机控制算法的实现,重点是永磁同步电机控制。对方波六步换相、SPWM、SVPWM、FOC
    的头像 发表于 04-15 15:58 998次阅读
    <b class='flag-5'>工程师</b>经验分享:社区之星  赵云 沉着稳定才能做好技术

    如何成为一名嵌入式软件工程师

    如何成为一名嵌入式软件工程师? 01明确岗位的角色与定位 嵌入式软件工程师主要负责开发运行在特定硬件平台上的软件,这些软件通常与硬件紧密集成,以实现特定的功能。 不仅需要精通编程语言
    发表于 04-15 14:37

    Allegro工程师能力升级建议 工程师技能如何升级进阶

    根据Cadence认证体系及中国企业需求,Allegro工程师能力分三级,分别是初级、中级、高级工程师。那么这三种工程师技能如何升级进阶?   1、初级工程师(Layout基础) ①六
    的头像 发表于 03-31 11:39 1312次阅读

    招拿捏电子工程师#被AI拿捏了 #电子工程师 #电子电工

    电子工程师
    安泰小课堂
    发布于 :2025年03月25日 17:30:51

    如何成为嵌入式开发工程师

    ,参加相关的研讨会和培训课程,阅读专业书籍和论文。 9. 认证和网络:- 考虑获取相关认证,这可以增加你的市场竞争力。- 加入专业组织和在线社区,扩展你的人际网络。 通过上述步骤的学习和实践,你可以逐步成长为一名合格的嵌入式开发工程师。记住,实际动手做项目和解决实际问题是
    发表于 02-19 10:39

    如何成为一名合格的南向驱动开发工程师

    内核开发 - c,cmake,dts, linux常用命令 以上,如能对某模块的南向适配研究透彻,自行调通,积极解决问题。那么对一名kaihongOS的南向驱动开发工程师而言,他便是合格的,若
    发表于 01-10 10:06

    如何成为一名合格的北向应用开发工程师

    在快速发展的软件开发领域,北向应用开发工程师个专注于系统级应用开发的高需求职位。 以下是成为一名合格的KaihongOS北向应用开发工程师
    发表于 01-10 10:00

    为什么嵌入式驱动开发工程师可以拿高薪?

    技术领域具有不可替代的地位。 成为一名优秀的嵌入式驱动工程师只需要深耕以下几点: 1)坚实的技术基础: 首先,需要有坚实的基础,包括计算机组成原理、微处理器与微控制器架构以及电路设计与硬件接口知识
    发表于 01-07 16:56