您好我在工作中使用AS3很多,但我来自Java / C / C ++教育并且发现该语言非常严格。
AS3世界似乎有两个基本阵营:
AS3似乎挫败了两个阵营:
主要creative阵营认为AS3比AS2更多的工作(并且它们是正确的)并且他们没有看到移动的重点,当需要的好处,但复杂性增加和学习曲线比较陡峭。
主要technical阵营发现AS3存在于Javascript和Java之间的某种不确定性,并且只有一半实现概念。
我对技术上的想法有所了解,但我认为这不是现在最重要的问题。为什么Adobe会让AS3更具技术性?它没有被其原始用户中的大部分用户采用。
所以我的问题是Adobe和用户社区如何才能推动AS3向前发展,不仅在技术上,而且作为一个完整的工具,所有用户都希望采用它?
我的一个想法是,AS3应该考虑如何再次成为更多的脚本,但保留打字。可能通过Scala中的类型推断。 而且要停止关注Java,就像它是语言设计的顶峰一样,开始考虑典型用户试图解决的问题。
答案 0 :(得分:5)
答案 1 :(得分:2)
我倾向于不同意,因为我非常喜欢这种语言。我们需要意识到的一件事是技术人群想要的一些功能是VM功能而不是语言功能(例如线程)。
语言需要对开发人员友好,而不是现在的艺术家友好。 Flash已经从网站介绍,矢量动画片,广告横幅和简单游戏中走了很长一段路。通常在我的日常工作中,它被用于构建自定义的内部应用程序。这些具有完全不同的约束,并且需要AS3中引入的语言特征(例如,名称空间,强类型)。我参与了9个以上的开发团队。 Javascript 并不是为了处理如此大规模的开发 - 这就是为什么Google使用GWT来编写可编译为Javascript的Java代码的原因。
肯定有一些features of ES4让我非常兴奋。例如,泛型函数(基本上是方法重载),参数化类型(基本上是泛型),生成器(使用yield
)和let
,type
,like
,{{1} }和unit
个关键字。我很失望并且因为ES3.1 / ES5规范的淡化而被杀死(我认为这更具政治性而不是技术性)。我希望Adobe具备将该规范实现为AS4所需的远见卓识。
答案 2 :(得分:2)
也许你应该看一下Haxe。
它定位于FlashPlayer(以及其他一些平台),并提供更高级的语言AS3
。因为它是开源的,所以在语言和编译器中肯定会有更多的开发。
答案 3 :(得分:2)
所有这些答案的摘要将是:
关于Adobes计划推动AS3前进的信息几乎没有。人们可能会认为他们会遵循ECMA规范,但这本身就是一个政治动荡,所以我猜Adobe正等着看这一切是怎么回事。
至于语言越来越简单,就像对兼职/功利性程序员更容易理解。这似乎不太可能,因为Flex的目标是赢得Java的人,因此,人们会认为AS将继续致力于让Java程序员感到舒适。
完全使用Thermo / Flash Catalyst将设计师与代码分离似乎是Flash开发团队中程序员/设计师关系的最有可能的未来。
Haxe团队正在努力使Flash Player更具表现力和更少限制性的体验。但是,据我所知,他们没有得到Adobe的支持。因此,似乎Adobe对于为Flash Player开发人员提供更多语言选择并不感兴趣。
如果它能够接近Flash Player插件的市场覆盖范围,那么Silverlight可能会给Adobe带来巨大的恐慌并迫使它使AS成为一种更具表现力/专业性的语言。由于Silverlight应用程序可以在功能强大且专业的IDE,Visual Studio(而不是基本的Flex Builder插件)中开发。而C#是首选语言,这使得AS3在许多领域看起来非常有限。总而言之,Adobe对AS3的未来充满了关注,并且语言的发展过程是闭门造车的。所以在完成时,只有Adobe才能真正回答问题,AS3在哪里?
答案 4 :(得分:1)
我认为ActionScript将向C#发展。我之所以这样做,是因为我也相信我们会看到更多大型网站完全采用Flash / Silverlight制作。一旦你有一个真正的团队与图形艺术家和编码人员一起工作,C#将节省很多钱。在C#中开发和调试更复杂的应用程序有更好的工具和可能性。
您可以使用新的Flash Catalyst / Flash Builder Premium设置来查看它,其中图形和代码最终被正确分隔,同时仍允许艺术家“做他们的事情”。
我相信Adobe也会尝试通过一些脚本知识来保持设计师的用户群。但如果他们愿意,他们仍然可以在AS2中写。这就是为什么他们(据我所知)将保留Flash Professional IDE,并使用比Catalyst更先进的图形工具。
所以,当AS4即将到来时,我很想看到泛型和方法重载等内容。但它永远不会成为C#。
正如你可能猜到我在技术阵营;)但是从专业角度来看,我只是看不到同一个人设计和编码的未来。所以我认为Adobe不应该考虑对ActionScript的“创意”阵营的意见。你不会问编码员颜色选择应该如何工作;)
答案 5 :(得分:0)
不确定影响Adobe(虽然你可以试试Dear Adobe!)但是有很好的框架正由用户社区开发,如PureMVC。它在某种程度上使AS3更具技术性,可以说,并将视觉效果与逻辑分开,这样设计师就可以享受更“创造性”的体验。
答案 6 :(得分:0)
我来自第二阵营,但我并不感到沮丧 - 事实上,我对今天的语言非常满意。如果有什么让我感到沮丧的话,那就是Flash和AIR运行时所施加的限制,以及Flex和AIR API的大小,但ActionScript语言本身就是如此。
当然,我经常对“缺失”的东西感到恼火 - 用户暴露的线程支持非常好,方法重载,抽象类,真实枚举等等 - 但总的来说我很容易找到ActionScript最灵活的语言,作为一种我曾经使用过的语言。我喜欢我的C#和Java,但相比之下,两者都感觉更加僵硬。