並び順

ブックマーク数

期間指定

  • から
  • まで

241 - 280 件 / 809件

新着順 人気順

swiftの検索結果241 - 280 件 / 809件

  • Swiftにおける末尾再帰とCompilerによる最適化を探る

    SwiftのCompilerはOSSとして公開されているので、興味のある方はぜひチェックしてください。 github.com また、Swift Compilerのアーキテクチャについては、こちらの記事がとても分かりやすいです。 qiita.com 末尾再帰にしたとして、最適化を無効にしたときと有効にしたときで実行結果が変わってくるのであれば、Compilerの生成物も当然異なっているはずです。 それでは、最適化を無効にしたときと有効にしたときで、上記のどのタイミング(Component)でどのような生成物の違いがあるのか、見ていきます。 各Componentにおける差分 次の内容をsum.swiftとして保存し、生成物の差分を実際に見ていきます。 func sum(_ n: Int, _ res: Int) -> Int { if n == 0 { return res } return

      Swiftにおける末尾再帰とCompilerによる最適化を探る
    • NSA urges orgs to use memory-safe programming languages

      C/C++ on the bench, as US snoop HQ puts its trust in Rust, C#, Go, Java, Ruby, Swift The NSA has released guidance encouraging organizations to shift programming languages from the likes of C and C++ to memory-safe alternatives – namely C#, Rust, Go, Java, Ruby or Swift. "NSA recommends that organizations use memory safe languages when possible and bolster protection through code-hardening defense

        NSA urges orgs to use memory-safe programming languages
      • noteのiOSアプリから40%以上あったObjective-Cのコードが消えた|かっくん / iOS Developer

        先日ラクマさんでも同様のツイートがありましたが、実はほぼ同時期にnoteのiOSアプリからもObjective-Cのコードが消えました。 今朝ついにラクマiOSアプリのObjC削除の最後のPRをマージしました。僕が入社してマネージャーを引き継ぎ、約4年かかりました。何で4年もかかったのかは別途ブログにでも書こうと思いますが、とにかく大変で、奇跡的に優秀なメンバーが揃ってみんなで成し遂げることができました。 pic.twitter.com/NY6V5kUhcI — だーくろ (@darquro) August 3, 2022 ちなみに僕が入社した頃のコード量を見てみましょう。(2020年4月) 1332 text files. 1161 unique files. 459 files ignored. github.com/AlDanial/cloc v 1.92  T=0.33 s (35

          noteのiOSアプリから40%以上あったObjective-Cのコードが消えた|かっくん / iOS Developer
        • Kotlin Multiplatformを運用してみた開発とその振り返り - freee Developers Hub

          こんにちは、モバイル開発のandrekandore (かんちゃん)だ! ※ この記事のどこかにiOSDC Japan 2023のチャレンジトークンが隠されているよ! はじめに この記事は、Kotlin Multiplatformを用いて実現しようとしたこと、運用してみた結果の振り返りについての紹介である。特にSwift・iOSの技術者の観点からどのような課題があったかについて解説する。 iOS / Androd 両プラットフォームをまたがる課題 モバイルアプリ開発においてよく課題としてあがるのは、各プラットフォームにまたがる「ビジネスロジック」の共通化である。 モバイルでは、ウェブとの差異はもちろん、AndroidやiOSアプリとの(仕様・実装の)差異が開発時間の増加につながってしまうことがある。各プラットフォームの差異を埋め合わせることに時間を割くことが、ユーザへの新規機能の実装時間を減

            Kotlin Multiplatformを運用してみた開発とその振り返り - freee Developers Hub
          • 5年ぶりの開催!「try! Swift Tokyo 2024」参加レポート - ZOZO TECH BLOG

            はじめに こんにちは。DevRelブロックの@wirohaです。2024年3月22日〜24日に「try! Swift Tokyo 2024」が開催されました。ZOZOはGOLDスポンサー・DIVERSITY & INCLUSIONスポンサーとして協賛し、ブースを出展しましたので現地のレポートをお届けします! 目次 はじめに 目次 会場 スポンサーブース アンケートの回答 印象に残ったセッション Swiftの型推論を学ぼう コード署名を楽しく乗り切る方法 Party、その他 アフターイベント LT1. SwiftPM マルチモジュール構成への第一歩 LT2. SwiftとC++を利用した画像処理プログラミング LT3. Introducing Pkl 感想戦 最後に 会場 会場は前回(2019年)と同じ、ベルサール渋谷ファーストです。try! Swiftのマスコットキャラクター「Riko」ち

              5年ぶりの開催!「try! Swift Tokyo 2024」参加レポート - ZOZO TECH BLOG
            • GitHub - leetcode-mafia/cheetah: Mac app for crushing remote tech interviews with AI

              You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

                GitHub - leetcode-mafia/cheetah: Mac app for crushing remote tech interviews with AI
              • 高校文化祭の食販で自動注文機を作った話 - Qiita

                経緯 私の学校では、毎年文化祭で高校3年生が食販をする伝統があり、私のクラスでは「生姜焼きパン」を売ることになりました。(本記事の主旨とは逸れるがこれがめちゃくちゃ美味い) 基本的に食販は以下のようなフローで行われます。 このフローは厳守です。即ち注文が入らない場合は調理できません。作り置きは衛生上問題があるため不可です。 つまり、注文数と調理数を適切に管理しない場合、両者が食い違い大量の廃棄が出る可能性すらあるのです。従来はボードなどを用いてごちゃごちゃやっていたらしいですが、あまりにも非効率で間違いが生じる可能性も否めません。そこで私たちはサーバーを用意して、文明の利器「スマートフォン」を用いた一元化管理を考えました。 基本的な仕組み 基本的なシステムは下図の通りです。セキュリティー的にどうなの?とかは訊かないでください。あくまでも文化祭用です。商用ではありません。(ここ重要) 簡単に

                  高校文化祭の食販で自動注文機を作った話 - Qiita
                • iOSアプリで時間のかかる処理をする

                  iOSアプリで時間のかかる処理が発生すると何が起こるのでしょうか? デモアプリを用意したので、手元で確認しながら読み進めることをできるようにしています。 はじめに レビューをしていて時間のかかる処理に対して、iOSアプリではこれを使えば良いと示すのは簡単ですが、どうしてそれが必要なのか順序立てて説明するために今回の記事を書きました。 フレームワークが高度に抽象化し、良しなにやってくれるので、現代のプログラミングにおいては知らなくて良いことの一つかもしれません。 時間のかかる処理とは 例えば、以下のようなアプリがあったとして、「Push Me!」のボタンをタップしたとします。 すると、地球のアイコンがインジケーターに変わって回転のアニメーションが始まり、何か処理を行なっている様子を感じ取れます。しばらくすると、インジケーターが地球のアイコンに戻り、処理が完了した様子を感じ取れます。 iOSア

                    iOSアプリで時間のかかる処理をする
                  • SwiftマクロでPowerAssertを実装する - 24/7 twenty-four seven

                    現在Swiftにマクロを導入しようという提案がSwift Evolutionのレビュー中*1です。 SwiftによってSwiftの構文を拡張できる、いわゆるメタプログラミングと呼ばれる機能です。 実はマクロの他にもSwiftでメタプログラミングを実現する機能の提案が複数提案*2*3されています。 Swift 6はメタプログラミングの時代になるかもしれません。 現代的なプログラミング言語のマクロ みなさんはマクロと聞いて、どのような機能を想像しますか? C言語のマクロは、プリプロセッサと呼ばれるコンパイル前のプログラムによってプログラムのソースコードに置換や文字列連結を行う機能でした。 原理的には単なる文字列操作なので、プログラムの構造や型を破壊する可能性がありました。 最初のマクロに関する投稿に対しての否定的なコメントは、C言語のマクロのような機能をSwiftに導入することは危険だという意

                      SwiftマクロでPowerAssertを実装する - 24/7 twenty-four seven
                    • [FT]SWIFTからロシア排除の是非、足並み乱れるG7 - 日本経済新聞

                      バイデン米大統領は24日、ロシアのプーチン大統領にウクライナ侵攻の重い代償を払わせると述べ、ロシアの銀行と新興財閥に一連の経済制裁を科した。だが、ロシア軍の部隊がウクライナの首都キエフに迫っていても、多くの専門家が最も厳しいと指摘する制裁は含まれなかった。銀行間の国際決済ネットワークである国際銀行間通信協会(SWIFT)からロシア(の金融機関)を排除する措置だ。「ロシアの全ての銀行に対する制裁

                        [FT]SWIFTからロシア排除の是非、足並み乱れるG7 - 日本経済新聞
                      • SwiftでAPI KEYなどの秘匿が推奨される情報の隠蔽化 - Qiita

                        何が問題なの? 普段あまり、AWSやFIREBASEなどのサービスの利用を何とか避けてニッチなアプリで凌いでいましたが、ついにそんな悠長な事も言って入れなくなってきました。 改めて、この種のサービスを利用する際に常に気になっていたのが、こんな記法です。SDKがこれらの情報を必要とするのは理解できますが、これらの情報をリテラルで渡すのはかなり気になります。スクリプトなどを介在して環境変数から、これらの情報を渡す場合もあるようですが、コンパイル時にはリテラルになっているのでやはり気になります。 例えば、ターゲットとなるアプリがあったとします。WorldGreatServiceを利用しているのがわかっているものとします。そして、WorldGreatServiceがSDKを公開していたとします。 自分でも同SDKを組み込んでみるとします。自分用のapi-keyとsecret-keyを取得して上記同

                          SwiftでAPI KEYなどの秘匿が推奨される情報の隠蔽化 - Qiita
                        • GitHub Actions で Xcode のインクリメンタルビルドを実現する (xcode-cache アクション) - Qiita

                          GitHub Actions で iOS アプリをビルドするときの Xcode のインクリメンタルビルドを有効にするためのキャッシュ設定について解説します。 CI でのビルドで Xcode のインクリメンタルビルドが使えるようになれば、毎回 CI 上でフルビルドし40分程度かかっていたプロジェクトが、差分のみのビルドでビルド時間が5分に短縮されたりすることが期待できます。 環境 この記事では、以下の環境で調査・検証した結果を記載しています。 ローカル環境 macOS Ventura 13.5.1 Xcode 14.3.1 (14E300c) APFS (Encrypted / Case Insentive) GitHub Actions 環境 macos-latest macOS Monterey 12.6.8 Xcode 14.2.0 (14C18) 結論 結論としては xcode-ca

                            GitHub Actions で Xcode のインクリメンタルビルドを実現する (xcode-cache アクション) - Qiita
                          • How Swift Achieved Dynamic Linking Where Rust Couldn't - Faultlore

                            How Swift Achieved Dynamic Linking Where Rust Couldn't For those who don’t follow Swift’s development, ABI stability has been one of its most ambitious projects and possibly it’s defining feature, and it finally shipped in Swift 5. The result is something I find endlessly fascinating, because I think Swift has pushed the notion of ABI stability farther than any language without much compromise. So

                              How Swift Achieved Dynamic Linking Where Rust Couldn't - Faultlore
                            • 【書評】「SwiftでつくるARKit超入門」を読みました | DevelopersIO

                              クラスメソッド福岡オフィスでiOSアプリエンジニアとして働いている田辺です。ご縁がありSwiftでつくるARKit超入門という本を読み、ARの学び始めにとても良い本だと思ったので書評ブログを書くことにしました。 書籍情報 書籍の著者は北村愛実さんです。ARKitやUnityに関するブログや書籍を公開されていたので、本を手に取る前から存じあげていました。 北村愛実 1988年生まれ。立命館大学院理工学研究科卒業。大学院では画像処理を利用したスマートフォン用のアプリケーションやゲームを開発する。IT企業の研究職を経て、現在は主婦をやりつつ執筆やイラスト制作に励んでいる(本データはこの書籍が刊行された当時に掲載されていたものです) https://www.hmv.co.jp/artist_%E5%8C%97%E6%9D%91%E6%84%9B%E5%AE%9F_000000000665641/b

                                【書評】「SwiftでつくるARKit超入門」を読みました | DevelopersIO
                              • GigaViewer for Appsで使っている便利SwiftUIコンポーネント5連発! - Hatena Developer Blog

                                2021年11月にはてなが開発しているマンガビューワのアプリ版である「GigaViewer for Apps」を提供開始しました。 hatenacorp.jp 同日に、その最初の導入事例としてコミックガルド+をリリースしています。 GigaViewer for AppsのiOSアプリはSwiftUIをフルに活用して開発をしています。この記事では実際に使っているSwiftUIの便利コンポーネントをソースコード付きで紹介します! GigaViewer for Appsに関しては、座談会の記事や、Android版の設計について書いたブログもありますので、あわせてお読みください。 この記事では主にカスタムコンポーネントの使い方を紹介します。コンポーネントの実装サンプルはリポジトリに公開しているので、こちらもご確認ください。 github.com PageViewController - UIPag

                                  GigaViewer for Appsで使っている便利SwiftUIコンポーネント5連発! - Hatena Developer Blog
                                • 株式会社はてな 社内ISUCONで、11予選問題のSwift Smoke移植チャレンジ #isucon - Hatena Developer Blog

                                  こんにちは id:yutailang0119 です。 有志によって開催された株式会社はてな 社内ISUCONで、ISUCON11予選問題にSwiftで取り組んだレポートです。 amzn/smoke-framework を使ってチャレンジしました。 「ISUCON」は、LINE株式会社の商標または登録商標です。 株式会社はてな 社内ISUCON2022夏レギュレーション GitHub - isucon/isucon11-qualify: ISUCON11 予選 (ISUCONDITION) を解く ISUCON11 予選レギュレーション : ISUCON公式Blog に則る 本番と同じく、競技時間は 10:00 - 18:00 (JST) の8時間 社のAWSアカウントにインスタンスを用意 各チームはスコアをMackerelに投稿し、スコアを競う チーム情報 チーム名: チーム鈴木つば太郎

                                    株式会社はてな 社内ISUCONで、11予選問題のSwift Smoke移植チャレンジ #isucon - Hatena Developer Blog
                                  • Tuist

                                    Tuist More productive and happier teams using Xcode Effortlessly build, test, and deploy your apps with Tuist's revolutionary automation and project management features. Proudly sponsored by import ProjectDescription let project = Project( name: "Tuist", targets: [ Target( name: "Tuist", platform: .iOS, product: .app, bundleId: "io.tuist.Tuist", sources: ["Sources/**"] ), Target( name: "TuistTests

                                      Tuist
                                    • Swift Concurrency まとめ(正式版対応済)

                                      Swift 5.5 では、待望の async/await 構文をはじめとした Swift Concurrency Roadmap における並行処理機能、いわゆる Swift Concurrency のサポートが多く開始され、WWDC21 でも各機能の使いかたや仕組みが詳細に解説されていました。 Swift Concurrency についてはすでに koher 氏の 『Swift 6 で来たる並行処理の大型アップデート近況』や『先取り! Swift 6 の async/await』 などの資料でも詳細に解説されています。この記事では WWDC の各セッションで行われた説明の紹介を中心に、この記事ひとつで Swift Concurrency についての現時点での概観を把握できる状態を目指して、改めてまとめてみました。 async/await Concurrency にまつわる様々なプロポーザル

                                        Swift Concurrency まとめ(正式版対応済)
                                      • 「10Xのバリュー」をエンジニア目線で解釈したら?CTO石川インタビュー | 株式会社10X | 株式会社10X

                                        「10xを創る」。これは、創業3年目を迎えた10Xが掲げたミッション。そこから「どのように創るのか」を紐解き、誕生したのが次にある3つのバリューでした。 - 10xから逆算する - 自律する - 背中を合わせる 本来、バリューとはメンバーそれぞれで解釈し、行動に落とし込んでいくもの。では、10Xのエンジニア目線ではどのように解釈されているのでしょうか?そこで今回は、10XのCTO石川洋資(@_ishkawa)にインタビュー。聞き手は、10Xのソフトウェアエンジニアである北 裕介(@kitasuke)です。 石川 洋資 | @_ishkawa (※写真右) Co-Founder, 取締役CTO 面白法人カヤック、LINEでの複数の新規事業開発を経て、メルカリ/ソウゾウへ。 メルカリ/ソウゾウではプリンシパルエンジニアを務める。オープンソースプロジェクトへの参加や執筆活動も行っており、2017

                                          「10Xのバリュー」をエンジニア目線で解釈したら?CTO石川インタビュー | 株式会社10X | 株式会社10X
                                        • Optimizing your Swift code

                                          Tuples conform to Equatable, Comparable, and Hashableの実装

                                            Optimizing your Swift code
                                          • シン・スウィフト 5.7 ~ Swift5.7を振り返る ~ / New Swift 5.7

                                            「シン・スウィフト 5.7 ~ Swift5.7を振り返る ~」登壇:freddi 監修:shinzan ※こちらは以下イベントの資料です https://yj-meetup.connpass.com/event/247614/

                                              シン・スウィフト 5.7 ~ Swift5.7を振り返る ~ / New Swift 5.7
                                            • Background Notificationで新聞紙面の大きい画像の自動ダウンロードを実現する

                                              iOSDC2020 Day 1 Track A 10:50〜 Background Notificationで新聞紙面の大きい画像の自動ダウンロードを実現する 本セッションでは、大きい画像コンテンツを対象にした自動ダウンロード機能について説明します。 実装の過程で直面した問題への対策やアプリやサーバーサイドを含めた全体のアーキテクチャを解説するとともに、日本経済新聞 紙面ビューアーにおける新聞紙面画像での運用事例を紹介します。 大規模サービスにおける運用を通じて得られた安定して自動ダウンロードを成功させるための課題の解決方法を説明します。 https://www.youtube.com/watch?v=KI8sGk6hhNU https://fortee.jp/iosdc-japan-2020/proposal/6bb15eb4-09f9-4fb9-b451-ae8fbd530790 ht

                                                Background Notificationで新聞紙面の大きい画像の自動ダウンロードを実現する
                                              • How Uber Deals with Large iOS App Size

                                                You’re seeing information for Japan . To see local features and services for another location, select a different city. Show more The App Size Problem Uber’s iOS mobile Apps for Rider, Driver, and Eats are large in size. The choice of Swift as our primary programming language, our fast-paced development environment and feature additions, layered software and its dependencies, and statically linked

                                                  How Uber Deals with Large iOS App Size
                                                • Swift 6に向けた準備:Strict Concurrency CheckingをTargeted設定にした際に発生した問題と解決方法 - ZOZO TECH BLOG

                                                  こんにちは、フロントエンド部の中島です。FAANSのiOSアプリの開発を行なっています。 FAANSの由来は「Fashion Advisors are Neighbors」です。「ショップスタッフの効率的な販売をサポートするショップスタッフ専用ツール」で2022年8月に正式ローンチしました。 はじめに FAANS iOSチームではAPI通信においてSwift Concurrencyを利用しています。Swiftに限らず並行処理を扱う場合には実装次第でデータ競合を起こす恐れがあるのに対して、Swiftではデータ競合を防ぐ仕組みとしてActorが導入されています。そして、Actor間で扱うデータがデータ競合を起こさない型であるかコンパイラでチェックされます。Swift 6ではこのデータ競合のチェックにより既存のコードでコンパイルできなくなる可能性があります。Xcode 14ではSwift 6まで

                                                    Swift 6に向けた準備:Strict Concurrency CheckingをTargeted設定にした際に発生した問題と解決方法 - ZOZO TECH BLOG
                                                  • Swift System is Now Open Source

                                                    In June, Apple introduced Swift System, a new library for Apple platforms that provides idiomatic interfaces to system calls and low-level currency types. Today, I’m excited to announce that we’re open-sourcing System and adding Linux support! Our vision is for System to eventually act as the single home for low-level system interfaces for all supported Swift platforms. Goodbye Imported C Interfac

                                                      Swift System is Now Open Source
                                                    • Hugging Face、Appleデバイス上で大規模言語モデルを実行するためのSwiftパッケージとDemoアプリを公開。

                                                      Hugging FaceがApple Siliconを搭載したMacなどAppleデバイス上で大規模言語モデルを実行するためのSwiftパッケージとDemoアプリを公開しています。詳細は以下から。 学習済みの機械学習モデルやデータセットなどを公開/共有するHugging FaceのMLエンジニアで、Mac用Stable Diffusionクライアント「Diffusers」などを開発しているPedro Cuencaさんは現地時間2023年08月08日、Apple Silicon MacなどAppleデバイス上で大規模言語モデル(LLM)を実行するためのSwiftパッケージとDemoアプリを公開しています。 📢 Announcing Swift Transformers 📢 A package to run language models in native apps, on-device

                                                        Hugging Face、Appleデバイス上で大規模言語モデルを実行するためのSwiftパッケージとDemoアプリを公開。
                                                      • RxSwift to Apple’s Combine “Cheat Sheet”

                                                        Update: This cheatsheet is available as a Markdown table, as well as searchable CSV tables in the following repo: https://github.com/freak4pc/rxswift-to-combine-cheatsheet. Thanks Joe Blau for the help and inspiration! Update 2: I’ve released a library called RxCombine which provides a proof-of-concept for Bi-directional type bridging between RxSwift and Apple’s combine, letting you mix and match

                                                          RxSwift to Apple’s Combine “Cheat Sheet”
                                                        • Swift言語がWindowsのサポートを開始。コンパイラやライブラリなどWindows対応に

                                                          Swift言語の開発チームは、WindowsでもSwift言語を用いた開発を可能にする一連のツール群、いわゆる「ツールチェーン」を、最新バージョンのSwift 5.3でリリースしました。 これによりSwift言語によるWindowsアプリケーションの開発も可能になります。 Introducing Swift on Windows. New toolchain image is available for Windows, downloadable from https://t.co/5NNXraGyus. To learn more: https://t.co/D4w6d6ME1h — Swift Language (@SwiftLang) September 22, 2020 Windows版のツールチェーンに含まれるのはコンパイラとコアライブラリ、標準ライブラリなど。実際のコンパイル作

                                                            Swift言語がWindowsのサポートを開始。コンパイラやライブラリなどWindows対応に
                                                          • try! Swift NYCに参加してきました! #tryswiftnyc - Sansan Tech Blog

                                                            研究開発部の堤と申します。今年9月にニューヨークで開催されたtry! Swift NYCというカンファレンスに参加してきました。 www.tryswift.co try! Swiftは2016年から東京・インド・ニューヨーク等で開催されている、Swiftのデベロッパーカンファレンスです。東京での開催時は毎回参加していますが 1、スピーカー・参加者ともに国際色豊か 2 なのが特徴です。 ニューヨーク版への参加は今回が初 3 でした。会期自体は9/5〜7の3日間あったのですが、9/3に iOSDCの登壇 があり、どうしても初日からの参加が難しかったため、2日目・3日目のワークショップからの参加となりました。 try! Swift NYCのスケジュール 午前・午後それぞれ3時間、2日間で計4つのワークショップ枠があり、各時間枠の中で参加者が希望のものを選ぶ、という形式でした。 私が選んだのは以下

                                                              try! Swift NYCに参加してきました! #tryswiftnyc - Sansan Tech Blog
                                                            • iPadのSwift Playgrounds 4だけで制作された初のアプリが公開 - iPhone Mania

                                                              2021年末にリリースされたiPad用のSwift Playgrounds 4で制作された、最初のアプリ「ToDon’t」が、App Storeで公開されました。開発者は、Swift Playgrounds 4の不十分な点と優れた点について評価し、発見した不具合を共有しています。 Swift Playgrounds 4で開発・公開された初のアプリ Appleは2021年の世界開発者会議(WWDC21)で、従来はMacでのXcodeが必要だったアプリの制作・公開プロセスをiPad用のSwift Playgroundsだけで可能にすると発表し、11月にはSwift Playgrounds 4のベータ版を公開し、12月に正式版を公開しました。 現地時間1月4日、「しないこと」を整理できるシンプルなタスク管理アプリ「ToDon’t」が、Swift Playgrounds 4で開発されたアプリとして

                                                                iPadのSwift Playgrounds 4だけで制作された初のアプリが公開 - iPhone Mania
                                                              • Fucking SwiftUI - Cheat Sheet

                                                                Fucking SwiftUI is a curated list of questions and answers about SwiftUI. All the answers you found here don't mean to be complete or detail, the purpose here is to act as a cheat sheet or a place that you can pick up keywords you can use to search for more detail. Unable to access this site due to the profanity in the URL? https://goshdarnswiftui.com is a more work-friendly mirror. FAQ Frequently

                                                                  Fucking SwiftUI - Cheat Sheet
                                                                • Swiftとオブジェクト間の通知のパターン - Qiita

                                                                  はじめに Swiftとオブジェクト間の通知のパターンについて考えてみます。 「オブジェクト間の通知」とはオブジェクト間のメッセージのやりとりを意味します。 iOSアプリ開発では複数のオブジェクトを扱うため、その通知方法の設計は疎かにはできません。アプリの規模が大きくなるにつれて、コードの重複を避け、再利用のためにコードを責務(役割)に応じて分割する必要があります。例えば、View(UI)とModel(ビジネスロジック)を分けた場合、Modelのデータ更新の完了をViewへどのように通知したらよいでしょうか。 概要 本記事ではアンチパターンを含めた以下の6つの通知パターンを説明します。最後に、それぞれのパターンの比較と使い分けについて説明します。 循環参照パターン(アンチパターン) Delegateパターン(弱参照+ポリモーフィズム) NotificationCenterパターン KVO(K

                                                                    Swiftとオブジェクト間の通知のパターン - Qiita
                                                                  • GitHub - pointfreeco/swift-composable-architecture: A library for building applications in a consistent and understandable way, with composition, testing, and ergonomics in mind.

                                                                    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

                                                                      GitHub - pointfreeco/swift-composable-architecture: A library for building applications in a consistent and understandable way, with composition, testing, and ergonomics in mind.
                                                                    • Apple’s use of Swift and SwiftUI in iOS 14

                                                                      Easily preview Mermaid diagramsLive update when editing in your preferred editorCapture screenshots with customizable marginsCreate PNG from the TerminalFree download on the Mac App Store MethodologyThe methodology and tools used for this article have been detailed in the previous posts. If you are interested, please refer to Apple’s use of Swift in iOS 10.1 and macOS 10.12. Later in this article,

                                                                        Apple’s use of Swift and SwiftUI in iOS 14
                                                                      • The State of SwiftUI

                                                                        Apple released SwiftUI last year, and it’s been an exciting and wild ride. With iOS 14, a lot of the rough edges have been smoothed out — is SwiftUI finally ready for production? Fruta Sample App Let’s look at Apple’s Fruta example, a cross-platform feature-rich app that’s built completely in SwiftUI. It’s great that Apple is finally releasing a more complex application for this year’s cycle. I to

                                                                          The State of SwiftUI
                                                                        • 「Swift」でマルチプラットフォーム開発をしよう! - Qiita

                                                                          追記 2020/6/15 DroidKaigi2020の登壇資料を公開しました! 追記 2020/8/28 DroidKaigi Liteのセッションを公開しました! ・資料 DroidKaigi2020 - Scadeを使って「Swift」で始めるAndroidアプリ開発 ・セッション 前置き この記事自体は2019年10月に書き終わっていたのですが、、、 DroidKaigi2020に応募したCFP 「Scadeを使って「Swift」で始めるAndroidアプリ開発」 が通ったため、だいぶ温めてからの公開になりました、、笑 残念ながら開催は見送られてしまいましたが、、、 開催週に登壇の前座資料として、元々この記事を公開予定だったので公開しています! (登壇資料はまだ開催予定を信じて公開は致しませんmm) 内容 登壇内容ほど詳しくは載せていませんが、みなさんがSwiftを使ってScade

                                                                            「Swift」でマルチプラットフォーム開発をしよう! - Qiita
                                                                          • 【Swift, iOS】iOS11以降のNetwork Reachability - Qiita

                                                                            今年のWWDCでは マルチプラットフォームでの利用というものが注目され 今後はより多様な形でアプリが使用されていくのかなと感じています。 そんな中で インターネットへの接続はなくてはならない存在ですが 環境によって接続状態は大きく変わります。 地下鉄でデータをダウンロードしている最中に 途中で接続が遮断されてダウンロードが止まってしまうこともあるかもしれません。 そういった刻々と変化する状態をどうやって把握すれば良いのか 今回はiOS11以降に導入された機能を中心に見ていきたいと思います。 ※ 今回iOS11以降に焦点を当てた理由として 最新のOSの2世代前までサポートするアプリが多いと個人的には考えており 今年の秋のiOS13バージョンアップ以降は iOS11以降の機能を使用していくことになると思っているからです。 SCNetworkReachability SCNetworkReach

                                                                              【Swift, iOS】iOS11以降のNetwork Reachability - Qiita
                                                                            • GitHub - ensan-hcl/azooKey: azooKey: A Japanese Keyboard iOS Application Fully Developed in Swift

                                                                              You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

                                                                                GitHub - ensan-hcl/azooKey: azooKey: A Japanese Keyboard iOS Application Fully Developed in Swift
                                                                              • RealmSwift入門 – 覚えておきたい、リレーションの定義からクエリ、マイグレーションまで – | DevelopersIO

                                                                                今回のテーマはモバイルデータベースの Realm です。 この記事では基本的なCRUD以外の、実際にアプリケーションを開発していく中で必要になるリレーションの定義やマイグレーションなどを取り上げていきたいと思います。 こんにちは。モバイルアプリサービス部で iOS アプリエンジニアとして働き始めた田辺です。現在研修で大阪に来ていますが研修が終わるまでに一記事書きたいと考えていたので、その目標が達成できそうで嬉しいです。 今回のテーマはモバイルデータベースの Realm です。 業務で Realm を使っていること、今までの開発ではかなり単純なデータ(参照も更新も限定的)の保存に Realm を扱っていたため、実案件に入るまでにきちんと準備をしておきたいということで、今回 Realm をテーマにした記事を書くことにしました。 Developers.IO では 2 年程前に Realm の基本

                                                                                  RealmSwift入門 – 覚えておきたい、リレーションの定義からクエリ、マイグレーションまで – | DevelopersIO
                                                                                • GitHub Package Registry will support Swift packages

                                                                                  CompanyProductGitHub Package Registry will support Swift packagesToday we’re excited to announce that we’ll be adding support for Swift packages to GitHub Package Registry. Swift packages make it easy to share your libraries and source code across your projects and with the Swift community. On May 10, we announced the limited beta of GitHub Package Registry, a package management service that makes

                                                                                    GitHub Package Registry will support Swift packages

                                                                                  新着記事