当前位置: 首页 > 科技观察

被踢部落故事集(20):Android程序员的十条转型之路

时间:2023-03-19 14:27:57 科技观察

【.com原稿】九哥是一只来自东北的Android攻城狮。川)新(晓)合肥。知识面广,不仅广泛涉猎IT相关知识,还热爱文学,性格幽默风趣。他被誉为“会玩安卓的小丑”。他还是一个藏书家,收藏了大量的IT书籍,每一本书都仔细阅读,从不拿书当装饰品。九哥·Android攻城狮说一下Android程序员无法转型的几个方向。以下四个不靠谱方向的靠谱度在递减:一是不会向iOS转型,iOS和Android工程师的工作内容大同小异。的。其次,它不会向WindowsPhone转型。很多Android程序员就是受不了产品经理的唠叨:“做个QQ客户端,做成iOS一样”。让WP像iOS一样,怎么比Android还难??再次强调,Windows、MacOS等桌面软件不会被改造。桌面开发周期长,难度大,升级难度大。这是一个接近尾声的夕阳产业。***不会倒退JavaME或Symbian的历史,除非他有能力让每一个用户都买(就一个字“买”,包括“想买”和“买”的意思)的机型停产多年。玖哥观察当下的技术形势,亲身探索了Android程序员转型的十个技术方向的可行性:1.Android病毒与恶意应用。最近肆虐全球的WannaCry,让安全成为IT圈最热门的话题。对于厌倦了开发善意应用的Android工程师来说,最方便的过渡方向就是开发Android病毒和恶意应用。在4.x时代,Android对敏感权限还不是很敏感的时候,酒哥研究了为bot伪造短信记录,让bot给通讯录中的所有(或特定)联系人发送短信的病毒。去年我们也研究过恶意应用(或者应用中的恶意函数)窃取其他商家APP推送的内容,强行杀掉其他商家APP的进程,卸载其他商家APP,甚至无法安装朋友商户APP卸载后的这只肉鸡。).改造建议:另外,在bot中锁定重要文件勒索用户(安卓WannaCry?)和窃取bot用户支付密码的实现,技术上简单到强奸8岁女童,但实现难度大之后摆脱它。这个改造方向只适合拿自己的手机当肉鸡玩,千万不能用这些技术来赚钱。2、SDK开发SDK本质上??还是为Android应用开发软件,但并不直接开发Android应用。每个Android程序员在工作几年后,都积累了自己或大或小的类库,比如封装好的LogUtils、ToastUtils等;他们也或多或少研究过常用开源框架的底层原理,比如了解Picasso和EventBus等;对于非开源的第三方服务,它也应该有自己简单的二次封装。比如酒哥封装了实现支付宝和微信一键支付的模块(免费Ping++?)。改造建议:虽然在无数Android应用的Gradle文件编译背后看到了你的链接,但是开发无数软件的一部分的成就感并不比开发一个完整的软件差。但是几乎没有老板会付钱给你来支持你开发开源软件。3、JavaEEAndroid程序员从基础知识上改造Java并不难。毕竟语言相似,特性相似。同时,每个Android程序员都不会在大学里把J2EE课程学坏,但有些知识应该忘掉,比如Hibernate已经落后于时代,Java后台全面使用SpringMVC是大势所趋。改造建议:建议刚入行不想天天换UI的Android工程师改造。酒哥手下有好几个小弟都是参加工作后从Android转Java的。他们都过着美好的生活。很多工作年限长的Android工程师,原来都是JavaEE转过来的,不要转回去。4.对于手游,首先考虑的是不要放弃Java语言和Android开发习惯:最适合的是AndEngine,它可以直接将游戏视图插入到普通布局中。几年前流行起来的FlappyBird就是用它开发的。AndEngine的开发方式和Android一样,有丰富的开源demo。但是AndEngine没有官方文档,理论上很难学。玖哥用AndEngine开发了毕业设计,加入工作后也用AndEngine获得了多个奖项。他珍藏着一份AndEngine的非官方文档《Android游戏开发实践指南》(全新未开封),期待着回到2014的某一天把它送给那个买不起的grad。说到AndEngine,就不得不提国产的AndEngine——OGEngine。它是一个源自AndEngine的游戏引擎。有详尽的纯中文文档和中文技术支持杨程(笔名:小程),非常适合开发安卓电视游戏。OGEngine已停止更新。这款国产游戏引擎的悲剧在于推出的太早了。希望在AndroidTV流行时卷土重来的OGEngine,让中国在游戏引擎上领先世界。LibGDX是一个同样使用Java作为开发语言的跨平台游戏开发框架。前面提到的AndEngine是基于LiBGDX实现的。LibGDX最大的优势就是兼容性强,不仅可以兼容Android和iOS,还可以兼容Windows、Linux、MaxOSX等桌面系统。强大的兼容性也为开发提供了方便——你不需要打开安卓模拟器,就可以直接用电脑调试你的应用了。在LibGDX和Android之间转换很容易。著名的Android专家宋志辉、吴家军都是从LibGDX向Android转型的。如果你不想要Java语言,还有Cosos2d-x可以选择。《Cocos2d-x游戏开发实战精解》的作者欧彤彤(笔名:OTT)认为,Android程序员普遍对面向对象的知识掌握比较全面,Cosos2d-x上手比较容易,Cosos2d-x维护中文的,文档齐全,资源多,教程多。OTT得知酒哥和他一样是个藏书家后,特意赠送了一份他的代表作鼓励酒哥。改造建议:做好心理准备。国内手游行业的加班,比普通的移动互联网行业还要疯狂。建议刚入行的Android工程师改加班费。30岁以上的安卓工程师不建议转型。5、HTML5HTML5也是Android工程师转行的一个很好的方向。HTML5广泛应用于移动互联网领域,如混合开发、手机站、小游戏、微信?、微信小程序等,简单的手机站和对性能要求不高的小游戏可以直接修改为从惰性模板(http://www.lanrenmb.com/)找到的资源。这里只谈应用和小游戏的混合开发如何开发。最流行的HTML5移动开发框架是Facebook于2015年发布的ReactNative。这是一个跨平台、动态更新的JavaScript框架,其口号是“Learnonce,writeanywhere”。与之类似的还有PhoneGap,也是进口的。国内的HTML5开发框架也在国内百家争鸣。常见的有HBuilder和AppCan。两者的共同特点是都做了专门的编译器,方便初学者使用。2016年,在Qcon大会上宣布开源的Weex也异军突起。它来自阿里,受到很多人的青睐,因为它开发的软件和原生App一样。模板不足以开发性能要求高的HTML5游戏。Egret于2014年2月成立于北京,是一套完整的HTML5游戏开发解决方案。其核心产品白鹭引擎凭借其易用性和强大的性能,占据了中国移动网页游戏引擎70%以上的市场份额。白鹭布道者许聪(笔名:臭臭打不死人)还赠送了九哥白鹭官方教程《Egret——HTML5游戏开发指南》和白鹭吉祥物。改造建议:一般来说,除了手游或者商城,大部分用HTML5开发的Android应用都是扯淡。这条路线几乎是专门为电商和小游戏行业准备的。如果公司有这个需求,Android程序员用平时的自学技术就可以完成任务。6、VR2015年底,游戏外设之王Razer推出了一款VR游戏耳机。2016年,各大游戏厂商和小型工作室争相开发VR游戏争夺市场,开启了“中国VR元年”。虽然VR目前主要应用于娱乐领域,被很多人视为玩具,但VR的价值远远超出了“玩具”的范畴。上一篇在讨论游戏引擎的时候,并没有说Unity-3d不是遗漏,但是这里想说一下Unity-3d。Unity-3d是Unity开发的一款3D游戏开发工具。近年来,新版本不断加强对VR硬件系统的支持。Android程序员转型VR,不仅可以实现从小让游戏跳出四角盒子的梦想,还可以拥有Unity-3d使用的C#语言当初喊的Java语言的学习优势”我不是Java语言”。转型建议:VR现在是一片蓝海。只要自学能力够强,转VR就像2015年在合肥买房一样明智。当然前提是你能找到愿意掏钱的老板或者投资人。7、大数据移动互联网时代是一个科技发达、信息流通的时代,而大数据就是这个高科技时代的产物。马云曾在演讲中提到:未来的时代不会是IT时代,而是DT时代。DT是数据技术的缩写。大数据的合理利用已经成为很多行业成败的关键。移动互联网经过多年的发展,已经不可能再以O2O、互联网为噱头来忽悠投资者了。Hadoop自然受到青睐。很多每4个月“生产”一批“两年经验”“程序员”的培训机构也纷纷向酒哥提问:“现在Android和iOS都不流行了,你能帮帮我吗?”能介绍几个Hadoop讲师吗?”改造建议:和Java背景的改造一样,Android程序员改造Hadoop也有语言相同,特性相近的优点,目前各大培训机构已经争先恐后批量生产Hadoop程序员,如果你因为他们培养的Android程序员而陷入红海,建议你不要转型,提高竞争力才是王道。。。8.人工智能和深度学习一会儿之前,AlphaGo战胜了人类世界的围棋世界冠军柯洁,轰动了全世界,柯洁认为AlphaGo是可以战胜一切的围棋之神,九哥不同意这种说法,毕竟,它从未与“天”交过手,但有一个人类可以“打败天子”——祁同伟。即使AlphaGo打不过一切,也没有人有理由去打败它nk认为人工智能和深度学习不能成为IT行业的重要发展方向。TensorFlow是谷歌基于DistBelief开发的第二代人工智能学习系统。它具有出色的灵活性和可扩展性,在人工智能相关领域有着广泛的应用。TensorFlow是开源的,将大大降低深度学习在各行业的应用难度,发展前景广阔。改造建议:虽然九哥坚信未来做T(ensor)F(low)的男生会和TFboys一样有女人味,但是TensorFlow还很不成熟,这个“未来”还有多久还是个未知数“将。9、Android系统Linux是目前大多数服务器的操作系统。大多数人学习Linux的目的是为了做一个运维。但是,如果你把心胸开大一点,Android程序员在熟练掌握Linux之后,完全可以开发出自己的Android系统。《Linux大棚命令百篇》的作者吴鹏冲(笔名:Roc,喜欢九哥也是水浒迷)和《循序渐进Linux》的作者高俊峰都发来了自己的作品,鼓励他开发自己的AndroidORM.这张照片拍摄于2016年3月30日,玖哥带着《循序渐进Linux(第二版)》回到母校的自习室学习,踏上了成为像高老师一样可以定制自己Android系统的Linux高手的路上。转型建议:如果Android程序员打算跳槽到手机等搭载Android系统的硬件厂商,学习Linux是完美的,否则只能自己刷机玩。10、每个产品经理都可能成为自己最讨厌的人,酒哥也不例外。他从《人人都是产品经理》身上学到了产品经理的情怀,从《从点子到产品》身上学到了产品经理的技巧。也有幸在今年3月赶上了被《从点子到产品》收为徒弟的作者刘飞。关于九哥转型产品经理的失败,是发生在他和刘飞之间的故事,《挖掘隋炀帝陵墓的开发者名叫杨勇》:2016年初,九哥带着新人,但刘飞(同名学生)没有被录取。哥)当徒弟2017年初,刘飞带了新人,拒绝收九哥当徒弟转型建议:产品经理也是技术岗位,只是写需求文档给人看。如果Android程序员写的代码只能被电脑看懂而负责维护的程序员看不懂,那就别转型做产品经理了。【写在***】虽然Android程序员转型的机会很多,但是不要因为招聘网站上某个职业的平均工资高就转型。培训机构常说“安卓不流行了,移动互联网的冬天来了”来吸引大家报名学习Hadoop和TensorFlow。其实,遇到寒冬的不是某个行业,而是一些基础差的人。如果你也愿意分享你的故事,欢迎加入开发者QQ交流群312724475联系群主小关,期待你的精彩故事!【原创稿件,合作网站转载请注明原作者和出处为.com】