从社会分工谈编程语言发展

2018-03-26 12:04:46 +08:00
 wangbenjun5

马克思曰:“经济越发达,社会分工越细”

在富士康,一个简单的数据线大概要经过 20 多道工序,由不同的人负责不同的部分。放到宏观来看,小公司的员工一个人身兼多职,要写前端,还要写后台,甚至运维也是他干,但是大公司呢,大部分人都是螺丝钉,一个人只负责一小块,是不是和富士康流水线上的工人差不多?

从编程语言这块来看,我一个写 html+css+js 的不必了解你操作系统原理吧?更没必要去了解 CPU 中断机制吧?就如普通工厂组装汽车的工厂,他需要懂发动机原理吗?很多计算机的底层知识已经超越了普通开发者的知识范畴,想把这些弄的清清楚楚很难,虽然说计算机才发展了几十年而已!那 100 年后呢?一个人的知识储备是有限的。

比如说某些计算机科研机构,他们大部分人不会去写 js,但是我肯定他们每天都在研究计算机底层,想着怎么优化 CPU 设计,优化算法以提供性能。

这种分层分工在计算机网络的设计上体现的非常明显,设计者把计算机网络分为 7 层,对于大部分应用开发者来说,只需要了解应用层协议基本上就够用了,你有必要去搞明白数据链路层怎么传输数据吗?

9407 次点击
所在节点    程序员
101 条回复
DOLLOR
2018-03-26 16:31:44 +08:00
@nicevar
应该要了解到网络层,涉及到多网卡的话,路由表的配置少不了。
ZSeptember
2018-03-26 16:40:56 +08:00
分层,抽象。确实很重要,让上层的使用者不用知道底层细节。
问题是现在的很多东西的底层实现不好,暴露的接口不够,导致上层的使用者必须要了解底层,才能解决问题。
wangbenjun5
2018-03-26 17:00:11 +08:00
@jadec0der 优化很牛逼吗?不就是看看别人的经验总结,读读文档,再结合自己实际情况进行调优,这和计算机底层原理有多大关系,除非说你已经牛逼可以直接修改人家源码优化了!
yxcxx
2018-03-26 17:05:18 +08:00
看了一下楼主的提问列表,嗯。
mengyaoss77
2018-03-26 17:12:12 +08:00
所以真正的计算机核心技术到底是哪群人在搞呢? 985 211 高校在研究吗?
反正本渣硕的学校 所谓的硕士们大多都在做 CRUD 哈哈。
hpeng
2018-03-26 17:18:48 +08:00
又不是很难 <_<
anewg
2018-03-26 17:50:10 +08:00
求求你换个头像别黑 PHP 了好吗
jadec0der
2018-03-26 18:00:37 +08:00
实在不知道说什么好……看到你在 https://www.v2ex.com/t/441535 的回复,一股自暴自弃的气息扑面而来。

BAT …随便进不敢说,但是我想拿 offer 还是没问题的,在 V 站 BAT 也不是什么难事,看到你认为 BAT 和自己完全无缘,我们在这个帖子里讨论的大概不是一件事。你开心就好,我不说了。

最后,虽然你觉得 PHP 很 low,但是 PHP 其实不 low,业内排名前列的社交系统,贴吧、微博都是 PHP 做的。
Baymaxbowen
2018-03-26 18:50:33 +08:00
@wangbenjun5 如果都以求职为目的那为什么大家不都去读职校呢,为啥大部分公司招人本科起步呢,本科的东西的确学了下来一知半解但是至少你知道有这个东西,不要功利心太重,一辈子不止只有工作和钱
choury
2018-03-26 19:09:27 +08:00
@wangbenjun5 #43 你真以为优化到最后不需要改操作系统,不需要改内核吗?
nevin47
2018-03-26 19:20:08 +08:00
@jadec0der 老哥真的是怼得有理有据啊

另外 LZ 能把一百来台服务器的系统优化讲成读文档调优就搞定的事儿,水平真的也就暴露得差不多了
mosfet
2018-03-26 19:21:26 +08:00
我写后端的
但我学过燃气轮机
哈哈哈
wizardforcel
2018-03-26 19:27:12 +08:00
cs 没多少人写 fpga,基本都是隔壁 ee 在写,刻沙子也是他们在做。你对分工还是了解得不够。
wizardforcel
2018-03-26 19:29:52 +08:00
@wangbenjun5 其实就几条

1. 拿 profiler 看看哪儿慢

2. 能加缓存加缓存

3. 拿 mq 做解耦

4. 拿负载均衡充分利用多机

多看基本架构的书就能总结出来。现在没人总结这种东西,导致大量的人出来装逼。
we2ex
2018-03-26 19:39:27 +08:00
@jadec0der 最讨厌你们这些学习好的人了 :doge:
cs010
2018-03-26 19:47:33 +08:00
不要以流水线的标准来规划自己的职业生涯,💊
yhzwy
2018-03-26 20:12:23 +08:00
入门你学会一点就够了。
想进阶这些原理性的东西都是逃不开的,越早学越好。
也是越早学你越能进入一个高一级的平台,防止在低端平台做重复性工作。

另外一点直接的问题就是,不管你工作用不用。好的公司面试就这么问,你不懂过不了蛤。
misaka19000
2018-03-26 20:19:05 +08:00
我看楼主八成是来反串黑 PHP 了 楼上的不要被骗了
murmur
2018-03-26 20:20:22 +08:00
@wizardforcel 那是因为 cs 学 c 语言学的太深上 verilog 或者 vhdl 一下就跑飞了
zhaogaz
2018-03-26 21:24:17 +08:00
你说的没错,和流水线工人一样。

没有必要了解操作系统

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

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

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

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

© 2021 V2EX