【问题标题】:TypeScript XAML framework [closed]TypeScript XAML 框架 [关闭]
【发布时间】:2012-12-15 08:12:03
【问题描述】:

作为一名 .NET/XAML 开发人员,我想知道是否有人开始编写一个框架来替代 Silverlight 和 Flex,使用 TypeScript 和 XAML 等技术来生成 HTML5、JavaScript 和 CSS 跨平台桌面应用程序或 RIA。

如果不是,那么拥有一个可以理解 XAML(或只是 XML)的框架来定义用户界面和 JavaScript 或更好的 TypeScript 来编写视图控制器不是很好吗?

我知道,Sencha 在构建称为 EXT JS 的 JavaScript 框架以构建富互联网或桌面应用程序方面做得非常出色,但从 .NET 开发人员的角度来看,EXT JS 很糟糕。
.NET 开发人员喜欢使用 Blend 或 Visual Studio 等工具设计 UI,这些工具能够破解 XAML 而不是 JSON 中的代码。

还有一种称为Zebra 的好方法,它完全在 html-canvas 内呈现,但它不是基于 XAML 的,根本无法使用主题。

从 HTML 开发人员的角度来看,jQuery UI 和 jQuery Mobile 也是很棒的框架,但我正在寻找一个基于 XAML 的框架,因为你必须在 XAML 中编写比在 HTML 中更少的代码。还可以使用 Blend 来设计 UI。

几个月前,当 Adob​​e 放弃 Flex 而微软不承认扩展 Silverlight 5 时,我问过自己这个问题,我回答说:
Microsoft 或 Adob​​e 应该为我们做这件事。

但今天我认为现在取决于我们。

根据您的反馈,我想启动这样一个框架作为一个开源项目,但我希望还有一个在路上^^

【问题讨论】:

    标签: javascript .net xaml ria typescript


    【解决方案1】:

    您实际上并不需要 XAML 来编写 HTML 应用程序,因为 XAML 实际上只是另一种标记。

    根据您的 WPF/Silverlight 经验,您会发现以下概念实际上是从 HTML 中借用的:

    • XAML 是内容标记,HTML 就是这样
    • 资源是样式和行为,这就是 CSS 的含义

    某些部分实际上并不直接映射,例如,您的 WPF 程序中的某些触发器可能是 Web 应用程序中的 CSS 或 JavaScript。此外,在 HTML 中使用的属性比我在 WPF 中看到的要少 - 通常所有尺寸和布局都放在 CSS 中,而不是标记中的属性。

    您可能无法直接替换每个可用的 WPF 控件,但您会发现大多数事情都是可能的。

    虽然如果您没有广泛使用 HTML、CSS 和 JavaScript,学习它们会涉及到一个学习曲线,但它们是您工具带中的有用工具。

    【讨论】:

    • 我已经体验 HTML 很多年了,所以我知道什么是可能的,什么是不可能的。但在我看来,在 XAMl 中编写代码会容易得多,因为与使用 HTML 相比,您必须编写更少的代码。此外,可用的 HTML 工具大多以网页为中心。我的目标是创建跨平台的桌面和移动应用程序。我不愿意完全使用 XAML 编写应用程序。因此,您有很好的工具,例如 Blend 或 Visual Studio。所以手写 HTML 根本不是一种选择。
    【解决方案2】:

    还有基于 XAML 的 rAppid:Js http://www.rappidjs.com,但它不适用于 Visual Studio 或 Expression blend。

    用于 HTML/JS 的 XAML 框架是一个绝妙的主意,XAML 文件可以通过一个 InitializeComponents() 方法在 HTML5 或 JavaScript 中直接转换,所有对象都被实例化(如在 WinForms 中)。

    如果您决定开始这样的项目,请考虑使用像 Saltarelle 或 Script# 这样的 C# 到 JavaScript 编译器。

    【讨论】:

    • rAppid:Js 对我来说看起来不错。我会试一试。谢谢我之前评估过 Script#。还不错,但我认为 Nikhilk 已经停止支持它了。也许有人同时为 ExtJS 构建了一个 Script# 库。
    • Saltarelle 旨在作为 Script# 的替代品并得到积极支持。我将它与 jQuery+Knockout+Pager 一起用于我所有的新项目。我想念的是编写 XAML 并将其以某种方式翻译成 HTMLDOM 和/或 javascript 的能力。我很想自己写一个这样的工具,但看起来相当复杂
    • 我的团队有一个自定义的 JavaScript 库,它正是这样做的 - 解析 XAML 并转换为 HTML。它还支持双向绑定。编写解析器并没有那么复杂。
    【解决方案3】:

    如果我错了,请纠正我,但我相信你正在寻找http://fayde.wsick.com。我正在重建 Typescript 中的框架。查看我的博客http://faydeproject.blogspot.com/

    【讨论】:

    【解决方案4】:

    在网上搜索 “M&P H5J 是 HTML5 中的 Silverlight” 它在 TypeScript 中实现了 XAML 处理器。

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-06-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多