macOS/iOSの開発言語まとめ
こにゃにゃちは。Fです。
相変わらずiOS関係の開発について学んでいますが、macOSについても知りたいと思ってきました。
しかし、このあたりの名称関係がかなりわかりづらかったので自分なりのまとめをしたのでそのメモ記事になります。
前提
プロジェクトビルダーとインターフェースビルダー
プロジェクトビルダーとは、開発プロジェクト全体を作成するツールのことを指します。
macOS/iOSにおいてはXCodeがこれに当たります。
一方、インターフェースビルダーは、GUIを作成するためのツールのことを指します。
XCode内のGUIを作成する部分がこれに当たります。
用語について
古いものは割愛
インターフェースビルダー
SwiftUI
最新のGUI作成方法。コードで宣言的にUIを構築する。
iOS/macOSで利用可能
Storyboard
1つ前のGUI作成方法。
iOS/macOSで利用可能
言語
Swift
最新の言語
Objective-C
一つ前の言語
フレームワーク
Cocoa
macOSのコア機能を利用するためのフレームワーク。
Swift/Objective-Cはこれを利用しmacOSの機能を利用する。
AppKit/Foundationが含まれる。
Cocoa touch
iOSのコア機能を利用するためのフレームワーク
Swift/Objective-Cはこれを利用しiOSの機能を利用する。
UIKit/Foundationが含まれる。
macで動作するアプリの種類
App(NativeApp/CocoaApp)
macOS用に作成されたアプリのこと。
昔はXCodeのGUI上でも「Cocoa App」などと呼ばれていたが、今はApp。
Catalyst App
iPad向けアプリをmacOSで動作させるための機構(Catalyst)を利用して作成されたアプリのこと。
XCode上での設定など、専用の開発行為が必要。
Apple Silicon向けアプリ
Apple Silicon(m1など)上で、iOS/iPadOS向けアプリを動作させる機構により動作するアプリのこと。(固有名詞はない)
AppStoreでmac向け配信を設定するだけで利用可能になる。開発行為はなくても良い。
今macOS向けアプリを作る場合の選択肢
NativeAppの場合
言語 | インターフェースビルダー |
Swift | SwiftUI |
Swift | Srotyboard |
Objective-C | Storyboard |
この場合のフレームワークはCocoa
Catalyst/Apple Silicon向けの場合
iOS/iPadと同じ。Cocoa touchも使えるようだが、実装的にはcocoaも使える。
感想
catalystとApple Silicon向けの登場により、かなりわかりづらくなっていますが、今回なんとなく整理できました。
昔はCocoaAppと呼ばれてた名残もかなり強くて、ネットで調べるとCocoaなんとかって出てくるのもわかりづらいですね〜〜
てかそもそもAppleってこのテの名前に関係ない一般名詞つけるからわかりづらい。Bounjureとかも。WindowsはWPF(Windows Presentation Foundation )とかUWP(Universal Windows Platform)とか、とりあえず違いはわかる名前なんだよな〜
あと今回いろいろ調べていて、Appleの公式チュートリアルにmacOS用が全然見つけられなかったんだけど、AppleはmacOS開発に力入れなくなってきたんですかね。
これしかなかった
https://developer.apple.com/tutorials/swiftui/creating-a-macos-app
macについての知見も得ていきたいものです。ではまた。
最新記事 by FDrumer (全て見る)
- Final Cut Proのプロジェクト容量を小さくして、データ保存しやすくしよう - 2023-04-19
- THR10-II買いました - 2023-03-06
- VOX VALVENERGY 買いました - 2023-02-21