想要提升自己code能力不知道怎么做

a154509543 2016-02-22 09:09:09
基础不够扎实,不知道怎么提升,
就好像,看别人的代码,基本能读懂,但是自己写,就感觉难度提升了
只是看书的话又感觉容易忘记,想通过敲代码或者做些什么来提升自己。
麻烦有经验的人给点建议
...全文
424 20 打赏 收藏 转发到动态 举报
写回复
用AI写文章
20 条回复
切换为时间正序
请发表友善的回复…
发表回复
赵4老师 2016-02-25
  • 打赏
  • 举报
回复
请牢记:源代码本身的书写是否结构化或面向对象或符合设计模式或敏捷…并不重要,重要的是你是否使用结构化或面向对象或符合设计模式或敏捷…的方法命名标识符、阅读、修改、检查、测试源代码。 意思是你程序结构看上去再合理,再简洁,也不一定比看上去一团乱麻的程序结构在运行或修改时更不易出错,更方便修改,出错了更容易找到哪里出错和具体出错的原因,更容易改正错误。 试对比 图书馆(对图书的分类够结构化了吧) 和 搜索引擎(可看作是扁平化任何结构数据,仅支持全文检索) 哪个处理信息更方便、更高效。 所以 与其费劲去重构代码让其看上去更简洁、更合理 不如费劲学习grep、sed、awk、……这类全文搜索和批处理编辑的工具。 结构越复杂,越难修改,越难除错。 有时(甚至大多数时候),看上去越合理、越简洁的代码,运行起来性能越差,出错时查找原因越难,找到出错原因后改正越费劲。 程序员要做的不是尽力避免错误,而是聚焦在快速发现并改正错误。真正以快速方式轻易解决错误,“快速的失败”远胜过“预防错误”。Fred George 前微软C#编辑器的开发主管Jay Bazuzi列出的一些有助于找到正确方向的问题;他觉得前同事们应该用这些问题来问自己;实际上不管在哪里工作的开发者们都应该经常问问自己这些问题: ◆“要保证这个问题不会再出现,我该怎么做?” ◆“要想少出些Bug,我该怎么做?” ◆“要保证Bug容易被修复,我该怎么做?” ◆“要保持对变化的快速响应,我该怎么做?” ◆“要保证我的软件的运行速度,我该怎么做?” 如果大多数团队都能不时问一下自己,必定会从中得益,因为这些都是真正强而有力的问题。
ri_aje 2016-02-25
  • 打赏
  • 举报
回复
引用 17 楼 a154509543 的回复:
[quote=引用 12 楼 ri_aje 的回复:] 把数据结构先写一遍,然后再到 github 上找几个热门的工程参与一下。
这个idea好像挺好 不过什么叫数据结构先写一遍 这个我不懂[/quote] 就是说向量,链表,二叉树,图,散列表,等等这些基本的数据结构都自己实现一下。仿照 stl,做成 c++ 的标准容器。基本功扎实了以后就方便了。
-bootblack- 2016-02-24
  • 打赏
  • 举报
回复
应该没有捷径吧 一个苦逼的C++新手飘过
a154509543 2016-02-24
  • 打赏
  • 举报
回复
引用 12 楼 ri_aje 的回复:
把数据结构先写一遍,然后再到 github 上找几个热门的工程参与一下。
这个idea好像挺好 不过什么叫数据结构先写一遍 这个我不懂
a154509543 2016-02-24
  • 打赏
  • 举报
回复
可能是自己太焦虑了,谢谢你们的说教,
引用 13 楼 zhao4zhong1 的回复:
[quote=引用 10 楼 a154509543 的回复:] [quote=引用 8 楼 zhao4zhong1 的回复:] 啥叫code能力?
就是有时候写的代码总是在后面编译完调试的时候发现前面有问题,有些就挺低级的,有些还是编译后就发现问题的, 可是当初写的时候没有想到,基础不够扎实的表现之一,就想在平时没事的时候,多多提高这方面,让自己code的效率不会因为这些细节影响到[/quote] 程序员要做的不是尽力避免错误,而是聚焦在快速发现并改正错误。真正以快速方式轻易解决错误,“快速的失败”远胜过“预防错误”。Fred George [/quote] 有时候是错了以后还是会犯错 解决错误倒是可以 就是想着平时自己细心点吧 可能是基础不扎实又粗心的原因导致我的代码总是被人诟病
a154509543 2016-02-24
  • 打赏
  • 举报
回复
结贴了 谢谢大家的指路
707wk 2016-02-24
  • 打赏
  • 举报
回复
看你以后往哪方面发展
赵4老师 2016-02-24
  • 打赏
  • 举报
回复
引用 10 楼 a154509543 的回复:
[quote=引用 8 楼 zhao4zhong1 的回复:] 啥叫code能力?
就是有时候写的代码总是在后面编译完调试的时候发现前面有问题,有些就挺低级的,有些还是编译后就发现问题的, 可是当初写的时候没有想到,基础不够扎实的表现之一,就想在平时没事的时候,多多提高这方面,让自己code的效率不会因为这些细节影响到[/quote] 程序员要做的不是尽力避免错误,而是聚焦在快速发现并改正错误。真正以快速方式轻易解决错误,“快速的失败”远胜过“预防错误”。Fred George
赵4老师 2016-02-24
  • 打赏
  • 举报
回复
至于运行效率,参考下面: 无profiler不要谈效率!!尤其在这个云计算、虚拟机、模拟器、CUDA、多核 、多级cache、指令流水线、多种存储介质、……满天飞的时代!
ri_aje 2016-02-24
  • 打赏
  • 举报
回复
把数据结构先写一遍,然后再到 github 上找几个热门的工程参与一下。
a154509543 2016-02-23
  • 打赏
  • 举报
回复
引用 8 楼 zhao4zhong1 的回复:
啥叫code能力?
就是有时候写的代码总是在后面编译完调试的时候发现前面有问题,有些就挺低级的,有些还是编译后就发现问题的, 可是当初写的时候没有想到,基础不够扎实的表现之一,就想在平时没事的时候,多多提高这方面,让自己code的效率不会因为这些细节影响到
forget0915 2016-02-23
  • 打赏
  • 举报
回复
多动手才是王道,看经典C++书可以把书上的习题都做了啊
paschen 版主 2016-02-23
  • 打赏
  • 举报
回复
引用 2 楼 a154509543 的回复:
[quote=引用 1 楼 paschen 的回复:] 建议先静下心,把基础书读透,然后再来写代码,遇到问题多思考
可能是太着急吧,就是想通过写代码的时候来夯实基础[/quote] 也可以先写点简单的小程序,然后在学的过程中不断完善
零下12度半 2016-02-23
  • 打赏
  • 举报
回复
多用小脑和手,不是大脑和手吗?
ztenv 版主 2016-02-23
  • 打赏
  • 举报
回复
一步一步来吧,从头看书,你看别人代码的懂估计是你自己认为的懂
qq20004604 2016-02-23
  • 打赏
  • 举报
回复
我觉得是写太少。从简单的入手,然后逐渐复杂。读得懂不代表真懂,也许是知道什么意思,但是为什么这么用也很重要。其原理,能不能拓展,能不能换个方法达成同样的结果,能不能用自己的思路把看懂的写出来,达成同样的效果。如果能,我觉得才是真懂了
赵4老师 2016-02-23
  • 打赏
  • 举报
回复
啥叫code能力?
赵4老师 2016-02-23
  • 打赏
  • 举报
回复
计算机组成原理→DOS命令→汇编语言→C语言(不包括C++)、代码书写规范→数据结构、编译原理、操作系统→计算机网络、多用小脑和手,少用大脑、眼睛和嘴,会更快地学会编程!
a154509543 2016-02-22
  • 打赏
  • 举报
回复
引用 1 楼 paschen 的回复:
建议先静下心,把基础书读透,然后再来写代码,遇到问题多思考
可能是太着急吧,就是想通过写代码的时候来夯实基础
paschen 版主 2016-02-22
  • 打赏
  • 举报
回复
建议先静下心,把基础书读透,然后再来写代码,遇到问题多思考

64,266

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧