我是Squeak和Smalltalk的新手但不是一般的编程(我有一些Python经验).
我理解Squeak环境中存在的各种工具,如工作区,系统浏览器以及Smalltalk语言结构.我理解它们是如何孤立地工作的,但我不确定如何将它们作为一个整体使用.
我的问题是在Squeak开发时的典型工作流程是什么.据我了解
I open squeak.
I create a Class in the System Browser.
I then write/test/execute code in the Workspace, adding methods
to my class based on the code I tried out in the Workspace.
Rinse and repeat for other classes.
Run Code Online (Sandbox Code Playgroud)
以上是典型的小公司,或者是我错过的东西.其他一般提示/陷阱(如果有的话)将不胜感激.
谢谢.
顺便说一句,我确实搜索了这个并阅读了一些教程,但没有得到任何令人满意的答案,所以没有lmgtfy链接请;)
你所描述的我称之为个人发展风格.由于没有明确的方式你应该如何发展它很难说.
但你所描述的是可行的选择.特别是如果不清楚事情是如何真正融合在一起的话.Smalltalk拥有您拥有所有物品的力量.因此可以在工作区中尝试它.如果你得到一个关于它应该如何工作的线索,现在是时候将你的代码放入方法中了.同时编写测试是个好主意.在工作区中,您使用示例值测试了代码.这完全是一个考验.当你将没有值的代码放在方法中时,你可以将带有示例值的方法的用法放入测试中.测试可以帮助您识别在构建整个事物时是否更改了基本内容.
我使用的另一种开发方式是使用检查器.特别是如果你从网上取东西这很容易做到.假设您从网络中检索来自Web api的xml.在工作区中,我发出url fetching命令并在结果上打开一个检查器.在检查员中,我开始解析结果,在每个单独的处理步骤中,我打开另一个检查员,直到我得到了我想要的结果.从那时起,所有检查员都堆叠在一起.您只需从最后一步开始从每个检查器创建方法,然后关闭检查器,使用下一个检查器并从中创建方法等.
最后很多开发人员喜欢使用调试器进行开发.您只需编写代码,就好像它已经存在一样.您可以在调试器中更改代码,并且可以重新启动当前方法的当前执行.执行它可以获得下一个调试器.您添加下一个所需的方法,然后继续该程序.你得到下一个调试器等.
你看,有很多可能的风格.但哪一个最好是你的个人意见.
我通常使用三个窗口打开:两个浏览器和TestRunner.我写了一个测试来弄清楚我想如何与对象交谈 - 如果你愿意,可以使用它的API.然后我运行TestRunner,确保测试因我期望的原因而失败.
我会做两件事之一 - 在调试器中直接编写我需要的新方法,然后重新启动测试直到它为绿色,或者转到第二个浏览器并编写我需要的方法.
我偶尔会使用Workspace,主要是作为一种暂存器,就像人们可能会使用Python的REPL一样.如果您编写了类侧#initialize方法,则可能需要从Workspace重新初始化类.
TDD 也是开发 Smalltalk 的一种选择。Squeak 随 SUnit 一起提供。
您可以通过运行测试来组合 TDD 和调试器(由于您尚未编写该方法,该测试会失败),因此您使用调试器创建该方法,然后单步执行该方法并编写足够的代码以使测试通过。
| 归档时间: |
|
| 查看次数: |
486 次 |
| 最近记录: |