2010-06-10 81 views
14

我试着对这个问题非常谨慎。 Smalltalk中至少有三种不同的Web开发框架。最突出的似乎是海边,但也有AIDA /网络和伊利亚特。Smalltalk网页开发软件

他们似乎很相似,但这个印象可能是错误的。我不知道谁试过不同的工具,可以分享不同软件包的优缺点。

更具体的问题是,你是否知道在图书区选择使用三种(或其他)web开发框架中的任何一种的任何软件。

还有一个问题。成熟度和兼容性如何?哪一个框架可以判断为“最”稳定?

回答

11

99%的实际经验是与伊利亚特,所以我的比较主要是关于我如何选择伊利亚德而不是其他人。

  • 海边。首先尝试,它是最知名的,你第一次遇到。我发现很难理解(一如既往,不管你使用什么,当它真正实现时,你总会遇到与一般理论不符的问题),周围几乎没有文档,社区似乎不太关心告诉n00bs如何长大。我最终放弃了检查艾达。你可以在这里找到它们:http://seaside.st/并在#seaside的IRC上

  • Aida。我非常喜欢它,因为Janko非常耐心和支持。虽然这很大。当我开始实施我们的项目时,我决定使用它,在开始前几天我碰巧遇到了伊利亚特,这只是偶然。你在这里找到Aida:http://www.aidaweb.si/,在IRA上#Aida

  • Iliad。我选择它的主要原因是我刚刚放弃了Squeak并转而使用gnu-smalltalk。 gst似乎在Iliad上有很多正在进行的活动,所以我估计我可能会得到更好的帮助。它作为一个概念要小得多(尽管它绝对是一切),而且我在入门和调整到需要的时候几乎没有麻烦。它也被证明是管理良好的,因为我通过3次发布而没有遇到任何已经部署的问题。你通常可以在12-24小时内得到答案,这对我来说很好。在这里您可以找到伊利亚特:http://www.iliadproject.org/index IRC上的问题通常是渠道上的#的GNU Smalltalk的通道

我们正在做的是用于管理大型多媒体字典中的PostgreSQL数据库的图形用户界面,这反过来又产生内容(其中包括KDE-edu)。我一般都没有预订应用程序的概念,所以我无法正确回答你的问题。

然而,作为一名分析师来说,预订应用程序大多是一个带有在线GUI的数据库,所以我没有理由不能做到这一点。很大程度上取决于你的数据库如何轻松地转化为对象。您可以像我们一样使用RDBMS,并设计表来映射对象,或使用OODBMS。这两种解决方案都有优缺点,我想说,它们中的任何一个都不会对你的框架选择产生影响。

我的建议是,你需要花费一个月左右的时间进行实验,看看哪些更适合你。我不认为有一种适合每个人的工具,我们都是不同的,对我来说容易对其他人来说可能是地狱(显然,反过来也是如此)。所以在购买之前试试你的车;)

我不会花太多时间研究一般理论。使用smalltalk框架会颠倒你制作网络应用程序的方式,而你的第一个联系人将会充满你从以前的思维方式中继承的“虚假朋友”。你最好的资产肯定会是“我能够多快地掌握他们告诉我的东西”,这主要是个人的事情,取决于你和你遇到的人。所以我真的建议你在阅读太多理论材料之前弄脏自己的手。

+2

与往常一样,“社区似乎富”因人而异。我发现社区能够快速回答问题并且对新人友好。在这方面,Lukas Renggli和Julian Fitzell值得特别提及。 – 2010-06-10 09:15:21

+0

是的,这是绝对的个人体验。它也可能随着时间的推移而发生根本变化。 – 2010-06-10 10:21:48

+0

谢谢我不能评论我与AIDA/Web或Iliad程序员的经历。我只是想知道这三个框架。 – Friedrich 2010-06-10 15:27:35

10

这些框架都非常不同,并有不同的目标。合作创造某种比较会很有趣。

由于海边的一个作家,我可以只提供海边的关键特性:

  • 海边使得构建Web应用程序感觉组成传统的GUI:组件可以任意作曲和重用。组件的序列使用一系列Smalltalk语句来定义。

  • 海边有分层架构,为您提供高层次的抽象(组件,控制流,回调,生成HTML,JavaScript的一代,...)在低层次的概念(HTTP,请求,响应网址,HTML,JavaScript)。如果您需要,Seaside还可以让您完全访问低级构造。

  • 有两种海边书来帮助你开始:Dynamic Web Development with SeasideSeaside Tutorial

  • 会展提供了一个紧密集成的艺术网络技术的各种状态:的JavaScript(jQuery和jQueryUI的),SVG,RSS,HTML5,彗星(服务器推送)

  • 海边同样运行在最今天的Smalltalk平台:Pharo Smalltalk,Squeak,GNU Smalltalk,GemStone Smalltalk,大众Smalltalk,VA Smalltalk和Dolphin Smalltalk。它受到所有Smalltalk平台供应商的支持。

  • 海滨提供元模型Magritte)和内容管理Pier)业界认可的开源组件。

+0

这么多我买了书。并尝试了一些事情。 Howerver我发现了一个不同的框架,它被用于在线会计软件。 – Friedrich 2010-06-10 15:26:44

7

让我来介绍一下Aida/Web的一些优势,因为作为它的作者,我很难与其他两个框架进行比较。阿依达的优势是:

  • REST类型的URL
  • MVC支持,每个域对象可以 有自己的REST类型的URL,每个域类都有自己的网页呈现类,
  • 集成AJAX和Comet 支持,看不到传统和Ajax 之间的任何差别 编程了,
  • Tree-like control flow的GUI类 控制流程,而无需 延续
  • 大厦网页编程通过 从部件/元件组成 (基于无模板)
  • 的复杂性可扩展性和性能
  • 集成的安全性与访问 控制和用户/组管理
  • 移植到大多数的Smalltalk方言: 佳乐/菲罗,VisualWorks中,宝石 玻璃,海豚的Smalltalk/X

总理和工作阿依达的最新鲜的例子是今年的Smalltalk Google Summer of Code网站。

这是因为它是在也许一个星期 总开发它,连同编程之夏过程的并行发展, 同一时间管理这个过程,因为管理一个很好的例子。这个网站实际上是 延伸Aida/Scribo CMS,强烈使用所谓的scriblets, 也就是说,动态网站“包括”直接进入网站的内容。 通过这种方式,我能够快速支持在不断发展的GSoC过程中来自 的新想法。

+0

将Aida/Web作为GNU Smalltalk的端口吗? – mathk 2010-06-10 18:39:08

+0

如果会有一些兴趣,为什么不呢!移植Aida相对容易,但维护端口需要一定的时间。所以,如果有人想要维护Aida的GNU Smalltalk端口...... – 2010-06-11 08:34:34

1

那么,Suixo使用Seaside。看看我们定义的the GSoC projects。其比记账更多的ERP,并且目前专注于医疗保健。