RAD Studio 10.3 来了
官方原版下载链接:HTTP FTP
官方更新说明:http://docwiki.embarcadero.com/RADStudio/Rio/en/What's_New
【官方更新说明简译】
1、Delphi 语言
支持内联变量和内联变量的类型推断,说明参考上一篇
Linux 的内存管理已经不再使用 ARC 模型了,改成和 Windows 一样,NEXTGEN 定义在 Linux 平台上已经无效了
Linux 平台支持 AnsiString / AnsiChar 了,不过官方提示需要注意 Linux 和 Windows 的 ANSI 代码页并不一致。
2、C++
Win32 的 C++ 编译器支持 C++ 17 了,而且已经变为默认设置(原来是 BCC32),更快的代码,更好的第三方 C++ 库兼容。
C++ 编译器可以设置向后兼容 C++ 14/11/98/03
使用 cquery(需要安装 Win64,只带了 64 位版本) 增强 C++ 的代码完成( Code completion),比以前版本更快和更好用,现在这个代码完成使用异步模式实现了,输入不会有卡顿的感觉。
Win64 下更好的数学性能,许多数学函数重新实现后平均比以前快了两倍 。
支持错误检查(Error Insight)功能,可以像 Delphi 一样随时预览代码中的错误(红色下划线)
支持调试优化过的构建(也就是 Release 版)。
支持通过 GetIt 安装大量的 C++ 库。
3、公共部分
修正了 C++/Delphi ABI 的兼容性
IDE 增加了两个新的主题,感觉更现代,可读性更好。
多个关键对话框变动,以更明确及增加可读性
工程和 IDE 选项对话框
主窗口
新建项目对话框
编译对话框
GetIt 包管理器对话框
窗体加载 / LiveBindings 设计期优化,速度大大提升
知名的 Andreas Hausladen 的 “IDE Fix Pack” 已经被集成在新的IDE里了
VCL 集成的翻译架构和工具虽然仍然存在,但官方告诉你,活不长了
VCL
通过使用 TVirtualImageList 和 TImageCollection 来支持高清图片列表,所有的控件都支持多分辨率了。TVirtualImageList 句柄提供一个 HIMAGELIST 句柄,可以被 VCL 控件和 相关 Windows API 使用
Per Monitor V2 支持:允许程序根据当前屏幕的 DPI 进行缩放。要启用这个功能 ,进入 Project > Options > Application > Manifest 中,设置 DPI Awareness 为 Per Monitor V2
Win 10 功能增强:增加了一堆 ,VCL 和 FMX 都能用
WinAPI.ApplicationModel.Background.pas
Winapi.ApplicationModel.Contacts.pas
WinAPI.ApplicationModel.Core.pas
WinAPI.ApplicationModel.DataTransfer.pas
WinAPI.ApplicationModel.pas
Winapi.CommonNames.pas
WinAPI.CommonTypes.pas
WinAPI.DataRT.pas
Winapi.Devices.AllJoyn.pas
Winapi.Devices.Bluetooth.Advertisement.pas
WinAPI.Devices.Bluetooth.pas
WinAPI.Devices.Enumeration.pas
Winapi.Devices.Geolocation.pas
Winapi.Devices.Midi.pas
WinAPI.Devices.pas
Winapi.Devices.PointOfService.pas
Winapi.Devices.Scanners.pas
Winapi.Devices.Sensors.pas
Winapi.Devices.Sms.pas
WinAPI.Foundation.Collections.pas
WinAPI.Foundation.pas
WinAPI.Foundation.Types.pas
WinAPI.Gaming.pas
WinAPI.Globalization.pas
WinAPI.GraphicsRT.pas
WinAPI.Management.pas
Winapi.Media.Devices.pas
Winapi.Media.MediaProperties.pas
WinAPI.Media.pas
WinAPI.Networking.Connectivity.pas
WinAPI.Networking.NetworkOperators.pas
WinAPI.Networking.pas
WinAPI.Networking.Proximity.pas
Winapi.Networking.PushNotifications.pas
WinAPI.Networking.Sockets.pas
WinAPI.Networking.Vpn.pas
Winapi.Perception.pas
WinAPI.Security.Credentials.pas
WinAPI.Security.Cryptography.pas
WinAPI.Security.pas
Winapi.ServicesRT.pas
Winapi.ServicesRT.Store.pas
WinAPI.Storage.pas
WinAPI.Storage.Streams.pas
WinAPI.SystemRT.pas
WinAPI.UI.Composition.pas
WinAPI.UI.Core.pas
WinAPI.UI.Input.Inking.pas
WinAPI.UI.Input.pas
WinAPI.UI.Notifications.pas
WinAPI.UI.pas
WinAPI.UI.Text.pas
WinAPI.UI.ViewManagement.pas
WinAPI.UI.WebUI.pas
WinAPI.UI.Xaml.pas
WinAPI.WebRT.pas
WinAPI.ApplicationModel.Background.pas
Winapi.ApplicationModel.Contacts.pas
WinAPI.ApplicationModel.Core.pas
WinAPI.ApplicationModel.DataTransfer.pas
WinAPI.ApplicationModel.pas
Winapi.CommonNames.pas
WinAPI.CommonTypes.pas
WinAPI.DataRT.pas
Winapi.Devices.AllJoyn.pas
Winapi.Devices.Bluetooth.Advertisement.pas
WinAPI.Devices.Bluetooth.pas
WinAPI.Devices.Enumeration.pas
Winapi.Devices.Geolocation.pas
Winapi.Devices.Midi.pas
WinAPI.Devices.pas
Winapi.Devices.PointOfService.pas
Winapi.Devices.Scanners.pas
Winapi.Devices.Sensors.pas
Winapi.Devices.Sms.pas
WinAPI.Foundation.Collections.pas
WinAPI.Foundation.pas
WinAPI.Foundation.Types.pas
WinAPI.Gaming.pas
WinAPI.Globalization.pas
WinAPI.GraphicsRT.pas
WinAPI.Management.pas
Winapi.Media.Devices.pas
Winapi.Media.MediaProperties.pas
WinAPI.Media.pas
WinAPI.Networking.Connectivity.pas
WinAPI.Networking.NetworkOperators.pas
WinAPI.Networking.pas
WinAPI.Networking.Proximity.pas
Winapi.Networking.PushNotifications.pas
WinAPI.Networking.Sockets.pas
WinAPI.Networking.Vpn.pas
Winapi.Perception.pas
WinAPI.Security.Credentials.pas
WinAPI.Security.Cryptography.pas
WinAPI.Security.pas
Winapi.ServicesRT.pas
Winapi.ServicesRT.Store.pas
WinAPI.Storage.pas
WinAPI.Storage.Streams.pas
WinAPI.SystemRT.pas
WinAPI.UI.Composition.pas
WinAPI.UI.Core.pas
WinAPI.UI.Input.Inking.pas
WinAPI.UI.Input.pas
WinAPI.UI.Notifications.pas
WinAPI.UI.pas
WinAPI.UI.Text.pas
WinAPI.UI.ViewManagement.pas
WinAPI.UI.WebUI.pas
WinAPI.UI.Xaml.pas
WinAPI.WebRT.pas
Windows API 更新:高 DPI 和手写笔相关接口,以及重复的声明重新整理了下。
新增 TWindowsStore 组件来支持 Windows 应用商店。
TDirect2DCanvas 支持颜色字体、WM_POINTER 相关消息和接口,共享通讯薄扩展
FireMonkey
Android API 26 支持,以便符合谷歌应用商店要求
manifest 变更
新的权限模型
Android Z 顺序和原生控件支持
iOS 12 支持,可以编译并发布到苹果应用商店了
支持 MacOS 10.14 Mojave
支持 Unicode 表情
FireDAC 和数据库
一堆新版本数据库支持(不列了,反正出名的好象都支持了)
增加 TFDBatchMoveJSONWriter
优化 TFDBatchMove 和关联组件
数据库提升
TClientDataSet 增加 IncludeBlobsInDelta 属性
TDSRestConnection 增加 SecureProtocols 属性,而且 REST 明确设置 Content-Type=application/json
REST 增加了一堆事件和相关接口/属性
THttpClient 增强在 Windows 下的性能,并增加了新的接口
云增强:支持 Azure 的一堆东西,与你我无关。
RAD Server:估计国内没谁用,略
RTL
JSON 和 HTTP 性能的提升和兼容性增强
TStringList, TList, TList <T>, TQueue<T>, TStack<T> 加入 GrowCollection 优化,不再是简单的乘2,用户可以调用 Sysutils 的 SetGrowCollectionFunc 来自定义这一过程。
TStringBuilder 性能优化
JSON 解析性能和正确性增强
列表相关的提升:
TDictionary 增加 TryAdd
TObjectList 增加 ExtractAt
TList IndexOf 性能增强
优化 TList, TStrings, TComponent, TCollection, TList<> 的枚举器,现在空的 for in 循环比以前快 2.5~4 倍
其它
zlib 升级到 1.2.8
PCRE 升级到 8.42 并且在 Windows 上包含 UTF-16 支持
AppTethering 支持长字符串
TMemoryIniFile 优化,更小的内存占用,更快的处理速度(读取和构造提升10~25 倍,其它有 50% ~100% 提升)
RAD Studio 10.3 来了的更多相关文章
- RAD Studio 10.3 Rio (BCB & Dephi) 发布啦
期盼已久的RAD Studio 10.3 Rio 终于发布了: 下载链接:http://altd.embarcadero.com/download/radstudio/10.3/delphicbui ...
- MIDA Converter Basic patched for RAD Studio 10.1.2 Berlin (VCL转换到FMX)
Mida is the only way to try to convert your project from VCL to FireMonkey. Version after version, M ...
- RAD Studio 10.3.2七大新功能介绍
RAD Studio 10.3.2七大新功能 Delphi支持macOS 64位应用的开发. C++Builder中Windows 64位平台支持C ++ 17特性. C ++ LSP 代码洞察改进. ...
- RAD Studio 10 自带Demo代码汇总说明
大家好,好多朋友来信咨询Delphi和C++Builder的移动开发.DataSnap架构等问题,希望能有Demo代码学习.其实Delphi和C++Builder本身自带有很多示例代码,已经覆盖了大部 ...
- RAD Studio 10 up1欢迎页证书不可用
不只是欢迎页,每打开一个新的工程,都会出现上面那个证书不可用的提示. 解决方法: 1.通过Fiddler网络监控软件分析发现,出现这个问题的原因是bds启动的时候会用https协议访问谷歌的统计服务器 ...
- delphi RAD Studio新版本及路线图 及官方网站 官方 版本发布时间
delphi RAD Studio Berlin 10.1 主要是FireMonkey 移动开发的改动,VCL确实没有多大变化. http://docwiki.embarcadero.com/RAD ...
- Embarcadero RAD Studio 2016 Product Approach and Roadmap
delphi 2016 路线图 http://community.embarcadero.com/article/news/16211-embarcadero-rad-studio-2016-pro ...
- Delphi for Android (aka Delphi XE5 aka RAD Studio XE5) has appeared
Delphi for Android (aka Delphi XE5 aka RAD Studio XE5) has appeared Blimey, that took me by surpri ...
- RAD Studio 2009-10Seattle IDE Fix Pack 5.94
IDE Fix Pack 5.94 IDE Fix Pack is a collection of unofficial bug fixes and performance optimizations ...
随机推荐
- windows10 vs2017 C++连接MySQL
安装mysql8.0 x64 创建test数据库,user表,插入数据如下: +----+------+----------+-----------------+ | id | name | pass ...
- 移动web总结
Meta标签: 1 <meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-sc ...
- erlang工作总结
总结下自己在做erlang的经验 1.不管什么样的情况下,一定要关注好函数的返回值再来使用,不知道返回值盲目的使用的话,不仅不能达到目标,而且不存在代码/报错提醒.得不偿失. 2.构思好自己的想法,定 ...
- [LeetCode&Python] Problem 925. Long Pressed Name
Your friend is typing his name into a keyboard. Sometimes, when typing a character c, the key might ...
- 录制JMeter脚本的方式
一.使用BadBoy录制JMeter脚本 JMeter和BadBoy下载地址:点击去下载 1.打开BadBoy并输入你要录制脚本的网址 这里我输入百度的网址,可以看到step下已经有一个请求了 2.录 ...
- git 在某个分支下创建新分支
首先要强调一个观念,那就是在某个分支A下创建新的分支B,是指使用A分支下的代码,并不是A/B这样的层级结构. 比如,我想要在非主分支dev 下面创建子分支dev_dev >>>1.创 ...
- Google - chanceToLose24Game
/* 一个类似24点的游戏,假设牌桌上有无数张1-10的牌,然后你手上的牌的总和是k,现在你可以随机到牌桌上抽牌加到总和里,如果你手上牌的总和在20-25之间就是win,如果总和超过25就是lose, ...
- Hanlp汉字转拼音使用python调用详解
1.hanlp简介 HanLP是一系列模型与算法组成的NLP工具包,由大快搜索主导并完全开源,目标是普及自然语言处理在生产环境中的应用.HanLP具备功能完善.性能高效.架构清晰.语料时新.可自定义的 ...
- JDK各个版本的区别
jdk1.5的新特性: 1. 泛型 ArrayList list=new ArrayList()------>ArrayList<Integer>list=new ArrayL ...
- TF(3): 安装部署_Windows
CUDA: CUDA(Compute Unified Device Architecture): CUDA™是一种由显卡厂商NVIDIA推出的通用并行计算架构,该架构使GPU能够解决复杂的计算问题. ...