说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

【前端人生】Teambition前端工程师陈涌:非计算机专业,依托社区不断成长壮大

HTML文档下载 WORD文档下载 PDF文档下载
《前端人生》展示前端技术人才励志故事和成长经验。本期嘉宾是Teambition前端工程师陈涌,他非计算机专业出身,长期活跃在前端开发技术社区,并维护着React中文社区。其自学的成长经历和学习心得总结值得参考借鉴。

陈涌,网名“题叶”,Teambition前端工程师,非计算机专业出身,通过自学顺利进入前端开发领域。长期活跃在前端开发技术社区,并维护着React中文社区。将国外社区前沿的Web开发技术传播入中国,是他正在并将长期投入精力去做的事情。

该采访中,陈涌向我们介绍了他的成长经历及学习心得,很值得广大前端开发者参考借鉴。

通过自学进入前端开发领域,长期活跃于社区当中

CSDN:首先请做一个自我介绍。

陈涌:我叫陈涌,网上会用“题叶”这个网名,或者“jiyinyiyong”的 ID。目前专注于前端开发领域,主要关心的是制作图形界面的小应用、函数式编程这些方面的技术。另外也在SegmentFault上写技术文章,还有在Mix上学习画画,都挺有意思的。我在公司里主要专注于研究单页面应用方面的技术,研究React也是出于这个原因。

在社区当中比较活跃的除了技术文章,主要是维护React中文社区,同时还帮着F2E.im的同学一起维护微博。把国外社区前沿的Web开发技术在国内进行传播,是我长期投入精力去做的事情。目前至少在React中文社区当中我觉得效果是不错的。

CSDN:您什么时候开始投入到前端开发领域?背后有什么样的故事?

陈涌:我于2013年春天开始实习,那时候已经大四了。单单说写代码,大二就开始自学CSS。那时候我主要精力花在Linux上,我折腾了很久的Ubuntu,因为喜欢Linux桌面那种华丽的效果。跟很多人一样,被计算基础华丽的界面和动画所吸引,希望自己能做出一些漂亮的东西来,后来发现需要编程,就开始找门槛最低的途径,自学了CSS,后来还有CoffeeScript。

因为学CoffeeScript我还认识了后来推荐我进公司的寸志。但那之前因为学习Linux有机会加入了学校的精弘网络社团,跟他们一起度过了两年时光,还参与了学校FM站点的开发。当时做得比较粗浅,但也因此在后来找实习的时候找了份前端开发的工作。

关注React,热衷于传播国外先进Web技术

CSDN:您在前端领域都做出了哪些贡献?

陈涌:2014年底,跟几个朋友交流,并用Discourse搭建了React中文论坛,并且一直做着react-china微博的维护,后来就与几个朋友一起推动React.js在国内传播,我觉得这是我目前最有成果的事情。特别是Facebook发布React Native以后整个技术圈子对于 React的关注度一下子就提高了。我很高兴自己在其中贡献了一份力量。

自2012年在知乎上了解到Hacker News的重要性之后,我就一直保持关注,也渐渐让我了解到国外的技术氛围相对于国内领先了多少,所以我很在意国外的技术圈子深入挖掘的那些技术。特别是函数式编程,我注意到前端已经开始借鉴函数式编程的研究成果解决实际的问题。所以我也在关注函数式编程的中文社区,比如Haskell中文社区、Elixir中文社区和Clojure的社区,希望能推动这些技术在国内传播,并且能对同行的前端开发者带来可以借鉴的技术成果。

CSDN:您目前比较关注前端的哪些技术?平时主要通过哪些渠道获得前端技术的相关信息。

陈涌:特别吸引我的两种技术是:华丽的界面和交互,强大的开发技术。前者我限制在前端,主要像React.js 、Famo.us这类能帮助开发者快速开发交互界面的框架,后者就是函数式编程语言,也就是上边提到的几个,他们在前端也有PureScript、ElixirScript、ClojureScript 这些实现可以应用。

说到技术信息源,Hacker News绝对是目前Web开发领域质量最高的,我觉得从它扩展开,顺便阅读一下SmashingMagzine、Medium、Designer News、GitHub上边的资源也就好了,如果有时间发散一下还是挺多的。

CSDN:能否谈谈您获得今天的成就,自己的一些学习方法或技巧。

陈涌:我是非计算机专业出身的,知识也主要来自于自学,加上在网络社区,还有社团的同学或者后来的同事之间耳濡目染。另外我挺喜欢的一件事情是用代码写小的项目做各种界面试验,在这个过程中实际积累了很多编程中操作的习惯,这对于技能的积累来说非常有帮助。不过我觉得系统学习编程对于开发者来说更重要一些,前端是快速发展需要不断从社区吸收营养的职业,但是出了某个范围,各种理论体系方面的知识就很要紧了。我觉得那些是很重要而且未来需要补上的。

专注单页面应用开发,敢于探索尝试优秀解决方案

CSDN:您目前就职于哪家公司?担任什么职务?可否简单介绍一下公司前端团队。

陈涌:我在Teambition担任前端工程师,主要负责简聊项目的前端。我们公司还有Angular 中文社区的站长严清,不过我们是在两个团队。其他还有不少前端的同事,我们一起主要的心思花在Teambition实时性很高的单页面应用上边,同时也维护着公司业务涉及到的一些站点。

CSDN:贵公司在研发时主要使用哪些前端技术?前端技术架构是怎样的。

陈涌:Teambition的应用的主要特点是基于网页,是实时性很高、功能也较多的单页面应用。我们做任务管理以及团队交流都需要实时进行,所以前端开发也围绕着这样的问题展开,用前端 MV* 方案编写应用,做完整的打包和上线。目前主站产品用的是Backbone,简聊用的是React.js ,其他还有一些用到Angular的应用以及服务端渲染的站点。后端主要基于 Node.js 、MongoDB、Redis这些方案,而且前后端分离在两款单页面应用当中是非常明确的。

CSDN:目前公司有没有尝试使用一些热门/新的前端技术?公司尝试这些技术的原因是什么?通过您的研究,觉得这些技术的优缺点是什么?

陈涌:简聊前期和主站一样用Backbone,然而Backbone对于View层仅仅提供模板引擎,剩下的操作只能通过jQuery进行。这一点随着项目扩大,开发的负担也就越来越重。我原来一直在关注Angular、Vue这样的MVVM的方案,正好那段时间Facebook发布了他们的Flux 方案,我深入了解之后发现Flux对于单页面整体架构的思考非常清晰,而且作为类似模板引擎的实现很方便从Backbone进行迁移,所以选择了React。

对于Angular我了解不够多。但是首先Angular 1.x的学习成本很高,React却是非常简单的,我认为这是对开发可靠性来说比较重要的一个考虑。而React在我们大半年的使用当中,也感受到一些数据层不够成熟的问题,也是Facebook计划发布Relay的原因。我也考虑过简聊全线的网页迁移到React.js,但这时React.js本身巨大的体积也是一个不足。

CSDN:现在前端新技术不断推新,您觉得前端开发者/公司该如何选择新的前端技术?

陈涌:前端目前技术范围已经越来越广了,大公司也努力把Web建设为一个平台,这个平台最终涉及到的技术也繁多和复杂。所以还是具体到项目需求,仅仅讨论单页面应用的话,需要在应用架构、界面组件化、服务端渲染等多个方面都有清晰的演进方案,我会推荐大家加入到React.js这个社区当中来。当然Angular 2也许未来会是很棒的方案,目前我了解不太多。

全面前端理论知识+大量实践经验 前端开发者技能提高法则

CSDN:您觉得优秀的前端开发人员必须具备哪些技能?该如何提升自己的前端技能?

陈涌:前端开发者对渲染引擎,还有编程语言本身应用有足够的了解。渲染引擎这里当然说的是DOM树、CSS Object Model等等,对于加载和渲染的过程也应当有深入的了解。另外就是编程语言的特性,我个人跟着社区接触了不少函数式语言,所以对JavaScript并不觉得非常信任,那么我所指的编程语言其实是函数式编程语言了,那些语言里数据怎样抽象,过程怎样抽象,大规模程序如何完成建构。我觉得对于开发者来说,掌握用代码进行抽象,实现业务逻辑,实现图形界面,就非常重要。

我个人全职做前端开发的时间不够长,所以觉得开发经验会比较重要。广泛了解和学习理论,然后通过大量的实践来积累经验,这是我认为加强技能的主要的途径。

CSDN:请分析一下前端开发人员的未来职业发展前景。

陈涌:我对前端整个社区的情况不够了解,整个行业的前景我看不明白。我单单说对于单页面应用的想法吧。站在简聊已有的实践上我并不是很喜欢前端开发者前面的路,前端开发实际上应该是两部分工作,一部分是编程,一部分是界面制作。

编程部分的主要内容是跟服务器的数据库以及其他众多的客户端之间同步数据状态,就像是 Meteor框架做的,实时Web应用,这其中就需要投入很多精力解决数据模型、网络的问题。界面部分则是UI交互设计的工作,需要很多的设计理论的理解,还有把想法转化为代码的能力,应用所需要的效果在DOM的渲染引擎中难以完美实现,所以Famo.us框架甚至抛弃浏览器DOM原生的排版算法作为解决问题的方案。

编程和界面两部分工作只有代码使用一样的,其他知识差别很大,那么一拨人想把两边全部精通难度就大了。所以我期望的主要是一部分开发者能专注于数据和网络,以及单页面应用基础开发架构开发工具的制作。另一部分开发者能专注在之上专心制作界面设计交互。用这样的方式实现功能的稳定性,同时也让功能开发做得高效和精致,我认为在这两个方向上前端技术会继续被关注和推进。(记者:陈秋歌)


《前端人生》,一个展示前端技术人才励志故事和成长经验的平台,帮助后来前端技术开发者指引方向,少走弯路,获取不断成长壮大的力量。

只要你对前端开发技术有着执着的追求,活跃在该领域,并有着丰富前端研发经验,欢迎联系我们(发邮件至chenqg@csdn.net,或微博私信:CSDN陈秋歌)。CSDN真诚为您提供展示自我风采的大舞台。

欢迎加入CSDN前端交流群:218126086,进行前端技术交流。  

让所有的控件都动起来 -VB资料 让最大化和最小化按钮消失-VB资料 任意多边形的窗口-VB资料 如 何将「拒 绝 被 盖 住 的 窗 口 」还 原-VB资料 VB如何创建椭圆形的窗体? VB如何创建无Icon的窗体? VB如何防止Edit框中的Password不被非法获取 VB如何将鼠标显示成动画鼠标? VB如何利用程序拉下 ComboBox? VB如何让窗体右上角的X失效? VB如何使Form的背景图随Form大小改变 VB如何使Text文本框的属性只读? VB如何使窗体右上角的"X"无效? VB如何使窗体最小化并消失 VB如何在VB和Delphi中快速实现立体化窗口显示 VB如何在VB中实现绘图区的大十字光标 VB如何在VB中制作不回显的文本框 VB如何制作浮动式窗口 闪烁的Label-VB资料 设定StatusBar的文字成不同的颜色-VB资料 设计一个可中断循环的按钮-VB资料 设置“执行无用户界面”-VB资料 生成一个透明窗体 -VB资料 实现窗体内部的左右移动 -VB资料 实现鼠标移到窗口上时变大,移出窗体时变小(如《东方快车》)-VB资料 实现图片平铺于窗体中-VB资料 使程序的标题条闪烁 -VB资料 使窗口总在最前 -VB资料 使窗体右上角的X按钮失效 -VB资料 VB使用 WIN95 的选择目录对话框 使指定窗口总处于其他窗口之上 -VB资料 请问大家谁有用CGI编写的类似于购物车的程序源代码? mail函数的使用 请教,如何在text的onkeypress中控制输入的字符为数字 为什么resultset.last()说是抽象方法错? 问问高手关于CFrameWnd的创建 男人单身不是罪 谁能介绍几本国外专家编写SQL Server的进阶教程(最好有电子版) 我也不得不说了,为了我的朋友,为了随风,也为了我自己。。。。。。。。。。。。(贴子长,上班的时候还是别看了好:) 请推荐几本用vc开发服务程序的书籍 请问如何在TC30中使用并连接第三方LIB??? 曾经有一个中毒的人…… to: nononono(null,null),再来! 导入的数据,字符型输出为乱码在oracle8.05中,如何解决?谢谢! 做设计文档时,是先进行详细设计还是数据库设计? csdn我爱你........ oracle8.05中如何察看记录?谢谢! 哪位兄弟见过可以收发邮件(SMTP)的源码,做成动态连接库的那种。别的程序可以调用 关于tedit控件(很弱智的问题,但是小妹妹我就是不会做) 请问一个简单的条件是用Ttable的filter还是Tquery? 选DCOM还是CORBA? 倒库出现的问题 寻求怎样写SQL语句的教程 JNI的问题: dll文件放在哪里能被servlet调用到? 好不容易收到第一份海外定单! 问ListCtrl的item上的右键菜单 怎样求出一个点的坐标??????急急!!!! 请大家看一看这个分页程序,为什么在页数大于20时,按下一页时下面的页数还是显示的1~10页!!谢谢!! 我的linux在放mp3時總愛死,為甚麼? 唉,弄了好几天了,如何解决?????????????? 请问哪里有免费的PHP+MYSQL主页空间呀! 大家快来帮忙:数据库的一个小问题 我现在想学一门新技术,不知道是学VC++,JAVA,还是刚刚出来的。NET技术呢?请高手指点呀。 高分征解:一个动态提示窗口的问题,给出答案必定给分!!!求救我啊!! 在这里赚分真不容易呀! 怎样检查FORM中CHECKBOX和RADIO的值呢 那里有在asp中操作word对象的详细教程? 请问:如何得到TForm的窗口句柄? authorware中的按钮。 哪里有发送mail成功的php程序!! 关于上传数据的一个特殊问题,有点难 怎么用OLE实现与手机的通讯?? 汉语分词算法 grid显示问题 成为Delphi高手须看哪方面的书籍,请高高手指教? 关于属性页的小问题? 为水园增加点正气: 大家都是斯文人吗,呵呵||||| 诗经国风2001版----之桃夭 高手高手教教我 +++++++++++++一个很奇怪的问题************* 请问:有没有专门介绍C++函数使用的书籍? 提個有點難度的問題.看問題的有獎. 高手请看:这语句错在哪? 图中哪个化学式写的对 氧气与哪些物质不能发生化学反应呢?举两三个例,解析说明下 过氧化钠能否在常温下与二氧化碳反应生成氧气?过氧化钠是一种淡黄色固体,它能否在常温下与二氧化碳反应生成氧气?在什么地方可以买到过氧化钠? 请列举出含有硫元素的物质,将其化学式/硫元素化合价和物质类别填写在表格中8个(以下皆是)硫元素化合价物质类别 中学化学中生成氧气的化学反应有那些 过氧化钠与CO2反应产生氧气之后变成的Na2CO3物理性质怎么样? 怎样辨别物质间能否发生复分解反应 铁与氧气发生化学反应铁常出现的化合价是+2或+3价,氧是-2价,为什么加热后是四氧化二铁 在常温下过氧化钠与二氧化碳反应生成碳酸钠和氧气.此反应中氧元素有几种化合价?分别是什么? 根据复分解反应发生的条件,判断下列物质间能否发生复分解反应.如能发生反应,写出反应的化学方程式.(1)碳酸钠溶液和氯化钙溶液(2)氢氧化钾溶液和盐酸(3)硫酸和氯化钠溶液(4)碳酸钾溶液和 硫和氧气发生什么化学反应 过氧化钠与二氧化碳反应生成的氧气中氧元素是从哪一种物质获得的? 这些物质能否发生复分解反应?1.碳酸钠溶液和氯化钙溶液2.氢氧化钠溶液和盐酸3.硫酸和氯化钠溶液4.硫酸钾溶液和盐酸5.硫酸铜溶液和氯化钡溶液这些物质之间能否发生化学反应?可以的话请 氧气的化学性质比较活泼,能和很多物质发生反应,但通常情况下,这些物质却都能与氧气“和平共处”为什么 物质与氧发生的反应叫氧化反应 这里的氧是指氧元素么?还是只是指氧气?辅导书的概念就是这么讲的……(BD百科上也有这句话...)仅仅现定于初三化学... 判断下列物质能否发生复分解反应,如能发生反应,写出反应化学方程式碳酸钠溶液和氯化钙溶液,氯化钾溶液和盐酸,硫酸和氯化钾溶液,碳酸钾溶液和盐酸,硫酸铜溶液和氯化钡溶液 氧气化学性质很活泼,常温下能与所有物质发生化学反应.错的话,错在哪? 氧化反应是指一种物质与氧气反应还是反应物中有氧气就是?氧化反应是物质与氧反应 氧是有氧元素,还是氧气? 4.根据复分解反应的条件,并利用书后附录1所提供的信息,判断下列物质间能否发生复分解反应.如能发生反应,写出反应的化学方程式.(1)碳酸钠溶液和氯化钠溶液(2)氢氧化钾溶液和盐酸(3 氧气的化学性质比较活泼,可以和 等物质发生剧烈的化学反应 氧气在氧化反应中提供氧,具有氧化性,是一种常见的什么剂?在学初三的空气那一张,课题2 氧气的知识要点三:(氧化反应)中提到RT,请问这是一种常见的_____剂? A、B、C三种化合物通过分解反应分别产生了两种物质(反应条件和各物质化学式前的系数均已略去):A——M+N B——M+Q C——M+PN为一种盐,其水溶液可跟AgNO3溶液反应生成一种不溶于硝酸的白 下列物质能否发生复分解反应,能反应的写出化学方程式,不能的说明理由1盐酸与硝酸银溶液2硫酸和氯化钡溶液3碳酸钠溶液和氢氧化钙溶液4稀硫酸和硝酸钾溶液 氧气是一种化学性质()的气体,能和()物质发生化学反应 按图1-3中箭头所表示的物质间发生的转化,写出相应反应的化学方程式,并指出有元素化合价发生改变的反应. 下列各组物质,能发生反应的写出化学方程式,不能反应的说明理由(1)汞与硫酸亚铁溶液(2)氯化钠溶液与硝酸钾溶液 氧气常温下能与所有的物质发生化学反应吗如果不能请举例.急 该图中各种化学反应方程式和反应类型 下列物质能否反应?能反应的写出化学方程式,不能反应的说明理由.1、Mg+NaCl===____________________________2、Zn+H2 SO4===____________________________3、Cu+ZnSO4===____________________________4、Cu+HCl===_____________________ 氧气的化学性质是不是化学反应 完成图中所示的化学方程式,并注明反应的基本类型及反应条件 下列物质中能否发生复分解反应,如能发生反应,写出有关反应的化学方程式,不能反应说明理由1.硫酸和硝酸钠溶液2.氢氧化钾溶液和硝酸3.氯化钠溶液和硝酸银溶液4.碳酸钾溶液和盐酸 请问:氧气是不是能与所有物质发生反应? .如何做交叉分类图现有氧化钠.二氧化硫.甲烷.氯化钡四种物质,请按其所属做一张交叉分类图 下列物质能否反映,能的写出化学方程式,不能的说明理由 过氧化钠与水反应怎样知道生成的是水还是氧气,能不能通过化学方程式直接弄出来,背得多了,都记乱了,还比方说二氧化碳与氢氧化钠反应生成的是水还是氢气 横线表示两种物质能反应,箭头表示一种物质能生成另一种物质.请把符合图的所有情况列出来. 物质与氧气反应一定是氧化反应吗? 过氧化钠和水反应为什么氧气的氧来自于过氧化钠的氧,别用电子的解释为什么不多此一举的把氧作为是产生的水中的氧然后水中氧变成氧气虽然知道能量不够水分解, 右图是关于铁化学性质的知识网络下图是关于铁化学性质的知识网络(“→”表示一种物质转化为另一种物质),其中B是密度最小的气体C为红色固体单质1、A物质的化学式为——.2、反应②还 物质在氧气中燃烧的反应是不是一定是氧化反应 1000克过氧化钠和水反映能产生多少氧气? 化学题:求解.(2010•宜昌)右图是物质化学性质的知识网络图,(2010•宜昌)右图是物质化学性质的知识网络图,“-”表示相连的两种物质能发生反应,“→”表示一种物质转化成另一 你回答错了物质跟氧气发生的反映都是氧化反应,这句话对吗这个问题 这个问题是错误的因为氧气中还有别的物质 应该是物质跟氧发生的反映都是氧化反应 这里的氧是氧元素 我作为一个学 为什么过氧化钠与水反应有氧气生成 右图是关于盐酸化学性质的知识网络——表示连接的两种物质能发生反应箭头表示一种物质转化成另一种物质A,C属于不同类别的化合物完善这个知识网络 B/ \A----HCL----C|ZN (1)写出a,b,A-----B--- 物质跟氧气发生的化学反应叫做氧化反应,这句话对不对? 急 过氧化钠和水反应为什么不生成氧气 图是物质化学性质的知识网络图,求A、B、C、D、E 氧化反应时物质跟氧气发生的化学反应还是跟含氧的化合物发生反应?老实说氧化反应也可以说是得到氧的反应,这里说的得到氧是反应物中得到氧元素还是说生成物中有氧气? 钠在空气中能够与氧气反应生成过氧化钠吗 图是关于盐酸化学性质的知识网络,——表示相连的两种物质能发生反应,→表示一种物质转化成另一种物质物质能发生反应,→表示一种物质转化成另一种物质,A,C属于不同类别的化合物,请完 1、在化学反应中,能提供氧,使别种物质发生氧化反应的物质叫_______ ,此性质称为_______?2、构成与组成的区别3、保持氧气化学性质的粒子是_______? 如何判断过氧化钠与物质反应是否有氧气生成在什么时候过氧化钠与物质反应时,首先生成氧气,再由氧气氧化该物质?在什么时候过氧化钠直接氧化该物质?例如:过氧化钠与硫酸钠反应时是先 如图, 物质与( )发生的化学反应,叫做氧化反应.氧气在这些化学反应中提供( ),它具有( )性? 氧化钠和氧气反应生成过氧化钠? 写出下列表格中相应酸的化学式,指出它们的类别Cl SO4 NO3 CO3 CH3COOH ___ ___ ___ ___ ________类别 ___ ___ ___ ___ ________写出碱的化学式,并指出类别.Na Al Ca Mg NH4OH ___ __ ___ ___ ____ 类别 ___ __ ___ ___ ____上一 1、氧化反应是物质和-----发生的化学反应 2、还原反应是含氧化合物中的-----被夺去的化学反应3、氧化还原反应是一种物质被-----,同时另一种物质被-----的化学反应,即一种物质得到氧,同时另 过氧化钠和二氧化碳反应生成碳酸钠和氧气啊是置换反应?
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn