掘金 AMA:听 Vue.js 作者--尤雨溪谈 Vue.js & 独立开发 & 设计那些事

3,636 阅读11分钟

第七期 沸点,掘金团队请来了Vue.js 的作者,全职独立开源开发者尤雨溪做了为期三天的 Ask Me Anything (AMA) 活动(已结束)。

我们在此精选了一些来自用户的提问及尤小右(尤雨溪)的回答。

关于尤雨溪

Vue.js 的作者,一名全职独立开源开发者。过去曾就职于 Meteor 和 Google,毕业于 Parsons 设计学院。

社区小伙伴提问

提高审美、构图,是否对前端这份工作比较有益? ─ @一百一

尤大你好,我是一个应届毕业生,我想问下,从事前端的话,需要有一点的审美吗?我认识的学长、学姐业余时间会去游玩、摄影,是不是提高审美、构图,对前端这份工作比较有益呢?

前端有良好的审美肯定是好的,但是用 “审美” 不太准确,更准确地说,前端需要对设计(主要是交互设计,辅以平面设计)有良好的理解。设计的本质是理解你在做的产品和用户之间的关系,产品需要通过怎样的交互去满足用户的需求。即使是相对主观的配色、构图、动效,根本上都是为这个核心去服务的。学习设计不一定需要你能够自己出设计稿,但是掌握一些基本的设计原则可以帮助你更好地理解设计师的意图,让你跟设计师更好地沟通,提高工作效率,也增加做出好产品的概率。

您觉得和VUE合作起来做好,最值得推荐搭配使用的新技术有哪些呢? ─ @庞亮

您好,前几月还有人假冒您发了微博说VUE要出新版本,累死你们这帮前端😂,在这个新技术层出不穷,多关注几个公众号天天能被轰炸到不行的年代,您觉得和VUE合作起来做好,最值得推荐搭配使用的新技术有哪些呢?

脱离场景推荐技术没有太大意义。技术选择的前提是明确场景和需求,盲目追求新东西很大程度上除了增加焦虑感,对你手头的工作可能并没有太大帮助。我的建议是反过来,在做手头的事情时候,留意自己的痛点,哪里觉得不爽,哪里觉得应该有一个工具来让事情变得更自动化,再去针对性地找,很大概率会发现好几个解决方案。然后对这几个方案进行研究和比较,你会对这个痛点获得很深的理解。经常这样做,你会慢慢对各个常见的问题和对应的方案都有自己的理解,这样你在选择新技术时,会能很快理解新技术要解决什么问题,比起已有的方案有什么不同。这是一个需要长期积累的过程,但是授人以鱼,不如授人以渔。

是什么驱动你去写一个Vue这样的框架? ─ @noahlam

前阵子github弃用了jquery,我想问下你觉得下一个会被弃用的框架会是哪个?

想问下如何成体系地输出技术文章?单篇文章地思路我还是蛮清晰,demo、设计思路、代码分解、完整代码(如果我的思路有问题欢迎指出)

写 Vue 一开始纯粹是处于技术上的好奇,想满足造轮子的快感,并没有计划要把它做多大多成功。中期主要是出于程序员的好胜心,专注于把性能和功能做好。慢慢地突然发现用的人越来越多了,才考虑作为工作的。

如何将开源做成自己的事业? ─ @mmsssq

如何将开源做成自己的事业?

这里可能要泼点冷水,以开源为事业是需要一点运气的,我是在业余时间做 Vue 做到一定程度才发现可能以此为职业。如果直接以全职开源为目标,成功率应该比创业成功还要低很多(尤其是在中国)。另一方面,做开源需要对技术本身有强烈的兴趣和执着。我的建议是业余时间多做探索,但不要以此为你的根本目标。决心要做一个 nb 项目的人,才有可能顺便把它做成事业。核心是要做出一个解决痛点的 nb 项目,而且这个项目要么有直接愿意为之付钱的群体(瞄准特定类型公司的需求,做类似 freemium 的模式),要么有足够大的受众,从而可以以赞助的模式生存。

正确的参与开源项目的姿势是什么呢?─ @DateBro

我是一名大二学生,想问一下尤大,计算机领域的内容那么多,前端,后端,移动开发,机器学习。。。您是如何在确立好兴趣方向后做出个人发展的规划的呢?正确的参与开源项目的姿势是什么呢?👀

我的路线可能对你参考价值一般,因为我是学艺术和设计出身,所以很自然的首先接触了和用户打交道的前端,最感兴趣的也是前端。对你自己来说,感兴趣,有热情是最重要的。是做出令人愉悦的交互让你更有成就感呢,还是提升算法准确度,增加转化率数据呢,又或者是设计出一个吞吐量巨大的后端系统呢?只有找到最能给你带来成就感的那个方向,才最有可能做出成就,也最值得去钻研。

至于参与开源,这是一个比较大的话题,所以只能概括地说说。

首先,要避免以一种商家/用户的关系去看待开源,而是以一种共同利益去思考,也就是把自己放在维护者的角度去想,什么样的贡献对于这个项目是有益的。

其次,报 bug 的时候,一定要留意项目对 bug 的格式要求。很多开发者有个不好的习惯就是报 bug 的时候把错误堆栈甚至是截图一丢就算是报 bug 了,但维护者修 bug 需要了解 bug 产生的根本原因,没有一个真正的重现,很多信息根本不可能猜得到。而来回询问需要浪费非常多的时间,对于大项目来说,每天都会有十几个 issue,维护者是没有这么多精力一个一个去来回询问的。

最后,关于贡献代码。遇到举手之劳的错误,直接开 PR 会更好,但如果要做较大的改动,则应该注意先和维护者沟通,并且一定要说清楚自己的场景、用例,为什么需要做这样的改动,为什么需要这样的功能。有些时候,一些开发者觉得我辛辛苦苦贡献了一个 PR 你居然不要,觉得不爽,这样的情况一般都是缺乏沟通导致的。

可视化编程,在近几年是否会有爆发式的发展~?─ @佯真愚

可视化编程,在近几年是否会有爆发式的发展~? 众所周知前端从原生的刀耕火种到jq的手动一把梭,再到vue的横空出世以数据驱动封装dom操作,让开发者更专注于数据处理。 那么下一步会不会像桌面和native那样实现可视化编辑界面,甚至更进一步地在底层利用函数式、响应式编程等技术来实现程序逻辑的可视化编程?

技术上其实早就可以做到,但这类系统的难点本质上是如何平衡 “可定制程度” 和 “易用度”。做得易用,就必然有很多东西不能暴露给用户,可用的范围就小;做得太可定制,变得很难用,还不如直接用代码写。所以这类系统,在针对特定用例的情况下,是可以起到很好的效果的,但很难做到完全普适。现在有些新兴的工具比如 FramerX 或是 Figma,是这个方向比较有希望的探索者。

vue与react最核心的区别在哪?─ @Shellming

请问你认为vue与react最核心的区别在哪里

Vue 更注重新人的学习曲线,也更倾向于在传统 HTML/CSS 的大框架下渐进式地引入新概念,而 React 属于直接另起炉灶。但两者提供的核心价值其实是一致的。

对于以后该怎么发展,也比较迷茫?─ @厄月下的命运

请问如何做到最好的自我驱动,以及最高效率的学习呢?前端入行快一年了,当感觉连轮子还不会搭,Vue的源码都看不懂。是自己的知识储备不足呢?还是哪方面不足呢?对于以后该怎么发展,也比较迷茫。虽说这些问题比较笼统,还望解答。尤大。

如果你本科学的不是计算机,入行一年看不懂很正常... 再找些东西从简单的看起,从简单的轮子造起。迷茫这种事情,不了解你的情况没法给你建议,我只能告诉你我当年也是迷茫过来的 😂

Vue怎么看待#private,以及当前的替代方案Symbol?─ @边城

我想知道Vue怎么看待#private,以及当前的替代方案Symbol。目前Vue是不支持Symbol(private)的,但通过@decorator和class提供了OOP的语法支持,也支持继承,有时候确实需要私有化来隐藏一些属性。

在 UI 组件里,我个人认为不存在对于 private field 的硬性需求。如果出现了直接拿着另一个组件的 instance reference 进行操作的情况,已经违反了基础的最佳实践,如果这都需要语言层面的制约,可能开发者的基本能力还有待提高

也有可能我误解了你对 private 的需求,但总的来说 Vue 3 会对这些新语言特性做一次整体的适配。

对维护开源的3个疑惑?─ @码个蛋

我写了一个开源库,Android的,目前累计1.4w star,在修复bug的时候我很享受,一边在成长,一边在帮助他人,感觉很棒!

由于近期工作很忙,每天都需要大量的时间加班,导致无法维护,这使我很困惑。

以下是我对维护开源的3个疑惑: 1.前期:在开源没有收入对情况下,只能边工作边维护,这个时间如何调节? 2.中期:如何让开源成为自己的工作?需要怎么样才能盈利,打造自己的全职团队? 3.后期:现在的你全职独立开源开发者,你后续的开源规划是怎么打算的?

  1. 前期肯定会需要牺牲一定的业余时间,所以你得对这个项目有热情到觉得乐在其中才可能坚持过这个阶段。从你的描述看来,有戏。
  1. 能不能突破到中期,有一定的机遇成分。但前提是 1. 你的项目产生了足够的价值 2. 有合适的渠道让这些价值变现。1.4w star 说明你有大量的用户,但一个功能型的库很难像 Vue 一样以赞助的方式去变现,你可以考虑的是 dual license 或是 freemium 的模式,将以后新增的高级功能只在收费版本中提供。类似的模式做得最成功的项目是 sidekiq:github.com/mperham/sid…
  1. Vue 本身肯定继续作为独立开源项目存在,但这也不妨碍我们以后做一些基于 Vue 生态的收费服务。

最后提一点,赚开源的钱,要瞄准国外。国内的公司很少有这个意识。

皮一下很开心的社区小伙伴 && 尤小右

如何保持头发浓密?─ @yyyyang

你头发保养可以,你用的飘柔是在拼多多买的吗

我也想知道有什么办法保持头发浓密 😂

是否您也是一位rapper?─ @喂喂呢

尤大大,您每天都在关注中国新说唱,是否您也是一位rapper呢?

我自己不写,不过我初中就开始唱 Eminem 的歌,高中还在学校表演过 Without Me。现在比较喜欢 k dot


本期 AMA 社区小伙伴提了许多实用问题,感谢尤小右认真地为掘金小伙伴解答了不少疑问。浏览更多的问答,可以到尤小右的 AMA 进行阅读和讨论。


尤小右 AMA 福利:掘金小程序大会门票一张

尤小右从所有提问中选择 3 个提问者赠送掘金开发者大会门票一张。记得查收通知哟~