抄代码也是程序员必经的阶段之一,不用觉得沮丧,不信问问当代码农同行们谁没干过呢。
且不说一个人有没有能力完成当今复杂而庞大的系统工程,只是说"不要重复造车轮子",我相信你已经听到耳朵起茧子了。
没有谁是一开始就会所有的编程思想、代码技巧,大多数合格甚至优秀的程序员每天做的事情也是使用成熟的现有代码或工具完成每日的工作任务。但是一个程序员的最基本要求是知其然而知其所以然——没错,如果做不到你甚至不算合格,只会给自己和同事们埋下定时炸弹。一味地copy代码不能给你积累足够的工作能力。
我的建议是从抄代码开始,在抄完以后弄清楚为什么他要这么做,并在自己的脑海中树立起一个知识体系。
分阶段来说的话:
1.抄代码。这个阶段你不知所以然,没关系
2.研究并学习其思想和技巧。至少下次类似的问题来了你知道能不能再魔改这段代码
3.总结规矩,形成体系。至少你应该知道这个知识点是什么,书上哪块会讲到
4.进行深入学习,也就是看书看视频学习理论知识。到这你应该能清楚抄来的代码的所以然
5.运用理论知识能够分辨抄来的代码优缺点在哪,如何改进。到这你已经可以运用好这段"抄来"的代码,不,这段代码已经真正的属于你了
6.遇到类似的问题尽量使用自己的办法解决,如自己编码或使用更合适的工具,并对比公认的比较好的解决方案分析自己的不足。到这,你已经在潜移默化地提升自己积累经验了
7.放心大胆地做,无论是抄还是写还是用,一切都在你的掌握之中
当然,这个过程不可能一蹴而就,是需要反复积累、来回打磨的。这是一个量变到质变的过程,也许有一天你会突然觉得任督二脉被打开了。
ps.数据结构与算法这些科班计算机n件套属于基础中的基础,不好好学将来还起债来你会很痛苦的。别放弃,加油!