【Delphi】Delphi XE8 について

# はじめに
**『Delphi XE8』** についての概要です。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/21785/d1dc6631-e467-5115-6bea-13a309681568.png)

# 概要
製品概要です。

| 項目 | 説明 |
|:---|:---|
| 製品名 | Delphi XE8 / Appmethod 1.16 |
| コードネーム | Elbus |
| 発売年 | 2015  |
| 発売元 | Embarcadero Technologies |
| ビルドバージョン | 22.0  |
| コンパイラバージョン | 29.0 |
| BDS バージョン | 16.0 |
| サポートプラットフォーム | Windows (32/64 bit) / macOS (32bit) / iOS デバイス (32/64 bit) / iOS シミュレータ (32bit) / Android (32bit) |

## 前バージョンとの違い

 - iOS デバイス用 64bit コンパイラ `dcciosarm64.exe` が追加された [^1]
 - IDE が薄ら青くなった
 - IDE にコミュニティツールバーが追加された (10.3 Rio で廃止)
 - 作業実行支援ツール『Castalia』が統合された
 - パッケージマネージャ『GetIt』が統合された
 - バージョン管理システムとして `Mercurial` が使えるようになった
 - FireMonkey アプリケーション用にマルチデバイスプレビューが追加された
 - ヘルプは HTML Help (`*.CHM`) になった
 - パラメータ化メソッドの型推論が行えるようになった
 - iOS で使えるネイティブコントロールが増えた
 - 新しい HTTP クライアントコンポーネントが追加された (`THTTPClient`, `THTTPRequest`, `TTPResponse`)
 - ビーコンがサポートされた (`System.Beacon`) [^2]
 - クラシック Bluetooth がサポートされた (`TBluetooth`)
 - ハッシュ関数がサポートされた (`System.Hash.pas`)
 - プラットフォームに依存しない 32bit 整数型が追加された (`FixedInt`, `FixedUInt`)
 - `LongInt` と `LongWord` がプラットフォーム依存となった
 - 実数の剰余を求める事が可能な `FMod()` などが `System.Math` に追加されている
 - `SHDocVw` の代替として `System.Win.InternetExplorer` が追加されている
 - 非同期プログラミングライブラリ (APL) が追加された
 - 2D 物理エンジン『Box2D』ライブラリが追加された
 - FireMonkey の Windows / macOS 向けに `TWebBrowser` が用意された
 - FireMonkey の iOS / Android 向けに `TMapView` が用意された
 - FireMonkey でイメージリストが使えるようになった

## その他

 - 最後の XE シリーズ
 - XE8 以降、Update / HotFix はアップデートサブスクリプション加入者のみに提供されるようになった
 - ライセンスキーが XE8 以降で同じになった (アップデートサブスクリプションを継続する限り)
 - 設定移行ツール (`migrationtool.exe`) が付属するようになった
 - アプリの使用状況を確認できる AppAnalytics コンポーネントが追加された (10.3 Rio で廃止)
 - AppAnalytics の利用には別途費用が必要
 - 『QC Windows Client』(`Qualitycentral.exe`) が同梱されなくなった
 - ウェルカムページ等のブラウザウィンドウからツールバーが外された (ネットブラウジングするのが難しくなった)
 - ジェネリックスのメソッドに変数パラメータ (**var**) または **out** パラメータが使われている場合でも型推論が正しく働くようになった
 - 2015 年は『Windows 10』が発売された年です

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/21785/4fbeb3ee-4bd2-8d33-aec0-e97535eb63ca.png)

# おわりに

IDE に関する新機能のうち、7 割程度が『Castalia』によるものです。『Castalia for Delphi』ですが、[元は TwoDesk Software の製品です。](https://www.embarcadero.com/jp/press-releases/twodesk-software-castalia-usertility)また、AppAnalytics も『Usertility』という製品でした。

 - [Castalia for Delphi (Internet Archive: TwoDesk Software)](https://web.archive.org/web/20131104003207/http://www.twodesk.com/castalia/)
 - [Usertility (Internet Archive: TwoDesk Software)](https://web.archive.org/web/20140316220145/http://www.twodesk.com/usertility/)

『Castalia』の統合では様々な問題が出ており、私は Castalia のパッケージを外していました [^3]。最初期のリリースではコードエディタで `|` (パイプ: 0x7C) を入力するとフリーズしたんですよ？

**See also:**

 - [Delphi / C++Builder の新機能 (2007 以降) (Qiita)](https://qiita.com/ht_deko/items/23f51b4345f5d9ef14b1)
 - [【Delphi】ハッシュ値を生成する (Qiita)](https://qiita.com/ht_deko/items/7f7944d3117a8a9794f2)
 - [<9> 非同期プログラミングライブラリ (APL) (Delphi コンカレントプログラミング)](https://qiita.com/ht_deko/items/eedf3728be2a301a8a5d)
 - [【Delphi】Quality Central ブラウザを作った話 (Qiita)](https://qiita.com/ht_deko/items/ab9e13361ae31c4089e2)
 - [オフラインインストール用に登録コードを取得する（RAD Studio/Delphi/C++Builder XE6以降、InterBase XE7以降、ER/Studio 10以降）(Support Wiki)](https://docwiki.embarcadero.com/Support/ja/%E3%82%AA%E3%83%95%E3%83%A9%E3%82%A4%E3%83%B3%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E7%94%A8%E3%81%AB%E7%99%BB%E9%8C%B2%E3%82%B3%E3%83%BC%E3%83%89%E3%82%92%E5%8F%96%E5%BE%97%E3%81%99%E3%82%8B%EF%BC%88RAD_Studio/Delphi/C%2B%2BBuilder_XE6%E4%BB%A5%E9%99%8D%E3%80%81InterBase_XE7%E4%BB%A5%E9%99%8D%E3%80%81ER/Studio_10%E4%BB%A5%E9%99%8D%EF%BC%89)
 - [手動アンインストール手順（RAD Studio XE8）(Supprt Wiki)](https://docwiki.embarcadero.com/Support/ja/%E6%89%8B%E5%8B%95%E3%82%A2%E3%83%B3%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E6%89%8B%E9%A0%86%EF%BC%88RAD_Studio_XE8%EF%BC%89)

# 索引
[ [← Delphi XE7](https://qiita.com/ht_deko/items/b2f9e8b52e7785f65cfe) ] [ [↑ 目次へ](https://qiita.com/ht_deko/items/eb96629d705542e3a980) ]  [ [→ Delphi 10 Seattle](https://qiita.com/ht_deko/items/e34c8a6376b636de35e2) ]

[^1]: Apple は 2015/02 以降の新規アプリでの iOS 8 対応及び 64bit 対応を義務化した。
[^2]: ビーコン自体は macOS / iOS で動作するデモが XE7 に存在した。XE8 でコンポーネント化され、Android でも動作するようになった...が、Windows ではマトモに動作しない (動作環境として Windows 10 以降が必要)。
[^3]: `BDS.EXE /NOCASTALIA` で Castalia なしで起動できる。