写点什么

TypedMVVM 使用 TypeScript 构建 Windows 商店应用

  • 2013-12-12
  • 本文字数:980 字

    阅读完需:约 3 分钟

TypedMVVM 是由 Davide Zordan 开发的一个示例和类库的集合,适合于使用 WinJS、 TypeScript MVVM 编写 Windows 商店应用的开发者。借助于该集合,开发者能够在一个简单的、使用 WinJS 开发的 Windows 商店导航应用中通过应用 MVVM 模式实现关注点的分离,进而在真实的场景中使用 TypeScript。

根据 Davide 所说,所有的.js 源文件都会被转换成使用新文件夹结构的 TypeScript,包括类 / 接口的实现。但是为了允许可混合性 designData 为设计时数据提供了实现,类库包括 TypeScript 定义和 TypedMVVM 核心类,特别是 RelayCommand和 ViewModelBase。该包还包含服务(Services)、视图模型(ViewModel)和视图模型工厂(ViewModelFactory)的接口以及具体的视图模型实现和视图定义。

为了了解与 TypedMVVM 相关的更多内容,InfoQ 采访了软件架构师、开发者和 Microsoft MVP Davide
InfoQ**:你能与我们分享一下开发TypedMVVM的目的是什么吗?**

我喜欢编写具有良好组织结构的代码,喜欢拥抱优秀的实践,例如关注点分离、面向对象、模块化、可测试性和可扩展性。
依我看,TypeScript 正在为开发者提供很多编写专业应用程序所需要的基础功能。特别是支持类型检查、推理和反射功能,同时完整的智能感知支持也是编写复杂的大型应用所必须的。由于这些原因我决定实现一些简单的类,阐述如何在一个使用 TypeScript 的 WinJS 导航应用程序中应用 MVVM 设计模式。

InfoQ**:使用TypedMVVM构建的 **Windows 商店应用和没有使用它构建的应用之间有什么区别?

传统的使用 WinJS 构建的 Windows 商店应用核心语言是 JavaScript。TypedMVVM 使用 TypeScript 作为核心语言,该语言支持静态类型、接口和类(仅列举一部分),但是最终会被编译成简单的 JavaScript。它还包含一些可以帮助开发者开始使用 ViewModel 模式的帮助类,让他们写出架构正确的、可测试的代码。

InfoQ**:使用TypedMVVM能够编写哪些类型的应用?**

当前的目标是使用 WinJS 框架的 Windows 商店应用。

InfoQ**:你听说过哪些使用TypedMVVM实现的应用?**

这个项目刚刚发布,所以现在我并不知道有关于真实项目的信息。

InfoQ**:你能与我们分享一下TypedMVVM将来的路线图么?**

我现在依然在定义路线图的过程中,但是我正在考虑控制反转、松耦合消息和应用特定的服务:这些功能将非常有用。

查看英文原文 TypedMVVM Uses TypeScript to Build Windows 商店 Apps with WinJS

2013-12-12 05:241270
用户头像

发布了 321 篇内容, 共 128.4 次阅读, 收获喜欢 19 次。

关注

评论

发布
暂无评论
发现更多内容

基于 Kubernetes 的 Serverless PaaS 稳定性建设万字总结

阿里巴巴云原生

阿里云 Kubernetes 云原生

【有奖体验】轻点鼠标,让古籍数字化“重生”

阿里巴巴云原生

阿里云 云原生 函数计算

《云原生 AI 工程化实践训练营-先锋系列》开营啦!

阿里巴巴云原生

阿里云 AI 云原生

也许是时候停止编写详细的操作手册了

俞凡

最佳实践

芯片检测哪家强?

IC男奋斗史

芯片 半导体

Python - 字典1

小万哥

Python 程序员 软件 后端 开发

从VSCode迁移到Neovim的体验

SkyFire

vim vscode neovim

阿里云在云原生领域喜获多项 OSCAR 开源尖峰案例奖

阿里巴巴云原生

阿里云 开源 云原生

云原生场景下高可用架构的最佳实践

阿里巴巴云原生

阿里云 高可用 云原生

电商爬虫API快速入门指南

Noah

2023-10-14:用go语言,给定 pushed 和 popped 两个序列,每个序列中的 值都不重复, 只有当它们可能是在最初空栈上进行的推入 push 和弹出 pop 操作序列的结果时, 返回

福大大架构师每日一题

福大大架构师每日一题

白嫖azure,随时随地ChatGPT

MorningTZH

azure 白嫖 容器应用 弹性伸缩 ChatGPT

ATE测试工程师是做什么的?

IC男奋斗史

芯片 半导体

代码标准之信达雅

agnostic

代码质量

Linux该如何学习,给你支招

芯动大师

为NeoAI增加千帆大模型支持

SkyFire

neovim 千帆大模型平台

免费 AI 编程助手 Amazon CodeWhisperer 体验

亚马逊云科技 (Amazon Web Services)

JavaScript Python 3.12 #人工智能

ATE测试工程师的职业展望

IC男奋斗史

职业规划 芯片 半导体行业

FBX转换GLB格式

3D建模设计

模型格式转换 FBX转GLB

寻找AI时代的关键拼图,从美国橡树岭国家实验室读懂AI存力信标

脑极体

存储

Koordinator 协同 containerd NRI 增强容器 QoS,提升应用性能

阿里巴巴云原生

阿里云 云原生 Koordinator

1分钟搞懂什么是XY问题

俞凡

认知

TypedMVVM使用TypeScript构建Windows商店应用_语言 & 开发_Anand Narayanaswamy_InfoQ精选文章