美文网首页
原生Android和iOS的出路<职业路径分享>

原生Android和iOS的出路<职业路径分享>

作者: 老王技术栈 | 来源:发表于2020-12-10 11:37 被阅读0次

    背景:

    早上某聘推送了一条消息过来,大概讲的是有个iOS原生开发找了几个月工作很迷茫,想转行之类。写了很多内容希望能帮到他吧。

    正文开始

    首先说下我的职业发展路径。
    我也是App原生开发出身,从事iOS原生开发大概5年时间。2019年下半年有份工作要跟react-native打交道,所以在那会儿偶尔学习react-native,但是那会儿我不会写代码,只是看看别人写的react-native代码。这个工作并没有持续多久,因为特殊原因公司解散,我就到了现在这个公司,然后一直从事react-native等跨平台技术的研发和研究工作。
    1、先是flutter,之前使用过,但是没有在商用项目上正式使用过。
    2、react-native是用的最多的技术,我们公司所有App都是使用react-native技术构建的,常规App问题不是很大。
    3、uniapp在一个商用项目上用过,写了安卓iOS h5三个端一套代码,性能一般,在App上问题比较多,不太推荐使用。但是也是使用vue技术开发的,所以也算是pick了一门前端技能了。这个框架入门也就一天半天吧,然后就是开发了,很简单。

    react+antd+umi 管理后台系统web端搭建,nodejs等技术也算是信手拈来了,总结来来现在几乎js栈上的所有技术基本上都可以使用,学习成本非常低廉。

    其实从上面就能看出来,我已经基本上算个大前端了。基本上如果我跳槽找工作除非大厂对一门技术要求非常严格的情况下,中小厂对我这种拥有大前端能力的应该是非常青睐的。

    从此妈妈再也不担心我找不到iOS原生开发的工作了、哈哈~~~

    对Android和iOS原生开发者的建议

    如果是想要继续从事代码这个职业的话,
    推荐两个路子走:
    1、第一条路就是专研原生领域某个技术点,做到专家级别,但是难度较大,门槛较高,若非cs专业且基础扎实的同学估计这条路是很难走的。
    2、第二条路就是我现在走的这条路、走大前端路子
    第一步自然是学习并且使用一门跨平台技术,其实有很多哈,目前讨论较多的是flutter和react-native技术,当然还有些其他的,u3d、nativescript 等还有国内的taro和uniapp。
    除了flutter和react-native其他的我都不太推荐,如果在从这两个技术里面选一个我建议你学习react-native技术,之所有这样建议并不是说react-native就比flutter好还是怎么样。
    从长远考虑,你flutter学会了请问下一步是干嘛?这个问题你能回答吗?难道用dart去写服务端?
    react-native虽然性能上比不上flutter,但是好在react生态啊,可以这么说,你pick了react-native ,让你去做h5也问题不大了,react配合上antd-mobile 写代码跟react-native开发体验别无二致。
    到这个程度相比你的js也很熟悉了,看下typescript怎么样?对于从静态语言转到js的同学配合typescript简直不要太爽。
    现在让你去写小程序、uniapp这些基于JavaScript语言的框架相比也问题不大、大概看下api,一天左右大概就够了就可以基于这些框架写代码了。
    是不是瞬间技术路子就扩宽了许多。

    到目前为止,你已经算是大前端了,如果你对后端开发感兴趣也可以pick下nodejs、都是就JavaScript的东西,配合上nodejs的express 从此觉得写接口也就那么回事了,nodejs里面也有像spring全家桶系列的库routing-controllers

    import { JsonController, Param, Body, Get, Post, Put, Delete } from "routing-controllers";
    
    @JsonController()
    export class UserController {
    
        @Get("/users")
        getAll() {
           return userRepository.findAll();
        }
    
        @Get("/users/:id")
        getOne(@Param("id") id: number) {
           return userRepository.findById(id);
        }
    
        @Post("/users")
        post(@Body() user: User) {
           return userRepository.insert(user);
        }
    
    }
    

    是不是满满的java spring既视感有木有。

    到这个阶段相比你已经对后端技术的使用,代码部署已经比较熟悉了。这会儿写java,go,python 相比也没问题了吧。

    到这个阶段你会发愁找工作吗?

    其实差不多你学会react-native基本上语言壁垒就差不多打破了,学其他的东西都应该很快了。写代码本身是个工程问题,只要是个正常人,最多半个月时间都能学会一门计算机编程语言,美国做过一个实验,让学艺术的女大学生学习编程学会也就是半个月时间、所以你告诉我编程还难吗?
    勇敢跨出第一步吧

    我现在在nodejs后端这个阶段上,等后端开发的思想构建起来了,可能会选择其他的编程语言做后端开发,至于是go,java还是python 就不好说了,
    距离全栈也就是一步之遥了!

    总结:

    关于职业发展路径上有疑惑的同学可以私我哦、或者加我微信:WLY18340

    相关文章

      网友评论

          本文标题:原生Android和iOS的出路<职业路径分享>

          本文链接:https://www.haomeiwen.com/subject/slylgktx.html