【Delphi】Delphi 10.3 Rio について

# はじめに

**『Delphi 10.3 Rio』** についての概要です。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/21785/eafc9d7f-afc1-622e-d3e8-a90758ea7854.png)

# 概要
製品概要です。

| 項目 | 説明 |
|:---|:---|
| 製品名 | Delphi 10.3 Rio |
| コードネーム | Carnival |
| 発売年 | 2018  |
| 発売元 | Embarcadero Technologies |
| ビルドバージョン | 26.0  |
| コンパイラバージョン | 33.0 |
| BDS バージョン | 20.0 |
| サポートプラットフォーム | Windows (32/64 bit) / macOS (32/64 bit) / iOS デバイス (32/64 bit) / iOS シミュレータ (32bit) / Android (32/64 bit) / Linux (64 bit) |

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

 - インライン変数宣言が可能になった
 - 型推論が行えるようになった
    ```pascal
    procedure Test;
    begin
      for var i := 1 to 100 do
        writeln(i);
    end;
    ```
 - パラメータ化メソッドで型引数を省略できるようになった
 - クロージャが書けるようになった
 - WinRT API や Windows 10 API のヘッダが増えた
 - DPI Awareness での Per Monitor V2 のサポート
 - LINUX コンパイラで ARC (自動参照カウント) が廃止された (Enterprise 以上)
 - LINUX コンパイラで AnsiString / AnsiChar がサポートされるようになった (Enterprise 以上)
 - macOS 用 64bit コンパイラ `dccosx64.exe` が追加された (2019/07/19 Release 2) [^1]
 - Android 用 64bit コンパイラ `dccaarm64.exe` が追加された (2019/11/21 Release 3) [^2]

## その他

 - インストールに .NET Framework 4.5 が必要になった
 - Linux デスクトップアプリを FireMonkey GUI で開発可能になる『FMX Linux』がバンドルされるようになった (Release 2 / Enterprise 以上)
 - VCL トランスレーションサポート機能が非推奨になった
 - コミュニティツールバーが廃止された
 - AppAnalytics が廃止された
 - ソースコードフォーマッタが使い物にならなくなった
 - RAD Studio に『HTML5 Builder (旧 RadPHP)』が付属しなくなった
 - 2019/05/01 に元号が『令和』になりました

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/21785/9cc3158a-7c20-2f80-3b95-3c678b7e12af.png)

# おわりに

インライン変数宣言は C 言語 (C99) で盛り込まれた「変数宣言はブロックの先頭でなくともいい」に似ていますね。とにかく楽に書けるようになりました。ただ、標準 Pascal や Delphi は **名前等価** なので、変数宣言は従来通り変数宣言ブロックに書いた方がいい事もあります。

「『macOS 10.15 Catalina』では 32bit アプリが動作しない」というのには間に合ったのですが、「Google Play での新規登録アプリは 64bit 化が必要」というのには微妙に間に合いませんでした。サイドローディングで 32bit アプリが動いたのであまり問題にならなかったとは思います。

10.3 Rio はとにかくパッチが多かった印象です。どの順に当てたらいいのか、全体にあたるパッチなのか、プロジェクト毎に対処しなければならないパッチなのかがよくわからなくなって、備忘録的な記事を書いたくらいでした。

オリンピックはリオ (2016) → 東京 (2021) でしたが、 Delphi は逆に『10.2 Tokyo』→『10.3 Rio』となりました。

**See also:**

 - [Delphi / C++Builder の新機能 (2007 以降) (Qiita)](https://qiita.com/ht_deko/items/23f51b4345f5d9ef14b1)
 - [Delphi におけるジェネリックプログラミング (Qiita)](https://qiita.com/ht_deko/items/85a830380cb6e68aa773)
 - [RAD Studio / Delphi / C++Builder 10.3 Rio スタートアップ FAQ (Qiita)](https://qiita.com/ht_deko/items/573f7c11c15c46f895c6)
 - [RAD Studio 10.3.3 Rio のパッチについて (Qiita)](https://qiita.com/ht_deko/items/eb8071d7b7b0cd476706)
 - [Delphi 10.3 Rio で CSV を処理する (Qiita)](https://qiita.com/ht_deko/items/2802677fe1cfaa4d1332)
 - [【Delphi】そこそこ短いコードで Web サイトのデータを持ってくる (Qiita)](https://qiita.com/ht_deko/items/104e6f68385682b0758c)
 - [Delphi で PowerPoint の各ページを画像ファイルにする (Qiita)](https://qiita.com/ht_deko/items/9f495637e3b31a08d224)
 - [Delphi で Wio Terminal 用画像コンバータを作ってみる (Qiita)](https://qiita.com/ht_deko/items/e5984b9a5d61e607b316)
 - [【Delphi】整数をローマ数字 (文字列) に変換するコードを書いてみる (Qiita)](https://qiita.com/ht_deko/items/5a993d399866c45a57b9)
 - [Delphi でコンウェイの "Doomsday Rule" ゲームを作ってみる (Qiita)](https://qiita.com/ht_deko/items/5328538a2181251e3141)
 - [C# で書かれたライフゲームを Delphi に移植してみる (Qiita)](https://qiita.com/ht_deko/items/4754f3252c83e3f601c3)
 - [Delphi のソースコードフォーマッタ (Qiita)](https://qiita.com/ht_deko/items/6cf464ab79d1e3ef857a)
 - [Delphi で Qiita の記事をバックアップしてみる (Qiita)](https://qiita.com/ht_deko/items/f89774c5670952d52404)
 - [Delphi 用に FizzBuzz コレクションを作る (Qiita)](https://qiita.com/ht_deko/items/a2016e9e0243e2cf1af6)
 - [Delphi のインライン変数宣言と配列 (Qiita)](https://qiita.com/ht_deko/items/53619a849ceaf00f2fd6)
 - [Delphi でコントロール配列 [小ネタ] (Qiita)](https://qiita.com/ht_deko/items/9bf3b2e761cc4f169c75)
 - [【Delphi】文字列とファイルと複数行文字列 [小ネタ] (Qiita)](https://qiita.com/ht_deko/items/8a65920ab87e7f65b971)
 - [Delphi とラムダ式とクロージャ (Qiita)](https://qiita.com/ht_deko/items/bd33a26bec9e4cf25a8d)
 - [FMX Linux (fmxlinux.com)](https://fmxlinux.com/)
 - [Delphi での新元号対応 (Qiita)](https://qiita.com/ht_deko/items/72d245b0fc64a7ece7c5)
 - [【令和】Microsoft の元号対応が迷走している件 (Qiita)](https://qiita.com/ht_deko/items/249db60e1c99ba440969)
 - [Delphi / C++Builder / RAD Studio 10.3 Rio 新機能紹介（VCL の 高 DPI対応）(blogs.embarcadero.com)](https://blogs.embarcadero.com/whats-new-in-10-3-rio-high-dpi-ja/)
 - [オフラインインストール用に登録コードを取得する（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 10.3）(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_10.3%EF%BC%89)

# 索引
[ [← Delphi 10.2 Tokyo](https://qiita.com/ht_deko/items/dfec38699d81822dda7f) ] [ [↑ 目次へ](https://qiita.com/ht_deko/items/eb96629d705542e3a980) ]  [ [→ Delphi 10.4 Sydney](https://qiita.com/ht_deko/items/02721c8476d3c8edf526) ]

[^1]: 『macOS 10.15 Catalina』(2019/10/08 リリース) 以降では 32bit アプリケーションが動作しない。
[^2]: 2019/08/01 以降、Google Play で新規公開するアプリは 64bit 版をサポートする必要があり、2021/08/01 以降、64bit 版の含まれないアプリは Google Play から排除される。『Pixel 7』以降はサイドローディングを行っても 32bit 版アプリは動作しない。