当前位置:网站首页>新手程序员该不该背代码?
新手程序员该不该背代码?
2022-07-06 14:38:00 【黑马程序员官方】
看到经常有编程小白会问:学编程需不需要背代码呢?很多库和函数记不住,等到用的时候还得百度是不是很菜啊,看到那些编程大佬不用百度就能啪啪打出来…
看到这个问题的第一反应是程序员为什么要记代码呢?这样做的意义是什么呢?
至于写代码是为了解决问题,知道自己要做什么事情。如何做这些事情,甚至还写出并吃透了设计文档,即便记住了代码,难道不也还是“xx、yy和zz模块用什么方法做XX事”吗?
新手程序员该不该背代码?
编程的逻辑才是核心,背代码只会让你怀疑人生 。
举个例子,让你设计一个电梯调度系统。你只需要听说过有个东西叫 电梯调度算法 ,以及它能实现电梯的有序调度就行了,而且并不需要记住怎么写代码。等到要做的时候,去搜该算法具体的实现就行了。
这个例子告诉我们其实并不需要把所有的代码都记住,我们只需要记住有什么,我能做什么,怎么做就可以了。
如果你看到一些老程序员写代码写得比较6,那可能说明他们形成了肌肉记忆,对于一些常见的代码来说基本上都可以记住,但如果时间足够,你也是可以的。如果不能的话“Google”和 “度娘”真的是个好东西。
背代码完全是无用功吗?
背代码不完全是无用功。
因为代码这东西就像是计算机能看懂的专属名词一样,你可以背一些简单的指令,这样可以提高你的编码效率,形成自己的“肌肉记忆”这样也会减少不必要的BUG,但只是没必要死记硬背,为了背代码而背代码。
做项目是记代码最好的方法
很多时候大家记不住一些代码不是因为别的,就是因为用得少而已,面对这种情况大家可以多写代码、多去实现一些小项目,这样下来的好处就是你可能会忘记具体的代码,但是你会觉得这个代码似曾相识,久而久之你记住的就会越来越多了。
在学习编程的过程中,你会背代码吗?欢迎大家分享自己的观点。
边栏推荐
- Data processing skills (7): MATLAB reads the data in the text file TXT with mixed digital strings
- [sciter]: encapsulate the notification bar component based on sciter
- Notes de développement du matériel (10): flux de base du développement du matériel, fabrication d'un module USB à RS232 (9): création de la Bibliothèque d'emballage ch340g / max232 SOP - 16 et Associa
- 414. The third largest digital buckle
- 0 basic learning C language - digital tube
- GD32F4XX串口接收中断和闲时中断配置
- GPS from entry to abandonment (XVII), tropospheric delay
- 二分图判定
- 2022-07-05 stonedb的子查询处理解析耗时分析
- Force deduction question 500, keyboard line, JS implementation
猜你喜欢
Seata aggregates at, TCC, Saga and XA transaction modes to create a one-stop distributed transaction solution
AI enterprise multi cloud storage architecture practice | Shenzhen potential technology sharing
GPS from entry to abandonment (XIV), ionospheric delay
二叉(搜索)树的最近公共祖先 ●●
Xiaoman network model & http1-http2 & browser cache
GPS from getting started to giving up (XIII), receiver autonomous integrity monitoring (RAIM)
墨西哥一架飞往美国的客机起飞后遭雷击 随后安全返航
Learn the principle of database kernel from Oracle log parsing
Barcodex (ActiveX print control) v5.3.0.80 free version
Management background --3, modify classification
随机推荐
Support multiple API versions in flask
Kohana database
Oracle control file and log file management
解决项目跨域问题
HDU 4912 paths on the tree (lca+)
小程序系统更新提示,并强制小程序重启并使用新版本
3DMax指定面贴图
anaconda安装第三方包
RESNET rs: Google takes the lead in tuning RESNET, and its performance comprehensively surpasses efficientnet series | 2021 arXiv
微信红包封面小程序源码-后台独立版-带测评积分功能源码
Unity3D学习笔记6——GPU实例化(1)
Anaconda installs third-party packages
GPS从入门到放弃(十五)、DCB差分码偏差
PVL EDI 项目案例
GPS from getting started to giving up (XVIII), multipath effect
网络基础入门理解
第3章:类的加载过程(类的生命周期)详解
Applet system update prompt, and force the applet to restart and use the new version
GPS从入门到放弃(十八)、多路径效应
Hardware development notes (10): basic process of hardware development, making a USB to RS232 module (9): create ch340g/max232 package library sop-16 and associate principle primitive devices