流形

2 年前 (废话比较多      

从今年开始,就一直在规划技术沉淀这事。

在阿里巴巴工作的这些年,前端团队日益壮大,同时聚集了一帮志趣相投的伙伴。

作为团队负责人,一方面是借团队在技术道路上的历程为开端,另一方面为了不忘初心回馈社区。

在2014年7月,在面临即将排期的平台级项目,我没有马上依照经验架构项目框架,

想通过这次机会解决一个困扰我的问题,开发效率和维护效率如何平衡的问题。

对于项目开发而言,产品既要快速产出结果,又要持续生命周期,膨胀的代码规模是件麻烦事。

那时,团队的技术架构还是 jQuery 结合 Backbone 布局的 MVC 模式。

在开发及维护了老平台近一年的时间里,慢慢发觉,这种模式并不方便持续维护。

在数据团队的业务模型中,随着业务复杂度不断叠加,Model 层的逻辑一直非常简单,主要维护一些请求,

但 View 层的逻辑变得越来越复杂,变得难以维护。 (view 可以细分为一个一个组件,  业务数据还可以仍在 redux中)

这些情况与处在相关业务场景下显得尤为明显。

到了需要思考和改变的时候了。

改变技术架构,是件不容易的事,尤其在业务规模成型的前提下。

即便做了充分的技术预研,也是有不少担忧。事实上,早些时候,为了让技术先行,

已经在业务上重点尝试 Angular 的开发,以及对 marionette 和 knockoutjs 的调研。

对于 Angular,的确是一整套完整理念。

但在页面众多,单页面的逻辑关联性弱的应用上,并不合适。

与 React 的结缘就是在那个时候,初识 React,就对它古怪的编码方式吸引了,概念简单,又可以清晰表达组件化的思想。

回想起来,就是有种莫名的青睐感。生命折腾不止,这话仿佛就是我在技术思考上的写照。

如今,已经一年半过去了,产品已然上线一年,整套框架支撑着千万级的用户。对产品来说,

它在一直在进化着。对技术人来说,梦想也在随之前行。我们的沉淀慢慢日积月累,有分享也有文章。

台前纵然光彩照人,幕后的辛酸同样需要掌声。

选择在 破知乎 这个平台,仅是我喜欢罢了。

真实,简单,处处富含知识的营养。Pure Render 是我为这个专栏定的名字,熟悉 React 的朋友一定知道它的含义,

不熟悉慢慢在学习过程中慢慢就会领悟。React 里诸多核心概念都包含在这个词里。

为这个专栏取这个名字还有一个背后的意义,保持纯粹。它是我认为技术人应有品格。

技术殊途同归,亦有不同个性。只要是写文章的还是人,总会莫名地强加个性。

如同钢琴大师诠释相同的曲谱,会加不同的修饰音来表达自己的理解一样。

哪一天,团队技术架构还会再变,自己的技术理解也会变。

兴许专栏不再为 React 而写,兴许不再为前端而写。

但它今天起存在的立意不会变,态度不会变,名字会一直保留在那里。为纯粹而活着。

关于主题内容,会有很多不同的篇章,源码剖析系列、组件开发实践系列、可视化系列、工具介绍系列还有和服务端结合的系列。

产出顺序不定,但内容必须丰满。所以,期待这一系列的作品吧。

随着专栏的深入,Pure Render 届时会成为整个中文 React 分享沉淀的地方 (虽然梦想不太靠谱, 但还是要支持一下, 这不, 我就花了29元大洋淘宝购买了作者的书籍<深入vue技术栈>),

我希望更多优秀的实践者可以将这种开源精神传递下去。

为献给在年少芳华时,一起奋斗前线的小伙伴们。

多少言语都道不尽,我就以米兰 · 昆德拉的文字作为结尾,也是这个专栏的开端。

从现在起,我开始谨慎地选择我的生活,我不再轻易让自己迷失在各种诱惑里 (也就是说作者不在玩魔兽 等等 无聊的游戏了 )。

我心中已经听到来自远方的呼唤,再不需要回过头去关心身后的种种是非与议论。我已无暇顾及过去,我要向前走。

序(转) · 为 React 而写 -- 废话比较多, 你也可以说丰满的更多相关文章

  1. 放弃antd table,基于React手写一个虚拟滚动的表格

    缘起 标题有点夸张,并不是完全放弃antd-table,毕竟在react的生态圈里,对国人来说,比较好用的PC端组件库,也就antd了.即便经历了2018年圣诞彩蛋事件,antd的使用者也不仅不减,反 ...

  2. React 系列 - 写出优雅的路由

    前言 自前端框架风靡以来,路由一词在前端的热度与日俱增,他是几乎所有前端框架的核心功能点.不同于后端,前端的路由往往需要表达更多的业务功能,例如与菜单耦合.与标题耦合.与"面包屑" ...

  3. React自己写的一个地图小组件

    由于今天比较闲,就玩了玩react,然后就封装了一个地图的组件,当然功能比较简单,因为就是随手写的小东西,但是由于引用了百度API和bee-mobile,所以用起来可能要薛微麻烦一点点,但是我保证,只 ...

  4. 在React中写一个Animation组件,为组件进入和离开加上动画/过度

    问题 在单页面应用中,我们经常需要给路由的切换或者元素的挂载和卸载加上过渡效果,为这么一个小功能引入第三方框架,实在有点小纠结.不如自己封装. 思路 原理 以进入时opacity: 0 --> ...

  5. React 入门-写个 TodoList 实例

    React 是一个用于构建用户界面的 JavaScript 库,主要特点有: 声明式渲染:设计好数据和视图的关系,数据变化 React 自动渲染,不必亲自操作DOM 组件化:页面切分成多个小部件,通过 ...

  6. 用react+redux写一个todo

    概述 最近学习redux,打算用redux写了一个todo.记录下来,供以后开发时参考,相信对其他人也有用. 代码 代码请见我的github 组织架构如下图:

  7. 使用React.js写一个类似单选框与复选框的功能

    单选框 <!DOCTYPE html> <html> <head> <meta charset="UTF-8" /> <tit ...

  8. react一写工具

    动画库:React-transition-group ui框架:Ant Design

  9. 写了一个基于React+Redux的仿Github进度条

    曾经实现过Angular版,这次感觉用了高大上的React却写了更多的代码,需要的配置也更多了,有利有弊吧. 但这个“导航条问题”很有意思,涉及到在Redux中写timer,其实我很困惑,到底如何完美 ...

随机推荐

  1. MSSQL获取昨天,本周,本月。。。

    特别说明下:以下统计本周数据时,星期天是作为下周的第一天,而不是本周最后一天,因此你把星期天作为本周最后一天时,你需要在getDate()的基础上减一天,如dateadd('day', -1, get ...

  2. lucene实现初级搜索引擎

    一.系统设计 搜索引擎项目代码主要分为三个部分,第一部分是构建索引,全文检索:第二部分是输入问题,对问题进行分词.提取关键词.关键词扩展:第三部分是将搜索结果输出到GUI图形用户界面. 二.搜索引擎 ...

  3. 《深度学习》Textbook第十章学习笔记

    深度学习 第10章 序列建模:循环和递归网络 1.循环神经网络介绍 相比卷积神经网络:专门用于处理网格化的数据(如图像),可以很容易扩展到更具有很大宽度和高度的图像,以及处理大小可变的图像: 循环神经 ...

  4. python基础(数字、字符串、布尔值、字典数据类型简介)

    一 执行第一个python程序 1.下载安装python2.7和python3.6的版本及pycharm,我们可以再解释器中输入这样一行代码: 则相应的就打出了一句话.这里的print是打印的意思.你 ...

  5. 关于线程安全Dictionary

      使用Dictionary时, 是线程不安全的(). 会出现以下的问题, 导致IIS挂掉: 其实DicMapper是不为NUL的, DicMapper["aaasdfasdfasdfzxc ...

  6. ubuntu 配置tomcat 实测成功

    https://blog.csdn.net/qq_24091555/article/details/75077781

  7. rabbitmq的发布确认和事务

    摘要: 介绍confirm的工作机制.使用spring-amqp介绍事务以及发布确认的使用方式.因为事务以及发布确认是针对channel来讲,所以在一个连接中两个channel,一个channel可以 ...

  8. Linux 初始化之 Systemd机制

    systemd是Linux下的一种init软件,由Lennart Poettering带头开发,其开发目标是提供更优秀的框架以表示系统服务间的依赖关系,并依此实现系统初始化时服务的并行启动,同时达到降 ...

  9. 20145229吴姗姗web安全基础实践

    20145229吴姗姗web安全基础实践 基础与实践 基础问题 (1)SQL注入攻击原理,如何防御 SQL注入就是把SQL语句插入到之前已经定义好的语句中,作为网页中的比如用户名输入来达到攻击的目的, ...

  10. git 强制放弃本地修改(新增、删除文件)【转】

    本文转载自:https://blog.csdn.net/u012672646/article/details/56676804 本地修改了一些文件,其中包含修改.新增.删除的,不需要了想要丢弃,于是做 ...