写点什么

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

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

关注

评论

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

AE2024视频特效After Effects 2024 for Mac中文激活版

Mac相关知识分享

AE

矢量图形设计软件Illustrator 2024 for Mac中文激活版

Mac相关知识分享

TikTok直播网络加速方法

Ogcloud

TikTok tiktok运营 tiktok直播 tiktok直播专线 tiktok矩阵

GalaChain 全面剖析:为 Web3 游戏和娱乐而生的创新区块链

Footprint Analytics

Rectangle Pro for Mac v3.0.31激活版 窗口管理布局工具

Rose

利用淘宝商品评论API返回值优化商品转化率:策略与实践

代码忍者

万亿数据规模下,火山引擎ByteHouse助力银行日志数据高效分析

字节跳动数据平台

数据库 云原生 Clickhouse 数仓

有效提高媒体曝光率,智能推荐为什么是“最大的计算系统之一”?

爱AI的猫猫头

人工智能 音视频 大模型 推荐引擎 智能搜索

几个适合Java开发者的免费IDEA插件

EquatorCoco

Java IDEA 开发语言

小程序容器致力在线政务服务平台建设一体化

Geek_2305a8

.ipynb文件:交互式 Jupyter Notebook

高端章鱼哥

SRE 必备知识 - Kafka 探秘之零拷贝技术

秦晓辉

kafka zero-copy

Oracle数据库客户端 SQLPro for Oracle for mac v1.0.302激活版

Rose

亲测兼容M1 PS2019 for mac中文直装版 附Photoshop2019破解补丁

Rose

如何设计真正的实时数据湖?

tapdata

实时数据湖 数据集处理流程 湖仓一体是什么

网易伏羲AI Agent 技术分享:揭秘AOP框架在《永劫无间》手游Copilot的应用实践

网易伏羲

aop agent 网易伏羲 Copilot 游戏AI

ETL数据集成丨实现SQLServer数据库的高效实时数据同步

RestCloud

MySQL 数据库 ETL SqlServer 数据集成

官宣:KaiwuDB 开源啦!

KaiwuDB

KaiwuDB 开源啦

FlagEval 8月榜 | 文生视频大模型主观评测结果揭晓,新增6款新发布模型

智源研究院

车联网时代,车企掌控车载小程序生态最关键

Geek_2305a8

mysql磁盘碎片整理

京东科技开发者

DDOS的防护方案

德迅云安全杨德俊

淘宝商品详情数据接口(商品价格,商品库存,商品销量,商品优惠券)

tbapi

淘宝商品详情数据接口 淘宝API接口

面试官:Leader崩溃Follower不够新怎么办?

王磊

百度搜索的RLHF性能优化实践

百度Geek说

百度 算法 性能优化

黑神话悟空-快速部署

京东科技开发者

不使用 JS 纯 CSS 获取屏幕宽高

南城FE

CSS 前端

大模型没有“知识围城”

脑极体

AI

吴恩达辞任Landing AI CEO,专注AI投资?数学家斯蒂芬预言哲学家引领AI未来|AI日报

可信AI进展

人工智能

专业视频和音频编码工具Adobe Media Encoder 2024 for Mac

Mac相关知识分享

智能引领,服务升级:哈银消费金融以科技力量重塑金融服务体验

Geek_2d6073

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