android团队对新技术的态度

前提:

最近在进行组件化的项目结构调整讨论,我提出引入RxJava+Retrofit。在深刻讨论的时候,同事问了一句:为何要引入Retrofit,如今的Volley不是用的好好的吗?并且从Volley切换到Retrofit,涉及代码迁移比较大,影响面也很是大。html

为何要引入RxJava:

从我本人的技术栈来看,响应式编程是一种很是好的技术思想,不局限于技术;我但愿团队内的同窗,不要把RxJava单纯看做某一个第三方依赖,而是看做一种解决问题的新思路。目前来讲,RxJava在项目中的使用场景比较少,可是,我相信,随着后续你们对于RxJava的深刻,能不断拓展出新的场景;同时,用尝试用它来解决一些咱们原先存在的难题。指望:后续对pipeline机制以及函数式编程的理解,会带来必定的帮助。shell

为何要引入Retrofit:

站在十字路口徘徊,我也在试着问本身:为何要引入Retrofit?是由于网络上,你们都在用这个,就由于这个?仍是为了尝试它的新特性?面对新技术,我开始迷茫了!我应该以什么样的态度来面对新技术?我认为本身进入了为了技术而技术的怪圈,并无真正地去思考用什么技术解决什么问题。今天同事的问题,让我幡然醒悟。我会本身写一些app去尝试,体验一下。若是体验下来,的确在使用性上,设计上给人有惊艳的印象,那么我会去深刻了解实现的原理(也就是俗称的拆轮子)。再对比原有的技术方案,看看有什么差别,各有什么优劣,有没有替换的价值。编程

最后本身的观点

我认为技术是为问题服务的,全部的技术都是为解决问题而诞生的,这一点应该毋庸置疑。做为一名软件工程师,你有好奇心,去了解新的技术,这不是坏事。可是,新技术与原有技术对比,对于同一问题的解决,是否有突破?新奇的地方究竟是什么?咱们不该该停留在API的层面,应该更深刻的去了解他们是怎么设计的?怎么解决问题的?对于新技术,本身玩,怎么玩均可以,可是引入的项目中,这个就须要慎重了。由于业务之复杂,涉及改动的代码(也就是影响面)之多,在没有有效手段保证的状况下(测试的回归测试这种手段,我的认为有点low了),不要草率得决定替换。网络

参考文章:

http://coolshell.cn/articles/...
http://coolshell.cn/articles/...
http://coolshell.cn/articles/...app

相关文章
相关标签/搜索