摘要:金秋九月,恰是硕果累累的收获时节。据可靠消息,本月10日,RAD Studio 13 Florence已正式耀世登场。接下来,请随我一同探寻,领略其独特的魅力与风采。
金秋九月,恰是硕果累累的收获时节。据可靠消息,本月10日,RAD Studio 13 Florence已正式耀世登场。接下来,请随我一同探寻,领略其独特的魅力与风采。
RAD Studio 13.0对Delphi语言进行了许多改进,首先是要求最高的语言扩展,三元运算符。使用“if”关键字实现,添加到Delphi中的三元运算符类似于许多编程语言中的相同功能,并提供了一种直接在表达式中表达条件的更短方法。
使用三元if运算符的示例代码
对于所有目标平台和编译器来说,这并不是Delphi唯一可用的新语言特性:RAD Studio 13.0还引入了一个新的内部函数名称、新的{$PUSHOPT}和{$POPOPT}编译器指令、记录类操作符Initialize和Finalize中的隐式“Self”参数声明、新的“is not”和“not in”语言操作符、用于过程声明的新的“noreturn”指令以及对泛型类型的附加约束。
使用其他新运算符的示例cope
C++Builder Modern Win64编译器已更新到Clang 20。新的基于Clang 20的编译器引入了C++ 23支持(默认为C++ 23)。这是对RAD Studio 12.x中提供的C++现代工具链Embarcadero的重大升级,也清楚地表明了Embarcadero对C++Builder的承诺。
随着对LLVM和Clang 20的更新,新版本提供了改进的地址消毒程序(ASAN)运行时、版本化的共享库,以及与C++Builder编译器的遗留版本的改进兼容性。
C++项目配置,用于选择C++语言兼容级别
RAD Studio 13.0包括第一个用于Windows 64目标平台的全功能64位IDE。该平台的功能非常全面。与12.3中的64位IDE“初始版本”相比,13.0中的64位IDE提供了构建和调试64位Windows应用程序的Delphi和C++支持,现在包括:通过Visual Assist为C++提供代码工具;支持COM、ActiveX和类型库;实时模板(Ctrl+J)和环绕菜单,以及质量改进。
此功能的安装现在是核心RAD Studio IDE安装的一部分,而不是一个单独的选项,就像“初始版本”一样。
运行中的64位IDE
虽然Embarcadero自12.x以来一直为RAD Studio IDE提供名为Smart CodeInsight的人工智能集成,在IDE中提供人工智能支持的编码帮助,但RAD Studio 13.0引入了一组新的核心人工智能组件,旨在帮助我们的客户将人工智能功能添加到他们的应用程序中,或使用Delphi或C++Builder构建全新的人工智能应用程序。
这是一个构建模块,也是未来的基础:这是一个核心架构,我们的客户和第三方供应商可以在此基础上进行构建和扩展,以集成其他人工智能引擎和UI控件。
通过从GetIt下载SmartCore AI组件包,客户将能够使用新的AI连接组件(其角色类似于FireDAC中的数据库连接)。这个单一的AI引擎不可知组件将使用特定的驱动程序通过REST与不同的AI引擎(包括OpenAI、Claude、Gemini和Ollama)进行通信。随着市场的发展,SmartCore AI引擎能够为AI提供商添加额外的驱动程序,以扩展您项目的功能。通过易于使用的人工智能连接向导来管理配置。
组件包的一部分是一组用于不同数据类型(如文本、图像、结构数据)的AI请求组件,这些组件可以与提示相关联,并可以直接与UI控件绑定以显示结果。这种基于组件的模型使得在RAD Studio 13.0中使用SmartCore AI组件变得非常简单。
智能人工智能组件体系结构的抽象表示
借助SmartCore AI Component Pack,开发人员可以将人工智能集成到现有和新的应用程序中,解决许多流行的人工智能用例,例如为产品内内容创建提供支持,如生成图像和其他媒体,为动态翻译添加产品内本地化支持,为数据分析提供应用内智能见解和个性化建议,或构建应用内聊天机器人以增加现有应用的交互性。据悉SmartCore AI组件包将很快添加到RAD Studio 13的GetIt包管理器中。
一个简单的VCL演示应用程序,请求并显示由LLM生成的图像
webStencils通过提供服务器端脚本并将RAD Server从Web服务引擎转变为网站和Web服务工具,显著扩展了RAD Studio中的现有Web技术(WebBroker、DataSnap、RAD Server)。
继RAD Studio 12中引入的WebStencils web模板库取得成功之后,新版本为RAD Studio web应用程序的WebStencils和WebBroker foundation提供了许多扩展。
在RAD Studio 13中,WebBroker增加了会话管理、更好的Apache集成、Nginx web服务器支持和改进的日志记录。
WebStencils支持会话数据、全局变量和一个新的switch语句。此外,WebStencils集成了会话身份验证和相关的授权机制,提供了对数据集属性的直接访问(以及新的允许/不允许安全列表,以精确控制脚本可以或不可以访问的内容)。
总的来说,这些附加功能使得使用WebStencils构建复杂的网站变得非常容易,为添加会话、用户登录和权限管理等常见功能提供了坚实的基础。使用RAD Studio,构建由您的业务数据驱动的强大、快速和健壮的web服务器变得更快。
用于身份验证支持的新WebBroker组件
GetIt是RAD Studio的软件包管理器,用于下载和安装由Embarcadero提供的附加库和功能,以及由团队的开发人员社区提供并由Embarcadero审查的开源库和扩展。
在这个版本中,GetIt增加了一个期待已久的特性,版本支持。这使得Embarcadero和团队的合作伙伴能够发布和提供同一个软件包的多个版本,并使用户能够选择他们的应用程序所依赖的特定版本,而不是被迫安装最新版本。
选择GetIt包的一个可用版本
随着Embarcadero对RAD Studio IDE的不断改进和现代化(除了向64位的过渡之外),此版本在许多IDE窗格中添加了大量可配置的搜索功能,包括项目管理器、结构视图、消息窗格和事件日志。对于消息日志,RAD Studio 13还添加了额外的突出显示选项,并在同一源代码文件中引入了编译器提示和警告的分组。
显示代码时,在IDE结构视图中筛选条目
随着RAD Studio 13.0的发布,Embarcadero正在推出一款RAD Studio定制聊天机器人,提供查询专门在产品及其库上训练的人工智能的能力,或者要求它生成应用程序源代码。
新的RAD AI伙伴站点
RAD Studio包括面向Windows(使用Delphi和C++)以及Android、iOS、macOS和Linux平台(使用Delphi)的编译器。
新版本包括Windows APIs清理方面的重要工作,更新了WinRT APIs,刷新了WinAPI WinMD投影,并更新了集成在TEdgeBrowser中的WebView 2控件。所有这些更新都为Windows应用程序开发人员提供了增强的体验。
Delphi还包括扩展的iOS API头,而对于Android,它对用于在设备上构建和部署应用程序的工具提供了一些增强。此外,RAD Studio 13改进了Android的Java2OP导入器。
在13.0中,Embarcadero为强大的集成UI库引入了新功能和广泛的质量改进。VCL第一次包含了UIAutomation微软接口的集成,可以用来支持可访问性和构建自动UI测试。
此外,VCL引入了标题栏样式,改进了ControlList,FormsTabsBar,TToggleSwitch组件等等。最后,这个版本提供了ActionMainMenuBar滚动,这是多年来许多客户要求的另一个特性。
一个带有风格化标题栏的VCL演示应用程序
RAD Studio 13.0中的FireMonkey集成了一个新的显示链接服务,提供了高度改进的动画稳定性和流畅度。该框架还通过利用GPU(一个全新的MaskEdit组件)、用于控制滚动动画、反弹和触摸交互的附加TPresentedScrollBox属性、新的IFMXSpellCheckerServiceEx接口、更新的TAlignLayout(包括用于居中控件的新对齐选项)和新的ApplicationEvents组件,提高了复制位图时的性能。
在这个版本中,Embarcadero改进了FMXLinux集成,使得使用这个Linux UI模型变得更加容易,它作为GetIt包提供给企业客户。Skia4Delphi支持也更新到了库的最新版本。
新的FireMonkey MaskEdit组件
数据库访问是RAD Studio的基础。在此版本中,Embarcadero为其高质量的FireDAC解决方案提供了额外的更新,该解决方案包含大量数据库服务器。从对无符号大整数数据库字段的扩展支持到将字段从字段编辑器拖到可视表单时更灵活的选项,这方面有大量的改进。最值得注意的是与Oracle的OAuth身份验证、Firebird的并行备份操作以及对PostgreSQL数组类型的改进支持相关的新特性。
虽然RAD Studio附带了InterBase 2020开发人员版,但它已经包含了即将推出的InterBase 15开发人员版的许可证。
RAD Studio 13.0使基于Swagger的API文档的使用更加灵活,因为模式和参考参数现在是可选的,为RAD Server多租户支持添加了一个集成特定于租户的配置的选项,并引入了一种简单而直接的方法来实现API版本控制(即让服务器为新旧客户端应用程序提供相同REST APIs的多个版本)。
RAD Studio为Delphi和C++开发人员提供了强大的工具,使他们更容易编写应用程序代码。为了响应特定的Delphi客户请求,使旧的“经典”Delphi CodeInsight引擎再次可用。它将作为IDE中DelphiLSP驱动版本的替代,为任何想使用它的人提供访问。与此同时,团队正在继续努力改进DelphiLSP架构。
此外,还提供了一个Delphi升级顾问向导,它允许开发人员识别对项目配置和代码的有意义的更改,这些更改可以显著改善编译时间和代码工具体验。
在C++方面,重新设计了视觉辅助集成,使其能够在64位ide中使用,同时在32位IDE中也提供了改进的稳定性。
在RAD Studio 13 IDE中启用经典CodeInsight
除了前面提到的功能之外,这个版本还包括了对IDE的大量改进。对于调试器,已经将基于LLDB的调试器转移到LLDB版本20,使C++编译器的更新与Clang 20相匹配。还改进了调试器的质量,主要关注64位IDE调试体验。此外,“附加到进程”对话框已经过重新设计,包括显示有关进程的信息的附加列,以及各种UI控件。
总的来说,对于IDE,团队对Smart CodeInsight(面向开发人员的AI)进行了一些改进,在配置对话框中添加了新的测试连接功能,改进了提示和响应处理。在IDE中,您现在可以为编辑器选项卡使用编辑器背景色,为结构突出显示颜色激活IDE主题,以及从结构窗格中复制错误消息。
RAD Studio 13.0还扩展了IDE提供的大量工具API,允许客户(和第三方供应商)使用一组官方接口以几乎无限制的方式扩展和定制IDE。
delphi粉丝们,还等什么?评论区讨论。
来源:风清云淡话编程