你们觉得作为一个前端,想去了解浏览器整个的渲染过程和执行过程而去学 C++有必要吗?

2016-02-04 11:37:43 +08:00
 coffeedeveloper

好奇的是两方面。

而这些内容也只能通过网络上的一些文章去了解,只能说不甚理解。或者说不能透彻理解。
你们觉得特意去学 C++会不会显得矫情?

如果真的要去学了,要到什么样的一个级别才能够看得懂浏览器相关的一些代码呢?

11670 次点击
所在节点    程序员
78 条回复
shawngao
2016-02-04 11:38:54 +08:00
你觉得有,那就有!
kenshinhu
2016-02-04 11:42:05 +08:00
你可以不去了解,但你理解了就代表你已经不是一个前端了,而是一个蹋了 1/10 步的全端了
htfy96
2016-02-04 11:44:16 +08:00
我觉得你要想看懂 v8 的代码难度会很大,因为太多底端的黑魔法了。建议看他的早期版本或者一些玩具引擎。
另外我觉得引擎代码和前端的距离还是挺大的。
hardware
2016-02-04 11:44:48 +08:00
边看边学不难吧…
serco
2016-02-04 11:46:44 +08:00
矫情,而且效率及其低下。

前端本来就必须知道这些内容。
推荐你看一下这个吧 https://developers.google.com/web/fundamentals/performance/critical-rendering-path/
chemzqm
2016-02-04 11:53:17 +08:00
前端理解渲染过程一般就够了,除非你要 hack 浏览器,或者自己实现才需要用到 c++
e2real
2016-02-04 11:53:42 +08:00
不是学了 C++就能看懂的吧。
aivier
2016-02-04 12:00:14 +08:00
理解了就可以转行做浏览器开发了...
zzNucker
2016-02-04 12:00:57 +08:00
讲道理,不用专门学 C++,你大概也能看懂。
zzNucker
2016-02-04 12:01:13 +08:00
当然你至少要有 C 的基础。。
tobyxdd
2016-02-04 12:29:26 +08:00
真搞懂了这些还当什么前端...
zaishanfeng
2016-02-04 12:30:23 +08:00
有这种想法注定你学不会 c+
heian0224
2016-02-04 12:31:00 +08:00
windbg
pimin
2016-02-04 12:36:06 +08:00
相信我这绝对是一条歪路
k9982874
2016-02-04 12:36:52 +08:00
艺多不压身,不管学不学的成,你的技能树一定比一般前端广。
shoaly
2016-02-04 12:38:02 +08:00
闲的.
hitmanx
2016-02-04 12:38:27 +08:00
难点应该不在 c++上,就像学习 linux kernel,难点不在 c 语言上一样.
easing
2016-02-04 13:17:15 +08:00
看 google 的文档就可以了,然后非常熟练的使用 chrome 内置的工具多去分析页面就差不多了,比如 devtools, chrome://tracing, chrome://net-internals 等。
jukka
2016-02-04 13:20:33 +08:00
游戏开发者表示 无非就是如何高效的利用 opengl 的 API 组织数据。
浏览器相对于游戏就是外部的 context 不同而已,所以你要学的不是 C plus plus ,是 opengl 的渲染机制。什么是 VBO, 什么是 draw call 。

理解了这些再来看,才会事半功倍。

另外, V8 只是一个 js 解释器,如果想学编译的知识,去找一个更简单的语言或者 js 的早期版本是更好的选择,因为那会儿语言没这么复杂,也没这么臃肿,更容易让你了解到本质。
ivenlee
2016-02-04 13:24:22 +08:00
前端代码是运行在浏览器上的,了解它的原理能有助于写出性能更优的代码。 就题主说的“必要性”而言,这没有必要。 而艺多不压身,学多点东西无害

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/255348

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX