学框架还是学基础,换句话说,程序员真的是一辈子都在学习吗?

2020-12-11 14:39:31 +08:00
 jimiy

框架那么多,真的是越学越感觉到自己的无知,但是同时也发现,学那么多,工作上还是啥也用不到,有些技术、新技术在这家公司估计近几年都不会用到,学技术的初衷是为什么?

我个人还是挺热衷于学习和研究的,尝试和研究了很多开源的项目,框架一个比一个溜,有的框架俗称,只要一个实体类注解,什么增删改查、各种层、数据库接口啥的帮你生成的近乎完美,程序员只要写点逻辑就好了。以后是不是大家只要了解一下业务,其他的都是框架帮你生成的妥妥的,

但是框架太多,公司根本用不到!

有些项目还是用 vs2010 写的,数据库还是 Sqlserver2005,还和我谈什么技术框架。 if 、else 能完成的事情,绝不 switch 。

程序员创业真的很难,尤其是个人,难上加难。 公司里面技术的发展真的是刷新了我的三观,刚开始是重视 java,狠招 java 程序员,后来 java 程序员招不到了,来的都是 C#的,现在公司又改成 C#为主体,哎,心塞,到底该学什么?都三十几了还要怎怎么去折腾?

难受+香菇。

8610 次点击
所在节点    程序员
63 条回复
KuroNekoFan
2020-12-11 16:06:37 +08:00
学基础,查框架文档...
xchaoinfo
2020-12-11 16:15:23 +08:00
这就是典型的技术焦虑, 多看看基础, 构建属于自己的知识体系, 各种框架花里胡哨, 好多是新瓶装旧酒
Jinnn
2020-12-11 16:17:40 +08:00
持续学习是给自己一些底气, 还有即使丢了现在的工作也不慌的勇气
lzlee
2020-12-11 16:19:51 +08:00
底层的东西, 很多都是通的
学精一个东西, 其他东西上手, 就会快很多

开公司的目的, 是为了盈利
不是为了追技术, 是为了让业务给公司带来收益
技术只是一种手段, 有效就行

公司追求和个人追求有偏差, 是很正常的事, 毕竟公司不是自家开的
而且我真的不信, 你自己当老板, 会亲自下场跟 打工仔们 谈论技术
实在觉得自己不喜欢公司, 可以换个技术驱动的公司, 然后大展拳脚...

当然, 很多东西说不清, 毕竟大家还是要生活
tinyRat
2020-12-11 16:23:00 +08:00
万物相通。
okayan
2020-12-11 16:49:25 +08:00
不管是不是程序员,对于有求知欲的人来说,应该一辈子都是在学习的。
管他有什么用,进一寸有一寸的欢喜。
echowuhao
2020-12-11 16:51:36 +08:00
真的是一辈子都在学习,学习不是一件痛苦的事情。之所以现在这个局面,可能不是学习的问题,而是恶性竞争导致的。
fengpan567
2020-12-11 16:52:44 +08:00
35 岁失业后,送外卖就不用学了
jimiy
2020-12-11 16:57:19 +08:00
@djs 等到你 35 、40 了你还会这么追求技术吗?
jimiy
2020-12-11 16:58:30 +08:00
@zjsxwc 我们公司主流还是以 C#为主,工业项目偏多,java 输出不够,微软在工业这块市场妥妥的吧
jimiy
2020-12-11 17:04:30 +08:00
@Mithril 您说的有道理,很多工业项目用不到太高深的技术,无非就是监测一下光电信号,传感器啊什么的,对接一下客户的接口,最多再加一点业务逻辑,感觉传统行业,编程真的没有技术挑战,更多的是能用保守的思想去做事,所以一些老项目都是岁数比较大的程序员在维护,因为传统行业,看重的是经验,编程次之
shm7
2020-12-11 17:12:25 +08:00
我不晓得其他的,2 个月前把关系抽取 近 2 年的中文比赛和 zhihu 讨论较多的 paper 都看了一遍,梳理了各个流派的方法。然后 1 个月前陈丹琦又发了 pipeline 的 sota,1 周前 jay lou 又发了他 chip2020 的关系抽取三冠的实践,这些东西你看好实践下可能要花掉一个月的时间。前提是比较熟。不需要工作。

这仅仅是一个 NLP 任务,如果你要跟踪几个任务,看看 CV 的问题,那对不起了。一天 60h 不太够用。
nthhdy
2020-12-11 17:29:21 +08:00
以解决问题为目标,知识相比之下是次要的。解决问题需要各种技能,不能让自己被知识限制死。知识那么多,框架工具层出不穷,学不完,好用、用对才是关键。
ofooo
2020-12-11 17:49:14 +08:00
学了新东西用不上,为什么不跳巢呢?
如果给你一个工作,一点不用学习,那也无聊的很。我倒觉得总需要学习是一个职业的优点。
hjyjzsn
2020-12-11 18:06:45 +08:00
学习跟职业没关系
yzbythesea
2020-12-11 18:07:32 +08:00
学习也得分主动学习和被动学习吧。一般 Tech Lead 之前都是被动学习,基本公司怎么整,你就去学明白,用好(刚工作沉淀不深,你自己学很可能在瞎学,易入坑)。然后升到 Tech Lead 了,就慢慢依赖主动学习。因为你话语权重了,可以安排使用自己看上的技术,也可以一定程度参与对公司未来软件架构的策划。
so1n
2020-12-11 18:09:26 +08:00
我是觉得都学 比如在学消息队列的时候 假设先学了 RabbitMq, 你会从头开始学,并学会了消息队列的思想, 之后你换了 kafka 就觉得很多都是通用的 只是有些概念不太一样
JerryCha
2020-12-11 18:15:39 +08:00
只要你只想钻研不想当程序员,你的技术实力就会上升
NonClockworkChen
2020-12-11 18:21:40 +08:00
你举个在互联网行业,不用一直学习的。运营,产品都是得一直学习的。
libook
2020-12-11 18:31:03 +08:00
绝大多数的职业,要想提升自己的专业能力,都是需要持续学习的;即便是种地,要想提高产量、降低风险、提高农产品经济价值,同样要涉猎植物学、生物化学、地理学、管理学、经济学……

只不过计算机相关技术发展比较快,像服装工艺上可能数年才会有新的技术出现,但计算机相关领域会把这个周期缩短到一周。

框架会帮你解决多数常见问题,但是用得深入了,遇到框架解决不了的问题了,你就得用基础知识去改造框架或者另辟蹊径。

基础知识和实践知识缺一不可的,当然一个人不可能把所有知识全学会,但可以有一棵知识树,从计算机组成原理出发,软件和硬件就可以分出两个分支,然后每个节点又可以继续分支;你学习的过程其实就是在不断为自己的这棵计算机知识体系的树添枝加叶。

所以过去的知识(基础知识)要不断地补,这些知识可以在你学习表层知识的时候更加得心应手;最新的知识也要了解,为你解决工作中的问题提供更多的思路。

有些知识,我知道有这个东西,也知道大体上是用来解决什么问题的,但我目前用不到就先不深入了解,等以后遇到问题了我能想起来有这么个东西可能可以作为解决方案,这时候再深入了解就行了。

如果你觉得你现在学的东西没有用武之地,那说明你自己的成长已经比工作业务成长要快了,这是个好现象,意味着你具有更多的主动权来换工作,总比有的人感叹的因为工作业务发展慢导致自己发展慢要强得多。

最后,既然看了很多东西,就要懂得归纳整理,学一个新的框架不只是学怎么用,而是要了解其思想,而思想是可以跨框架、跨语言、跨领域的,思想积累多了,很多同质的框架就可以看做一种了,而且可能也具备了解决框架解决不了的问题的能力。

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

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

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

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

© 2021 V2EX