疱疹在什么情况下传染| 不免是什么意思| 为什么会有台风| 医学影像技术是干什么的| 沸点是什么意思| 肺炎吃什么药好| 银行支行行长什么级别| 党按照什么的原则选拔干部| 什么是蒸馏水| 雨像什么| lamer是什么牌子| 葡萄糖偏高是什么原因| 葡萄糖阴性什么意思| 江苏有什么山| 睾丸炎吃什么药| 肾结水是什么原因造成的| 月经期肚子疼是什么原因| 感冒引起的喉咙痛吃什么药| 装牙套有什么坏处| revive是什么意思| 醴什么意思| 国家穷为什么不多印钱| 高血糖可以吃什么水果| 吃什么降肌酐| 草字头一个见念什么| 独白什么意思| 什么地方能做亲子鉴定| 人为什么会说梦话| 指甲中间凹陷是什么原因| 山楂有什么作用| 手发胀是什么原因造成的| 用印是什么意思| 牙齿为什么会痛| 纤维化是什么意思| 香菇炒什么好吃| 休克疗法是什么意思| 肺积水有什么症状| 冬至为什么吃饺子| 抑郁是什么意思| 7月11日什么星座| 枕芯用什么填充物好| 洗衣机什么牌子好| 6月5号是什么星座| 用什么香皂洗脸可以祛痘| 兰桂齐芳是什么意思| 入伏天是什么意思| 什么人容易得多囊卵巢| 口腔异味吃什么药| 五月二十日是什么星座| 激素是什么| 经常喝苏打水有什么好处和坏处| 感冒反复发烧是什么原因引起的| 金银花入什么经| 东窗事发是什么意思| 520是什么意思啊搞笑| 无住生心是什么意思| 什么是佝偻病有什么症状| 什么人容易得红斑狼疮| 三七粉主要治什么病| 小孩手上脱皮是什么原因| 宫禁糜烂用什么药| 锲而不舍是什么生肖| 石斛不能和什么一起吃| 防晒隔离什么牌子好| 精囊在什么位置| chop是什么意思| 音欠读什么| 什么是溶血性贫血| 拔气罐有什么好处| 头发为什么长不长| 肌肉酸痛是什么原因| 全性向是什么意思| 补办手机卡需要什么| 外强中干是什么意思| 谢字五行属什么| 甲状腺是什么功能| 胆汁有什么作用| 铁观音是什么茶类| 10.25是什么星座| 美籍华裔是什么意思| 总胆固醇低是什么原因| 财务是什么意思| 什么是冬虫夏草| 什么生肖最好| 手上起皮是什么原因| 老人高烧不退是什么原因| 什么人不能念阿弥陀佛| 四川人喜欢吃什么| 眼皮重是什么原因| 胃药吃多了有什么副作用| 什么是假性狐臭| 阳春三月是什么意思| 吃了发芽的土豆会有什么症状| 经常流鼻血是什么情况| 坐班是什么意思| 财不外露什么意思| 叫床什么意思| 手指甲变黑是什么原因| 叶黄素是什么| 梦见病人好了什么预兆| 恋足癖是什么意思| 钱代表什么生肖| 阴囊潮湿是什么原因造成的| 丝芙兰是什么品牌| 路的尽头是什么| ysy是什么意思| 猫咪吐黄水有泡沫没有精神吃什么药| 土生金是什么意思| 春天有什么动物| 机位是什么意思| 诸事皆宜是什么意思| 竹外桃花三两枝的下一句是什么| 武夷山岩茶属于什么茶| 师长是什么意思| 为什么哭会流鼻涕| 国字脸适合什么发型| 怀孕分泌物是什么样的| 男孩小名叫什么好听| 色盲的世界是什么颜色| 导语是什么| 逝者已矣生者如斯是什么意思| spyder是什么品牌| 埋怨是什么意思| 嘴唇神经跳动是什么原因| 如是我闻是什么意思| 始终是什么意思| 七九年属什么的| 女人为什么会来月经| 患得患失是什么意思| 九七年属什么生肖| 乙酰磺胺酸钾是什么| 什么是腺瘤| 生粉是什么粉| 龟兔赛跑的故事告诉我们什么道理| 阴唇肥大有什么影响| 肠道紊乱吃什么药| 中国人在印度属于什么种姓| 干部是什么意思| 甲病是什么病| 生地麦冬汤有什么功效| 肺部结节是什么引起的| 环切是什么意思| 酸枣仁配什么治疗失眠| 6月18日是什么节| 突然呕吐是什么原因| rhd血型阳性是什么意思| 师傅和师父有什么区别| 土地出让金是什么意思| naoh是什么| 面部神经痉挛吃什么药| 贫血的人吃什么好| 肾虚去医院挂什么科| 什么地制宜| 智齿什么时候拔最好| 咳嗽不能吃什么食物| 脖子变粗了是什么原因| 带状疱疹是什么原因引起| 大电念什么| 口臭口苦吃什么药最好| 斑秃吃什么药| 银耳不能和什么一起吃| 蛋白尿是什么颜色| 世界上最大的哺乳动物是什么| 肾虚对男生意味着什么| 白色裤子配什么上衣好看| 异烟肼是什么药| 一个火一个斤念什么| 庚寅五行属什么| 8月29日是什么星座| 黄芪精适合什么人喝| 石斛主治什么| 现在有什么好的创业项目| 资治通鉴讲的是什么| 尿道炎是什么原因引起的| 胰腺癌晚期什么症状| 胸口隐隐作痛挂什么科| 高压是什么意思| 4是什么意思| 月字旁的字与什么有关| 什么是精神病| 粉色分泌物是什么原因| bhcg是什么意思| 下海什么意思| 凌晨两点多是什么时辰| 什么字最难写| 为什么会长黑头| 脑电图异常是什么病| 搞基什么意思| modal是什么意思| 苏州有什么特产可以带回家| 慷慨解囊是什么意思| 丙肝病毒抗体阴性是什么意思| 怕冷吃什么药| 财年是什么意思| 水银是什么| 小猪佩奇为什么这么火| 男人尿道炎吃什么药最好| 手腕比喻什么| 阴道炎症是什么症状| 阳明病是什么意思| 冷喷机喷脸有什么好处| 什么一刻值千金花有清香月有阴| 3月29日是什么星座| 血常规24项能查出什么病| 血糖低吃什么补得最快| 10月15号是什么星座的| 吸水石是什么石头| 苏菲是什么| 1968年什么时候退休| 诛心是什么意思| 胎儿宫内窘迫是什么意思| 河南有什么景点| 音容笑貌的意思是什么| mri是什么意思| x58主板配什么cpu| 毛囊长什么样子| 生普洱和熟普洱有什么区别| 逍遥丸配什么治失眠| 龟头炎挂什么科| 荔枝有什么寓意| 肠胃胀气吃什么药| 什么是文员| 好奇害死猫是什么意思| 晚霞是什么意思| 腿走路没劲发软是什么原因| 流鼻血什么原因| 隔离是什么意思| dic是什么意思| 卷帘大将是干什么的| 庚午日是什么意思| 梦见好多猫是什么预兆| 纳财适合做什么| 经期不能吃什么| 中二病的意思是什么| 孔雀女是什么意思| 寸是什么单位| 一毛不拔是什么动物| 后生可畏是什么意思| 门静脉增宽是什么意思| 肠胃不好吃什么药好| 籺是什么意思| 竖心旁的字和什么有关| c反应蛋白高是什么意思| 白带增多是什么原因| 奔跑吧 什么时候开播| 胰腺在人体什么部位| 激素六项是查什么的| 皮肤瘙痒用什么药| 醉氧是什么意思| 小孩咳嗽挂什么科| 小肚子疼吃什么药| 光影什么| 生姜和红糖熬水有什么作用| 姝是什么意思| 属鼠的本命佛是什么佛| 结膜炎滴什么眼药水| 阿司匹林和阿莫西林有什么区别| 脖子里面有结节是什么病| 附件炎有什么症状| 鼻子流清水是什么原因| 老头疼是什么原因导致的| 皮疹是什么样子的| 淋巴吃什么药可以消除| 别开生面是什么意思| 百度Jump to content

材承穨脖ㄥミよ羭︽ 崩¨承穨穝ネ〃

From Wikipedia, the free encyclopedia
Delphi
Original author(s)Borland, CodeGear, Embarcadero
Developer(s)Embarcadero Technologies
Initial release1995
Stable release
RAD Studio 12.3 Athens[1] Edit this on Wikidata / 13 March 2025; 4 months ago (13 March 2025)
Written inMostly Delphi (Object Pascal)
Operating systemRuns on Windows;[2] targets Windows, Linux, macOS, Android, iOS
TypeSoftware Development, Designer, IDE, Compiler, RTL
LicenseFreemium
Websitewww.embarcadero.com/products/delphi
百度 该系统在检测到电气温度发生变化时会迅速发出警报,及时进行主动或被动处置,在发生火灾时将报警信号传输至中控室,以及时采取主动灭火措施。

Delphi is a general-purpose programming language and a software product that uses the Delphi dialect of the Object Pascal programming language and provides an integrated development environment (IDE) for rapid application development of desktop, mobile, web, and console software,[3] currently developed and maintained by Embarcadero Technologies.

Delphi's compilers generate native code for Microsoft Windows, macOS, iOS, Android and Linux (x64).[4][5][6]

Delphi includes a code editor, a visual designer, an integrated debugger, a source code control component, and support for third-party plugins. The code editor features Code Insight (code completion), Error Insight (real-time error-checking), and refactoring. The visual forms designer has the option of using either the Visual Component Library (VCL) for pure Windows development or the FireMonkey (FMX) framework for cross-platform development. Database support is a key feature and is provided by FireDAC (Database Access Components). Delphi is known for its fast compilation speed, native code, and developer productivity.[citation needed]

Delphi was originally developed by Borland as a rapid application development tool for Windows as the successor of Turbo Pascal. Delphi added full object-oriented programming to the existing language, and the language has grown to support generics, anonymous methods, closures, and native Component Object Model (COM) support.

Delphi and its C++ counterpart, C++Builder, are interoperable and jointly sold under the name RAD Studio. There are Professional, Enterprise, and Architect editions, with the higher editions having more features at a higher price. There is also a free-of-charge Community edition, with most of the features of Professional, but restricted to users and companies with low revenue.[7]

Features

[edit]

Delphi supports rapid application development (RAD). Prominent features are a visual designer and two application frameworks, Visual Component Library (VCL) for Windows and FireMonkey (FMX) for cross-platform development.

Delphi uses the Pascal-based programming language Object Pascal created by Anders Hejlsberg for Borland (now IDERA) as the successor to Turbo Pascal. It supports native cross-compilation to many platforms including Windows, Linux, iOS, and Android.

To better support development for Microsoft Windows and interoperate with code developed with other software development tools, Delphi supports independent interfaces of Component Object Model (COM) with reference counting class implementations, and support for many third-party components. Interface implementations can be delegated to fields or properties of classes. Message handlers are implemented by tagging a method of a class with the integer constant of the message to handle.[citation needed]

Database connectivity is extensively supported through VCL database-aware and database access components.

Later versions have included upgraded and enhanced runtime library routines, some provided by the community group FastCode.

Characteristics

[edit]

Delphi uses a strongly typed high-level programming language, intended to be easy to use and originally based on the earlier Object Pascal language. Pascal was originally developed as a general-purpose language "suitable for expressing the fundamental constructs known at the time in a concise and logical way", and "its implementation was to be efficient and competitive with existing FORTRAN compilers"[8] but without low-level programming facilities or access to hardware. Turbo Pascal and its descendants, including Delphi, support access to hardware and low-level programming, with the facility to incorporate code written in assembly language and other languages. Delphi's object-orientation features only class- and interface-based polymorphism.[9] Metaclasses are first class objects. Objects are references to the objects (as in Java), which Delphi implicitly de-references, so there is usually no need to manually allocate memory for pointers to objects or use similar techniques that some other languages need. There are dedicated reference-counted string types, and also null-terminated strings.

Strings can be concatenated by using the '+' operator, rather than using functions. For dedicated string types, Delphi handles memory management without programmer intervention. Since Borland Developer Studio 2006, there are functions to locate memory leaks.

Delphi includes an integrated IDE. The Delphi products all ship with a run-time library (RTL) and a Visual Component Library (VCL), including most of its source code. Third-party components (sometimes with full source code) and tools to enhance the IDE or for other Delphi related development tasks are available, some free of charge. The IDE includes a GUI for localization and translation of created programs that may be deployed to a translator; there are also third-party tools with more features for this purpose. The VCL framework maintains a high level of source compatibility between versions, which simplifies updating existing source code to a newer Delphi version. Third-party libraries typically need updates from the vendor but, if source code is supplied, recompilation with the newer version may be sufficient. The VCL was an early adopter of dependency injection or inversion of control; it uses a reusable component model, extensible by the developer. With class helpers, new functionality can be introduced to core RTL and VCL classes without changing the original source code of the RTL or VCL.

Delphi supports a wide range of third-party database access components that provide native connectivity to major database systems. These include specialized libraries for Oracle, SQL Server, MySQL/MariaDB, PostgreSQL, SQLite, and InterBase/Firebird. Some components, like DAC, offer universal data access solutions supporting multiple databases and cloud services such as Salesforce and FreshBooks. These libraries are regularly updated to remain compatible with the latest IDE versions (e.g., RAD Studio 12), operating systems (e.g., macOS Sonoma, iOS?17, Android?13), and database engines (e.g., Oracle?23, SQL Server?2022, PostgreSQL?16).

The compiler is optimizing and is a single-pass compiler. It can optionally compile to a single executable which does not require DLLs. Delphi can also generate standard DLLs, ActiveX DLLs, COM automation servers and Windows services.

The Delphi IDEs since Delphi 2005 increasingly support refactoring features such as method extraction and the possibility to create UML models from the source code or to modify the source through changes made in the model.

Delphi has communities on the web, where also its employees actively participate. And Delphi is using in collaboration with FireDAC components.

Backward compatibility

[edit]

Delphi is one of the languages where backward compatibility is close to 100%. Although each new release of Delphi attempts to keep as much backward compatibility as possible to allow existing code reuse, new features, new libraries, and improvements sometimes make newer releases less than 100% backward compatible.

Since 2016, there have been new releases of Delphi every six months, with new platforms being added approximately every second release.[10]

Frameworks

[edit]

Delphi offers two frameworks for visual application development, VCL and FireMonkey (FMX):

  • Visual Component Library (VCL) is the framework for developing pure Windows applications. VCL is a long-standing framework, included in the first release of Delphi and actively developed ever since then.
  • FireMonkey (later abbreviated FMX), was released in 2011, as part of Delphi XE2, together with an additional set of built-in compilers for non-Windows platforms. FireMonkey is a cross-platform framework for Windows, macOS, iOS, Android and Linux (x64). The GUI parts of FireMonkey are largely based on Direct3D and OpenGL. FireMonkey is not compatible with VCL; they are two separate frameworks. FireMonkey applications do, however, allow easy sharing of non-visual code units with VCL applications, enabling a lot of code to be ported or shared easily between the platforms.

Interoperability

[edit]

Delphi and its C++ counterpart, C++Builder, are interoperable. They share many core components, notably the IDE, the VCL and FMX frameworks, and much of the runtime library. In addition, they can be used jointly in a project. For example, C++Builder 6 and later can combine source code from Delphi and C++ in one project, while packages compiled with C++Builder can be used from within Delphi. In 2007, the products were released jointly as RAD Studio, a shared host for Delphi and C++Builder, which can be purchased with either or both. Starting with Rio, there is also interoperability with Python.

Sample "Hello World" program

[edit]
program ObjectPascalExample;

type
  THelloWorld = class
    procedure Put;
  end;

procedure THelloWorld.Put;
begin
  Writeln('Hello, World!');
end;

var
  HelloWorld: THelloWorld;               { this is an implicit pointer }

begin
  HelloWorld := THelloWorld.Create;      { constructor returns a pointer to an object of type THelloWorld }
  HelloWorld.Put;
  HelloWorld.Free;                       { this line deallocates the THelloWorld object pointed to by HelloWorld }
end.

Note that the object construct is still available in Delphi.

History

[edit]

Uses in schools

[edit]

Delphi is the medium used to teach programming in South African schools as a subject of information technology (IT).[11]

Roadmaps

[edit]

Embarcadero used to publish "roadmaps" describing their future development plans. The last one was published in November 2020.[12] Version 10.5 referred to in the November 2020 roadmap was renamed 11.0. Starting with Delphi 11, Embarcadero decided to no longer publish formal roadmaps. Instead, possible new features are now presented in a loose order through blog entries and online webinars. An important role has Marco Cantú (product manager) with his blog.

[edit]
  • Borland Enterprise Studio, a precursor to RAD Studio, is a software development suite that includes support for multiple languages. Borland Enterprise Studio for Windows supports Delphi.[13]
  • Borland Kylix: Similar to Delphi, but for Linux, released in 2001. This was the first attempt to add Linux support to the Delphi product family.[14] Kylix used the new CLX cross-platform framework (based on Qt), instead of Delphi's VCL. Kylix was discontinued after version 3. Today Linux support is integrated into the main Delphi product and uses the FireMonkey cross-platform framework.
  • InterBase is an embeddable SQL database that integrates natively to Delphi and C++Builder for client/server or embedded development. Its distinguishing features reduced administration requirements, commercial-grade data security, disaster recovery, and change synchronization. It is also accessible by all major languages and platforms in the market with database connection protocols like ODBC, ADO, ADO.NET and even with Java by JDBC/ODBC Bridge or Java type 4 connectors.
  • JBuilder was a tool for Java development based on Eclipse since version JBuilder 2007.
  • RadPHP (later replaced with HTML5 Builder) was an IDE for PHP that provided true RAD functionality. It has a form designer similar to that of Delphi or Visual Basic, and an integrated debugger based on the Apache web server. It also includes a VCL library ported to PHP. Unlike other IDEs, it supports Web 2.0 features such as Ajax. Delphi for PHP was announced on March 20, 2007, renamed in October 2010 to RadPHP, and is based on Qadram Q studio. Embarcadero acquired Qadram in January 2011.
  • Delphi Prism (later renamed Embarcadero Prism) derived from the Oxygene language (formerly named Chrome) from RemObjects. It ran in the Microsoft Visual Studio IDE rather than RAD Studio. It was licensed and rebranded by Embarcadero to replace Delphi.NET when that product was discontinued.
  • Free Pascal is an open-source Pascal cross-platform cross-compiler that supports most of Delphi's Object Pascal code. Free Pascal also has its own language extensions, multiple compiler [language syntax] modes, and supports 18+ operating systems and 9+ processor architectures.[15] Lazarus is a cross-platform RAD IDE that uses the Free Pascal compiler.

Notable third-party libraries

[edit]

References

[edit]
  1. ^ "Announcing the Availability of RAD Studio 12.3 Athens". 13 March 2025. Retrieved 13 March 2025.
  2. ^ "Installation Notes - Operating System Requirements". Archived from the original on 2025-08-05. Retrieved 2025-08-05.
  3. ^ William Buchanan (4 February 2003). Mastering Delphi Programming. Palgrave Macmillan. pp. 10–. ISBN 978-1-137-17356-0.[permanent dead link]
  4. ^ "Performance Comparison from Delphi 2010 to XE6 (Part 2)". Riversoft AVG. 12 May 2014. Archived from the original on 26 July 2015. Retrieved 9 March 2016.
  5. ^ "The Delphi Geek: Built For Speed". Archived from the original on 23 March 2016. Retrieved 9 March 2016.
  6. ^ "Discussion on Hacker News about Delphi being alive". Hacker News. Archived from the original on 2 July 2016. Retrieved 9 March 2016.
  7. ^ "Delphi: App Development Product Editions". Embarcadero. Archived from the original on 14 March 2021. Retrieved 13 March 2021. With download link for Delphi Feature Matrix
  8. ^ "Recollections About the Development of Pascal" (PDF). Archived (PDF) from the original on 2025-08-05. Retrieved 2025-08-05.
  9. ^ Lingfeng Wang; Kay CHen Tan (20 January 2006). Modern Industrial Automation Software Design. John Wiley & Sons. pp. 113–. ISBN 978-0-471-77627-7.
  10. ^ "List of Delphi language features and version in which they were introduced/deprecated". Stack Overflow. Archived from the original on 28 February 2016. Retrieved 9 March 2016.
  11. ^ Staff Writer. "Embarcadero Delphi named developer language of choice for South African schools". Archived from the original on 2025-08-05. Retrieved 2025-08-05.
  12. ^ "RAD Studio November 2020 Roadmap PM Commentary". blogs.embarcadero.com. 17 November 2020. Archived from the original on 2025-08-05. Retrieved 2025-08-05.
  13. ^ "Borland Enterprise Studio". Archived from the original on 2025-08-05. Retrieved 2025-08-05.
  14. ^ "Kylix is here!". Archived from the original on 2025-08-05. Retrieved 2025-08-05.
  15. ^ "Free Pascal Homepage". freepascal.org. Archived from the original on 2025-08-05. Retrieved 2025-08-05.

Further reading

[edit]
[edit]
什么是自由度 肝肾不足是什么意思 桃子与什么相克 脂肪最终被消化成什么 泡面吃多了有什么危害
年底是什么时候 荨麻疹什么原因引起的 上午10点半是什么时辰 盘尼西林是什么药 6岁儿童为什么会长腿毛
什么是风象星座 验尿细菌高是什么原因 脚臭用什么洗效果最好 金针菇为什么不能消化 书店买不到的书是什么书
消化功能紊乱吃什么药 五灵脂是什么东西 chd医学上是什么意思 梦见亲嘴是什么意思 英雄本色是什么意思
真实是什么意思hcv8jop1ns4r.cn 142是什么意思hcv8jop3ns7r.cn 熊吃什么hcv8jop7ns1r.cn 补肾气吃什么药jasonfriends.com 急是什么结构hcv9jop4ns1r.cn
年下恋是什么意思hcv8jop4ns7r.cn 戒指戴在食指什么意思hcv8jop8ns8r.cn 什么是染色体hcv9jop4ns5r.cn 教师节是什么时候hcv8jop8ns9r.cn 吕布是什么生肖hcv8jop8ns6r.cn
im什么意思hcv9jop8ns0r.cn 古什么今什么hcv8jop9ns0r.cn 子宫直肠窝积液是什么意思hcv8jop3ns4r.cn 火加同念什么hcv9jop3ns9r.cn 骨折恢复吃什么好hcv8jop9ns3r.cn
快餐是什么意思hcv9jop2ns4r.cn 面条是什么做的hcv9jop6ns9r.cn 下嘴唇有痣代表什么hcv8jop3ns2r.cn 黄芪和什么搭配不上火hcv8jop2ns3r.cn 钠是什么hcv9jop7ns1r.cn
百度