Android开发,技术实力的本质是什么?

最近很多同学说到很迷茫,迷茫了就喜欢胡思乱想一些东西,其实大家从我最近的文风也可以看出来,写的东西也不是非常成体系,都是些零零散散的东西,因为这些也确实是我最近的一些思考,希望对大家有用。

今天,我们来讨论一个问题:技术实力的本质究竟是什么?

技术实力的本质究竟是什么?

在工作中,你可能会遇到,为什么他的实力不如我,他却可以晋升?

在面试中,你可能会遇到,我把系统性能优化了10倍,为什么面试官还是看不上我?

为什么?到底是为什么?

如果你有同样的困惑,或者彻夜难眠,我认为你需要停下来思考一下了。

可能是你的学习方法错了,你并不是不努力,只是努力的方向错了。

我举个简单的例子:

我的父母特别勤奋,当我还是个小屁孩的时候,他们每天早上四五点就要起床磨豆腐卖豆腐了,一年四季如此,他们的目标也很简单,就是把我和哥哥送入大学,当然,最后他们的愿望也确实实现了。

你说他们努力吗?是的,很努力。

但是,你说他们很成功吗?不见得。

所以,你看,有时候并不是说,你努力了就一定会成功。

更不用说我们做程序员的,有那么多的知识要学习,就拿Android来说,你真的就只需要学习Android本身的东西吗?各种框架要不要学?Flutter要不要学?Kotlin要不要学?各种底层原理、优化、设计思路……

有这么多东西要学习,学得过来吗?通宵达旦地学也学不过来呀。

所以,技术实力的本质到底是什么?

我认为技术实力的本质是解决问题的能力,或者换个说法,技术源于业务,技术是为业务服务的

这么说,可能大家不乐意了,你莫不是产品弟弟派过来的间谍?!

我再举个简单的例子:

在很久很久以前,这个世界上没有火,突然有一天,一道闪电划过,劈在了树上,着了火,引起了森林火灾,后面火灭了,人去捡被火烧熟的动物尸体吃,嗯,味道竟然很好。

后面,人就形成了一种共识,火烧过的肉很好吃。

所以,他努力的想掌握生火的技能,经过一番尝试,终于习的了钻木取火的技能,从此,可以天天吃烤肉了。

在这个故事中,业务是什么?技术是什么?

业务其实是吃烤肉,技术是取火,钻木取火是取火的一种方式,除了钻木你还可以使用打火机。

忽然有一天,一个人说我要喝水,你却给他打火机,你说你解决了他的问题(业务)了吗?

并没有,打火机虽然是更高级的技术,但是对于喝水这个需求并没有什么卵用。

所以,技术实力的本质是解决业务问题,你解决的业务问题越大越复杂,代表你的技术实力越强。

那么,如何才能增强自己的技术实力呢?

如何才能增强自己的技术实力?

我认为分成以下几个步骤:

首先,领悟业务,引导业务,这个你可以去学习一些DDD的思想,并落地到你的业务中,可以帮助你快速理清业务边界,甚至引导业务未来的方向。

其次,学习通识技术 + 技术储备 ,学习一些你所在领域的通识,并储备一些在现在和未来能帮助你解决业务问题的技术。

在这么多技术中,我认为最重要的是学习你所在领域的通识。

通识是什么呢?

以Android开发为例,Android其实也有很多方向,比如原生开发,物联网,音视频等,那我们看看这3个方向要学习哪些东西:

1、原生开发:数据结构与算法,设计模式与设计原则,Java,四大组件,自定义View,性能优化,等等

2、物联网:数据结构与算法,设计模式与设计原则,C/C++,JNI,NDK等等

3、音视频:数据结构与算法,设计模式与设计原则,H264/H265,MediaCodec,OpenGL,OpenCV,FFmpeg,WebRtc等等

所以,你看Android领域最重要的就是数据结构与算法,设计模式与设计原则,那么,他们就是Android领域的通识。

通识差不多这样,那怎么做好技术储备呢?

怎么做好技术储备?

我们以Android原生为例,假设现在你们的用户量是10万,预估未来可能会达到100万,甚至1000万,那你可以想象一下你们的架构将如何演变。

首先,存储方面,肯定不能单库了。

其次,查询方面,分库分表之后没办法做模糊查询了,肯定要上搜索。

最后,并发方面,并发量有大幅度提升,性能要不要优化?

所以,这么简单的分析一下,就知道要学习哪些储备技术了,我这里只抛砖引玉,并不是说这就是全部。

你可以排一个优先级,一个一个去学习这些技术,但是,并不是说每一个都要去达到源码这种级别,最起码你要去掌握他们用到哪些底层技术,适用于哪些场景,有什么优缺点,有什么坑,简单的使用案例,我认为掌握到这种程度才勉强够了,真正遇到需要用到这个技术的场景的时候,你能信手拈来即可,然后再去深入学习。

其实,研究多了,对于一种新的技术,它使用的底层技术也就那些。

所以,你是不是可以研究一下这些框架都使用到的技术,他们是不是又可以成为新的通识。

最后,持续学习沟通能力,表达能力,思维能力,总结能力,并落实到工作生活中。

最后一部分如果用一个词来概括的话,可以称之为社交能力。

你写了一个特别牛逼的框架,但是你不会表达出来,别人也不知道你在说啥,有什么用?正所谓天才与傻子只是一步之遥,可能是我们无法理解傻子,或者说傻子不会表达自己。

你在工作中是不是只会闷头干活,交给你的活都能搞定,但是,你就是比不过那个PPT写的好的,那是你的思维能力和总结能力不如别人。你可能只列举了你做过哪些东西,但是,他会归类总结,最后以结构化的方式呈现出来,甚至还可能通过对以往数据的汇总,预测下一年的方向,这个在老板看来是更重要的东西。

所以,你必须学习思维能力和总结能力,而且是持续学习持续实践,这方面的能力是贯穿一生的,即使以后你不做程序员去送外卖了,可能也能比别人赚得多。

最后

最后总结一下今天的分享:

  • 技术实力的本质是解决问题的能力。
  • 在业务方面,我们应该学习如何快速理解业务,可以通过DDD等手段实现。
  • 在技术方面,我们应该学习你所在领域的通识,并做好技术储备以应对未来需求的变化。
  • 在社交方面,我们应该持续学习沟通能力,表达能力,思维能力,总结能力,并落实到工作生活中。

如果你也刚好是从事Android开发相关的工作

在这里我也分享一份收录整理的Android学习PDF+架构视频+面试文档+源码笔记高级架构技术进阶脑图、Android开发面试专题资料,高级进阶架构资料

这些都是我现在闲暇还会反复翻阅的精品资料。里面对近几年的大厂面试高频知识点都有详细的讲解。相信可以有效的帮助大家掌握知识、理解原理,帮助大家在即将到来的面试季取到一份不错的答卷。

当然,你也可以拿去查漏补缺,提升自身的竞争力。

如果你有需要的话,可以前往 Github 自行领取

喜欢本文的话,不妨顺手给我点个赞、评论区留言或者转发支持一下呗~

好了,今天的分享就到这里。

最后,我想问,你支持本文的观点吗?

欢迎留言讨论,共同进步。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值