macOS/iOSの開発言語まとめ

2022-02-13 オフ 投稿者: FDrumer

こにゃにゃちは。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の場合

言語インターフェースビルダー
SwiftSwiftUI
SwiftSrotyboard
Objective-CStoryboard

この場合のフレームワークは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についての知見も得ていきたいものです。ではまた。

The following two tabs change content below.
社会人ドラマーのFです。ドラム、ベース、DTM、作曲をしてます。 写真と酒と町歩きが好き。 YouTubeに動画上がってます。