首页
学习
活动
专区
圈层
工具
发布

我们一直谈论“写代码”,但你会“读代码”吗?

这个说法有可能会带来一点点误解,让人觉得如何“写”是学习编程要解决的主要问题。但事实并非如此。尽管最终代码要在键盘上敲出来,但这个过程在开发中的实际时间占比可能要远远小于你的预期。...编写之前的设计,编写之后的调试,以及阅读他人的代码,这些会花费比“写”更多的时间。 关于调试 debug,我们在上一篇文章 开发5分钟,调试2小时 - 你的问题在哪里? 里已经有所介绍。...找本设计模式的教程学一学(推荐《Head First Design Pattern》),再阅读代码,你会更容易理解别人为什么这么设计。 4. 选个趁手的编辑器。...另外说句,折叠代码是个好功能,会让你更清晰地观察代码结构。这些 PyCharm 都可以给你,相关介绍可在公众号对话里回复关键字 pycharm ? 5. 尝试动手修改。...譬如我们的教程里有个 pygame 做的打飞机游戏,有些同学看了就会想,我能不能把子弹改成三排,能不能把敌机改成会左右移动等等。这样就会比你简单地看一遍再照抄一遍好很多。 6. 默写,对比。

1.6K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Java 会走向晦暗吗? Kotlin 会取而代之吗

    Java会逐渐趋于衰落?并且会有很多不同的语言取而代之吗? ? 似乎JavaScript是目前流行的唯一一种真正护城河的语言,因为它在浏览器中运行,可能因为WebAssembly而消失。...但是Kotlin是第一个真正被创造成为更好的Java的人,而且如果你习惯于编写Java8风格的代码,你会非常快速地接受Kotlin并坠入爱河。...正如其他人所说的那样,Kotlin可能会替代Java,因为它几乎可以完成Java的所有工作,只需少量代码(如果我错了就纠正我) - 网络应用程序,后端程序,Android应用程序等等...... 11....对我来说很烦人,不时有人会提出java已死的主题。虽然这只是普通的无知话题,但是听到java语言消失的时候更让我烦恼,不是因为它是不是真会这样,而是因为谁更关心?...请注意,同时java语言的确会慢慢演变。 12. Ruby很活跃,Python擅长数据科学、人工智能和ML而飙升,Java活得很好(可能不太适合新的Android应用程序,就是这样)。

    1.3K10

    你真的会 C 语言吗

    你知道是什么原因出现这个错误吗?这就是检验你功底是否扎实的时候了,先仔细看看代码,好好想一想再继续往下看。 ... ... 怎么样,知道是什么原因导致这段代码出现了我们预料之外的错误了吗?...因为之前定义形参的时候将 length 定义为无符号整数,所以 C 语言将计算结果按照无符号整数解释,得到的十进制数字为 4294967295(2^32 - 1)而不是我们想要的 -1,循环时 i 初值被赋为 0 ,一直小于这个数...,所以循环会不断地进行,代码将试图访问数组 a 的非法元素,导致内存访问异常。...原来我一直觉得学那些枯燥无味的计算机基础知识没用,但是越往前走越发觉计算机基础知识很重要。书到用时方恨少,出了 bug 找不到。

    1.3K20

    css加载会造成阻塞吗

    可能大家都知道,js执行会阻塞DOM树的解析和渲染,那么css加载会阻塞DOM树的解析和渲染吗?接下来,我就来对css加载对DOM树的解析和渲染的影响做一个测试。...这样,我们对资源的下载速度上限就会被限制成20kb/s,好,那接下来就进入我们的正题 css加载会阻塞DOM树的解析渲染吗? 用代码说话: 会阻塞js运行吗? 由上面的推论,我们可以得出,css加载不会阻塞DOM树解析,但是会阻塞DOM树渲染。那么,css加载会不会阻塞js执行呢? 同样,通过代码来验证. 会阻塞Dom的渲染的。 由于js可能会操作之前的Dom节点和css样式,因此浏览器会维持html中css和js的顺序。因此,样式表会在后面的js执行前先加载执行完毕。...那么,正如我们上面讨论过的,css会阻塞Dom渲染和js执行,而js会阻塞Dom解析。

    1.7K20

    开源会走上违心之路吗?

    Mike Melanson 在他的 New Stack 专栏中写道: 这场危机就好像有人在对开源社区说“我早就说过会这样”——开源社区原本以为自己几乎不花什么钱(甚至完全不花钱)就可以一直支持和维护各种项目...甚至对于一些人来说,开源一直是他们职业生涯中的一个关键环节。...36% 的受访者表示他们会培训工程师为开源项目做出贡献,低于去年的 42%。 这表明支持开源产业的各种新机制和机构的发展,与实际的工作之间存在脱节。...这些问题如果不能解决,可能会让行业的未来更加无趣,人们的参与和协作变得更少。...但它也产生了新的问题:这种方法会破坏真正的“开放性”吗?它可以扩展以应对我们面临的根本挑战吗?

    41910
    领券