チームエンジニアリングでグローバルなメンバーと連携していると、どうしても言語の壁が辛いことが多々あります。そういった壁を今、勢いのある生成AIの力を使って乗り越えられるのではないか。
さまざまな手法を試しました。その中で特に効果的だったのが生成AIのPull Request要約ツールでした。
今回は数あるPull Request要約ツールの中の「PR Agent」を使って、グローバルメンバーとのGitHub上のコミュニケーションを円滑にした話をします。
といったiOSエンジニアにとって気になるポイントを解説します。
このトークを通じて、生成AIのコーディング以外での活用方法を知っていただき、少しでもチームのコミュニケーションが円滑になる助けになればと願っています。
アップデートをいち早く理解する一番簡単な手段といえば、そう!小さなアプリを作ってみることです。
このLTではWWDC24で発表されたアップデート内容のいくつかを組み合わせて作ったアプリをもとに、アップデート内容を紹介していきます。
つまり!現時点ではどんな内容になるかわかりません!笑
できうる限り強みを生かしたいいアプリに仕上げるつもりなので、どんな内容になるのか?どんなアプリになるのか?そんなところをぜひ想像しながら一緒にWWDC24を振り返りましょう!
Flutterは、単一のコードベースでiOSとAndroidの両方に対応するアプリを作成できるクロスプラットフォームフレームワークです。しかし、ネイティブアプリと比較すると、ユーザーエクスペリエンスやパフォーマンスに違いが生じることがあります。
多くの開発者はデザインを一つに統一して省エネを図るかもしれませんが、iOSネイティブの魅力に惚れ込んでいる自分としては、できる限りiOSネイティブに近づけたいと思っています。
このセッションでは、FlutterでiOSとAndroidのネイティブ感をどのように演出するかについて具体的な例を用いて説明します。具体的には、それぞれのプラットフォームに適応したウィジェットの作成方法や、プラットフォームチャネルを使ったネイティブコードの統合方法などを取り上げます。そして試行錯誤の過程で得た難しかったポイントやTips、Flutterでできること・できないことについて共有します。
ネイティブ好きだけどFlutterを使わないといけないとなっている方々にぜひ聞いてほしい発表です。
App Clip を実装している個人開発者の方はいらっしゃるでしょうか?
業務開発でも App Clip の開発経験がなかった私ですが、どうしても App Clip の実装がしたくてどうにかしてやりたいと思っていたときにふと思いつきました。
「NFC タグに App Clipコードを印刷した紙を貼り付けて、アプリ布教用に実装できるのでは?」
実際に20時間程度で作ったアプリに App Clip を実装し、デバッグや App Store の審査も通したときの経験談をお話します。
また、ローカル体験や App Clip Code Generator の使い方、 App Store Connect 上での操作方法など、可能な限りを LT 形式でまとめて紹介します。
仕様書とソースコードの乖離が起きるのが嫌だが、定期的に仕様書とソースコードを見比べるという作業も嫌な僕が、仕様書からSwiftのソースコードを自動生成する仕組みがないかなと思って調べた記録を発表します。
Swiftコードを自動生成する成果物は作れたので、その内容を元に以下について発表します。
SwiftSyntaxはSwift言語のアップデートと共に割と大きめのアップデートもガシガシやってる仕組みです。
僕の苦しみから他の人の開発効率化案、もっと良いコードが生まれることを願って、発表します。
永続化されたデータの保護は、現代のiOSアプリ開発において必要不可欠な要素です。
しかし、Appleが提供する永続化フレームワークであるCore Dataは標準でデータの暗号化を提供しません。
そこでこのトークでは、最もお手軽に導入できるCryptoKitによるCore Dataの暗号化手法について詳しく紹介します。
参加者は以下の内容を学ぶことができます。
このトークを通して、「Core Data」の暗号化に「CryptoKit」を利用する利点やパフォーマンスについて理解を深めて頂ければ幸いです。
Unlock the power of Moya by learning how to correctly pass arrays and dictionaries as query parameters in Swift. This talk will guide you through best practices, common pitfalls, and real-world examples to ensure your iOS apps handle complex queries with ease. Perfect for iOS developers aiming to streamline their network layer and to quickly implement API clients for your app. This session is definitely useful when the server side requires complex query parameters.
デザイン定数をマジックナンバーのままベタ書きしていたり、enumなどで定数化していますか?
読み取るのも大変、書くのも大変、使うのも大変だと感じることもあるでしょう。
そんなあなたに、コードの可読性を向上させつつ、書きやすく、読みやすい方法をご紹介します。
このLTでは、Swift 5.9より実装されたAttached Macrosを活用して、最高に読みやすく、使いやすい定数宣言の方法を紹介します。
定数宣言することがいかに幸せなことか、この5分で実感していただきます!
以下の内容について紹介します。
アプリ内でAPIキーやその他の秘密情報を扱う際、難読化やリポジトリ内での直接保持を避けることは情報漏えいリスクを低減するために重要です。従来、これらの対策には「cocoapods-keys」や「arkana」などのツールが使用されてきました。これらのツールはCocoaPodsのプラグイン機能やRubyによって機能が実現されているため、別途CocoaPodsやRubyの環境構築が必要です。
Swift Package Managerの機能だけで実現できれば、環境構築も簡単になり、パッケージ管理ツールをSwift Package Managerに統一することも容易です。Swift Package Managerの機能のみを使用することで、追加の環境構築が不要となり、プロジェクトのシンプルさと一貫性が向上します。
本LTでは、Swift Package Manager Onlyな環境を目指すべく開発した、Swift Package Pluginを活用した機密情報の難読化ツールの開発手法について説明します。
・ハードコードしてはいけない理由、難読化の必要性
・Swift Package Pluginを用いた難読化ツールについて
みなさんは Swift で Web サイトを作ったことはありますか?
Ignite は Swift 製の静的 Web サイトビルダーで、表現力豊かでパワフルな API を提供します。これにより、あらゆるデバイスで優れた機能を発揮する、美しい Web サイトを構築できます。
HTMLやCSSの知識がなくても、SwiftUI のような構文を使用して素晴らしいWebサイトを作成できます。
本 LT では、試しに iOS 関連のニュースを定期的に配信する Web サイト「iOS Osushi🍣」を Ignite にリプレイスする過程で得られた知見を紹介します。具体的には、以下のポイントについて解説します。
このLTを通じて、Swift と Ignite を使った素晴らしい Web サイトを作ってみましょう!
はじめまして、私は特別支援学校の教員をしてます、駒路と申します。今回初めて参加してみました。
参加した理由としては、昨年アプリを作りまして、それをいろんな人に知っていただければと思ったからです。
どのようなアプリかと言うと、AR(拡張現実)と言う技術を使って、目だけで操作ができるアプリをつくりました。
このようなアプリは今までいくつかあったのですが、他のアプリとの1番の違いは、このアプリは、障害を持った生徒のために作られたということが1番の違いです。つまり、「教材」です。
重い障害を持った生徒がどのようなアプリを求めているかどうかを考え、作成に至りました。
また、ギガスクール構想端末(1人1台端末)で動くと言うことも大きな特徴の1つです。重い障害を持った生徒は、iPadをもらっても活用する機会があまりないため、何とか活用する機会を作るために、このようなアプリ作ったという背景もあります。
具体的なアプリは、お絵かきアプリやVOCAアプリになります。視線で絵を描いたり、視線で絵を選択することで、自分の考えを表出することにつながります。
障害を持った方の福祉用アプリという位置づけですが、誰でも簡単に使えるようなアプリになっておりますので、もしご興味がございましたら、ダウンロードしてみてください。
以上です。