QCon 演讲火热征集中,快来分享技术实践与洞见! 了解详情
写点什么

Silverlight 将不再支持 ArrayList 类型

  • 2007-07-05
  • 本文字数:785 字

    阅读完需:约 3 分钟

为了减小 Silverlight 运行时的文件大小,大多数非泛型集合类型将不会再被支持。这些非泛型集合类型主要是那些曾经一度被看作.NET 编程本质的类型,如 ArrayList、Hashtable 和 Comparer 等。

根据微软基础类库团队的成员 Inbar Gazit 所言,非泛型集合将不会随 Silverlight 1.1 一起发布 。这就意味着虽然你仍可以在主要的.NET 发行版本中使用这些类型,但它们却不能被用来访问 Silverlight 程序。受影响的类包括:

  • ArrayList
  • BitArray
  • CaseInsensitiveComparer
  • CaseInsensitiveHashCodeProvider
  • CollectionBase
  • Comparer
  • CompatibleComparer
  • DictionaryBase
  • EmptyReadOnlyDictionaryInternal
  • Hashtable
  • IHashCodeProvider
  • KeyValuePairs
  • ListDictionaryInternal
  • Queue
  • ReadOnlyCollectionBase
  • SortedList
  • Stack

为了不至于太过迷惑,在主要的.NET 发行版本里,微软现在还不打算清除这些类,或者将它们标识为弃用(obsolete)。

为了支持像数据绑定这样不需要知道类型的场景,在 Silverlight 里下面的一些非泛型接口将仍会得到保留:

  • IEnumerator
  • IEnumerable
  • ICollection
  • IComparer
  • IDictionary
  • IDictionaryEnumerator
  • DictionaryEntry
  • IEqualityComparer
  • IList

有一些泛型集合也将不再被 Silverlight 支持,Inbar 解释说:

有三个泛型也被从 Silverlight 中清除掉了,包括 Queue、Stack 和 LinkedList 等。这儿并不是因为它们是非泛型,而是因为我们认为它们不是 Silverlight 所应提供的本质类型的一部分。记住,Silverlight 是一个非常小的下载,它应该只包括对开发有用的最小 API 集合。用 List 实现 Queue 和 Stack 非常容易,而 LinkedList 也只是一个带有不同性能特性 List 的不同实现而已,因此这些并不是我们核心集合群组的本质部分。

Inbar 还发表了一篇关于为什么泛型集合应该被用在传统.NET 编程中的文章,并提出了一些针对现有代码库如何进行改变的建议。

查看英文原文: Silverlight to Not Support ArrayList

2007-07-05 19:501551

评论

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

B站员工猝死,审核员之殇,谁该反省?谁该惭愧?技术层面解构内容安全审核系统(python3)

刘悦的技术博客

系统架构 内容审核 Python3 应用审核 构架

领域模型设计该如何落地到数据库设计?

蜜糖的代码注释

Java DDD 领域模型 2月月更

一起玩转LiteOS组件:Pixman

华为云开发者联盟

LiteOS LiteOS组件 Pixman Pixman Demo LiteOS组件仓库

AI+Science:基于飞桨的AlphaFold2,带你入门蛋白质结构预测

百度大脑

关于如何构建 Go 代码的思考

宇宙之一粟

Go 语言 2月月更

AI象棋,谁与争锋

乌龟哥哥

AI 2月月更

Web Components系列(三) —— 创建 Custom Elements

编程三昧

前端 组件化 2月月更 WebContents

在线学习FTRL介绍及基于Flink实现在线学习流程|社区征文

张浩_house

机器学习 大数据 flink 新春征文

一文带你了解数仓智能运维框架

华为云开发者联盟

运维 GaussDB(DWS) 智能运维框架 调度框架 任务调度器

王者荣耀商城异地多活设计

皓月

「架构实战营」

【架构训练营-模块二】

默光

微信朋友圈 架构训练营5期

mysql 面试总结

yuexin_tech

面试

运维与微服务结合?深度解析微服务框架Tars整体解决方案

云智慧AIOps社区

DevOps 微服务 运维 云原生 TARS

架构训练营 week10 课程总结

红莲疾风

「架构实战营」

BIGO 使用 Flink 做 OLAP 分析及实时数仓的实践和优化

Apache Flink

大数据 flink 编程 后端 实时计算

知识库的作用

爱吃小舅的鱼

Linux之vmstat命令

入门小站

Linux

RTE2021 回顾丨HDR 技术产品实践与探索

声网

人工智能 HDR

设计模式【13】-- 模板模式怎么弄?

秦怀杂货店

Java 设计模式 23种设计模式

固态存储行业领导者硅格半导体加入龙蜥社区,共同推动开源生态建设

OpenAnolis小助手

Linux 开源 社群运营

在线ASCII流程图编辑器工具

入门小站

工具

Java异常处理:如何写出“正确”但被编译器认为有语法错误的程序

华为云开发者联盟

Java 代码 java异常处理 语法 Exception

百度手机助手存储资源优化实践

百度Geek说

后端 存储

一个人手写APP监控平台是什么体验 | 社区征文

一诺倾心

flutter android 性能优化 APM

推荐 3 个 React 动画库

devpoint

React 网页动画 2月月更

拒绝做工具小子—编写Python漏洞验证脚本

网络安全学海

黑客 网络安全 信息安全 渗透测试 安全漏洞

一文搞明白直播和点播的区别 | 社区征文

liuzhen007

音视频 新春征文 2月月更

产品经理角色理解

wood

300天创作

不会用SpringBoot连接Redis,那就赶紧看这篇

华为云开发者联盟

redis 开发 springboot Redis服务器

react源码解析3.react源码架构

buchila11

React

java培训:SpringBoot技术的理解

@零度

JAVA开发 spring-boot

Silverlight将不再支持ArrayList类型_.NET_Jonathan Allen_InfoQ精选文章