Azure AD × CognitoによるSAML認証:SPAからiOSへの手渡しと完全なるSLOの探求
SPAを経由してiOSアプリケーションへ「認可コード」を引き渡し、セキュアにトークンを取得するアーキテクチャ。そしてSAMLにおける最難関「Single Sign-Out (SLO)」の実現手法について、シニアエンジニアの視点から徹底解説する。
31件の記事
SPAを経由してiOSアプリケーションへ「認可コード」を引き渡し、セキュアにトークンを取得するアーキテクチャ。そしてSAMLにおける最難関「Single Sign-Out (SLO)」の実現手法について、シニアエンジニアの視点から徹底解説する。
全30回シリーズの総決算。これまで学んだUIKit、Storyboard、Auto Layoutの知識を統合し、実戦的でモダンなiOSアプリの要件を満たす設計・開発プロセスを振り返ります。
レガシーなUIKitベースのアプリに、最新のSwiftUIコンポーネントを部分的に導入するための架け橋となるクラス「UIHostingController」の使い方と共存戦略を学びます。
視覚に障害を持つユーザーでもアプリを快適に利用できるようにするための、iOSの強力な読み上げ機能「VoiceOver」に対応したUI実装・ラベル設定について学びます。
iOS 13から導入され、今やアプリ開発の必須要件となった「ダークモード」。Color SetとImage Setを用いた動的なUI切り替えの実装方法を解説します。
「アプリ内の全てのナビゲーションバーを青色にする」のような、アプリ全体に共通するUIの見た目(スタイル)を一元管理するための魔法のプロトコル「UIAppearance」の使用方法を解説します。
Storyboard登場前から存在するInterface Builderの単位「XIB」ファイルの特徴と、カスタムViewやカスタムCell作成時におけるStoryboardとの最適な使い分け・併用パラダイムを解説します。
「1つの巨大なMain.storyboard」への依存から脱却し、複数人開発でのGitコンフリクトを防ぎビルド速度を向上させるための、Storyboardの効果的な分割手法を学びます。
日付や時間の入力に特化した「UIDatePicker」と、ドラムロール(ルーレット)形式で任意の選択肢を提供する「UIPickerView」の実装方法とデザイン設定を解説します。
「本当に削除しますか?」などの重要な確認や、複数の選択肢を提示する際に使用する、iOS標準機能であるUIAlertControllerの2つのスタイル(AlertとActionSheet)の実装方法を学びます。
UISwipeGestureRecognizerやUITapGestureRecognizerなどを用いて、UIKitのViewに対する複雑なユーザーのタッチ入力(スワイプ、ピンチ、長押し等)を検知し処理する方法を学びます。
アプリのUXを飛躍的に向上させるアニメーション。サイズ変更やフェードインなどの動きを、UIViewのクラスメソッドを使って数行のコードで実装する方法を学びます。
UIViewを継承した自作コンポーネントの作り方と、@IBDesignable / @IBInspectableを用いてStoryboard上でリアルタイムに見た目とパラメータを編集する技術を解説します。
App Storeのような「横スクロールと縦スクロールが混在する複雑なUI」を少ないコードで実現する、モダンな Compositional Layout の仕組みを学びます。
写真アプリやECサイトで頻出する、要素をグリッド(格子)状に並べるための強力なコンポーネント「UICollectionView」の基本的な実装方法を解説します。
文字や画像を自由に配置したオリジナルデザインのリスト行を作るための、カスタムUITableViewCellの作成手順とAuto Layoutの設定方法を解説します。
iOSアプリ開発で最も頻繁に使用されるリスト表示UIの王様「UITableView」の概念と、データソース(DataSource)やデリゲート(Delegate)プロトコルを用いた基本的な実装手順を学びます。
画面外にはみ出す要素をスワイプで閲覧可能にするコンテナ、UIScrollViewの概念(FrameとContent Size)と、Storyboard上での鬼門であるScrollViewのAuto Layout設定方法を徹底解説します。
アプリに彩りを与えるUIImageViewの使い方から、画像の比率を保つContent Mode、そして画像素材を整理・最適化するAsset Catalog(Assets.xcassets)の運用方法までを解説します。
複数行のテキスト入力・表示を行うUITextViewの使い方と、iOS開発で避けては通れない「表示されたキーボードを閉じる処理」および「キーボードで画面が隠れる問題」の解決策を学びます。
iOSアプリのUI構築に欠かせない3つの基本コンポーネント、UILabel(テキスト表示)、UIButton(ボタン)、UITextField(テキスト入力)の主要なプロパティと使い方を解説します。
アプリ画面下部のタブで複数画面を独立して切り替えるためのコンテナ、UITabBarControllerの仕組みと設定方法を解説します。
「戻る」ボタンによる階層的な遷移(スタックナビゲーション)を提供する、iOSアプリに不可欠なUINavigationControllerの仕組みと設定方法を学びます。
Storyboardの最大の利点である視覚的な画面遷移定義「Segue(セグエ)」の使い方と、遷移先画面へのデータ渡し(prepare(for:sender:))の方法を学びます。
iPhoneとiPad、あるいは縦置きと横置きなど、異なるデバイスサイズや向きに応じてレイアウトを動的に変化させる「Size Classes」の概念を学びます。
Auto Layoutの複雑さを軽減し、要素の並べ替えや追加・削除を容易にするUIStackViewの強力な機能と使い方を学びます。
Intrinsic Content Sizeと制約のPriority(優先度)を理解し、Auto Layoutにおける警告やエラーの解決、動的なレイアウトの制御方法を学びます。
あらゆる画面サイズに対応できるレスポンシブなUIを構築するためのシステム、「Auto Layout」の基本的な概念(制約、アンカー)について完全解説します。
iOSアプリの画面を制御するコアとなるUIViewControllerの役割と、viewDidLoadなどの重要なライフサイクルメソッドについて解説します。
XcodeのInterface Builderを使用して、Storyboardのキャンバス操作、UI要素の配置、およびインスペクタパネルの使い方を学びます。
AppleのUI構築フレームワークであるUIKitとStoryboardの誕生から現在までの歴史、そしてSwiftUIとの役割の違いについて解説します。