如何选择值得深入学习的技术方向
不少做开发的小伙伴都有这个困惑:想上进,却不知道到底该选择什么样的技术来深入学习。
今天我们就来聊聊选择技术的逻辑,常见的有 4 种:
从产品到技术
现有技术的延伸
需求多寡
兴趣
我们一个一个来说说。
技术只是一种工具,它是用来解决实际生活中的问题的。所以,如果你不知道怎么选择,可以反过来思考这两个问题:
我要做什么产品?
解决什么问题?
因为某一类问题的解决方案,通常是由若干种技术组合出来的。
比如说,我要做手游,解决无聊时间太多的问题,那就有几个选择,比如学习 Cocos2D-x、Unity3D。
比如说,你想解决企业远程音视频会议效果不好的问题,那就可以学习 C++、ffmpeg、WebRTC等,从传输和音视频编解码上去提升会议系统的效果。
所以,如果你对解决某一类问题感兴趣,或者对某一类产品、服务感兴趣,那就去研究下,它们对应的解决方案,通常是由什么技术实现的,从中选择一种类学习即可。
看样子,你现在已经是个程序员了,那你肯定已经在使用某种技术了。
那其实想深入学习,一个最现实的策略就是:学习你现在用的技术,或者学习能与它组合在一起形成技术栈的技术。
比如说,你现在使用 C++ 做图像处理,那就可以学习一些与图像处理相关的类库或工具,比如 OpenCV,Cairo等等。
比如说,你现在做视频编解码,那像 ffmpeg 、OpenH264、WebRTC等等,都可以学。
有时候你想深入学习一种技术的目的是为了获得更好的职位,挣更多的钱。那这时候,就从市场需求入手来挑选。
比如现在人工智能相关的职位行情比较高,那你就可以学习 Python、TensorFlow、Keras等。
还有一些人兴趣非常明确,跟着兴趣走就可以了。
比如有的人对 Python 特别偏爱,那就多多学习 Python 相关的技术,TensorFlow、PyQt、Keras、Django 等等。
还有的人特别喜欢 Golang ,那就多多学习 Golang 相关的技术,比如 Docker 、Golearn等。
不管怎样,最终的选择权,其实在你自己啦~
不管最终你选择什么技术来深入学习,持续行动都是必须的,只有持续不断的学习、实践,才能让你精通某种技术。
推荐一本书——《程序员的成长课》,里面讲到技术选择的逻辑,非常值得参考。京东购买链接在这里:http://item.jd.com/12243573.html。
https://blog.csdn.net/foruok/article/details/80389273
有疑问加站长微信联系(非本文作者)