随着每个新的Squeak/Pharo图像,我立即将字体更改为某些原生版本.这是很多鼠标点击,我想编写过程脚本.
我最近读到git/github支持已被添加到Monticello.
我还看到一些在github上发布的Smalltalk项目.喜欢:
https://github.com/timfel/ratpack
我的问题:
目前我正在学习Smalltalk.我这样做是因为我想在一周内尽可能多地学习一门新的编程语言,以提高我的技能.下周我会尝试其他的东西.
到目前为止,我能够阅读Smalltalk代码,但我的写作经验非常有限.您能否推荐我任何小型项目,以帮助我在短时间内更好地理解这种语言?
如何在Squeak中编写GIU?我是Smalltalk的新手,我现在正在使用Cincom的VisualWorks,但我想尝试一下Squeak.我看到Squeak有Morphic的图形,但对于我的生活,我似乎无法找到一个编写基于MVC的GUI的包.
model-view-controller user-interface smalltalk visualworks squeak
我只是阅读python类文档,它说,在python"类本身就是对象".如何与C#或Java类不同?这类类与C#或Java相比有哪些优缺点?
考虑类中的以下方法Juicer:
Juicer >> juiceOf: aString
| fruit juice |
fruit := self gather: aString.
juice := self extractJuiceFrom: fruit.
^juice withoutSeeds
Run Code Online (Sandbox Code Playgroud)
它生成以下字节码
25 self ; 1
26 pushTemp: 0 ; 2
27 send: gather:
28 popIntoTemp: 1 ; 3
29 self ; 4
30 pushTemp: 1 ; 5
31 send: extractJuiceFrom:
32 popIntoTemp: 2 ; 6 <-
33 pushTemp: 2 ; 7 <-
34 send: withoutSeeds
35 returnTop
Run Code Online (Sandbox Code Playgroud)
现在请注意,32和33取消了:
25 self ; 1
26 pushTemp: 0 ; 2 …Run Code Online (Sandbox Code Playgroud) 我刚在大学开始学习 Smalltalk。
我想知道消息&和之间的区别and:(就像|和or:)
我现在已经进入Smalltalk学习航行了几个月.我知道,Smalltalk从一开始就有几种"方言"(也许"方言"不是最好的词),但我的意思是VisualWorks,Squeak和Dolphin只提三种.到目前为止,我限制了我对Visualworks和Squeak的尝试.但我现在已经发现Squeak似乎是变形(双关语!)到其他几个变种,如Tweak,Pharo,Cobalt和Croquet.
有人可以解释一下:a)为什么会出现这些举措(Tweak,Pharo,Croquet和Cobalt)?b)我应该花点时间跟上 - 记住我是一个Smalltalk新手吗?c)为什么这种不受欢迎的语言会发生如此充满活力的发展?d)我是否应该注意其他举措?(作为初学者而不是计算机研究员)
有没有办法将自己(这个)与Java中的其他对象交换?
在Smalltalk我们可以写
Object subclass:myClass [
"in my method I swap myself with someone else"
swapWith:anObject [
self become:anObject.
^nil
]
]
myClass subclass:subClass [
]
obj := myClass new.
obj swapWith:subClass new.
obj inspect.
Run Code Online (Sandbox Code Playgroud)
结果An instance of subClass显然是.
我需要在Java中做以下事情:
那么,简而言之,我如何在Java中实现self become: (someClass new:someParameters)?我可以使用一些已知的设计模式吗?