美文网首页C语言
程序员应该如何选择?一个正确的选择,比写一万行代码更管用!

程序员应该如何选择?一个正确的选择,比写一万行代码更管用!

作者: 1cbd7f94d3ea | 来源:发表于2019-10-04 15:20 被阅读0次

每个人都有最适合自己的道路,所以请选择能让自己舒服的姿势。毕竟人生苦短,对自己好点。

比如我,就搞不来学术研究,就不喜欢研究语言的细节实现,不喜欢研究算法,因为我人比较笨。

所以如果你看到别的大佬大学搞 ACM,搞编译器,工作去 BAT,微软,谷歌 Facebook,你也跟着学,结果发现自己干啥啥不行,不要怀疑自己,要承认自己的确就不是那块料。

所以,认识你自己,接受你自己,找到最适合自己的路,比写一万行代码更管用。

所以下面仅是一家之言,仅供参考。

1、设计模式

找工作的时候,我经常被问到的问题之一就是所谓的设计模式。而我的作答一般是,『了解其思想,而不局限于实现。』

先说个人观点:

过早的接触设计模式,再加上许多人对设计模式的神化,很可能导致你个人的思考被其束缚。

设计模式的重点不在其实现,而在其思想。只是因为 Java 语言本身的表达能力有限,所以才使得其代码实现变得比较复杂。

我见过许多人把它做为知识点一样,去记忆那些实现代码,我觉得这种行为是很可笑的。

我个人认为正确的学习姿势是,在你已经写了一定量的代码,尝试使用自己的思路去解决过一定难度的问题,有一定程度的基础和经验的时候再去看设计模式。

这样在看的过程中你就会有感触,『哦,这种模式就是我平时用的某种方法的变形,那种模式比我写的更严谨,而这种模式我还没有见到过……』这样对照对比着去学习,才能让你从中汲取知识,且不会让你困扰于设计模式的细节实现,以及陷入到滥用设计模式的陷阱中去。

另一种学习设计模式的姿势就是,换一门表达能力更强的语言,看看它们是怎么解决的。这样你就能摆脱实现细节,专注于思想本身。

2、编程语言

说到语言,新的语言层出不穷,经常会有人发出这样的疑问:

我应该学什么语言?

我现在使用的技术是不是快要过时了?

我要不要去追赶下一个热门技术?

找到工作短短一个月内,我就学习了三种语言,而且目前所使用的主语言我之前连听都没听说过的,但是工作三个月后,我已经基本熟练掌握了语言的特性和用法,至少足够应对工作。

我是怎么做的?

答案是:

所以,要不要学习新语言/技术?

我的答案是,掌握一种高级抽象形式,以及打好基础,能让你快速学习任何一种新技术。

当你有了这种能力之后,就不会惧怕新技术,而是可以根据需要来选择任何一种新技术,即使再更新换代,有再多层出不穷的技术出现,你也能游刃有余。

有了扎实的基础和快速学习的能力,同时还要保持求知欲和好奇心。要像海盗探险一样积极去寻找有助于自己的尚未探索的技术领域,毫不吝啬的掠夺那些有助于自己的知识来扩充自己的宝库。

而在快速进化的计算机领域,如果你是一只懒惰的海盗,不持续更新你的技术,那么你很快就会被时代扔下车。

不仅仅是语言,其它譬如操作系统、开发环境、开发工具等,也要积极去跟进更新。另外C/C++就是一个既可以强化思维能力,又可以打好编程基础的编程语言,你要做做软件开发,成为核心程序员的话,就来抠抠学习C/C++吧!你如果感觉自学C/C++语言有困难的话,C/C++编程学习,六七一,二七4和157。即使是零基础的学习者,都可以一起成长进步。选择那些业内最前沿、社区最有活力的技术并熟练掌握它们,把自己武装到牙齿。

3、前途/钱途

我经常看到很多人在讨论这样的话题:

『某某方向最近很赚钱,要不要去学一下。』

『我是培训出来的,据说程序员很赚钱。』

『学这个技术以后还有钱途么?』

没错,赚钱养活自己的确是基础需求,但是你真的想要的就只有赚钱么?

做你自己想做的。

我一直认为,工作是用来践行自己的一种方式,而赚钱只是其附加属性。如果一个职位让我感到很痛苦,那我可能会拒绝。只有你在做你喜爱的东西的时候,你才会全力去做,才是最有效率的。

所以不要犹豫,听从你内心的想法吧。

有时候在长时间重复劳动之后,难免会觉得枯燥。其实计算机远不止写代码,还有好多有趣的东西值得你去发掘。不折腾的程序员不是一个好程序员。

操作系统换成 Arch 或者 Gentoo,有点闲钱买个树莓派玩一玩,掌握 Emacs/Vim,搭建一台服务器……

你可是程序员!看到不爽的就去改造它!而不是适应它!

还有一点就是要有黑客精神。据说每个程序员内心都有一个黑客梦,其实攻击者那叫骇客(Cracker),只要你有一颗不被束缚的心,你就是黑客(Hacker)。

当你不仅仅把计算机视为一只饭碗的时候,你才能看到更多的东西,才能获取更广泛的知识。

愿大家都能成为一只 Happy Hacker。

笔者是一个C/C++出身的程序员,学习编程有什么学习问题或者关于C/C++学习的路线的话可以看我个人介绍交流

相关文章

网友评论

    本文标题:程序员应该如何选择?一个正确的选择,比写一万行代码更管用!

    本文链接:https://www.haomeiwen.com/subject/okdjpctx.html