Nil*_*nck 22 language-agnostic editing
在考虑软件工程的同时,我遇到了一个问题,为什么我们没有看到编写/记录代码的方式有任何改进.
想一想:自从我们从穿孔卡转向文本编辑以来,没有一个革命性的改进.我见过的最后一项改进是语法高亮和上下文敏感的帮助(例如Intellisense或ctags).不是我称之为革命性的东西.
这让我想知道:为什么会这样?
我会从错过的东西开始:
您能想到什么会使您的编码/文本编辑/文档任务更容易?
Ada*_*eld 30
我很惊讶没有人提到没有银子弹.1986年(!),弗雷德里克布鲁克斯预言:
无论是技术还是管理技术,都没有单一的发展,它本身承诺在十年内在生产力,可靠性和简单性方面提高一个数量级[十倍]的改进.[...]我们不能指望每两年看到两倍的收益."
在23年中,他被证明是正确的.我们已经提出了许多方法,例如语法高亮和Intellisense,它们显着提高了生产力,但肯定不是一个数量级.随着时间的推移,我们将继续进行一些渐进的改进,但事实是没有灵丹妙药:我们编写代码的方式不会有一些神奇的启示,这将提高生产力一个数量级.
dmc*_*kee 13
自从我们从打卡转向文本编辑以来,没有一个革命性的改进
从未使用过行编辑器,对吗?
但严肃地说,文本(特别是在为现代语言选择的表示中)是
任何取代它的东西必须是所有这四个属性的净胜利.不容易.
eip*_*puz 11
我不同意.我们确实有变化,但变化很小.
"for each"结构有多常见?与20年前相比.Domain Specific Languages运动怎么样?我们应该在图层中编码的想法怎么样?行为驱动的发展怎么样?通过遵守规范进行编码...当所有运行正常时,将一个好的文档写为输出.正则表达式的标准化怎么样?PCRE.什么阿兰凯的集团的"摩尔定律软件" DSL相关的工作,探索利用图表从RFC的更高级的实现开罗和产生的TCP/IP代码?
文档是双向对话.代码更容易理解,人们学习这种特殊语言.如果你懂德语,你不会说德语需要文件.我知道自然语言与计算机语言相差甚远,但是有一种运动可以让代码更具表现力.它不是关于新工具,而是关于我们如何编码.
大脑到计算机的翻译器。打字是真正的瓶颈。它实际上只需要导出我想到的算法并将其转换为机器代码。
我想说,许多较新的语言非常擅长快速创建算法。现在的改进与其说是革命性的,不如说是渐进式的。