"Proxyman" は、macOS専用のプロキシツールです。通信を伴うモバイルアプリのリスエスト内容の確認やサーバからのレスポンスの書き換えなど、通信処理のデバッグやテスト用途において大変有用なツールです。
また、プロキシツールはインストール先のmacOSだけでなく、デバッグ対象のモバイル端末側にも設定が必要となり、設定手順が複雑になりがちなのがネックですが、Proxymanは丁寧なナビゲーションによって煩雑な手順が緩和されるような工夫が施されており、初めての方でも比較的導入しやすいツールとなっています。
本稿では、そんなProxymanの紹介や開発時に役立つ使い方についてご紹介します。
コンテンツ(予定):
昨年のiOSDC Japanで、"Heart of Swift"と題してレギュラートークを行いました。"Heart of Swift"は、Swiftが値型を中心とした特殊な言語であること、そして、そのSwiftを使いこなすために欠かせない、言語の根幹を成す("Heart"となる)概念についてのトークです。本原稿では、ページ内のレイアウトを自由に組める特徴を活かして、見開き2ページで"Heart of Swift"の登場人物の関係性を図示し、全体を俯瞰できるようにします。
"Heart of Swift"では、WWDCでSwift Core Teamによって語られた二つの重要な概念、
を軸に、Swiftの"Heart"の全体像を示しました。
この話には多くの登場人物が存在します。1については、structとミュータブル/イミュータブルクラス、値型のコレクション、inout引数やmutating funcなど、2についてはパラメトリック/サブタイプポリモーフィズム、リバースジェネリクス、Opaque/Existential Typeなどです。それらの登場人物は互いに関係し合っており、Swiftという特徴的な言語を形作っています。
言葉による説明を聞いて、その複雑な関係を頭の中に描き出すのは容易ではありません。昨年のトークの最後にはまとめとして図を示し、理解の促進を図りました。しかし、スライドの中に事細かに説明を書き入れられるわけではありません。登場人物の関係を図示し、説明を書き入れるのに、見開き原稿は最適なメディアです。大きなスペースを使ってその関係と説明文を視覚的に示し、Swiftの"Heart"について、読者のより直観的な理解を目指します。
WWDC19でAppleにより発表されたCombineフレームワークはリアクティブプログラミングを宣言的に行うためのフレームワークです。しかしリアクティブプログラミングに慣れていない開発者にとって、このフレームワークで登場するPublisherやSubscriber、Subscriptionなどのさまざまなパーツをすんなりと理解することは難しいのではないでしょうか。
本原稿ではそのCombineフレームワークの全体像について図を用いて解説します。
RxSwiftなどのリアクティブプログラミングに慣れている開発者にとっても、自分の知っている概念とCombineフレームワークのパーツ名を一致させることで、さらに違いを整理できるはずです。
iOSアプリ開発でよくあること(俗にいう「あるある」)を4コママンガでめちゃくちゃ面白く表現します。
【運営の方へ】
スベる可能性が高いので、紙面が余ったらご採択くださいw