写点什么

LiveRun——让 REPL 更进一步

  • 2008-11-26
  • 本文字数:486 字

    阅读完需:约 2 分钟

REPL(Read-Eval-Print-Loop)是一种有趣的编码方式。相对于先编写好所有代码,然后再运行的方式,你可以在片段(fragment)中编写代码。每个片段都建立在之前的一个片段之上,这样就无需重新设置环境了,而典型的编写—构建—运行(write-build-run)循环中每次都需要重新设置环境。对于大多数.NET 开发者来说,唯一一种真正的 REPL 式的代码就是 SQL。

当然,Visual Studio 中有 Edit-and-Continue,但其功能实在有限,同时有很多情况会导致运行时出问题,这时就需要重新构建并开始了。你不能仅仅将 REPL 添加到.NET 中就万事大吉了,因为还有很多像 REPL 这样的功能选项存在。Lucian Wischik 使用其 LiveRun 插件展示了这种情况。

LiveRun 会获得当前文本窗口中的所有代码,将其编译到一个临时目录中,然后运行它。过一会儿,它会重复该过程。在整个处理过程中它不会打断开发者的思路。

这么做有什么好处呢?主要是为了在现场观众前编写演示程序。相对于要常常停下来去运行程序的做法,通过这种方式,观众可以立刻看到改变的效果。

Lucian Wischik 在其博客上提供了 LiveRun 的全部源代码

查看英文原文: LiveRun – Taking REPL One Step Sideways

2008-11-26 23:56921
用户头像

发布了 88 篇内容, 共 269.2 次阅读, 收获喜欢 8 次。

关注

评论

发布
暂无评论
发现更多内容

技术三板斧:关于技术规划、管理、架构的思考

阿里技术

技术管理 技术人生 内容合集

高质量的缺陷分析:让自己少写 bug

阿里技术

技术管理 技术人生 内容合集

百度API接口智能化测试探索与实践

百度开发者中心

自动化测试 API测试 智能化测试

PMI 的野望

Franklin 许峰

DevOps 敏捷 Lean 规范敏捷 PMI

联想企业科技集团与京东耀弘签订战略合作协议 实现合作发展新跨越

科技大数据

EMQ X 企业版 v4.4.0 发布:新增三项集成支持、增强异常诊断能力

EMQ映云科技

云原生 物联网 IoT mqtt 规则引擎

如何写好代码?

阿里技术

技术管理 技术人生 内容合集

Python爬虫实战,pymysql模块,Python实现抓取音乐评论

Java全栈架构师

Python MySQL 数据库 程序员 面试

一种播放远程TS格式媒体文件的新方案

Changing Lin

12月日更

三年磨一剑,高德体验优化总结

阿里巴巴终端技术

ios android 性能优化 移动开发 客户端

热门招聘丨 XTransfer史上最全产品技术岗位公开招聘

XTransfer技术

产品 技术 招聘 XTransfer

EasyRecovery的高级设置如何使用

淋雨

数据恢复 EasyRecovery

一周信创舆情观察(12.13~12.19)

统小信uos

技术人如何自我成长?

阿里技术

技术管理 技术人生 内容合集

恒源云(GPUSHARE)_文本数据扩增时,哪些单词 (不) 应该被选择?

恒源云

深度学习 语音识别 语义

Flutter 应用程序中使用 GridTile 小部件

坚果

28天写作 12月日更

Flutter 高性能、多功能的全场景滚动容器原理与实践

阿里巴巴终端技术

flutter 移动开发 客户端

2021年SASE融合战略路线图(一)

devpoint

SD-WAN sase 12月日更

关于写文章的一点经验

阿里技术

技术管理 技术人生 内容合集

揭开神秘面纱,如何组织一次分布式压测

博睿数据

第七模块总结

张靖

#架构实战营

计算机网络体系结构

淡泊明志、宁静致远

TCP 网络结构

【12月日更】浅谈Golang两种线程安全的map

小梁编程汇

golang 缓存 高性能 并发 多线程安全

【浅谈黑客与学习思路】黑客的种类和行为,初学者应该怎样学习

H

黑客 网络安全 信息安全

让“美”势不可挡,DataPipeline助力全球知名化妆品企业数字化营销再提速

DataPipeline数见科技

大数据 中间件 数据融合 数据迁移 数据管理

安装TortoiseGit教程 手把手教学

Z.

git 工具 安装 Tortoisegit

百度翻译十周年:核心技术持续领先,日翻译量超千亿字符

科技热闻

Typora + picGo实现插入图片上传gitee图床

zdd

多行内容超出...显示的终极解决方案

CRMEB

如何优雅的关闭 Java 线程池

淡泊明志、宁静致远

线程池

王者荣耀商城异地多活架构设计

张靖

#架构实战营

LiveRun——让REPL更进一步_.NET_Jonathan Allen_InfoQ精选文章