モバイルアプリのUIは、ユーザーの直感と期待に応えるインタラクションデザインが核となります。しかし、単なるデザインガイドラインの遵守に留まらない、特定のOSバージョンでのUI挙動の差異、複雑なジェスチャーの実装における落とし穴、あるいはUIコンポーネントの微細なパフォーマンス最適化など、細部に宿る課題が多数存在します。
本セッションでは、ユーザーの心理的側面(例: なぜ特定のジェスチャーが自然に感じるのか)をデザイン理論から掘り下げつつ、それをSwiftUI/Jetpack ComposeのGesturesやUIKit/Android ViewのTouchEventといった具体的なUI実装へどう落とし込むかを解説します。複雑なジェスチャーの認識アルゴリズム、複数のジェスチャー間の競合解決、そして洗練されたアニメーションとの連携など、デザイナーの意図を正確にコードに変換するためのエンジニアリング的な挑戦と、その過程で得られた「職人技」とも呼べる知見を共有します。
具体的なプログラムの書き方、アプリの動きを詳細に分析する性能測定の結果、そして問題を見つけて修正するデバッグの手法を交えながら、これらのUI実装に関する考察と実践的なアプローチをご紹介します。これにより、モバイルアプリ開発者が日々直面するであろうUI実装の課題に対し、より質の高い、使い心地の良いユーザー体験を作り出すための一助となれば幸いです。
本日のウェブシステム開発では、普段何気なく使っているプログラミング言語がコンパイルする際に、リンカーというプログラムが実行ファイルを作っています。
このリンカーは非常に重要な仕事をしているにもかかわらず、ほとんど目立つこともなく知らない人もいるかも知れません。
そこで本セッションでは、実際に動く最小限のリンカーをRustで実装して得られた知見を元に、リンカーの仕組みを解説します。
「こういう仕組みだったのか!」という驚きと、「自分でも作れそう」という興奮を持ち帰っていただけるセッションです。
リンカーは多くのエンジニアにとってブラックボックス、かつあまり世の中に実装の情報が出ていないです。
セッション中に実際に動くデモをお見せし、複雑に見える処理が意外とシンプルな仕組みで動いていることを説明します。
普段当たり前に使っているプログラミング言語の裏側を知ることで、プログラミングへの理解が一段深まるはずです。
「知らなかった」ことを知る楽しさを共有する、buildersconらしいセッションをお届けします。
人を増やして売上を拡大する。
タスクを細分化してEVMで進捗を管理する。
進捗が計画通りであることが、プロジェクト成功の指標となる。
それが18年間、受託開発の現場で私が学び、自然と身につけていた開発との向き合い方でした。
ただ、目先の利益のためだけに働いている感覚に違和感を抱くようになりました。
もっと“作ること”そのものに意味や目的を持ちたいという思いが芽生えました。
プロダクトを成長させ、価値を実現する。
チーム全体で認知を揃え、同じ目的に向かって一緒に開発を進めていく。
ストーリーを捉え、最小限の成果物を届け、そこから得られる経験を次に活かす。
「人を管理してプロジェクトを進める」という発想から、
「チームでプロダクトを育てる」という発想へと、志向がシフトしていきました。
このトークでは、私がどのようにして「納品のための開発」から「価値実現のための開発」へと視点を変え、
作ることに対するオーナーシップを持てるようになったのか、そのきっかけと実践、そして得られた学びをお話しします。