Apple製OS用プログラミング言語比較【中編】
いまさら聞けない「Swift」の基礎 Windowsアプリも作れるApple製オープン言語
Apple製OS用アプリケーションを開発可能なプログラミング言語として2014年に登場した「Swift」は、それまで主流だった「Objective-C」と何が違うのか。Swiftの特徴を整理する。
「macOS」「iOS」などのApple製OS用アプリケーションを開発するための代表的なプログラミング言語が「Objective-C」と「Swift」だ。Objective-Cを解説した前編「いまさら聞けない『Objective-C』の基礎 macOS向けレジェンド言語の利点は?」に続き、中編はSwiftの特徴を説明する。
「Swift」の基本をおさらい メリットは
Appleがオープンソースのプログラミング言語としてSwiftを公開したのは2014年のことだ。Swiftの公開は、Objective-Cのようなプロプライエタリ言語からオープンソース言語への戦略的な転換を示す。
Swiftの目的は、クライアントデバイスを通じて要求を送信し、サーバで稼働するアプリケーションに処理を実行させる「サーバサイドアプリケーション」や、複数OSで動作するアプリケーションの開発ニーズを満たすことにあった。Swiftは、Appleが提供する各種OSだけでなく「Windows」や「Linux」用アプリケーションも開発できる。一部では「Objective-Cより読みやすい」という意見も出るほど簡潔な構文を採用している。
コンパイル時の処理を最適化するコンパイラ基盤の「LLVM」を組み込むことで処理の高速化を図っている点がSwiftの特徴だ。過去、Swiftプログラムのコンパイル時間はObjective-Cプログラムよりも長くかかっていた。新しいバージョンではパフォーマンスが大きく向上しており、プログラムを調節することで改善できるようになった。
メモリ管理を自動で実行する点もSwiftの特徴だ。「ARC」(Automatic Reference Counting:自動参照カウント)は、メモリの使用状況を自動的に追跡し、メモリ管理を効率化する機能だ。ARCはSwiftプログラムのコンパイル時に稼働し、プログラム内の変数がインスタンス(プログラムやデータをメモリに展開したもの)を参照する数をカウントする。参照がなくなって不要になったインスタンスを自動的に破棄し、メモリを解放する。
SwiftはObjective-Cと共通の「ランタイムライブラリ」(プログラム実行時に必要なソフトウェア部品群)を利用する。これは1つのSwiftアプリケーション内で「C」「C++」、Objective-C、Swiftといった複数のプログラミング言語で記述されたプログラムをシームレスに実行でき、プログラムの互換性を維持できるようにするためだ。
TechTarget発 先取りITトレンド
米国TechTargetの豊富な記事の中から、最新技術解説や注目分野の製品比較、海外企業のIT製品導入事例などを厳選してお届けします。
Copyright © ITmedia, Inc. All Rights Reserved.
TechTarget発 先取りITトレンド
米国TechTargetの豊富な記事の中から、最新技術解説や注目分野の製品比較、海外企業のIT製品導入事例などを厳選してお届けします。
この記事の著者
関連記事
新着ホワイトペーパー PR
-
技術文書・技術解説
[Jamf Japan 合同会社] MDMだけでモバイルセキュリティは十分? 不足する対策を16項目でチェック -
事例
[Wrike Japan 株式会社] 世界的な家電メーカーが実践する「クリエイティブプロセス効率化」の方法とは? -
事例
[Wrike Japan 株式会社] 世界的テクノロジー企業に学ぶ、プロセス標準化とプロジェクト納品自動化の秘訣 -
事例
[Wrike Japan 株式会社] ソニー・ピクチャーズ テレビジョンに学ぶ、次世代サービスデリバリーのヒント -
事例
[Wrike Japan 株式会社] ソミック石川に学ぶ、ICT浸透後に直面した「工数管理」の課題と解決策
こんなメディアも見られています
TechTargetジャパンに関連する情報をお探しであれば、こちらのメディアもお役に立てるかもしれません。
ベンダーコンテンツ PR
From Informa TechTarget
SpecialPR
アクセスランキング
-
1
「Copilot」はなぜ放置される? “議事録要約止まり”を脱する処方箋
-
2
脱VMwareの前提が崩れる BroadcomのVDDK公開停止で確認すべき点
-
3
なぜOpenAIやAnthropicのAIは「脱走」したのか 情シスが迫られるエージェント統制
-
4
Oracle巨大ITプロジェクトはなぜつまずいたのか 8年で導入1割、追加で170億ドル
-
5
「Microsoft一択」で本当にいいのか 知らぬ間にライセンス費用が膨らむ真相
-
6
ANAが専用回線から移行した「NaaS」の全貌 ネットワーク準備が数カ月から数週間に
-
7
「プログラマー不要論」にThe Linux Foundationが示した答え
-
8
Microsoft製品でここまで自動化できる 情シスがやめられる手作業10選
-
9
「高すぎるGPU」を捨てAI推論をCPUへ Armが示す電力とコストの現実解
-
10
100億円の「Linux更新」を回避 みずほ銀行が選んだ“おきて破り”のRHEL延命策
ホワイトペーパーランキング PR
-
1
マンガで解説:「ゼロトラスト」「SASE」の必要性とメリット
-
2
5回聞くだけじゃ足りない? トヨタ式「なぜなぜ分析」の正しい実践方法
-
3
インシデント対応工数を約3割削減、東京ガスの事例に学ぶ監視体制刷新のコツ
-
4
AIエージェントで多様な日常業務を効率化するための入門ガイド
-
5
JR西日本ITソリューションズが「監視業務の属人化」を解消した方法とは?
-
6
国税庁の次世代基幹システム「KSK2」稼働開始に向けて、対応すべき変更点とは?
-
7
5分で分かる「セキュア大容量ファイル転送サービス」の機能とメリット
-
8
ドラマで分かる、標的型攻撃メールの被害を受ける企業と回避できる企業の分岐点
-
9
「脱Excel」か「Excel快適化」か? 現場にやさしい業務改善の進め方
-
10
少額減価償却資産が40万円未満へ拡大、令和8年度税制改正で押さえるべき変更点
TechTargetジャパン SNS
インフォメーション
注目情報をチェック
TechTargetジャパンをフォロー