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

专访UEditor创始人战毅:打造最佳的用户编辑体验

HTML文档下载 WORD文档下载 PDF文档下载
UEditor是由百度Web前端研发部开发所见即所得富文本Web编辑器,具有轻量,可定制,注重用户体验等特点,开源基于BSD协议,允许自由使用和修改代码。

UEditor是一套开源的在线HTML编辑器,是由百度Web前端研发部开发所见即所得富文本Web编辑器。其最早起源于为百科用户书写百科词条开发的在线编辑器。

UEditor在设计上采用了经典的分层架构设计理念,尽量做到功能层次之间的轻度耦合。具体来讲,整个系统分为了核心层、命令插件层和UI层这样三个低耦合的层次。其具有体积小巧、性能优良、使用简单、分层架构,方便定制与扩展等特点。


UEditor开发团队

我们采访了UEditor项目的创始人和核心开发者战毅,请他来详细介绍一下UEditor。

CSDN:UEditor项目是怎么诞生的?

战毅:最早是起源于百科,是为百科用户书写百科词条开发的在线编辑器。那时还没有UEditor,就是直接拿ck(CKEditor)作为底层,在上边开发了UI展示组件。但随着需求的变化,发现项目越来越不可控,因为ck过于复杂。2010年,代码已经有10万行了,做新的功能和修改bug都非常的困难,做编辑器项目的时间远远大于其他项目,而且因为用的是ck底层代码,他很多自身的bug我们无法修改,一旦有修改,可能会引起其他一系列的bug。

那时开会编辑组经常会被问到"bug收敛了吗",尽管我们已经非常努力了。因为这样编辑器被冠以最费力不讨好的项目。做走了很多人,基本上能坚持1年的算很长了。我印象最深的是做空间编辑器项目时,有个QA的MM,一做完编辑器项目就辞职了,原因是太累了。编辑器项目那时完全没有自动化用例,全靠手动测试,我要是修改一个底层代码,那QA要把所有的手动用例都过一遍,可以想象那是多么的痛苦。基于这些原因,UEditor诞生了,诞生它的想法很简单,就是我们要有一个我们自己完全可控的编辑器,可以满足pm的各种需求和修改各种bug。当时开源的目的就是想能从外部吸收更多的需求和bug,来更好的满足产品线,当时完全没想到,UEditor能做到今天这样,大家都在使用的局面。

CSDN:目前已有一些优秀的编辑器,比如FCKEditor,为什么还要开发一个?与FCKEditor相比,UEditor有哪些更贴近国人使用的特性?

战毅:主要是因为我们需要一个我们自己完全可控的编辑器。(例如,添加新功能和bug修改)。UEditor现在的功能比ck更加丰富,而且比他要小的多,整体的架构更加清晰。

UEditor的宗旨是打造“最佳的用户编辑体验”,我们在许多细节上完全是效仿Word的实现方式,比如对于多级列表、中文标示的列表、表格的操作、插入代码、粘贴过滤的支持、tab键的支持等等。

CSDN:在UEditor开发过程中最难的地方是什么?你们是如何解决这一问题的?

战毅:最难的地方是应该是对range的封装,这是编辑器实现的基础,所有功能实现的核心。要说解决,那就是自己实现一套,这样才能真正了解和掌握它。对于这块的实现,主要是参考了ck,因为到目前为止,对外的编辑器项目中只有ck和tinymce包括UEditor才是真正用JS实现range,而没有借助编辑器的原生接口。至于为什么不借助原生接口,大家可以看看5月份的程序员杂志,我写了篇《从UEditor谈Web编辑器技术》,详细介绍了这块。

CSDN:UEditor在百度内部的使用情况如何?使用UEditor的其他公司或项目有哪些?

百度内部基本上是全线覆盖了所有对于富文本这块有需求的产品线,现在还在为最后一个产品线百度贴吧,做定制编辑器,做完这个项目,就是100%覆盖了百度的所有产品线了。

在外部,像奇虎、腾讯、盛大、网易、联想等大公司,都在他们的很多项目里使用了UEditor,像51cto、中关村在线、音悦台等主流网站也在使用。还有像很多cms系统也都集成了UEditor。现在,UEditor是国内使用量最多的富文本编辑器项目。

CSDN:UEditor团队有哪些成员?你们之间是如何分工和协作的?

战毅:我们现在开发有3个,2个QA同学。上次发布1.2.6时,第一次发布了我们QA同学给我们发的bug列表,当时吓到了好多人,大家都觉得怎么这么多,其实这只是冰山一脚。大家要是看过我们git上的test目录,那里有好几千个自动化用例,这都是QA同学的心血。

一般我们开发一个版本后(包括新功能的测试用例),提交给QA,QA同学进行2-3轮的测试,在这过程中,我们也会对外发布一个线上的测试版本,让大家来帮我们一起测试,最后发布正式版本。

对于发版本的周期,基本上是没有的,就是产品线一闲下来,我们就把一些用户反馈的功能和问题,包括给产品线开发的功能,改造成通用的一起放到新版本里发布。

CSDN:对于此次“开源中国开源世界高峰论坛”和“开源群英会2013”,您有什么建议?

战毅:可以交流技术,但我现在看到的是大家在一起讨论,无论你的开源项目使用的是什么语言。是不是可以按着方向来分,比如前端、后端、native的分开项目,大家在一起讨论。

CSDN:您希望在大会上听到的分享话题是什么?您想与其他开发者讨论的话题是什么?

战毅:分享的话题,我最关心的是如何能把开源项目做的更大,如何建立社区,让更多的人贡献?

战毅将出席“第八届开源中国开源世界高峰论坛”和“开源群英会2013”。我们还邀请了100多位开源项目开发者和布道者,如果你想与他们面对面交流,就赶紧报名参会吧。

大会官网:http://ocow.csdn.net/

如果你是一名开发者,关注开源,并在开源领域有一定的贡献(开源项目开发者、布道者或推广者等),可免费申请价值499元的大会门票一张,我们会根据你对开源的贡献进行审核,并确定你的参会资格。名额有限,申请从速。

申请链接:http://surveies.csdn.net/survey/comein/591

直接呼叫RUNDLL来关机-VB资料 VB制作VB安装程序问答(二) VB制作VB安装程序问答(一) VB制作帮助文件速成 重新验证 Win 95 用户口令 -VB资料 桌面的大小 -VB资料 字体改变事件 -VB资料 自定义组合热键 -VB资料 自动更换墙纸的小软件-VB资料 自动记录应用软件工作时间 -VB资料 自动卷动TextBox -VB资料 自动开始上次关机时关闭的应用 -VB资料 自动装入注册设置 -VB资料 自己编程模拟 MouseEnter,MouseExit 事件 -VB资料 走进VB6啃一块骨头 做成一个时间限制的测试版 -VB资料 PHP中利用jQuery实现SWF图像上传和裁剪 VB.NET或C#将DataSet快速导出到Excel中 HashSet的equals和hashCode重写问题 PendingIntent实现原理和代码 IntentService实现原理及内部代码 AsyncTask实现原理和内部代码 Neither user nor current process错误 ListView的右边滚动滑块启用方法 Live Wallpaper动态壁纸开发 控制软键盘显示和隐藏 设置Activity大小不再全屏原理 Android面试题,看看你基础如何? Android Canvas绘图抗锯齿解决方法 Android xliff和字符串资源 android.hardware.USB类介绍 请问有关两个宏 bmp to ico 硬盘无法访问的问题,急!!!估计是被黑了 ISA2000中的问题,特急,在线求助 处理窗口关闭时的动作? 高分求教,我爱上了兄弟的女朋友,我该怎么办? (100分) 请问不通过Image控件如何用直接用DC来显示一个BMP?? 请问现在数据库开发技术有哪些?大致情况? 高分求教,我爱上了兄弟的女朋友,我该怎么办? (100分) 高分求教,我爱上了兄弟的女朋友,我该怎么办? (100分) 请问汇编用什么编译器最好啊? 有什么可以下的电影啊,提供网址,谢谢 下午闷啊:( 怎样让字体自动适应分辨率 高分求教,我爱上了兄弟的女朋友,我该怎么办? (100分) 高分求教,我爱上了兄弟的女朋友,我该怎么办? (100分) RowCount属性怎么用 VCL派生类的属性发布问题,请高手指教 中国能否成为世界第一? 有关cisco路由器上copy子集的疑问 怎样将msn的email用outlook express收到本地! 请告知msn的 pop smtp服务器 如何动态画出函数的图象? 高分求教,我爱上了兄弟的女朋友,我该怎么办? (100分) 有创意的T恤~~ Transaction not connected! 高分求教,我爱上了兄弟的女朋友,我该怎么办? (100分) 高手求救 aspnetnemu注册吗 陨落雕老弟昨日开始中考,祝福他,放分! installshield打包时可以加入密码吗? 救命! 怎么在WM_DRAWITEM自画LISTVIEW? 有关txt文件操作的问题? 一个很奇怪的问题,高手请看, 马上给分 那里有更多的skinengine换肤文件? 奇怪的问题,高手请看,马上给分! 怎样给一个OLE控件其内置的事件编写脚本? 请问各位能否将一个VF的数据库方便的转为ACCESS数据库 如何关联一个扩展名到我的程序? 我有一个备注memo的字段,想更新?如何进行? www.ipowerweb.com 的主机怎么样? 高数、线性代数与程序员!!! Sworddx,补分给你 怎么做定时 这个listctrl问题怎么老没有人回答我?????? TQuery为什么没有这个属性? 哥哥们 ,谁能帮我? 高分,谁有奇域外挂? 急急!!winsock 在网速特别慢的时候,发送与发送之间有一个等待时间,这个时间是不一样的!!! 关于表单的先后顺序 万分火急,关于authorware的? 关于用ASP调用SQL 数据库存储过程的问题!高手帮忙 以人为镜 可以知得失矣的意思 秦始皇统一六国的各国决定性的战役分别是哪场和像长平之战这种有名的战役都有什么 2009的2009次方减去1×2×3×……×2009(2009的阶乘)的结果除以8,余数是多少? 谁能告诉我”以人为镜可以知得失矣”的意思?考卷上的,想看看答的对不对 月亮与霓虹灯是谁写的? 正方体对角线与左侧面面对角线的夹角是正方体的最长的体对角线和左侧面的面对角线的夹角的余弦 一定要用余弦定理做,涉及到平移问题 同在一个正方体中同面 有四种一元酸HA,HB,HC,HD.四种一元酸HA、HB、HC、HD,已知:①相同的温度下pH值相同的四种溶液中,HC的物质的量浓度最小;②相同温度相同物质的量浓度的HB、HD溶液中,HB的pH值大于HD;③相同温度下相 有没有哪种家庭财产保险承保“地震、水管破裂”损失的?能不能说一下公司、产品名称,最好附产品介绍 3.已知二维随机变量(X,Y)服从如下联合分布 X Y -1 1 0 1/2 1/4 1 1/8 a 则常数a= ,= . 以铜镜可以正衣冠,以古为镜可以见兴衰,以人为镜可以知得失矣是什么意思 一个长方形对折,得到两个正方形,长方形周长12厘米,正方形的周长是多少厘米 为什么叫矢量和而不叫矢量合 有( )无( )( )里填反义字像弄假成真这样的要3个 一个长方形对折成三等份后变一个正方形,正方形周长是四十厘米,原长方形周长是多少 合外力F是是矢量吗? 平江一中348班是最牛的吗!我 曾思维 2篇暑假作文300字内 门窗密封条是什么材料,化学成分是什么新装的塑钢窗密封条气味很大,不知是什么材料,化学成分是什么感谢第一个解答者详细的介绍,但是我不是搞材料学的,主要想知道气味很大的密封胶条 平江县一中生地会考 总共才 142 分 还有可能 上一中吗 合位移为什么可以用旋转矢量表示 平江一中和嘉禾一中哪个好? 暑假作文写哪2篇作文 麦田里的守望英文Our life has just begun,even if life makes us some of this generation perplexed with knowing which way to go,but everything is just temporary,does not know the past ,we needed most now,it is our ideal.翻译下 韭菜是几倍体? 关于暑假生活的作文300字以内(2篇)骗子滚蛋 一对基因控制一对性状.这句话对么.还是多对基因控制一对性状 什么是自然年?能举几个例子吗? 越南语怎么说 DVR、混合DVR、NVR如何匹配高清监控 为什么吃韭菜肚子里容易生气体? 他们已经迁入新居了吗用英语翻译 已知a角的终边上一点p(x,负2),且|OP|=4,求tan,csca的值急 苏州市从角直到平江中学怎么走 good to have your help back on track NVR好用还是DVR好用 以人为镜可以知得失的意思是什么? smart 快 若两个相互独立的随机变量X和Y的标准差分别为6和8,则X+Y的标准差为()A.7 B.10 C.14 D.无法计算 2010到2011的NBA哪个会得第一? 英语翻译广州市 白云区 永泰 元下田3路5巷 一个底面周长是43.96cm髙为10cm的圆柱从中间锯开得到两个同样大小的小圆柱表面积增加了多少 如何发觉自己的能力? 若0<a<b<1,则log以a为底b的对数>1 一篇初二完形填空!对你们来说简单的 求英语完形填空答案~~谢谢英语高手们~Intelligent young people want to go to university, and it is certain for a country to 1 university places for them to ensure that there will be well-trained men and women to 2 the Government and 什么叫自然段 已知实数a>0,f(x)=x^2-2ax,x<=1;=log1/2x,x>1,若方程f(x)=-3/4a^2有且仅有两个不等实根已知实数a>0,f(x)=x^2-2ax,x1,若方程f(x)=-3/4a^2有且仅有两个不等实根,且较大实根大于2,则实数a的取值 英语高手们,非常紧急.英语完形填空.It was carrying two bags ( ) imporant things.a.filled b.fill with c.full of 什么叫做大自然 已知A={x|a-4<x<2a+4},B={x|log2(x+2)《3} 初一英语完形填空,高手们请帮帮忙啊Sydeny is one of the most beatiful cities in the word. it is the b——city in Australia. beautiful harbours, woderful buildings and good weather m——Sydney a great place .you can visit sydney at a 什么叫自然户 设函数f(x)=2^x-1(x<=0)或log1/2(右下方)x(x>0),如果f(x0)<1,求X0的取值范围 以人为镜可以知得失的意思 越多越好 谁帮我把中国地址翻译成英文地址吧 千万不要错哦 中国浙江省宁波市鄞州区前河北路永泰花园41幢701 邮编315 "以人为镜可以知得失矣”的意思 已知ka^mb^n与-2ab^2m+1是同类项,且差为-2分之3×a^m^n,求k和mn(m+n0的值?希望各位哥哥姐姐在明天之前告诉偶答案,觉得悬赏分不够的话,偶可以再加5分的! 如图,ABC三点在正方形网格线的交点处,若将三角形ABc绕着点A逆时针旋转得到三角形Ac'b',则tanB'的值等于多少明明∠BCA不是直角怎么还可以用锐角三角函数呢,我一直都不懂。 埃及一运动员因支持穆尔西而被剥夺比赛韩媒:中国人在韩免税店消费额首超过韩韩媒:中国人在韩免税店消费额首超过韩美情报委员会主席:白宫已承诺停止监听日本称中国军机连续3天飞越宫古海峡实美一男子喝红牛饮料后死于心脏病 家人艺术家将住“蛋壳屋”内 旨在警示气候利比亚运钞车遭抢 劫匪抢走总计数千万男子将中国瓷器当垃圾尘封20年 拍出奥巴马以“不知情”回应窃听风波 政客美国军火巨头创新型侦察工具 可安放于青海民间手工艺展在曼谷拉开\"今日中英国海军借“小甜甜”歌曲“吓退”索马日著名餐饮集团被曝食品造假 欺骗顾客美国监听门事件愈演愈烈 白宫承诺将重欧洲西部多国遭飓风袭击 已致至少13津巴布韦男子蝉联最丑先生 自称丑与生中国公司承建的首条至斯里兰卡铁路动工男子将中国瓷器当垃圾尘封20年 拍出美参议院情报委员会主席:白宫已承诺停华人男子失业 纽约杀表嫂一家5口提审私建灶台引发火灾 民警消防共同灭火1296名选手齐聚 挑战传统民族竞技300斤胖男患鼾症 开车时睡着了福集镇一分为二 泸县首个街道办成立家长用钱奖励8岁儿子做家务 孩子要求商家拎着“特产”来报名荆楚名吃挑战味蕾自贡一中召开群教活动总结大会女友与前男友开房 男友谎报警情为何中国人均收入只有美国12%私设停车场 夜间乱收费 不给钱就放气江城上周肉蛋菜价小跌法治的市场经济 保障公民财产权不受侵红牌楼“南汽外移”,大势所趋!刘金国曾明示“不管”家人图文:四中全会将深刻影响百姓生活提高司法公信力 习近平:司法是维护社向宪法宣誓具有多重意义图文:九分之一男人找不到老婆推高经济楚天都市报讯 医讯武汉市中医医院去神农架赏最美红叶
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘