我喜欢将代码行保持在80个字符以内,因为:
- 我不必进行任何水平滚动;
- 我知道如果超出此限制,该行可能太复杂了;和
- 它可以很好地打印在纸上。
关于后者,我只遇到了几个实际打印出代码以供查看的人(我就是其中之一)。那么打印代码有多普遍?
我喜欢将代码行保持在80个字符以内,因为:
关于后者,我只遇到了几个实际打印出代码以供查看的人(我就是其中之一)。那么打印代码有多普遍?
Answers:
我仍然偶尔会打印出代码-但前提是这是一个特别棘手的问题。
它通常表明代码太复杂并且需要重构,因此,首先要进行涂写可以帮助发现并解决问题,然后帮助确定应该在哪里拆分代码。
有时,您可能需要仔细查看一些代码(通常对您来说是新的),而在这些代码上您基本上需要同时看到很多内容。这样一来,您可以一次查看整个内容,而打印输出将非常宝贵。
结合使用荧光笔和红色和绿色的笔,它确实有助于获得概览。您放在纸上的笔记随后会以某种形式添加到代码中。
注意,使用现代彩色打印机,您也可以在纸上获得语法着色。这确实是一个很大的帮助,强烈建议您这样做。
(我还打印了阅读规范-即在页边空白处放置笔记。)
有时我打印它以在火车上阅读并做笔记。卡住时,我喜欢将其散布在安静的会议室的桌子上。不确定是否真的有帮助,但是这是一个不错的改变。
另一个:发现一些旧代码,这些代码是多嵌套的If / Then语句,无法在屏幕上显示。他们应该解雇写这封信的前程序员,但是那样我就失业了;)
当我十几岁的时候上高中时(现在21岁),我家里没有互联网连接。因此,我经常打印出代码示例和各种API文档,以带回家。
旁注:令人惊讶的是,只要您已经拥有所需的信息,就可以在没有Internet连接的情况下完成更多的工作。
那么打印代码有多普遍?
多年前,在DOS编程时代,80个字符正好填满了打印页面。那时我们有了矩阵打印机,因此限制可能在硬件方面。这也是控制台屏幕上的限制。
如今,人们几乎根本不打印代码,唯一的例外是很少的代码片段被打印为求职面试的测试示例。
如今,人们大多使用大型显示器,Full HD等显示器。我通常会拉伸到150-200个字符,而不会考虑任何打印副作用。
在团队讨论的时候,通常有人会拿起笔记本电脑并将其连接到投影仪。同样,没有人打印代码。
我上次打印代码大约是8年前的大学文凭了,我敢肯定没有人读过-我的意思是代码:-)。从此不再需要。
有时我会打印代码,因为我是在较小的(15英寸)单显示器上。有时我需要组合两个程序,并且很难在它们之间来回切换。尽管在必要时我不经常这样做。 。
我偶尔会在纸上打印我的代码,并且只有在我想进行一些认真的脱机调试或熟悉其他人的代码时才这样做-因此出于礼貌,可能值得这样做。
另外,与代码相比,我可能更倾向于在纸上打印出数据库模式。
我认为水平滚动问题是一个更大的麻烦,并且是保持小于120个字符左右的原因。
有时,我打印代码来尝试解决棘手的多页问题。
我发现如果可以打印出较大的模块并快速查看各个部分,则更容易找出它们。我可能会对多台显示器执行类似的操作,但是如果要查看的代码中有2-3个以上的地方,将其全部散布在一个地方比保持滚动和跟踪书签要快得多。我还喜欢用更改标记打印输出,而不是在编辑器中进行更改,因为我可以并排看到旧代码和新代码。当然,我可以在编辑器中注释掉旧代码,但是如果要替换的行数多了,则最终会在监视器上滚动旧代码,因此效果再好不过了。
也就是说,我几乎再也不会打印代码了。在折页纸上很棒,整个清单都是连续的,并且您在页边空白处有足够的空间来放置便笺,但是将所有内容打印在单个信纸大小的页面上几乎就像将其保留在屏幕上一样糟糕。尤其是当您的编辑人员坚持将页眉和页脚放在1英寸的空白处时。幸运的是,现代IDE提供了许多工具,可减少打印内容的需要。
上述答案略有不同。
我是一名学生,我发现自己可以打印各种课程作业的代码,而不是为我必须编写代码的每个单元打印代码。
在我任职的第一年,大多数单位除了需要进行电子上传或将副本刻录到CD之外,还需要纸质副本(是的,是5 Mb zip文件的CD ...)[讲师的选择]
我目前正在第二年,到目前为止,我们只有一份电子上传文件,以及一份Hardcopy + CD上交文件。
考虑到我们拥有允许以电子方式提交课程作业的Moodle,这就是为什么我们不总是上传代码的原因超出了我-我们必须付费才能在大学打印机上打印出来,而且任何一台PC上都没有一个CD刻录机我所知道的。当然,讲师不喜欢Moodle-但这完全是另一个问题。
顺便说一句,我是英国的大学生,而不是一个陌生的小家伙。当我上次查看时,根据《泰晤士报》 /《卫报》,我排在Uni的前十名。
我有时会打印出毛茸茸的代码,以试图解决它。调试“怪异”东西时,我还打印了反汇编。
我一直在打印我的代码,但这只是因为我是一名学生,需要这样做才能将其交给老师。
但是,因为我可以访问多个监视器(就像任何优秀的开发人员一样),所以在很多情况下我不需要打印出源代码以供参考。我曾经打印出我用来填充数据库的脚本之一,以便一眼就能看到该架构,但是我似乎并没有使用太多。