1
whywaoxaks 2022-10-10 12:51:53 +08:00 6
唯有岁月,可以抚平这道鸿沟。
|
2
kerrspace OP @whywaoxaks 但是这个东西我感觉必须积极主动的去提高 如果不主动就会陷入低水平重复 低水平的代码写的再多也很难主动提升到高水平的 最后就是 crud boy 35 被优化
|
3
exmario 2022-10-10 13:14:16 +08:00
刻意练习+即时反馈,leetcode!
|
4
elechi 2022-10-10 13:34:29 +08:00
多看多写代码
|
5
king888 2022-10-10 13:40:06 +08:00 1
直接看开源项目源码,看逻辑,别人为什么这样写,自己尝试能否优化,是否有更好得写法,这是最直接升级方法
|
6
king888 2022-10-10 13:42:35 +08:00
如果没得优化说明已经是当前实现里面不错得方法,那你看了,思考过了,所以就已经成功吸收了别人优质思想
|
7
king888 2022-10-10 13:43:30 +08:00
如果还有的优化,说明你是棒棒的,那成就感也挺不错的
|
8
egen 2022-10-10 13:55:07 +08:00
有两个方向吧,一个是在实际工作中接触到足够复杂的场景,就比如模版,如果一个类型只需要写两三次或者十来次,那就是手写比较快,但是如果需要写 100 次,你就会想用模版等方法来做
其次是对于其他基础技术的研究,比如操作系统,硬件,网络等,为什么内联可以更快,这个就涉及到对各种基础原理的学习 这些学习都需要时间,就像 #1 说的,唯有岁月,可以抚平这道鸿沟。 |
9
lidongyooo 2022-10-10 14:18:13 +08:00
多看多写多思考。
|
10
dx3759 2022-10-10 15:38:22 +08:00 3
首先,第一条: 小弟我是刚毕业的新码畜
不要把自己当成畜生,你是工程师、工程师、工程师!!! 哪怕行业不把你当人看,你也要明白,这是沟渠,早晚要脱离。 |
11
dsggnbsp 2022-10-10 15:40:39 +08:00
首先不要贬低自己,然后看到就学,慢慢积累,你想速成的话可以去找个培训班?
|
12
HugoChao 2022-10-10 15:41:35 +08:00
不要执着给自己打 tag ,比如菜鸟老手,保持好奇,坚持学习,就好了
|
13
zoyua 2022-10-10 15:46:01 +08:00
keep learning
|
14
BUHeF254Lpd1MH06 2022-10-10 16:47:33 +08:00
无他 唯手熟尔
|
15
god7d 2022-10-10 17:23:54 +08:00 2
尝试自己去造一些轮子,你会发现各种高级语法、设计模式、多线程还有数据结构等基础知识都是必不可少的知识储备,同时也会理解很多编程思想。
我可以提供两个案例,比如: 1.我需要自己造一个 ORM 框架的轮子,支持 Mysql 、SqlServer 、Oracle 起码三种以上的数据库,怎么完成呢? 2.我需要在同一个项目中处理多种通讯协议,该怎么做到自动判断通讯协议,怎么处理不同的报文,乃至于考虑到将来有更多的协议加入进来的时候,必须使现有代码具备良好的扩展性? 诸如此类,希望可以帮到你。 |
16
crstudio 2022-10-10 17:48:13 +08:00 1
我现在虽然不是一个老手,但是我想提出以下三点建议:
1. 基础知识的理解和贯通。根据你的语言应用,需要了解相对应的基础知识,比如网络,编译,操作系统,数据结构等。 2. 流行项目的源码阅读。好项目的源码,绝对是值得你借鉴和学习的,要知道作者为什么这么些,这么写的好处是什么。 3. 大项目从头到尾的经验。看再多,不经历也无法将知识转化为自己的,而软件项目随着“规模”的增大,不光代码量变多,而是技术栈会越来越多和越来越深。 所以,光靠时间的基类是不行的。共同勉励。 |
17
Phariel 2022-10-10 17:57:12 +08:00
多看 多用 多练 唯手熟尔
|
18
ksco 2022-10-10 18:28:30 +08:00
主动参与开源项目,尤其是基础设施的开发。绝大部分的公司提供的岗位没办法让你掌握这些东西,只靠一楼说的岁月,等退休了也抚不平这道鸿沟。
|
19
ihciah 2022-10-10 18:31:26 +08:00
好代码是语义明确的,而不是某种只有内行人听得懂的黑话;好的代码往往有注释或者自己就是注释,不需要太费劲去解读;对于较大的工程项目,我觉得好不好主要体现在其结构上,比如能不能用抽象层将代码解耦成功能明确的子模块等。
我觉得你这个例子本身就不符合“复杂的好代码”。你说的那些 cpp 的语法问题我觉得更像是由于历史原因不得已而为之的糟粕(狗头保命),来用 rust 吧! |
20
documentzhangx66 2022-10-10 18:34:13 +08:00
1.打好基础:
大学数学 -> 概率与统计 -> 大学物理 -> 模拟电路 -> 数字电路 -> 计算机组成原理 -> 汇编 -> C/C++ -> Java/C#/PHP/Python -> 操作系统 / 计算机网络 / *多媒体 -> 数据库 -> 分布式。 2.利用好时间: 工作日的晚上、双休、各种节假日、除夕夜、春节,都拿来学习。 3.多交流、多沟通、多上论坛多加群。 做好以上 3 点,早晚成为大佬。 |
21
GP1 2022-10-10 18:56:27 +08:00
练级打怪
|
22
jones2000 2022-10-10 19:55:41 +08:00
代码写的多了, 项目做的多了, 就会了。 光看书或代码没有什么用,就只能应付应付面试。 写代码是为了解决问题,只要能解决问题就行,高效,可读性都是锦上添花的东西, 问题都解决不了要那么多技巧干什么用。
|
23
levelworm 2022-10-10 20:15:11 +08:00 via Android
只有找更好的工作接触更好的人才行。就连大神卡马克都需要和人交流才能进步的更快。
|
24
NilXuan 2022-10-10 20:59:58 +08:00
1. 遇到自己能看懂的->好的,原来 xxx 也这样写;
2. 遇到自己看不懂的->自己努把力能不能看懂一部分? 如果能,就把它搞定,然后总结下为什么最开始看不懂,搞定后有什么收获? 如果不能,可以问问自己为什么不能?解决完该问题的答案后,再看看能不能看懂,如果还是看不懂,不妨先放下,看看其他部分。随着解锁的细节越来越多,回过头再看看哪些不懂的,如果还是看不懂,可能就得求助他人了;或者就继续先放下,继续解锁其他部分(记得回头看,如果仅放下,但是不回头看,那可能就永远搞不懂了) |
25
YYYeung 2022-10-11 00:11:41 +08:00
只有老老实实花时间吧
幻想:弯道超车 现实:坑渠翻车 |
26
chasb 2022-10-11 00:15:31 +08:00
这就是活生的例子证明弯道超车绝对是屁话
|
27
kerrspace OP @chasb 从时间上看未必。。。因为我现在每天可以说除了睡 4 个小时在全方位努力工作学习,也没有家庭拖累。我感觉是可以追上一些佛系的高手。但是这是从时间的角度衡量。从你为了达到那个水平要经过的训练来讲是肯定没有超车这种说法的,该踩的坑都要踩
|
29
yule111222 2022-10-11 08:52:37 +08:00
看不懂就不是好代码,C++的历史包袱而已
|
30
nicebird 2022-10-11 10:51:09 +08:00
慢慢提高:
- 第一步能写好几百行的模块,快速实现 - 第二步某一年能够大量输出几万行代码 - 第三步 开始刻意练习,学习各种开源库、学习自己项目库 |
31
jinsongzhao 2022-10-11 11:16:38 +08:00
先确定你能避免外界的浮躁,潜心下来,并且喜欢研究代码,勇于不断学习新框架。最后跨越这条鸿沟的人,差不多只剩下 1%,加油吧
|
32
Twnysta 2022-10-11 14:02:50 +08:00
你是不是需要一个 ide ?
|