Scratch book

大切なのはアウトプットとコミットメント。 忘備録てきなかんじです。

メニューを開く
  • ホーム
  • Home

iOS Swift 書評

[書評] iOSアプリ開発自動テストの教科書 〜XCTestによる単体テスト・UIテストから,CI/CD,デバッグ技術まで

## iOSアプリ開発始めた人が読むとためになる本 XCTest(Xcode)を使ったiOSのテストコードの書き方について書かれた数少ない本。 UIテストの自動化しようかな〜と思って読んだのですが、テスト手法について詳しく書かれていてよかったです。 肝心のUIテスト...

iOS Swift

[Swift] UITestでカスタムViewを取得する (SwiftUI)

UITestを作成しようとすると、わからなくて調べるのに時間がかかります。 カスタムUIをタップしたかったのですが、UIの取得方法がわからなくて時間がかかったので方法を残しておきます。 ## otherElementsを使う Viewではidentifierを付...

Swift watchOS

[watchOS] Apple Watchアプリケーションのライフサイクルについて考える

## .activeはUIが表示された後からCallされる Apple WatchのアプリをSwiftUIで作成していて、画面が表示されたタイミングで行いたい処理を記述しようとした時に、Appleのドキュメントを見ながら以下のように実装しました。 ```objc `gut...

iOS Swift

iOSアプリケーション GatherQRを作成しました。

## QRコードをスマホで持ち歩きたい 子供を保育園に送っていった時に、QRコード使ったシステムで登園記録しています。 QRコードを紙とかで持ち歩くのが大変なので簡単なアプリにして家庭で使っていました。 これ、他の人にも便利かと思って、任意のQRコードを取り込ん...

Swift 書評

[書評] SwiftUI徹底入門(金田浩明)

最近SwiftUIでアプリを作成し始めたのですが、Appleのチュートリアルをやっただけでは細かいところがわからなかったので読んでみました。 ## 良いところ - SwiftUIについて一通りの説明が揃っている(レイアウトの仕方〜データバインディングまで) - UIとデ...

iOS Swift

[iOS] 自動的に生成されるMain.storyboardを使わずにUIViewControllerを表示する

XcodeでiOSのプロジェクトを作成すると、デフォルトでMain.storyboardやViewControllerが作成されて、プロジェクトが汚れています。 (初めて作る人や、実験をしたいだけの場合は良いのですが) プロジェクトを進めていくために、不要なViewC...

iOS Swift

[iOS] MVPパターンについて

## iOSアプリの設計パターンについて iOSアプリを開発する場合、単純に実装していくと、UIViewControllerが肥大化する(ファットビューコントローラー)になりがちです。 またそういったパターンの場合、ビジネスロジックに対してユニットテストが実施しにく...

iOS Swift

[iOS] UILabelのつぶれにくさを調整して狙ったUILabelの文字列を全て表示させる

[iOS] UILabelのつぶれにくさを調整して狙ったUILabelの文字列を全て表示させる UILabelを並べて表示する際に、文字列が長くて文字が被る場合があります。 そんな時に、どちらかの文字列を全て表示したいなどの時に調整する方法です。 以下のようなコー...

iOS Swift

[iOS] viewDidLoadでself.navigationControllerがnilになった。

先日、Xcode10.3でビルドしていたプロジェクトをXcode11.3にアップデートしてiOSアプリを更新しました。 更新内容は以下の通りです。 1. Xcodeのバージョンアップ 2. Swiftバージョンアップ(3.3 -> 5.0) 3. 使っているO...

Swift

[Swift] 5.0の新機能 isMultiple

Swift 5.0からisMultipleを使う事ができます。 引数の倍数かどうかBoolで返してくれます。 (i % 3 == 0 などの代わりに使えます) 使用例: FizzBuzz ```objc `gutter:true; for i in 1......

Swift

[Swift] StringInterpolationを使って文字列を生成したり文字列からクラスを生成する

Swiftの文字列補完(String Interpolation)の使い方をまとめます. ## 自作クラスをstring interpolationに対応させる ```objc `gutter:true; // 自作のクラスを文字列内で展開させる extension...

Swift

[Swift] Result型の使い時

Swift 5.0からResult型が導入されました。(最近知りました。) Result型を使うタイミングについて調べていたら、Manual Propagation, Automatic Propagationと言う言葉が出てきて勉強になりました。 Result型はM...

Swift

[Swift] 5.0からの新機能紹介 RawString

Swift 5.0からはRawStringが使えるようになりました。 具体的には以下のような物です。 ```objc `gutter:false; let someNumber = 123 let rawStr = #"Hello "New...

iOS Swift

[iOS] UITableViewのCellをコードでカスタマイズする

iOSのアプリを開発する場合、UIを作成するのにXibを使ってグラフィカルにUIを組んでいく場合と、ソースコードで全て記述するパターンと2種類の方法があります。 (SwiftUIを使わないパターンを想定しています。) Xibを使うとグラフィカルにできる一方、Xibファ...

Swift

[Swift] ネストした辞書の中身を書き換える

Swiftの辞書は値型だそうです。 辞書の中に辞書や配列をネストして入れている場合に、中身を書き換える方法について調べました。 (もっといい方法があったら教えて欲しいです...) ```objc `gutter:true; // 辞書の中の深い部分を書き換え...

Swift

[Swift] 文字列を切り出す方法

Swiftで文字列を切り出す方法はいくつか方法があります。 ここでは、例として5文字目まで切り出す場合を考えます。 (Swift 5.2で検証しています) ## Rangeを使う ```objc `gutter:true; let str = "abcd...

Swift

[Swift] 文字列を改行文字で分割する

改行コードの種類に関係なく文字列を分割して処理したい時に、Swiftでは以下のようにすると思ったように分割できます。 Swift 5.2以降じゃないと動作しないので注意。 ```objc `gutter:true; // splitで分割 _ = "Hel...

Swift

[Swift] 計算結果がオーバーフローになる場合に備える

Swiftでは計算結果がオーバーフローするとExceptionが発生してプログラムが停止してしまいます。 そんな時のために、計算結果がオーバーフローするか調べる関数があります。 ```objc `gutter:true; let val = 1000_000_00...

Puzzle Swift 競技プログラム

[Swift] 競プロのInteractive Sortingを解く

L - Interactive Sorting 「達人プログラマー」に言語の理解を深めるには競プロをやるべし。と記載されていたので、競プロを初めてみました。 (実際には過去問考えるだけですが...) swift5を使いたいので、(Language Test 202...

Swift

[Swift] Optionalのmapについて

Substringを使ったSwiftのコードを見ていて、疑問になる部分がありました。 こんな感じのコードです。 ```c `gutter:true; var str: Substring? = .init("Hello World") fun...

Next>

サイト内検索

人気記事

  • [Python] 電車時刻表の再現シミュレーター
    子供が電車好きなので、近くの路線(上高地線)の電車の場所がわかる[スクリプト](https://github.com/k28/python_time_table_simulation)を作成しました。 上高地線の時刻表データからどの駅を何時に出発するかがわかるので、そ...
  • [SQL] 超絶遅いSQLを高速化した (同じテーブルをjoin)
    何万件もあるテーブル同士をJOINしていて超絶遅かったSQLの実行を早くした話です。 テーブル同士のJOINをしていたり、サブクエリを使っていたりで遅そうだなとは思っていましたが、実際に使ったら遅すぎて使えませんでした。 (少ない環境ならそれなりに動くので、本番で...
  • Raspberry pi で画面が見切れてしまっている時の直し方
    raspbery pi をHDMIでディスプレイに繋いでセットアップしていたのですが 画面の上下左右が見切れてしまっていました。 直し方がわかったので備忘録として残します。 ### 修正方法 以下のファイルを編集する ``` `gutter:false; $ /...

カテゴリー

  • 9cc
  • Android
  • awk
  • Bash
  • C
  • C++
  • DeepLearning
  • Docker
  • emacs
  • Fedora
  • Git
  • Go
  • GoogleHome
  • HTML
  • iOS
  • iPad
  • iPhone
  • Java
  • JavaScript
  • Keras
  • kotlin
  • Linux
  • Lisp
  • Mac
  • macOS
  • nginx
  • Objective-C
  • OS
  • Perl
  • PHP
  • PowerShell
  • Puzzle
  • Python
  • Raspberry pi
  • Ruby
  • Scheme
  • Security
  • sed
  • Shell
  • SQL
  • Swift
  • Ubuntu
  • Unix
  • VB
  • Vim
  • VSCode
  • watchOS
  • Windows
  • Xcode
  • zsh
  • アニメ
  • アプリ作成
  • ウィスキー
  • お酒
  • ガジェット
  • カップ麺
  • キャンプ
  • ゲーム
  • システム管理
  • マンガ
  • ワンライナー
  • 映画
  • 競技プログラム
  • 雑記
  • 書評
  • 正規表現
  • 設計
  • 低レイヤ

ブログアーカイブ

  • 1月 2025 ( 2 )
  • 2月 2024 ( 1 )
  • 1月 2024 ( 1 )
  • 11月 2023 ( 1 )
  • 10月 2023 ( 2 )
  • 4月 2023 ( 2 )
  • 3月 2023 ( 3 )
  • 2月 2023 ( 2 )
  • 1月 2023 ( 5 )
  • 12月 2022 ( 4 )
  • 11月 2022 ( 2 )
  • 10月 2022 ( 6 )
  • 9月 2022 ( 1 )
  • 8月 2022 ( 3 )
  • 7月 2022 ( 2 )
  • 6月 2022 ( 2 )
  • 5月 2022 ( 2 )
  • 4月 2022 ( 9 )
  • 2月 2022 ( 2 )
  • 1月 2022 ( 3 )
  • 12月 2021 ( 2 )
  • 11月 2021 ( 2 )
  • 10月 2021 ( 3 )
  • 9月 2021 ( 7 )
  • 8月 2021 ( 1 )
  • 7月 2021 ( 5 )
  • 6月 2021 ( 4 )
  • 5月 2021 ( 4 )
  • 4月 2021 ( 8 )
  • 3月 2021 ( 5 )
  • 2月 2021 ( 6 )
  • 1月 2021 ( 13 )
  • 12月 2020 ( 7 )
  • 11月 2020 ( 12 )
  • 10月 2020 ( 9 )
  • 9月 2020 ( 2 )
  • 8月 2020 ( 10 )
  • 7月 2020 ( 3 )
  • 6月 2020 ( 6 )
  • 5月 2020 ( 9 )
  • 4月 2020 ( 8 )
  • 3月 2020 ( 9 )
  • 2月 2020 ( 9 )
  • 1月 2020 ( 8 )
  • 12月 2019 ( 3 )
  • 11月 2019 ( 5 )
  • 10月 2019 ( 6 )
  • 9月 2019 ( 2 )
  • 8月 2019 ( 13 )
  • 7月 2019 ( 10 )
  • 6月 2019 ( 10 )
  • 5月 2019 ( 8 )
  • 4月 2019 ( 8 )
  • 3月 2019 ( 9 )
  • 2月 2019 ( 13 )
  • 1月 2019 ( 17 )
  • 12月 2018 ( 13 )
  • 11月 2018 ( 13 )
  • 10月 2018 ( 20 )
  • 9月 2018 ( 13 )
  • 8月 2018 ( 10 )
  • 7月 2018 ( 21 )
  • 6月 2018 ( 13 )
  • 5月 2018 ( 23 )
  • 4月 2018 ( 27 )
  • 3月 2018 ( 25 )
  • 2月 2018 ( 23 )
  • 1月 2018 ( 16 )
  • 12月 2017 ( 17 )
  • 11月 2017 ( 12 )
  • 10月 2017 ( 13 )
  • 9月 2017 ( 13 )
  • 8月 2017 ( 21 )
  • 7月 2017 ( 9 )
  • 2月 2017 ( 2 )
  • 1月 2017 ( 1 )
  • 10月 2016 ( 3 )
  • 8月 2016 ( 2 )
  • 7月 2016 ( 4 )
  • 6月 2016 ( 2 )
  • 10月 2014 ( 1 )
  • 9月 2014 ( 2 )
  • 4月 2014 ( 1 )
  • 3月 2014 ( 1 )
  • 2月 2014 ( 1 )
  • 1月 2014 ( 3 )
  • 12月 2013 ( 1 )
  • 5月 2013 ( 1 )

自己紹介

自分の写真
k28
休日は子供と遊んだり, プログラミングしたりしてます. GitHub:https://github.com/k28
詳細プロフィールを表示
© 2013 - 2019 Scratch book . プライバシーポリシー. Powered by Blogger.