写点什么

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:241216
用户头像

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

关注

评论

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

Sentieon文献解读-使用 Sentieon ctDNA 分析管道高精度、高效地处理 UMI 数据集

INSVAST

umi 肿瘤测序 Sentieon 基因变异检测 生信分析服务

HarmonyOS5云服务技术分享--ArkTS开发Node环境

莓创技术

HarmonyOS5云服务技术分享--云函数创建配置指南

莓创技术

火山引擎发布豆包·语音播客模型,秒级生成“真人对话”播客

新消费日报

HarmonyOS5云服务技术分享--手机号登录教程

莓创技术

乘云数字荣获“鑫智奖·2025专家推荐TOP10优秀解决方案”奖项

乘云数字DataBuff

数字化转型 故障定位 金融数字化 业务监控

AI极客低代码平台快速上手--创建应用

华哥的全栈次元舱

Java Python vuetify 纯血鸿蒙 AIGC低代码平台

使用 LangChain + Higress + Elasticsearch 构建 RAG 应用

阿里巴巴云原生

阿里云 云原生 Higress

HarmonyOS5云服务技术分享--退出登录文档问题

莓创技术

Flink CDC 3.4 发布, 优化高频 DDL 处理,支持 Batch 模式,新增 Iceberg 支持

Apache Flink

大数据 flink Flink CDC

Solana 上的Vibe Coding(氛围式编程)正崛起

PowerVerse

AI web3 DePIN

NFT 的叙事正在改变:看懂 NFT 的进化路径

NFT Research

NFT NFT\ web3、

反而是一个一个的客户教会了我如何接单

程序员郭顺发

HarmonyOS5云服务技术分享--登录邮件功能整理

莓创技术

AskTable 集成 Databend:结构化数据的 AI 查询新体验

Databend

用户反馈如何帮助企业实现降本增效?

Feedalyze

效率工具 产品经理 用户体验 产品运营 用户反馈

HarmonyOS5云服务技术分享--账号登录文章整理

莓创技术

详解鸿蒙仓颉开发语言中的日志打印问题

幽蓝计划

MRP都搞不好,何谈生产管理过关!

积木链小链

数字化转型 智能制造 生产管理

数据湖和数据仓库的区别

镜舟科技

数据仓库 数据湖 数据存储 大数据分析 湖仓一体

HarmonyOS5云服务技术分享--自有账号对接AGC认证

莓创技术

HarmonyOS5云服务技术分享--匿名登录功能指南

莓创技术

从运维告警到业务决策:可观测性正在重新定义企业数据基础设施

观测云

可观测性

信创堡垒机助力政企IT系统实现IT运维国产化

行云管家

数字化 信创 堡垒机

快来认领你的开源任务!开源之夏 - 可观测项目发布!

阿里巴巴云原生

阿里云 云原生 可观测

HarmonyOS5云服务技术分享--账号关联开发指南

莓创技术

AI 极客低代码平台快速上手 -- 设计领域类

华哥的全栈次元舱

Java Python vuetify 纯血鸿蒙 AIGC低代码平台

HarmonyOS5云服务技术分享--ArkTS开发函数

莓创技术

JManus - 面向 Java 开发者的开源通用智能体

阿里巴巴云原生

spring 阿里云 云原生

游戏盾功能与技术解析

网络安全服务

游戏开发 服务器 手游 DDoS 攻击 游戏盾

高敏感数据行业怎么定义?需要用到堡垒机吗?

行云管家

网络安全 堡垒机 高敏感数据

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