Macでアプリ開発するなら入れておきたいソフト

MacでiOSアプリやAndroidアプリ、Macアプリを開発するなら入れておきたいソフトをまとめました。私自身が長年使っているものが中心です。使用頻度が低いために掲載していないソフトもあります。新たに使用頻度が高くなったソフトが現れたら追加します。

スポンサーリンク

IDE

IDE統合開発環境で常に使っているもの達です。

Xcode

Xcode – Apple Developer

Apple純正の開発環境です。現在(2020年2月2日)では無償でMac App Storeからダウンロードできます。最新版以外のバージョンが必要な場合は、デベロッパーサイトのダウンロードページから過去バージョンをダウンロードできます。

iOSアプリやMacのアプリなどを開発するときには必須です。Swift, Objective-C, C/C++で開発できます。

Android Studio

Download Android Studio and SDK tools  |  Android Developers

Googleが提供する開発環境です。IntelliJ IDEAを元に、Androidアプリの開発に必要なツールや機能などを組み込み、Androidアプリ開発専用の開発環境になっています。上記のAndroid Developersのページから無償でダウンロードできます。また、この後の項目で紹介するJetBrains ToolBoxでもダウンロードできます。

Androidアプリ開発をするときには必須です。KotlinやJava, C/C++ などで開発できます。

AppCode

AppCode:iOS&macOS開発用のスマートなSwift/Obj-C IDE

iOSアプリやmacOSアプリ開発に対応した開発環境です。有料のIDEでサブスクリプションで提供されます。

Android Studioと同様にIntelliJ IDEAを元にした開発環境です。内蔵されているリファクタリング機能やコード補完が強力です。慣れると、Xcodeでコードを書くのが面倒に感じてきます。また、内蔵しているGit機能も使いやすいです。データベースブラウザを使って、SQLiteのDBや色々なDBに接続して、直接データを見たり、SQLを実行することもできます。内蔵のHTTPクライアントでWeb APIを実行して、レスポンスを調べるなどもでき、開発効率が上がります。べた褒めしてしまっていますが、それくらい、私は気に入っています。

ユニットテスト機能については、Xcodeの方が使いやすいです。MacアプリのUIテストにもこの記事を執筆している時点のバージョン(v2019.3.4)では非対応です。

私の場合、コーディングとデバッグは主にAppCode上で行い、ユニットテストはXcodeで行っています。

テキストエディタ

コードの編集は主にIDEで行いますが、プロジェクト外のファイルだったり、参考に見ているコードの参照などはテキストエディタで行っています。

Visual Studio Code (VSCode)

Visual Studio Code – コード エディター | Microsoft Azure

急成長しているテキストエディタだと思います。Markdownファイルの編集にとても便利です。IntelliJやAppCode, XcodeもMarkdownには対応していますが、私にはVSCodeの方が使いやすいです。上記のページから無償でダウンロードできます。

Windowsアプリの開発にはVisual Studioを使いますが、それとは全くの別物です。

設定すると、codeというコマンドでターミナルから起動出来るようになります。

BBEdit

Bare Bones Software | BBEdit 13

古くからMacユーザーにはお馴染みのテキストエディタです。BBEditは有料です。

複数ファイルやディレクトリ内のファイルを対象にした全文検索や全置換が強力です。もちろん正規表現も使用可能です。私が特によく使用するのは、フォルダとフォルダを対象にした、差分抽出です。2つのフォルダの相対パスが同じファイル通しを比較して、テキストの差分を抽出できます。

FTP/SFTPブラウザも内蔵していて、FTP上のファイルを編集出来ます。保存すると自動的にアップロードされます。サーバーの設定ファイルを変更するみたいなときにも便利です。

管理者権限に昇格が必要なファイルを編集しているときも、昇格ダイアログが表示されて、必要なタイミングで権限昇格して保存出来る機能もあり、システム管理者としても効率的です。

コマンドラインツールをインストールされば、bbeditというコマンドでターミナルからファイルを開く機能は地味ですが、権限昇格と組み合わせると便利です。

VCS

ソースファイルやプロジェクトのファイルを、共有サーバーに日付フォルダでバックアップというやり方は遙か昔のやり方です。今でもそのやり方の現場は存在しますが、Gitでバージョン管理するのが普通だと思います。

Gitのクライアントソフトは、紹介してきたIDEやテキストエディタにはいずれも内蔵されていますが、独立した専門クライアントソフトの使い勝手はもっと上です。

編集中はコミットするだけだったり、プッシュして、プルリクを送信する位ですが、もう少し管理寄りの機能を使うときにはクライアントソフトを使いましょう。

SourceTree

Sourcetree | Free Git GUI for Mac and Windows

Gitのクライアントソフトです。これほどの高機能なソフトが無償提供されていることには驚きです。SourceTreeの開発元のAtlassianではBitBucket (Gitのサーバー)をクラウドで提供しています。ユーザー数を元にしたライセンスモデルです。オンプレ版もあります。

私はSourceTreeはプロジェクト外ではあるが、Gitで管理しているフォルダにある、Git管理下のファイルに使用しています。また、Gitの履歴へのタグ付けやブランチなどにも使っています。

しかし、最も重要な機能は次のものだと私は思っています。

  • 状態の可視化

変更のコミット漏れ、プッシュ漏れ、マージ漏れなど、コマンドラインツールでは調べなければ分からないことが、SourceTreeでは可視化されるため、自然と気が付くことができます。Gitの高度な機能を全然使っていなかった頃には、このためだけにSourceTreeを入れていました。

以前、コミット漏れのまま、気が付かずにリリースしてしまい、後から気が付いて差し替えたということがありました。その当時はコマンドラインで行っていたため、気が付けませんでした。

パッケージマネージャー

ほとんどのGUIプログラムはインストーラが付いているので、インストーラをダウンロードしてインストールします。Mac App Storeで提供されているものはMac App Storeからダウンロードします。それ以外に、パッケージマネージャーを使ってインストール・アップデートするものもあります。開発時にはGUIのツールだけではなく、CLIのUNIX系のツールなども色々使用します。

JetBrains ToolBox

JetBrains Toolbox App:ツールを簡単に管理

JetBrains系のIDEを管理するツールです。複数のバージョンを入れたり、最新版のみを入れるなど、JetBrains系のIDEのインストール・アップデートなどを管理するユーティリティです。Android Studioの管理にも使えます。JetBrains系のIDEには有料のIDEの他にも、Community Licenseのものもあります。これらもToolboxから管理できます。

メニューに常駐するプログラムで、AppCode, Android Studio, IntelliJ IDEAの管理に使っています。ランチャーにもなっています。プロジェクトファイルが自動的に登録されて、メニューから簡単にプロジェクトを開けるのが便利です。

私の場合、JetBrains ToolBoxのランチャーから作業中のプロジェクトを開きます。iOSアプリの場合はAppCodeが開くので、AppCodeのFileメニューからXcodeを起動しています。AppCodeのFileメニューからXcodeを開くと、AppCodeで開いているプロジェクトをXcodeで開いてくれます。

Homebrew

macOS用パッケージマネージャー — Homebrew

Open Sourceのツールを管理するパッケージマネージャーです。依存関係などがあれば、依存するプログラムも一緒にインストールできます。開発で使用するツールもHomebrew経由でインストールするものは多いので、入れておいた方が良いでしょう。

例えば、Gitで大きなバイナリファイルを管理するときに使用する、Git-LFSもHomebrew経由でインストールできます。

仮想化プログラム

今や開発と仮想化プログラムは切り離せない関係になりました。ローカルマシンの中に任意の条件やOSが入った、仮想化環境を作り、テストプログラムを動かしてテストしたり、デバッグしたりします。

Parallels Desktop

Parallels における Mac および Windows の仮想化、Mac の管理、VDI および RDS ソリューション

ホスト型の仮想化を行うソフトです。完全なマシンを仮想化します。そのため、ホストマシンでは動かないOSが動くマシンを作り出すことができるので、Mac上でWindowsを動かすなどもできます。

3種類のエディションがあります。単純な仮想マシンであれば、スタンダードで十分です。サブスクリプションで提供されるプロフェッショナルエディションでは、コマンドラインツールで操作したり、DockerやJenkinsなどと統合させることなどもできます。

企業内で使うときには、企業のセキュリティポリシーなどに即した管理が必要な場合もあるでしょう。そのようなときはビジネスエディションを使います。

使い方によってエディッションを選択します。私はプロフェッショナルエディションを使っています。

Docker

Empowering App Development for Developers | Docker

コンテナ型の仮想化ソフトです。コミュニティ版では無償でダウンロードできます。

このブログでもDockerを使ってテストサーバーを作る方法などを紹介しています。開発時に使用するデバッグ環境を用意するのにも便利で、設定ファイルなどをGitで管理して、ソースファイルと一緒に管理できます。

本番環境にもDockerを使用することが増えてきているようです。

私のは場合はアプリ開発が中心なので、デバッグ環境の構築にDockerを使用しています。

リファレンス

APIのリファレンスなどは、IDEからも参照できます。Xcodeにもリファレンスが内蔵されています。しかし、少し使いづらい面もあります。

Dash

Dash for macOS – API Documentation Browser, Snippet Manager – Kapeli

APIリファレンスなどを見るためのブラウザソフトです。Xcodeを使わずに、Xcodeのリファレンスを見られます。また、それだけではなく、C/C++の標準ライブラリのリファレンスや、manの参照、Dockerのコマンドリファレンスなど色々なドキュメントをブラウズできる便利なソフトです。

manの参照は特に便利です。Bashのリファレンスでは、シェルスクリプトの構文なども調べられます。

使用するドキュメントを選択でき、選択したドキュメントの串刺し検索などもできます。StackOverflowも串刺し検索の対象になっています。

私の場合は、次のドキュメントセットを使っています。開発対象に合わせて追加することもあります。

  • Apple API Reference
  • Man Pages
  • C
  • C++
  • Docker
  • Bash

ドキュメント作成

ドキュメント作成には、Markdownということも多いと思います。エンジニア向けのドキュメントであれば、Markdownをソースファイルと一緒に置いておきます。Markdownの編集はVSCodeで行っています。

astah professional

astah* professional | UMLモデリングツール | Astah

UMLなどを使ってモデリングするためのソフトです。類似ツールはありますが、一番使いやすいと思います。特に、グリッドや自動ガイドで綺麗なUMLが素早く作れます。

また、作成した図をSVGで出力して、EPSに変換してからWordに挿入すると、Wordデモベクトルデータとして扱われます。PDFに変換したときに綺麗な仕上がりになりますし、PDFでもベクトルデータになるので、ファイルサイズが大きく膨らまないです。

スポンサーリンク
最新情報をチェックしよう!
>現役のプログラマーが書くプログラミング情報

現役のプログラマーが書くプログラミング情報

日々の開発の中での学びや分かったこと、調べたことなどを書いていくブログです。

CTR IMG