著者の中野洋一氏より読者の皆様へ
筆者が定期開催しているセミナーをベースにした、Cocoaプログラミングの入門書です。神経衰弱ゲームをテーマとした、楽しみながら学習できるような実習プログラムで解説しています。
iPhoneアプリ開発へのアプローチとなるよう、Cocoaの基礎知識で足固めをすることも本書のねらいです。
これからCocoaプログラミングをはじめるために、Cocoaに関する知識を理解し、プログラミングの環境を整えましょう。ここでは、本書の目的と使い方、開発に必要な知識やCocoaの優位性を理解いただき、最後に開発ツールのインストールをおこないます。
●本書の目的
本書はできるだけ多くの方に、Cocoaプログラミングの面白さを知っていただくために作りました。Cocoaプログラミングは、誰でもすぐにマスターできるほど簡単ではありません。確かに、Interface Builderを使ったユーザインターフェイスの設計は、ドローイングソフトのように簡単で楽しいものですが、開発するプログラムにオリジナリティを求めるには、Objective-Cでソースコードを書くことが不可欠です。
結果的に、Objective-CやCocoaフレームワークの知識、さらにはオブジェクト指向プログラミングの概念など、ビギナーにとっては高いハードルが入り口に立ちはだかっています。
そこで本書では、Objective-CとCocoaフレームワークから最低限のもの選び出し、それを使ったアプリケーションを作ることで、Cocoaプログラマとして最初の一歩を踏み出すことを目的としています。
膨大なCocoaフレームワークをひとかじりする程度ですが、本書の演習プログラムをひととおり組み上げることで、Cocoaや開発ツールへの理解が深まることでしょう。
●本書の使い方
Chapter 2からChapter 6までは、Cocoaプログラミングの基礎的な知識を学習します。
開発ツール、Objective-C、Cocoaフレームワークなど、プログラムを組み立てる上で最低限必要な内容です。すぐにCocoaプログラミングを体験したい方はChapter 3をお読みください。
内容はすぐに理解できないかもしれませんが、開発ツールの使い方をひととおり解説しています。
Chapter 4とChapter 5では、ユーザインターフェイスのないプログラムで、Objective-CのクラスとFoundationフレームワークについて解説しています。これらのChapterは、そのあとの演習プログラムを読み解く上で重要ですので、内容を理解しプログラミング技術を身につけましょう。
Chapter 7からChapter 10までは、簡単なゲームをテーマにXcodeとInterface Builderを使いこなしていきます。最初はシンプルなプログラムですが、Chapterを追うごとに機能を盛り込み、その過程でCocoaアプリケーションの開発手法を学習します。
Chapter 11では、Chapter 7からChapter 10で作ったプログラムを、iPhoneアプリケーションに移植します。iPhone SDKにはCocoaプログラミングの知識の多くを使うため、Chapter 2からChapter 10までの内容はiPhoneアプリケーション開発の布石でもあります。
●学習に必要な知識
Cocoaプログラミングを始めるにあたり、あらかじめ習得しておきたい知識があります。
プログラミング言語は「Objective-C」を使いますので、C言語とオブジェクト指向プログラミングの知識は、本書を理解する上で大いに役立つでしょう。
特に、C言語によるプログラムの構文や変数などの基本的な要素は、そのままObjective-Cで使いますので、プログラミング未経験者の方はC言語に関する解説書の併読をおすすめします。
オブジェクト指向プログラミングについては、C++やJavaなどの経験があれば、Objective-Cにおけるクラスやメソッドの概念は理解できるでしょう。
ただし、Objective-Cは本書ではカバーしきれない、たくさんの機能を持っています。
Objective-Cについても、解説書や技術資料を併読しながら、演習プログラムに取り組んでいただきたいと思います。
ユーザインターフェイスのデザインに関するノウハウも、Cocoaアプリケーションの開発には大切な知識といえます。
Apple社は使いやすいソフトウェアを開発するための指針として、「Apple Human Interface Guidelines」を提唱しています。そこでは、ユーザインターフェイスデザインの重要性とともに、Mac OS Xのなじむ洗練されたアプリケーションを開発するためのヒントが詳しく書かれています。
詳しいドキュメントは、後述するApple Developer Connection(ADC)のサイトからダウンロードできます。
最後に、これはプログラミング以前のことですが、Mac OS X の基本的な操作(マウスクリック、ドラッグ、メニューの選択等)は、すでに修得されていることが前提ですので、個々の用語や操作説明は割愛しています。