Apple Developers Tools

Apple Developers ToolsはAppleによる統合開発環境。プログラミング言語としては、C言語やC++、Objective-C、Java、AppleScriptを用いてプログラムを開発する。プロジェクトの管理、ソースコードの記述、デバッグ、コンパイルを行う「Xcode」、GUIのデザインを行う「Interface Builder」、コンパイラやデバッガ、各種ユーティリティなどから構成され、Mac App Storeから無償でダウンロードできる。

1. 機能
-----

Apple Developers Tools の機能は以下の通り。

1.1. Applet Launcher
--------------------

SunのJavaプラグインのグラフィカルインターフェイス。macOSにおけるJavaアプレットの動作を開発者に示すもの。開発中のアプレットのパフォーマンス、動作、ユーザーエクスペリエンスを調整するためのツールを提供する。

1.2. Audio Unit Lab
-------------------

AU Labはデジタルオーディオミキシングアプリケーション。オーディオユニットのテスト、ライブミキシング、オーディオコンテンツの再生に使用する。グラフィックインターフェイスとタッチスクリーンで視覚的に制御される。

1.3. FileMerge
--------------

FileMergeは、NeXTSTEPの時代からのmacOSの開発者ツールの定番であり、ファイルの2つ以上のバージョンをグラフィカルに比較する。その名の通り、FileMergeを使用すると、ユーザーは2つ以上のバージョンを1つのファイルに簡単にマージできる。このユーティリティは、ソースコードの変更の追跡によく使用される。

macOSのopendiffコマンドは、コマンドラインからFileMergeを起動する機能を提供する。-ancestorパラメータは、3ウェイマージを行う際に使用する。

1.4. Help Indexer
-----------------

macOSの組み込みヘルプビューアのインデックスファイルを作成する。

1.5. icns Browser
-----------------

.icnsファイルのリソースを表示する。ミニ、スモール、ラージ、ヒュージ、サムネイル、タイルのサイズと、すべての色深度とマスクに対応。

1.6. Interface Builder
----------------------

Interface Builderとは、GUIをデザインするためのソフトウェアまたは同等の機能を持つソフトウェア機能の一つ。macOS のAquaが備えるGUI部品をサポートしており、簡単にAquaを用いた美しいインタフェースを構築できるだけでなく、アップルによるデザインガイドライン「Aqua Human Interface Guidelines」に従ったレイアウトが容易に行えるようになっている。部品の中にはウィンドウに配置するだけで機能するものもあり、開発の手間を軽減してくれる。またパレットファイルを作成する事でユーザーが機能を追加する事もできる。

1.7. Icon Composer
------------------

Icon Composerは、Apple Icon ImageファイルとWindows ICOファイルを作成する以外の編集機能を持たないアイコンエディター。他のエディターであらかじめすべての画像編集を行った後、コンバータでインポートすることで、アイコンを完成させられる。Icon Composerは高解像度のアイコンを作成できないため、Xcode 8.2以降は追加ツールでは使用できなくなった。アップルは、macOSに同梱されているコマンドラインユーティリティであるiconutilの使用を推奨している[1]。

1.8. Instruments
----------------

Instrumentsは、SunのOpenSolarisのトレースフレームワークDTraceのGUIである。使用時間量、メモリ割り当て、システムアクティビティ、コールトレース分析、GPUパフォーマンス分析、エネルギーロギングなどをプロファイルするために使用される。

1.9. Jar Bundler
----------------

アプリケーションのコンポーネントファイルを、単一のダブルクリック可能なアプリケーションにパッケージ化するJavaツール。コードを最適化するようオプションを変更することもできる。

1.10. MallocDebug
-----------------

プログラムのメモリ使用量を評価し、メモリリークを検出するためのツール。

ユーザーがアプリケーションと対話するときにユーザーを監視することにより、アプリケーションのメモリ使用量を評価します。これにより、MallocDebugは、残念ながらサイズが制限されているメモリプロファイルを構築できます。

1.11. PackageMaker
------------------

アプリケーション.pkgインストーラを作成するためのツール。

1.12. Pixie
-----------

コンピュータの画面を、マウスカーソルを中心に拡大するための拡大鏡アプリケーション。マウスの座標をピクセル単位で表示する。いくつかの解像度を指定することができる。マウスの下の画像を「ロック」してより詳細を確認したり、拡大された画像を保存したりすることができる。Pixieは視覚要素が正確に位置合わせされていることを確認するときに役立つ。

1.13. Spin Control
------------------

Spin Controlは、ソフトウェアプログラムのハングを監視するパフォーマンスツール。このプログラムの名前は、macOSのスピニングピンホイールに由来している。

Xcode 4.2で廃止された。

1.14. Thread Viewer
-------------------

Thread Viewerは、さまざまなスレッドにわたるアクティビティをグラフィカルに表示するパフォーマンスツール。スレッドアクティビティの色分けされたタイムラインビューを提供し、特定の時点でのアクティビティのバックトレースを表示できる。これはInstrumentsアプリに統合され、「SystemTrace」からアクセスできる。

1.15. Xcode
-----------

Xcodeはいわゆる統合開発環境であり、Microsoft Visual StudioやオープンソースのEclipseなどに相当する。AppleのiLifeアプリケーションに近い整理大系を持つことが特徴的である。CVS、デバッガ、エディタなどが統合されているほか、予測コンパイルや実行時リンクなどテストを円滑に行う機能が充実している。次項Interface Builderとはシステム上分離しているが、密接に連携する。バージョン2.0以降では、UML型のモデリングシステムが搭載されている。

1.16. コンパイラ・ビルド環境
-----------------

コンパイラには GCCやjavac、Jikesが用いられ、ユーザからのコンパイル要求がXcodeを通して伝えられる。Xcodeでソースコードを編集し終えるとすぐにコンパイルを行うことで、ターンアラウンドに要する時間の短縮を図っている。 また、[2]とBonjourの連携によって複数のmacOSマシンで分散ビルドを行うことができ、ビルドに要する時間が短縮される。

1.17. その他
---------

ソースコードの入力補助
AppleScriptによる制御に対応
CodeWarriorプロジェクトの移行に対応
64ビットCPU PowerPC G5への最適化に対応

2. 関連項目
-------

Apple
macOS
macOS Server
iOS
iPadOS
tvOS
watchOS

3. 脚注
-----

4. 外部リンク
--------

[3]