C++ Builder
C++ Builder(C++ビルダー)は、エンバカデロ・テクノロジーズのC/C++統合開発環境 (IDE) である。同社の代表製品である「Delphi」のC/C++版とも言えるRADツールで、Delphiと同様に構成部品を貼り付けていくようなユーザインタフェース (UI) 設計を可能としている。元々はボーランド(インプライズ)で開発され、コードギアへ移管、同社の買収に伴って現在へ至る。ボーランド社の時代は、Borland C++ Builder(ボーランド C++ビルダー; BCB)とも呼ばれていた。
Contents
- 1 概要
- 2 歴史
- 2.1 C++ Builder 1から5まで
- 2.2 C++ Builder 6
- 2.3 C++ BuilderX 路線
- 2.4 復興運動からTurbo C++まで
- 2.5 C++ Builder 2007
- 2.6 C++ Builder 2009
- 2.7 C++ Builder 2010
- 2.8 C++ Builder XE
- 2.9 C++ Builder XE 2
- 2.10 C++ Builder XE 3
- 2.11 C++ Builder XE 4
- 2.12 C++ Builder XE 5
- 2.13 C++ Builder XE 6
- 2.14 C++ Builder XE 7
- 2.15 C++ Builder XE 8
- 2.16 C++ Builder 10 Seattle
- 2.17 C++ Builder 10.1 Berlin
- 2.18 C++ Builder 10.2 Tokyo
- 2.19 今後のC++Builder
- 3 GUIライブラリ
- 4 その他
- 5 脚注
- 6 外部リンク
概要
FireMonkey や Visual Component Library (VCL) を利用するIDEを持つDelphiのC++版である。C++コンパイラには、そのための拡張が施されている。また統合開発環境はDelphiとほぼ同一である。
長所
- プログラムをC/C++で書ける。
- 単一のコードベース、単一のプロジェクトチームでマルチプラットフォーム (Windows, macOS, iOS, Android) のサポートが実現できる。
- RADであり、かつVisual Basicの様なランタイムライブラリの別途配布も不要(実行ファイルに結合可能)である。
- Qtなどと比べランタイムライブラリを結合しても実行ファイルは小さい。
- dynamic_castの展開がVisual C++と比較して高速である[1]。
- ANSI C、ISO C、C99、C11、ISO C++、C++98、C++0x TR1、そしてC++11といったC/C++標準に準拠している。(XE 4)
- プロパティのようなDelphi由来のオブジェクト指向言語向け拡張機能を使用でき、標準のC++よりもGUIアプリケーション開発環境 (RAD) との親和性が高い。
- 無料版がある。
- 日本語版があり日本語ヘルプなどの日本語情報が充実している。
短所
- 。
- ランタイムライブラリを結合すると実行ファイルが大きくなる。(バージョン5の場合、最低でも500Kバイト程度)
- Windowsの開発環境としては、Visual Studio (Visual C++) よりもマイナーである。
- 。
歴史
C++ Builder 1から5まで
最初の C++ Builder は1997年2月26日にリリースされた (日本語版の出荷開始日は1997年3月28日)。Delphiとバージョン番号を合わせた結果、C++ Builder 2は欠番となっている。
C++ Builder 6
2001年。GUIライブラリにVCLに加えクロスプラットフォームのComponent Library for Cross Platform(CLX)を追加した。CLXはWindowsとGNU/Linuxの二つのプラットフォームをサポートするがCLXを用いたGNU/Linuxの開発ができたのは別製品のKylixのみ。CLXはC++ Builderではこのバージョンのみで以降のバージョンに採用されることはなかった。
C++ BuilderX 路線
C++ Builderが使用するVCLは、Delphiにおいて7、8、2005と進化した。またDelphiは、リファクタリング機能などを備えた新統合開発環境「Galileo」に移行した。しかし、これらに対応するC++ Builderは発表されなかった。BorlandのC++統合開発環境は、従来のWindowsに加えてLinuxクライアントサイド市場を狙った「Kylix3」の失敗により、Java製の「C++ BuilderX」(シープラスプラスビルダーテン)が担うことになったからである。これはRADではなく、統合環境版のBorland C++ Compilerとも言うべきもので、携帯電話などの組み込み、サーバサイド市場を狙ったものである。結局、この路線は失敗に終わった。無償版の配布も終了した。
復興運動からTurbo C++まで
2004年にC++ Builder ユーザは Paul Gustavson を中心として、ボーランドに公開質問状を送り、新製品の開発を促した。これに対して同社は「C++ Builderコミュニティへの公開書簡」[2]で、これを了承した。
2005年12月21日に「Borland Developer Studio 2006」が発売された。これには約束どおり「C++ Builder 6」の後継製品である、「C++ Builder 2006」(内部バージョン: 10.0)が統合された。
2006年に「Turbo C++」が発表された。これは「Borland Developer Studio 2006」上で他の言語と統合されていた「C++ Builder 2006」を単体化した物である。無料版も提供された。この無償公開版は、Turbo C++ Explorer(内部バージョン: 10.0)という名称にて同社のサイトより配布が行なわれていたが2009年8月26日に日本語版の頒布を終了した。Turbo C++は、C++ Builderとは異なり、プログラミング言語を1つだけしか選べない。
C++ Builder 2007
2007年5月15日に、「C++ Builder 2007」(内部バージョン: 11.0)が発表された。
Windows Vistaに対応した。2007年9月6日には、C++ Builder 2007 を含む統合版「CodeGear RAD Studio 2007」が発表された。
C++ Builder 2009
2008年8月26日に「C++ Builder 2009」(コードネーム:Tiburón、内部バージョン: 12.0)が発表された。
C++ Builder 2009から文字列が全面的にUnicode文字列に置き換わった。
C++ Builder 2010
2009年8月25日に「C++ Builder 2010」(内部バージョン: 14.0)が発表された。
新しいIDE機能/デバッグツールにより開発をさらに効率化。コーディング作業やデバッグ作業をさらにスピードアップ可能である。タッチ対応アプリケーションの開発をサポート。タブレットやタッチパット、POSやATM向けのアプリケーションをビジュアルに開発可能である。Firebirdサポート、DataSnapなど、広範なデータベース、アーキテクチャ、プロトコルに対応する。
C++ Builder XE
2010年9月2日に「C++ Builder XE」(内部バージョン: 15.0)が発表された。
XEは「Cross Platform Edition」の略である。名称通りクロスプラットフォーム開発環境を目指して開発が進められたものの、不完全であったため見送られている。
2011年2月1日にはStarterエディションが追加発表された。「Turbo C++」以来のエントリー向けエディションであり、無償ではないがコンポーネントのインストールが可能、1,000 USドルを超えない範囲であれば商用利用可能など、制限は大幅に緩和されている。ただし、Starterには旧C++ Builderのライセンスは付属しない。また、同時利用は同一サブネット内において5ライセンスまでとされている。このため教室での利用は向かないとされており、アカデミック版の提供はない。税別価格は18,000円だが、同社または他社の開発ツールユーザーは税別14,000円でアップグレードできる。Delphi Starterとの併用はできず、RAD StudioにもStarterは提供されない。
アカデミック版を除き、C++Builder 6、2007、2009、2010のライセンスが付属する[3][4]。
C++ Builder XE 2
2011年9月1日に「C++ Builder XE 2」(内部バージョン: 16.0)が発表された。
新たに FireMonkey フレームワークを導入したことにより、HD や 3D に対応した高品質なユーザインタフェース (UI) の設計や、Mac OS X (Intel x86) 向けのマルチプラットフォームアプリケーションの開発が可能になった。また、製品エディションとしてEnterpriseとArchitectの間にUltimateが追加された。
搭載されるコンパイラはBCC32(Windows 32ビット)、BCCOSX (Mac OS X) の2つとなった。
Starterとアカデミック版を除き、C++Builder 6、2007、2009、2010、XE のライセンスが付属する。
C++ Builder XE 3
2012年9月4日に「C++ Builder XE 3」(内部バージョン: 17.0)が発表された[5]。
新たに「Metropolis UI」を導入したことにより、タッチ対応、ライブタイルサポートなどを搭載したWindows 8デスクトップアプリケーションの開発が可能になった。ただしWinRTには対応しない
2012年12月10日にリリースされたアップデートにより、Clang、LLVMに対応した64ビットコンパイラが追加提供された[6]。ただし、32ビットコンパイラは従来通りBCC32なため、Win32 / Win64でソースコードに互換性がない事もあった。この問題の解消には後述する「C++ Builder 10 Seattle」の登場を待たなくてはならなかった。
搭載されるコンパイラはBCC32(Windows 32ビット)、BCC64(Windows 64ビット / Clang)、BCCOSX (OS X) の3つとなった。
Starterとアカデミック版を除き、C++Builder 6、2007、2009、2010、XE、XE2 のライセンスが付属する。
C++ Builder XE 4
2013年4月22日に「C++ Builder XE 4」(内部バージョン: 18.0)が発表された[7]。
前バージョンのXE3 から7ヶ月でのバージョンアップとなったため XE3 からのバージョンアップ料金はキャンペーン価格ながら格安の 6,000円となった(Professional版の場合)。
Starterとアカデミック版を除き、C++Builder 6、2007、2009、2010、XE - XE3 のライセンスが付属する。
C++ Builder XE 5
2013年9月12日に「C++ Builder XE 5」(内部バージョン: 19.0)が発表された[8]。
2013年12月11日にリリースされたアップデート2により、iOS開発機能が導入された[9]。Professional版でモバイル開発 (iOS) を行うにはMobile Add-On Packを別途購入する必要がある。
搭載されるコンパイラはBCC32(Windows 32ビット)、BCC64(Windows 64ビット / Clang)、BCCOSX (OS X)、BCCIOSARM (iOS デバイス用 / Clang) の4つとなった。
Starter版を除き、C++Builder 6、2007、2009、2010、XE - XE4 のライセンスが付属する。
C++ Builder XE 6
2014年4月16日に「C++ Builder XE 6」(内部バージョン: 20.0)が発表された[10]。
このバージョンから対応プラットフォームにAndroidが追加された。これにより、Windows 7/8/8.1(32ビット/64ビット)、iOS (iPhone/iPad)、Android(Google Glassを含む)向けのアプリケーション開発が可能となった。モバイル開発 (iOS / Android) を行う場合、Professional版ではMobile Add-On Packを別途購入する必要がある。
搭載されるコンパイラはBCC32(Windows 32ビット)、BCC64(Windows 64ビット / Clang)、BCCOSX (OS X)、BCCIOSARM(iOS デバイス用 / Clang), BCCAARM (Android / Clang) の5つとなった。
Starter版を除き、C++Builder 6、2007、2009、2010、XE - XE5 のライセンスが付属する。
C++ Builder XE 7
2014年9月2日に「C++ Builder XE 7」(内部バージョン: 21.0)が発表された[11]。
Starter版を除き、C++Builder 6、2007、2009、2010、XE - XE6 のライセンスが付属する。
C++ Builder XE 8
2015年4月7日に「C++ Builder XE 8」(内部バージョン: 22.0)が発表された[12]。
iOSデバイス用64ビットコンパイラが追加されている。モバイル開発 (iOS / Android) を行う場合、Professional版ではMobile Add-On Packを別途購入する必要がある。
搭載されるコンパイラはBCC32(Windows 32ビット)、BCC64(Windows 64ビット / Clang)、BCCOSX (OS X)、BCCIOSARM(iOSデバイス用32ビット / Clang)、BCCIOSARM64(iOSデバイス用64ビット / Clang)、BCCAARM (Android / Clang) の6つとなった。
Starter版を除き、C++Builder 6、2007、2009、2010、XE - XE7 のライセンスが付属する。
C++ Builder 10 Seattle
2015年9月1日に「C++ Builder 10 Seattle」(内部バージョン: 23.0)が発表された[13]。
Clangベースの新しいWin32用コンパイラが追加された。これにより、Win32 / Win64でほぼ同一のコードを書く事ができるようになった。従来のWin32用コンパイラであるBCC32も利用する事ができる。
搭載されるコンパイラはBCC32(Windows 32ビット)、BCC32C(Windows 32ビット / Clang)、BCC64(Windows 64ビット / Clang)、BCCOSX (OS X)、BCCIOSARM(iOS デバイス用 32ビット / Clang)、BCCIOSARM64(iOSデバイス用64ビット / Clang)、BCCAARM (Android / Clang) の7つとなった。
Starter版を除き、C++Builder 6、2007、2009、2010、XE - XE8 のライセンスが付属する。
C++ Builder 10.1 Berlin
2016年4月20日に「C++ Builder 10.1 Berlin」 (コードネーム: BigBen、内部バージョン: 24.0) が発表された[14]。
Android 6.0、iOS 10、macOS 10.12 (Sierra) アプリケーション開発に対応。FireMonkey のフォームデザイナも独立表示可能になった (デフォルトでは埋め込みデザイナ)。インストーラの改良により、インストールオプションによってはインストール時間が大幅に短縮されるようになった。このバージョンからUltimateエディションが廃止されている。
2016年8月22日以降、Starter Edition が無償で入手できるようになっている[15]。2006年の Turbo C++ Explorer 以来、10 年ぶりの無償版である。また、Starter Edition は Turbo Explorer とは異なり、複数のパーソナリティ (言語) が共存できるため、C++Builder と Delphi を同じ環境で利用する事が可能となっている。コンポーネントのインストールにも制限がない。
Starter 版を除き、C++Builder 6、2007、2009、2010、XE - XE8、10 Seattle のライセンスが付属する。
Update 2 で Windows 10 の Anniversary Update に正式対応したため、Update 2 には「Anniversary Edition」という名称がついている。
C++ Builder 10.2 Tokyo
2017年3月22日に「C++ Builder 10.2 Tokyo」(コードネーム: Godzilla、内部バージョン: 25.0)が発表された[16]。
Clang ベースのコンパイラにおいてパフォーマンスが向上している。また、インストーラの改良により、インストール時間が大幅に短縮されるようになった。
2018年3月14日にリリースされた Release 3 において、Professional Edition にモバイルサポートが追加された。従来、Mobile Add-On Packとして別売されていたものが統合された形になる。また BCC32X という Win32用コマンドラインコンパイラが新たに追加された。これは下位互換性のためにコマンドラインインターフェイスが非互換だった BCC32C を他のコンパイラ (bcc64、bccios32、bccios64、bccaarm) と共通にしたものである。
2018年7月19日に、従来の Professional Edition 相当を無償化した「C++Builder Community Edition」がリリースされた。Windows 64bit, macOS, iOS, Android 向けの開発が可能となっている。無償版 Starter Edition とは異なり、「Delphi Community Edition」と同時にインストールする事はできない。
Starter / Community 版を除き、C++Builder 6、2007、2009、2010、XE - XE8、10 Seattle、10.1 Berlinのライセンスが付属する。
今後のC++Builder
今後、C++17 対応、Linux (64ビット) コンパイラの追加を盛り込む予定であると、2018年のロードマップにてアナウンスされている[17]。
GUIライブラリ
VCL (Visual Component Library)
C++ Builderの全バージョン、全てのエディションで採用されているWindows専用のGUIライブラリである。
- 高機能でC++ BuilderのメインのGUIライブラリとして位置づけられる。
- Windows専用だけあってWindows固有のプログラミングテクニックがそのまま通用することが多い。
- XEのバージョンからIEコンポーネント(TWebBrowserなど)の高度な処理に必要なATLライブラリが付属されなくなっている。
- XE8までは2009または2010のバージョンからATLライブラリをコピーして使うことはできる。
- VCLはDelphi(Object Pascal)で記述されている。
FireMonkey
C++ BuilderではXE2から採用されているクロスプラットフォームのGUIライブラリである。
- FMXとも呼ばれる。
- Windows、Mac OS、Android、iOS(iPhone、iPad)と幅広く対応するがGNU/Linuxには対応しない。
- 無料のStarterエディションでもFireMonkeyが使えるがWindowsのみのライセンスである。
- ProfessionalエディションではWindowsとMac OSのライセンスがありAndroidとiOSはオプション。
- VCLとの互換性が低く、VCL間の移植は困難。
- VCLと比べると機能は十分とはいえずVCLの完全な代替にはならない。
- VCLと比べるとWindows固有の機能を呼び出すことが難しい場合がある。
- C++ BuilderでiOSの開発をする場合はiOSシミュレーターが使えない。
- FireMonkeyはDelphi(Object Pascal)で記述されている。
CLX (Component Library for Cross Platform)
Microsoft WindowsとGNU/Linuxのクロスプラットフォームの古いGUIライブラリである。
- C++ Builder 6とDelphi 6とKylixの全バージョンで採用された。
- 長らく前に開発は中止され現在のバージョンでは採用されていない。
- 現在でも最新バージョンのStarterエディション以外のエディションを購入することによりC++ Builder 6とCLXを入手することが可能。
- QtベースのVCLライクなGUIライブラリであり、FireMonkeyと比べると格段とVCLとの互換性が高い。
- VCLにない機能もあるため現在でもWindowsで使う利点がある。
- VCLと比べるとWindows固有の機能を呼び出すことが難しい場合がある。
- C++ Builder 6とDelphi 6のVCLはUnicodeに全く対応していなかったがCLXは一部分ながら対応している。
- C++ Builder 6とCLXの組み合わせで現在の最新Windows向けの開発も可能。
- GNU/LinuxはKylix発売当時と現在では大きく仕様が変わっているためKylixで現在のGNU/Linux向けの開発はできない。
- 従って現在はWindows専用のようになっておりクロスプラットフォーム性は失われている。
- WindowsとGNU/Linuxではコンパイラが違いCLXの仕様も少し違っていたためKylixのC++とのソース互換性はそれほど高くなかった。
- CLXのベース部分はQtでありQtはC++で作られている。
その他
- 2000年に Borland C++ Compiler (BCC) 5.5 が公開された。これはコンパイラ、リンケージエディタ、標準ライブラリおよび開発ツールの無料版である。開発はRADではなく、コマンドラインから行う。当時、Windows用の無償のC/C++コンパイラは、ほかにGCCほどしかなく、Borland C++が広く知られることになった。BCC 5.5は 2018 年現在もエンバカデロのサイトから無償ダウンロードして使用できる[18]が、保証やサポートはなされていない。
- C++ BuilderのではMFCやDirectXなどもサポートしている。
- バージョンやパッケージの種類によってはDelphiなどのCD-ROMも付属する。
- DelphiやC++Builderの開発者の一部はマイクロソフトに移籍して、Visual C#などを開発している。
- 2016年に Free C++ Compiler が公開された。Clang ベースで、C++11 に対応している[19]。
脚注
- ↑ “RTTI のコストを理解する”. . 2008年8月5日閲覧.
- ↑ ボーランド (2004年12月14日). “Open Letter to the C++Builder Community”. . 2006閲覧.
- ↑ アップグレードした場合、元のバージョンと同じバージョンのライセンスの重複取得はできない。
- ↑ 旧バージョンライセンスの取得は、購入180日以内に行う必要がある。
- ↑ “エンバカデロ、Windows 8/Mountain Lionに対応したビジュアル開発環境最新版、Delphi® XE3とC++Builder® XE3を発表”. . 2015年9月6日閲覧.
- ↑ EmbarcaderoがDelphiとC++ Builderをアップデートし、 HTML5 Builderをリリース。
- ↑ “エンバカデロ、iPhone/iPadアプリのネイティブ開発を実現したマルチデバイス開発ツールRAD Studio XE4を世界同時発表”. . 2015年9月6日閲覧.
- ↑ “エンバカデロ、AndroidおよびiOS向けネイティブ開発をサポートしたRAD Studio XE5を本日より販売開始”. . 2015年9月6日閲覧.
- ↑ “エンバカデロ、C++Builder XE5で新たにiOS向け開発をサポート”. . 2015年9月6日閲覧.
- ↑ “エンバカデロ、デスクトップからモバイル、ウェアラブルに対応したビジュアル開発環境「RAD Studio XE6」を発表”. . 2015年9月6日閲覧.
- ↑ “エンバカデロ、Windows開発をモバイル、IoT対応に拡張するビジュアル開発環境「RAD Studio XE7」を発表”. . 2015年9月6日閲覧.
- ↑ “エンバカデロ、マルチデバイス ネイティブ開発環境の新バージョン「RAD Studio XE8」を発表”. . 2015年9月6日閲覧.
- ↑ “エンバカデロ、Windows 10対応のマルチデバイスネイティブ開発環境の新バージョン「RAD Studio 10 Seattle」を発表”. . 2016年5月7日閲覧.
- ↑ “エンバカデロ、マルチデバイス向けビジュアル開発ツールの新リリース「RAD Studio 10.1 Berlin」を本日より販売開始”. . 2016年5月7日閲覧.
- ↑ “Webセミナー「C++ BootCamp」とC++ Builder Starter無料ダウンロードのご案内 [JAPAN]”. . 2016年8月26日閲覧.
- ↑ “RAD Studio 10.2 is here - Get Delphi Linux Server Support today!”. . 2017年3月23日閲覧.
- ↑ https://community.embarcadero.com/blogs/entry/2018-rad-studio
- ↑ “C++Compiler/Turbo Debuggerダウンロード登録フォーム”. . 2018年6月7日閲覧.
- ↑ “C++Compiler - FREE TOOL”. . 2018年6月7日閲覧.
外部リンク
テンプレート:CProLang テンプレート:C++ テンプレート:Integrated development environments