当前位置: 首页 > news >正文

asp.net新建网站用英文介绍购物网站

asp.net新建网站,用英文介绍购物网站,标签 wordpress,营销型网站建设公司排名核心结论在大多数情况下#xff0c;它们可以互换使用#xff0c;都能描述对象的结构。它们的区别更多在于设计和扩展能力上。主要区别总结表特性interface (接口)type (类型别名)扩展方式使用 extends 继承interface A extends B {}使用 交叉类型type A B C合并…核心结论在大多数情况下它们可以互换使用都能描述对象的结构。它们的区别更多在于设计和扩展能力上。 主要区别总结表特性interface (接口)type (类型别名)扩展方式使用 extends 继承interface A extends B {}使用  交叉类型type A B C合并声明支持同名接口会自动合并不支持同名类型会报错描述能力主要描述对象形状功能更强可描述任意类型联合、元组、原始类型等实现 (implements)可以被类实现class C implements A {}可以被类实现描述对象时class C implements A {}性能轻微优势在错误信息和性能上早期有细微差别现在可忽略不计可读性更偏向于 OOP面向对象编程风格表示一个“契约”更偏向于 FP函数式编程风格像一个类型表达式 详细解释与示例1. 扩展 (Extending)interface 使用继承更符合传统 OOP 思维。 interface Animal {name: string; }interface Bear extends Animal {honey: boolean; }type 使用交叉类型 ()更像是逻辑运算。 type Animal {name: string; }type Bear Animal {honey: boolean; }2. 声明合并 (Declaration Merging)这是两者最关键的区别。interface支持合并。如果你定义了两个同名的接口TypeScript 会将它们合并为一个。 interface User {name: string; }interface User {age: number; }// 最终 User 接口为{ name: string; age: number; } const user: User { name: John, age: 30 }; // 正确这个特性非常有用尤其是在为第三方库或全局对象如 Window添加自定义属性时。type不支持合并。重复声明同名的类型别名会报错。 type User {name: string; }type User { // Error: Duplicate identifier Userage: number; }3. 描述能力 (Descriptive Capabilities)interface基本上只能用于定义对象的类型结构。 interface Point {x: number;y: number; }type功能更强大可以定义任何类型。 // 联合类型 (Union) type ID string | number;// 元组类型 (Tuple) type PointTuple [number, number];// 原始类型别名 type Name string;// 从其他类型映射 (Mapped Types) type NullableT { [P in keyof T]: T[P] | null }; 最佳实践与如何选择虽然很多时候可以互换但社区形成了一些共识优先使用 interface当你需要定义对象的形状并希望使用声明合并时例如库的类型定义、扩展全局对象。在面向对象风格的代码中定义类和它们之间的契约。使用 type 的情况当你需要定义联合类型、元组或映射类型时。当你需要重命名或定义复杂类型表达式时。当你需要一个函数的类型时通常用 type。 type ClickHandler (event: MouseEvent) void;保持一致性在一个项目中最好对同一种用途保持统一。例如全部用 interface 定义对象或者全部用 type。混用会增加项目的认知负担。总结场景推荐定义对象形状尤其是需要被实现的interface (或 type)需要声明合并如扩展库类型必须用 interface定义联合类型、元组必须用 type定义函数类型通常用 type简单重命名原始类型通常用 type一句话总结interface 更适合定义对象契约和实现 OOP 的继承而 type 更强大灵活适合定义各种复杂的类型关系。 对于大多数应用开发遵循 优先使用 interface 定义对象在 interface 能力不足时使用 type 是一个很好的策略。一句话核心区别interface 是官方合同范本type 是万能自定义模板详细对比方便记忆1. 扩展方式不同interface 用 extends继承→ 像儿子继承爸爸type 用 交叉→ 像把两张纸粘在一起2. 重复定义时interface → 会自动合并像在合同上追加条款type → 会报错像不允许有两个同名的模板3. 能定义的内容interface → 主要定义对象形状type → 什么都能定义对象、联合类型、元组等4. 使用场景需要被类实现时 → 优先用 interface需要定义复杂类型时 → 只能用 type记忆口诀 接口能合并类型更万能 对象用接口复杂用类型 扩展用继承交叉类型连 类要实现时接口是首选简单选择指南大部分情况下定义对象 → 用 interface需要合并声明时 → 必须用 interface需要定义联合类型、元组等 → 必须用 type记住这个比喻interface 是标准合同type 是自定义模板就能很好区分了
http://www.pierceye.com/news/84783/

相关文章:

  • 仙居做网站技术支持网站
  • 网站搭建周期代理记账公司排名前十强
  • 动漫网站建设的目标山东网站备案公司
  • 做网站最大可以做多少g软文营销策划方案
  • 广州网站建设公司哪家比较好广州推广引流公司
  • 上传文章网站电商网站建设济南建网站
  • 室内设计和网站建设哪个前景好然后做网站
  • 医药电子商务网站建设与管理中山网站搜索引擎优化
  • wordpress 短代码使用seo搜索优化招聘
  • 个人网站设计模板下载施工企业负责人每月带班时间不少于
  • 建设集团网站方案南平网站开发
  • 网站背景 手机显示不全html淘宝店铺网站模板
  • 湖北建设工程注册中心网站网站域名查询网址
  • 温州专业微网站制作公司哪家好扬州网站建设文章
  • 绿色大气5.7织梦网站模版怎样做网站步骤
  • 个人网站html源码万能视频下载神器
  • whois查询 站长工具用什么网站可以做
  • 厦门汽车充电站建设报备网站自己怎么做企业网站建设
  • 常熟有做网站的网络公司吗山东众德建设项目管理公司网站
  • 网站的构建域名一级和二级的区别
  • 微信公众平台怎么做微网站网络销售新手入门
  • 运城有做网站设计去电商公司上班怎么样
  • 网站开发和企业级开发有什么区别织梦网站如何做二级导航
  • 做网站源码如何自己免费建网站
  • wordpress支持的语言外贸网站如何优化
  • 做网站需要机吗房产网站做那个比较好
  • FileZilla做网站如何做销售网站
  • 手机网站网站建设设计课程
  • 苏州网站建设软件注册邮箱企业邮箱
  • 广州怎么找做网站的公司wordpress 增加收录