※本ページにはプロモーション(広告)が含まれています
IoTで私たちのまわりの、あらゆるところにインターネットとコンピュータが浸透してきています。これらのデバイスの動きはすべてプログラミングで制御されています。Macの世界で見ても、iPhoneのアプリ、Macのアプリは勉強すれば誰でも作れるようになってきています。そして、App Storeを使えば誰でも世界中に自分の作ったアプリを配信し、販売もできるようになりました。
今後の私たちの生活では、読み・書き・そろばんと同じくらい、コンピュータ・プログラミングの重要性が注目され、子供頃からIT技術やプログラミング技術、AI技術を学ぶことが重要視され始めています。
この記事のまとめ
この記事のまとめ
プログラミングとは
小学生でも授業としてプログラミングを学ぶ時代になりました。プログラミングとは、コンピュータに指示をするプログラムをつくることをいいます。
「このファイルを開いて」という動作も、「この平均を出して」という計算も、すべてプログラミングされたプログラムによって動いています。「自分でも作ってみたいな」と思った方、今回はMacでプログラミングをおこなう準備についてご紹介いたします・
なぜMacなのか
iOSのシェアが7割といわれています。iPhoneもAppleWatchもiOSで動いています。iOSで必要とされるアプリがこれからも増えていくことを見越して、Macでプログラミングの学習をしてみてはいかがでしょうか。開発環境の「Xcode」もAppleより提供されており、直感的に使いやすい環境が整っています。
また、Macでは、仮想環境としてWindowsをインストールすることができるため、MacOSもWIndowsも両方使うことができます。
Appleが開発したプログラミング言語である「Swift」が用意されていますが、「スプリクト言語」に近いため、初心者でもわかりやすいものとなっています。
ひとつだけデメリットがあるとすれば、あなたがゲーム開発を考えていらっしゃるのでしたら、Macはおすすめいたしません。今のところ、ゲームソフトはWindowsでプレイすることが前提となっているため、Windowsでプログラミングを学んだ方が良いでしょう。
Macにおけるプログラム開発環境
iPhone、AppleWatch用のネイティブ・アプリの開発にはMacを使う必要があります。開発に必要なツールとしては、Apple社がApp Storeで無償で提供している開発環境の「Xcode」というものです。
Xcodeでは、OS Xだけでなく、iOS、WatchOS、そして、tvOSで利用出来るアプリの開発が可能となっています。
Editorも準備しよう
プログラミングをする場合には、ソースコードを編集するためのエディターが必要になります。
無料のエディターもありますが、本格的にプログラムを組む場合には使いやすいエディターを準備する方が効率が上がるのでおすすめです。
Macに対応しているエディターの中でも、かつての人気エディター「Coda」の後継製品である「Nova」がおすすめです。無料体験することもできますので、ぜひ一度お試しください。
Xcodeの入手方法およびインストール
Xcodeは、App Storeのカテゴリ「開発ツール」から入手が可能です。AppleIDさえ持っていれば無償でダウンロードしインストールすることができます。
Xcodeのページ
Xcodeは各OSのバージョンアップに時期を同じくして更新されていきます。App Storeからアップデートの案内があった場合は、なるべく早く適用しましょう。ただし、言語仕様が変更される場合もありますので、開発途中のアプリがある場合は仕様変更等の事前の情報に注意してからバージョンアップを適用しましょう。
ちなみに、2016年秋現在のバージョンは 8.0です。これは、iOS 10.0に対応したバージョンになります。
Apple Developer Programに登録しましょう
開発したアプリをApp Storeで配布する場合、または、DeveloperIDで署名されるアプリ(マルウェア作成者により改ざんされていないことが確認できます)を開発する場合は、Apple社のApple Developer Programに登録する必要があります。また、開発したアプリをiPhone、iPad、AppleWatchの実機で動作確認する場合もApple Developer Programに登録する必要があります。年間メンバーシップの料金は、11,800円です。
mac OS X用のアプリを開発し自機でテストする場合は、Developer Programへの登録は不要です。アプリを販売したり、他へ配布するような場合には、登録してDeveloperIDを取得しておきましょう。
登録のページ
Xcodeで利用できる開発言語は、Objective-CとSwift
Objective-C
1985年にApple社を去ったスティーブ・ジョブズがNeXT Computer社を創立した時に主力言語として採用され、Apple社に戻ったスティーブ・ジョブズとともに2001年に登場したMac OS Xの開発言語として採用されました。それから10年以上Mac OS X のアプリケーションだけでなく、iOS用のネイティブ・アプリケーション開発用言語としてXcode上で利用されてきました。
ただ、C言語の流れを汲むオブジェクト指向型のプログラム言語ではありますが、C++、C#ともかなり異なる言語仕様となっています。
Swift言語が登場した状況では、これまでのObjective-Cで培われてきた資産が多く残されてはいますが、mac OS Xアプリ、iOSアプリの開発言語は、今後Swiftが主流になっていくと思われます。
これから、既存のObjective-C資産の活用を考慮しなければならない場合を除き、次に紹介する新しい言語「Swift」を習得していくことをお勧めします。
Swift
Swiftは、2014年のWWDCでApple社から発表されたMacやiPhone、iPadのアプリを開発するための新世代のプログラミング言語です。Swiftは、Mac OS X の開発環境であるXcode上で利用できるようになっています。
Swiftの特徴は、モダン、安全、高速、そしてインタラクティブという触れ込みで、Objective-Cに代わる新たなアプリケーション記述言語として登場しました。
習得が難しいObjective-Cとは異なり、Webアプリ系のスクリプト言語と同じような感覚で使い始めることができるようになっています。
進化を続けるSwift
2014年に登場したSwift言語ですが、常に進化を続けています。2015年の暮れにはオープンソース化され、Linux上でも使うことができます。ただし、Xcodeのような便利な開発環境が用意されているのは、mac OS Xだけです。
2016年秋時点の最新バージョンは3.0となり言語仕様も合理的な方向に少しづつ進化しています。
例えば、C言語では一般的仕様であった構文のfor文が使えなくなります。
(Before)
for var i = 0; i < 100; i++ {
………………..
}
このC言語のお決まりである構文が使用できなくなり、次のfor-in文を使用しなければならなくなります。ある意味合理的な構文に変更されるわけですが、これまで慣れ親しんできた人、少し古い参考書で勉強する人は注意が必要です。
(After)
for i in 0..<100 {
………………..
}
もう一つは、「++」「–」演算子が使えなくなりました。
(Before) i++ が使えなくなり、
(After) i += 1や i -= 1と記述することが必要になります。
2015年には、Swift2.0になっていますので、Swift言語は毎年のように改良が加えられてきています。
Xcodeの起動
「アプリケーション」フォルダやLaunchパッドからXcodeアイコンをダブルクリックすると次のスタート画面が表示されます。
画面左下に、最初に「Get started with a playground」があり、これはSwift言語の学習、動作検証用のツール「プレイグラウンド」が起動します。2番目が、「Create a new Xcode project」で、ここからアプリ開発用の新規プロジェクトを作成することができます。
また、画面右側にはすでに作成したプロジェクトが表示され直接プロジェクトを開くこともできます。
最初は、PlayGroundで遊んでみましょう
Swiftは登場したばかりの新しい言語です。これまでネイティブアプリの開発を行って来なかった方でも非常に取り扱いやすい言語仕様になっています。Webアプリの開発で、PHP他のスクリプト言語を使っていた方でも理解しやすい文法になっています。
まず、Swift言語の文法、構文に慣れるためにPlayGroundで遊んでみましょう。
Xcodeを起動させ、スタートメニューの最初の「Get started with a playground」を実行します。
開発のプラットホームとして、「iOS」や「macOS」が選択できます。
変数の定義、forループ文を試しに作成してみると、実行結果が右側に表示されます。
アプリ開発途中で、制御文の実行確認などのデバッグ用に利用するととても便利です。
iPadで勉強できるSwift Playgrounds
2016年秋には、iPadを使ってSwiftを体験し勉強できるツールが無償で提供されました。iOS 10.0以降が動作するiPadで利用が可能です。
Swiftの新しいプロジェクトファイルの作成
Swiftの新しいアプリ開発用のプロジェクトファイルを作成してみます。Xcodeを起動させ、スタートメニュの2番目、「Create a new Xcode project」を実行します。
次のように、開発目標のOSに応じた設定画面が表示されます。
macOS X用アプリの開発では、通常「Cocoa Application」を選択します。
次にアプリの名称、使用する言語等を選択する画面が表示されます。
開発言語にSwiftを選択してプロジェクトを作成すると、次の画面が表示されアプリの開発を行うことができます。
MacでWebアプリの開発を行う
Webアプリの開発にもMacは利用されており多くのWebエンジニアがMacを愛用しています。Macに手軽にWeb開発環境を作るツールとしては「MAMP」があります。MAMPの名前は、Mac、Apache、MySQL、そして、PHPの頭文字をつなげたものです。MAMPをインストールすれば、手軽にPHPのスクリプトを作成して動作を確認したり、また、WordPressをインストールして開発環境としても利用できます。
MAMPのインストール
まず、MAMPの公式サイトにアクセスし最新版のMAMPをダウンロードします。
左側のアイコンから無償版のMAMPをダウンロードします。ダウンロードは.dmp形式のインストーラですので、インストールを実行します。
MAMP用のドキュメントルートは、アプリケーション「MAMP」フォルダ直下の「htdocs」です。ドキュメントルートは「設定」の中から任意のフォルダに変更することができます。
Webサイトの制作、アプリの開発
作業用のツールとしては、「ATOM」や、「SublimeText」といったテキストエディターを使うことをお勧めします。
「Atomエディターの画面」
「SublimeTextのエディター画面」
動画学習もおすすめ
初めてプログラミングを始める方は、基本的な教科書を読む以外にも昨今教材が充実している動画教材を利用するのもおすすめです。
高額なプログラミング教室に通わなくても、コスパよく基本を習得することができますので、下記のようなサービスを一度チェックしてみてください。
- ドットインストール
- Udemy
- Schoo
- Paiza
特にドットインストールは無料でプログラミング学習ができますので非常におすすめです。
2024年のMacプログラミングの最新トレンド
Apple Vision Proに向けた開発
2024年に登場したApple Vision Proは、新たな開発の可能性を開きました。visionOSアプリの開発には、最新のXcode 15.2以降が必要です。Vision Pro向けの空間コンピューティングアプリケーションを開発する際は、以下の点に注意が必要です:
- SwiftUIを使用した3D空間でのインターフェース設計
- 視線追跡とハンドジェスチャーへの対応
- Reality Composerを活用した3Dコンテンツの作成
SwiftUIの進化
最新のSwiftUI(SwiftUI 5.0)では、以下の機能が強化されています:
- より柔軟なレイアウトシステム
- パフォーマンスの向上
- カスタムアニメーションの簡素化
具体的なコード例:
struct ContentView: View {
var body: some View {
ScrollView {
LazyVStack {
ForEach(0..<100) { index in
Text("Item \(index)")
.frame(maxWidth: .infinity)
.padding()
.background(Color.blue.opacity(0.1))
}
}
}
.scrollIndicators(.hidden) // iOS 16以降で利用可能
}
}
AIと機械学習の統合
Core MLとCreate MLの最新バージョンにより、Macでの機械学習モデルの訓練と実装が容易になっています:
- Create MLを使用したカスタムモデルの作成
- Core MLを使用したモデルのアプリケーションへの統合
- Neural Engineを活用した高速な推論処理
実践的な開発環境の構築
推奨スペック(2024年現在)
- プロセッサ:Apple M2チップ以降
- メモリ:最低16GB(32GB推奨)
- ストレージ:256GB以上のSSD(512GB推奨)
必須ツール一覧
- Xcode 15.2以降
- Git(バージョン管理)
- Homebrew(パッケージマネージャー)
- SwiftLint(コード品質管理)
インストールコマンド例:
# Homebrewのインストール
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
# SwiftLintのインストールbrew install swiftlint
実践的なデバッグテクニック
Xcodeのデバッグツール活用法
- ブレークポイントの効果的な使用
- デバッグコンソールでのlldbコマンド活用
- Instruments(パフォーマンス分析ツール)の使い方
例:メモリリークを検出するInstrumentsの使用手順
- XcodeからProduct > Profile を選択
- Leaksインストゥルメントを選択
- アプリを実行し、メモリリークを検出
学習リソース
おすすめの学習サイト(2024年版)
- Apple Developer:公式ドキュメント、サンプルコード
- Hacking with Swift:無料の学習リソース
- Raywenderlich:詳細なチュートリアル(有料)
書籍推薦
- 『SwiftUI by Tutorials』(2024年版)
- 『iOS App Development with SwiftUI』
よくある質問(FAQ)
Q1: MacでWindowsアプリも開発できますか? A1: はい、仮想環境を使用してWindowsをインストールすれば、Mac上でWindowsアプリの開発も可能です。
Q2: プログラミング初心者でもiOSアプリを作れますか? A2: はい、SwiftとXcodeは初心者にも扱いやすく設計されています。Playgroundで基礎を学んでから始めることをおすすめします。
Q3: アプリ開発に必要な費用はどのくらいですか? A3: 開発環境のXcodeは無料です。ただし、App Storeでアプリを公開する場合は、Apple Developer Program(年間11,800円)への登録が必要です。
まとめ
MacおよびiPhoneのネイティブ・アプリ開発用言語として普及し始めたSwiftは、オープンソース化され、今後様々な展開の可能性があります。
Webエンジニアの方にとっても、これまでC言語を始めとするオブジェクト指向のコンパイラ系開発言語が苦手であっても、Swift言語はとても馴染みやすい構成となっています。ぜひ、Macの開発環境を試してみてください。