※ 引述《Apache (为寺川爱美疯狂打call)》之铭言:
: C/C++的发展是不是比较不直观
: 毕竟大宗缺前后端App都不会直接用到
: 出路跟别人完全不同=>嵌入式 EDA 高频交易...
: 感觉很吃domain knowledge 尤其硬件
: 剩下很多缺台湾好像也没有?
先讲结论,如果只会"c++",而其他什么都不会的话,目前确实很难就业
搞影像的现在还是很缺会c++的人才
只是光靠c++这门语言其实没有多大的意义
简单来说好了,这是我朋友的亲身经历
他是做影像的
有一次他们公司就是要弄一个类似 poisson image editng的功能(类似)
https://www.cs.jhu.edu/~misha/Fall07/Papers/Perez03.pdf
所以他要做的事情:
1.首先弄懂什么叫做poison image editing
把poison image editing的数学弄好弄满
2.用c++去实现这篇paper的功能,cpu版的
3.主管看了之后觉得不错,想要弄成平行版本的(用opencl来实作),让效能更好
4.最后,因为会放到Nvidia上的机器,所以再改成CUDA
在整个过程里面,他表示,会一点c++的语法只是最基本(基本中的基本)
因为光是要弄懂数学,就得先花上一小段时间,然后要如何用程式语言来描述
这些线性代数的运算,这才是核心,因为会扯到后来优化的部分,如果只是抄网络上的
程式码,这对于平行化并没有太多的帮助
他就表示,光处理这样的案子,大概会需要下面的技能树
1.c++(根本,但不用说非常精通,但要能用c++完成线性代数的运算程度)
2.线性代数 微积分 (!!!!!!!很重要!!!!!看不懂就掰掰惹)
3.OpenCL的API与设计概念
4.CUDA的API与设计概念
这跟弄web其实差很多,弄web需要弄懂微积分或是线性代数吗? 我自己也不是很确定
但是从我朋友的经验来看,会需要用到c++的工作,其实门槛都不低,会大量需要程式语言
之外的技能,大概是这样
: