こんにちは。モバイルデベロッパーエクスペリエンスチームの@giginetです。ここわずか1年あまりで、コーディングAIを用いた開発は日常的なものになりました。LINEアプリの開発においても、Claude Codeをはじめとした、コーディングエージェントの活用が進んでいます。 この記事では、LINE iOSのような大規模プロジェクトにおいて、Claude Codeを効果的に活用するための、インストラクションの設計思想を紹介します。 適切なインストラクションはなぜ必要か? Claude Codeはデフォルトの状態でも高い精度を発揮しますが、プロジェクト固有のルールや知識を適切に与えることは実装の効率化に重要です。 まず、本稿では便宜的にメモリファイル(CLAUDE.md)やAgent SkillsなどのようなClaude Codeに指示を与えるプロンプト全般を「インストラクション」と呼ぶことに
2025年9月19日(金)から21日(日)にかけて開催される iOSDC Japan 2025 にて、LINEヤフー株式会社はプラチナスポンサーを務めます。 このたび、iOSDC Japan 2025のパンフレット内・スポンサー紹介ページにて、弊社エンジニアのgiginet(@giginet)とまつじ(@mtj_j)による対談記事を掲載いたしました。 本記事は iOSDC Japan 2025 のパンフレットに掲載された対談記事を、Developer Relations部のaikawaがブログ向けに紹介するものです。パンフレットに掲載した対談の全文を公開いたします。ぜひご覧ください。 AI時代、iOSアプリエンジニアがこれから生き残るには ── 今年は、LINEヤフー Tech Blogとの連動企画として、お二人の対談記事を掲載することになりました。 giginet 今年は、漫画じゃなく対
Background Tasksは、iOS 13で追加されたフレームワークです。その名の通り、アプリがバックグラウンドにあるときにタスクを実行できるようにするものです。 AppRefreshタスクとProcessingタスク Background Tasksフレームワークで実行できるバックグラウンドタスクには今のところAppRefreshタスクとProcessingタスクの2種類があります。 AppRefreshタスクはアプリのコンテンツをバックグラウンドで更新するタスクです。株価のようなちょっとした情報更新に使用することが想定されています[1]。 Use app refresh tasks for updating your app with small bits of information, such as the latest stock values. Processingタスク
はじめに CursorでiOS開発をするための環境構築について書きました。 SweetPadとXcodeBuildMCPを利用してiOS開発を実現します。 ある程度は快適にiOS開発をすることができる状態になっていると考えていますが、課題もあります。 前提として、本記事における、CursorでのiOS開発は、Mac OSかつXcodeがインストール済みの環境でないと動作しませんのでご注意ください! アジェンダ Cursorをインストール CursorでSwiftを書けるようにする CursorでiOSプロジェクトをビルドできるようにする iOS開発をやりやすくするためのTips 残っている課題 1. Cursorをインストール Homebrewでインストール Cursorの利用プランは3つあります。 無料 Pro Business 各プランの詳細は省きますが、無料版とPro版を利用する際は
iOSアプリのアーキテクチャは現状正解がなく、アーキテクチャにはいつも悩みます。プロジェクトの状況によって採用するアーキテクチャはさまざまだと思います。この記事では比較的流行に影響されず、私自身がよく採用しているアーキテクチャや開発方針をガイドとしてまとめてみました。 とあるアプリを開発していた時、当時はコードの保守性よりも最速で動くものを作ることを重視していました。それはそれで目的を果たせたのですが、さまざまな処理をどこに書くか明確に決めきれていない部分があり、改修をするたびにそれが複雑化していく状態でした。このままではチーム開発や将来的な機能追加に影響が出ると思い、徐々にリファクタリングを進めているところです。その中でガイドをしっかり作った方がいいなと思い作成したものになります。今後はAIにコーディングを任せることも増えるかと思いますが、その際もアーキテクチャや指針があらかじめ決まって
SwiftUIには、便利なModifierが多く用意されています。 今回は一手間でアプリのクオリティを向上させられるModifierをまとめます。 他にもオススメのModifierがあればコメントで教えてください。 見た目に関わるもの layoutPriority レイアウトの優先度を指定しできます。 数字が大きいいほど表示領域が優先されます。 負の値も指定することができ、デフォルト値は0になっています。 HStack { Text("このTextは優先度を高くしたい") + .layoutPriority(1) Text("このTextは優先度を低くしたい") .foregroundStyle(.secondary) } privacySensitive Viewに、センシティブな情報が含まれていることを指定できます。 アプリが非アクティブになった際に、指定したViewが自動的にマスクさ
こんにちは。開発本部 たんぽぽ室 DevRel グループの杉田です。 遅ればせながら、今年も新卒向け技術研修の資料と動画を公開しました。 MIXI の新卒向け技術研修は、一部の科目を除いて、実際の開発現場で活躍する MIXI のエンジニアが講師を務めており、現状に合わせて見直しも行われていますので、最新の情報で学習することができます。是非、自己学習や勉強会の教材として、スキルアップや成長支援にお役立てください。 <<おねがい>> 公開している資料や動画は、是非、勉強会や社内の研修などにご自由にお使いいただければと思いますが、以下のような場でのご利用はご遠慮ください。 受講者から参加費や授業料など金銭を集めるような場での利用 (会場費や飲食費など勉強会の運営に必要な実費を集める場合は問題ありません) 出典を削除または改変しての利用 なお、資料や動画、リポジトリは非公開の科目もございます。予め
※この記事は Luup Developers Advent Calendar の13日目の記事です。 こんにちは、11月にLuupに入社したてほやほやのつぼやん(@tsuboyan5)です。iOSエンジニアとして、Software Developmentチームで楽しくLUUPアプリの開発に携わっています。 今回はカメラについての話題です。 カメラを扱っているiOSのアプリには広く影響している内容だと思いますので、ぜひご覧いただければと思います! はじめに LUUPアプリでは、車両のQRコードを読み取って、鍵の開錠を行うことができます。 しかし、iPhone 15 Pro を使うユーザ様より、「QRコードにカメラを近づけるとフォーカスが合いません」という内容の問い合わせがありました。 手元で検証したところ、以下の画像の様に近距離のフォーカスが合わなくなっていました。 フォーカスが合わなくてQ
SwiftUIの登場で画面の開発効率はあがりましたが、一方で今まで普通に出来ていたことがすぐ出来ず戸惑う場面も増えました。 この記事ではSwiftUIの微妙な所とその対処法を紹介していきます。 新しい微妙な所を発見したら随時追加していきます。 Listの罫線が勝手に短くなる問題 Listはとても簡単に表を作ってくれて便利なのですが左寄りになるため、ちょっと不格好なレイアウトになってしまいます。 そこで次のようなコードを書くとセンタリングにできますが、罫線が微妙なことになります。 let fruits = [ "りんご", "バナナ", "みかん", "イチゴ" ] var body: some View { List { ForEach(fruits, id: \.self) { fruit in Text(fruit) .frame(maxWidth: .infinity, alignm
minne事業部モバイルチームのエンジニアをしております、@umatoshiです。最近はパルワールドに夢中で、全力で配合に取り組んでいます。 好きなパッシブスキルは脳筋です。 現在私は、minneのiOSアプリを開発しており、最新バージョンのXcode(執筆時点では15.2)対応とiOS15サポート終了予定等、2021年当時の記事からアップデートしたので、採用している新技術や開発効率を上げるための工夫をはじめとしたトピックを、minneのiOSチームに興味がある方へ向けて共有したいと思います。 去年はiOSDC 2023でブース出展もしていて、弊社から登壇もしていてminneについて紹介しています。こちらもどうぞ。 概要 まずiOS 14のサポートを終了しており、SwiftUI、 GraphQL、 SPM(Swift Package Manager)、 Combine、 Swift Con
iOSエンジニアなら実機でリリースビルドの動作確認するためにTestFlightを使いますよね。 実はこのTestFlight、使い方を誤ると内部テスターとしてアプリをインストールできなくなる呪いがかかることをご存知でしょうか? まず、TestFlightの配信形態についてですが、内部テストと外部テストの2種類があります。 内部テストは審査なしでApp Store Connectにアップロードしたアーカイブをインストールすることができる開発者向けの配信形態です。 外部テストは審査ありでベータ版をパブリックに配信できる開発関係者向けの配信形態です。インストールしたい人のApple Accountを登録して招待するタイプと、リンクを知っている人なら誰でもインストール(最大10000人)できるようになるパブリックリンクを発行するタイプの2通りがあります。 開発者の場合、リリース版の動作確認をする
iOS は一見、テキスト入力や表示のような基本的実装はとても簡単に思えますが、実際には一度はその動作に頭を悩ましたことがあるでしょう。 iOSDC 2020 では「iOS のキーボードと文字入力のすべて」と題してこれらの問題について詳細に検討しました。 そして、この3年間で iOS は大きく変化…
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く