写点什么

F# 3.0 新特性简介

  • 2012-08-04
  • 本文字数:816 字

    阅读完需:约 3 分钟

即将发布的.NET Framework 4.5 会给 F# 3.0 语言带来多项新特性,除了类型提供器(type providers) LINQ 查询之类的核心特性之外,还有新的类型属性(type attribute)、三引号字符串常量、自动属性以及对未使用变量的警告等。

如果你向 F#记录类型附加 F# 3.0 中新引入的 [] 属性,那么编译器就会针对这种类型生成默认的构造器和属性设置方法,放置到生成的中间语言代码中。

微软的 Visual Studio F#开发者 Brian McNamara 说到:“[] 属性可能会帮助你处理 WPF 数据绑定和 Entity Framework 的情况。”

F# 3.0 引入了三引号的字符串常量,意味着三个引号之间的所有代码都是逐字解释的,因此不可能进行转码。借助于这种特性,开发者就能够添加 XAML 作为字符串常量,这对于在程序中嵌入 XML 代码作为数据或者向类型提供器传递大型字符串作为参数会非常有用。

M-Brace 的首席工程架构师 Nick 说到:“我已经用 F#做了四年编码工作,现在很高兴看到 F#在 Visual Studio 中得到完全的支持,终于到了 F#成为主流的时刻了。”

和之前的版本相比,F# 3.0 对自动属性的使用做出了改善,从而开发者能够在一行代码中使用这种特性,如下所示:

复制代码
type MyClass() = member val Y = 0 with get, set,

在上面的代码中,member val_ 表示自动属性,而 Y 的值是在=_ 后面声明的。

我已经使用 F#有两年多,非常喜欢这种语言。我之前使用 C#开发,最初的转换比较头疼,但非常值得,软件开发者 Huw Simpson 如是说。

F# 3.0 引入了一种新特性,使用它你可以使用命令行的方式激活警告代码 1182,如果在你的代码中有未被使用的变量,那么 F#编译器就会提出警告。在 Visual Studio 2012 中,你可以从项目属性对话框的 Build 标签页中把 _–warnon:1182_ 添加到 _Other flags_ 字段中,从而激活这种特性。

微软的 Visual Studio F#开发者 McNamara 说:“在有 10 万行代码的大型项目中,未被使用的变量警告会帮助你找到 bug。”

查看英文原文: Introducing the New Features of F# 3.0

2012-08-04 01:152521
用户头像

发布了 340 篇内容, 共 143.8 次阅读, 收获喜欢 13 次。

关注

评论

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

45W性能释放+2.8K OLED全面屏 华硕灵耀X 14 2022精英气质高效利器

科技热闻

博物馆数字化——数字藏品app开发

开源直播系统源码

区块链数字藏品 数字藏品软件开发

wallys/industrial Wireless AP/IPQ4019 IPQ4029 ,802.11ac /VSSupport IPQ6018 IPQ4019 IPQ4029 802.11ax 802.11ac

wallys-wifi6

wallys/industrial Wireless AP/industrial Wireless AP

wallys-wifi6

IPQ4019/IPQ4029

P9力荐!阿里巴巴最新出品776页JDK源码+并发核心原理解析小册

程序员小毕

Java 程序员 面试 程序人生 jdk源码

ES6 类聊 JavaScript 设计模式之结构型模式

devpoint

JavaScript 设计模式 桥接模式 适配器模式 7月月更

这价格够香!灵耀14 2022影青釉秒杀:12代酷睿+2.8K OLED屏

科技热闻

有一说一,要搞明白优惠券架构是如何演化的,只需10张图!

程序员小毕

Java 编程 程序员 架构 面试

怎样让全彩LED显示屏变的节能环保?

Dylan

LED显示屏 全彩LED显示屏

对话ACE第四期:分布式数据库未来发展的挑战和机遇

OceanBase 数据库

数据库 分布式数据库 oceanbase

Qt|控制QScrollBar显示位置

中国好公民st

qt 7月月更

云原生 SIG 直播:关于 cni 与 hybridnet 核心技术分享 | 第 35 期

OpenAnolis小助手

开源 云原生 直播 sig 龙蜥大讲堂

即刻报名|如何降低云上数据分析成本?

Kyligence

数据分析 智能多维数据库

数仓基本概念解析

五分钟学大数据

数据仓库 7月月更

JAVA编程规范之异常处理

源字节1号

微信小程序 软件开发 前端开发 后端开发

个性潮流与性能兼备,华硕a豆14 Pro搭载全新12代酷睿标压处理器

科技热闻

我,AI博士生,在线众筹研究主题

OneFlow

研究

SAP ABAP 解析 excel 文件的函数 TEXT_CONVERT_XLS_TO_SAP 单步执行分析

汪子熙

Cloud SAP abap Netweaver 7月月更

源启数字化:既有模式,还是开源创新?|砺夏行动

OneFlow

活动

数字化时代,如何利用区块链技术赋能乳制品企业?

旺链科技

区块链 产业区块链 乳制品

阿里云技术专家杨泽强:弹性计算云上可观测能力构建

阿里云弹性计算

DevOps 可观测性 CI/CD metrics

Wallys/industrial Wireless AP/IPQ6018,IPQ4019,IPQ4029,802.11ax,802.11ac,outdoor ap

wallys-wifi6

行业分析| 物流对讲

anyRTC开发者

人工智能 音视频 物流 调度 快对讲

执掌英国工程技术学会 13 载,范纳杰正式退休

E科讯

【LeetCode】使数组可以被整除的最少删除次数Java题解

Albert

LeetCode 7月月更

高度关注!2022 开放原子开源峰会最新议程一览

kk-OSC

开源 开放原子全球开源峰会

特斯拉为何使用.NET Core技术框架?

博文视点Broadview

常用 CSS 代码片段集合,建议收藏

南城FE

CSS 前端 CSS语法 7月月更

执掌英国工程技术学会13载,范纳杰正式退休

E科讯

Nacos配置中心之环境准备

急需上岸的小谢

7月月更

F# 3.0新特性简介_后端_Anand Narayanaswamy_InfoQ精选文章