2019-01-01から1年間の記事一覧

Mac で Cコンパイラ 9cc の写経をしたい

言語プロセッサの勉強に、途切れ途切れではあるが Swift コンパイラにコントリビュートしてみたり、 Writing An Interpreter in Go を写経してみたりしていた。 そんな折、Rui Ueyama さんが 低レイヤを知りたい人のためのCコンパイラ作成入門 という平易な…

Playgroundを使ってUIの実装したら便利だった

Playground を使って UI の実装をしたら便利かつとても簡単だったので備忘録として。 普段書き捨てのコードやコーディングクイズの問題を Playground で実装するというのはよくやるのだけど、UIの実装で使うというのはほとんどやったことがなかった。ここで…

Swift で C style for loop を書きたい

最近時間が取れる時に LeetCode をやっている。LeetCode はアルゴリズムの問題を解ける Web サービスで、課金するとシリコンバレーの有名企業のコーディングインタビューの過去問が解けたりもする。*1 自分が普段一番使うプログラミング言語が Swift なので…

困った時に iOS 開発のドキュメントやサンプルコードを探す方法

iOS

iOS アプリの開発をしていて行き詰まると Google 検索することがよくある。というかほぼ毎日やっている。検索結果として Stack Overflow や Qiita, 個人のブログ記事を見つけて、困っていた問題が解決する場合がある。解決したい問題がフレームワークやライ…

fastlane deliver で Multiple App Store Connect Teams found; unable to choose, terminal not interactive! が出た時の解決方法

CircleCI 上で実行した $ fastlane deliver で Multiple App Store Connect Teams found; unable to choose, terminal not interactive! というエラーが出た。 先に結論を述べると、職場で利用している Apple Developer Program のアカウントが複数のチーム…

Web API に依存するモジュールのテストに使う extension

iOS

環境 Xcode 10.1, Swift 4.1 Web API に依存するモジュールのテスト iOS アプリ開発において、 Web API にリクエストするモジュールのユニットテストを書くことは良くあると思う。その場合 Web API にそのままアクセスするテストを書くと、返す値によってテ…

iOS アプリのバージョンをインクリメントするためのスクリプト

iOS

iOS アプリをストアにリリースする時にはバージョン番号を上げる作業が必ず発生する。その際に Info.plist を手作業で更新するのは手間だしミスが発生する余地があるので、 Python のスクリプトを使って自動化している。以下のスクリプトを アプリのプロジェ…

アメリカで契約したAT&TのSIMを解約するために国際電話をかけた話

tl;dr アメリカで契約した AT&T の SIM を解約するために、AT&Tのカスタマーサポートに国際電話をかけた。自身のアカウントを認証するために、氏名、電話番号、 SIM カードの No. が必要だった。 顚末 昨年 WWDC で渡米した際に現地で AT&T の SIM を契約し…

iOS で opencv_contrib のモジュールを使う

iOS で opencv_contrib のモジュールを使う方法を調べた。 OpenCV 本体を使いたければ Cocoapods でビルドするだけだが、opencv_contrib に含まれている拡張モジュールを使う場合、opencv2.framework をゼロからビルドして、それをプロジェクトに追加する必…

2018年のふりかえり

年が明けてそろそろ一週間経とうとしているが年末書けなかったのでざっとふりかえる。 アウトプット ブログ 大小合わせて 15 個記事を書いた。考えたことを文章にすることで抽象化する練習やアウトプットへの心理的な障壁を下げたい気持ちがあり、少しは目的…