我想知道哪些应用程序/ programming domain最适合Smalltalk。有人可以给我一些有用的链接,可以回答我的问题吗?
通过谷歌搜索,我了解到一些公司将其用于:
但我找不到可以告诉我哪个编程域Smalltalk-80(或Smalltalk)最适合的文档/研究论文。
一些编程领域是: - 人工智能推理 - 通用应用程序 - 财务时间序列分析 - 自然语言处理 - 关系数据库查询 - 应用程序脚本 - 互联网 - 符号数学 - 数学数学 - 统计申请 - 文本处理 - 矩阵算法
我希望你们能帮助我。我正在为我的案例研究做这件事。提前谢谢。
答案 0 :(得分:10)
这是一种通用编程语言。用Kent Pitman解释Common Lisp有用的问题:
...请不要假设[Smalltalk] 适用于动画和图形,AI, 生物信息学,B2B和电子商务, 数据挖掘,EDA /半导体 应用程序,专家系统,财务, 智能代理,知识 管理,机械CAD,建模 和模拟,自然语言, 优化,研究,风险分析, 调度,电信和Web创作 只因为这些是唯一的东西 他们碰巧列出了。
它特别适用于无法停机的应用程序 - 在不关闭服务器的情况下以深层方式(例如by changing the shape of your class)修补正在运行的服务器是非常正常的 - 或者系统非常复杂或需求快速变化
答案 1 :(得分:3)
由于Aida/Web,Iliad和Seaside Smalltalk网络框架中的创新和新方法,Smalltalk最近在基于网络的应用程序方面取得了相当大的增长。
一般来说,Smalltalk用于大多数复杂的信息系统,我只提两个:
答案 2 :(得分:3)
我的目标是将大脑转储到软件中。我发现Smalltalk非常适合这种情况。 Smalltalk可以很容易地将我的想法放在代码中。它为我的思考提供了反馈。在执行中的任何一点无限深度调试的能力只会增强我对要解决的问题的理解。然后它允许我最自然地执行我的解决方案。
Aik-Siong Koh
答案 3 :(得分:2)
我担心你会得到与Smalltalk用户一样多的答案。对于某些人来说,这是一种“生活方式”,对于其他人来说,这是一个学习过程,最终他们会在OO语言的祖父们中“束缚”。有些人正在使用他们的smalltalk作为“IT问题”的一种外壳。
对我来说,答案是应用程序开发。现在这是一个广泛的领域。正如你所知,它在软件中用得非常“经济”。这就是我正在使用它的地方。我决定将它用于与“业务”相关的Web开发项目。
答案 4 :(得分:2)
您命名的域名都适用于Smalltalk。 Smalltalk展示了其在工程时间有限而非硬件限制的系统的开发优势。
Seaside Web框架允许我们在其他技术所需时间的一小部分内创建复杂的Web应用程序。 Gemstone面向对象的数据库使我们几乎可以忽略持久性问题。
答案 5 :(得分:1)
Smalltalk通常是一种非常富有表现力,易读且易懂的语言。每当要维护大型代码库或者非专业人员需要理解代码时,Smalltalk就会闪耀。
»Smalltalk是计算机作为自我表达媒介的愿景。 ......人性化的计算机视觉,是每个人都可以使用和受益的东西。如果你想要一个自我表达的媒介,可编程性是关键,因为除非你能够让你的系统按照你想要的那样运行,否则你就是机器上的东西的奴隶。因此它非常重要,所以语言才能实现,因为它是通过语言表达自己的机器。« - Elliot Miranda
答案 6 :(得分:1)
您可以查看以下链接:http://www.clubsmalltalk.org/web/index.php?option=com_content&view=article&id=183&Itemid=117这是latam中smalltalk的使用汇编。
答案 7 :(得分:1)
我应该总结说,多年来我一直在ST编码,即94年以来,我在其他所有事情上都看过Smalltalk。
答案 8 :(得分:0)
我找不到可以告诉我哪个编程域Smalltalk-80(或Smalltalk)最适合的文档/研究论文。
这是因为Smalltalk不是特定于域的语言,而是一种通用语言。
过去曾经使用的东西:
- 作为个人计算机的操作系统语言
- 编写丰富的多媒体和近实时应用程序,如声音合成器
- 非常大的公司和政府数据处理系统,如英国的内政部大型物质查询系统,或摩根大通的许多金融交易系统
- Web应用程序,例如DabbleDB
- 创建复杂的开发工具,例如IBM的VisualAge IDE
- 在早期开发中试验和原型应用
一般来说,Smalltalk在系统复杂的地方闪耀,开发速度是关键因素,可维护性将成为关键因素。
我使用Smalltalk创建应用程序来控制,管理和分发多平台JavaScript Web应用程序。