App building for a beginner in Smalltalk
I am a newbie to Smalltalk technology. My experience in programming is with C and C++. I would like to understand the design methodology of smalltalk. Could any one suggest some simple real-time apps developed开发者_运维技巧 in smalltalk which can help a beginner like me to explore into avenues of smalltalk. Currently I am experimenting my smalltalk learning on Pharo.
One of the best resources for learning Smalltalk is almost endless browsing of the Smalltalk image under your finger tips using class browser. Almost whole language and IDE implementation is available for browsing, end even debugging. At the beginning it can be overwhelming, at least it was for me, but it is well worth of effort. Just do not expect to groak it whole in few evenings. And if you are really curious, in Pharo and Squeak you can even browse and hack your own VM.
As for other resources, if you can get hold of "Smalltalk Design Patterns" by Kent Beck, I whole heartily recommend it. Stephane Ducase has compiled collection of free Smalltalk books: http://stephane.ducasse.free.fr/FreeBooks.html . Although not updated for quite some time, late David N. Smith Smalltalk faq is still brilliant in exposing many not so obvious angles to new comers, and also to some less sharp regulars like me.
For real time apps, I do not think there are some hard core real time apps like driving the ignition of combustion engine. But there are many close to real time apps, for instance I have worked on stock exchange trading system written in Smalltalk, but it I am afraid it is proprietary. As for very simple examples, I think Seaside includes Comet counter demo, and I think Dolphin Smalltalk still includes chat example.
As closing remarks, you will find that everything in Smalltalk is, well small. From methods to design. So small that in the first moment you start to wonder ok, everything is simple and obvious but where is the "real stuff"? It takes time to accept that in Smalltalk the real stuff is in that small stuff an its interaction. It is a bit of a stretch but Smalltalk is to extent Haiku like :)
Good luck and keep it small!
I'd guess that Pharo is by now most widely used for building web apps, and as a research platform. Check out Seaside, to see how to build web apps with Pharo. Download Seaside's one click image, and look at the Sushi store inside.
If you're intending to build more traditional GUI apps, that's possible. But it's becoming increasingly niche. Here's how to deploy apps built in Pharo.
I recently started using Pharo myself. Just find something you'd like to do, that's reasonably simple, and figure out how to do it with the tools at your disposal. For instance, I started rendering fractals and animating image transitions with the help of (for example) the Form and Matrix classes.
You might also want to join one of the Pharo listservs because they are awfully nice to beginners like ourselves, and just as helpful.
Also: start reading Pharo by Example. And realize that a lot of Squeak documentation carries over into Pharo, because Pharo forked from Squeak. (Too bad they don't have Complex numbers in Pharo yet.)
I reccomend getting yourself a copy of Squeak. While "Squeak" is a dialect of Smalltalk, I'd highly reccomend going through the free to download pdf book Squeak By Example. One more book which is perhaps the "Daddy" is Smalltalk 80, aka "the Blue Book". CHEERS
精彩评论