2021-01-01から1年間の記事一覧
最近リファクタをしていて、同じオブジェクトを使ってencodeとdecodeをする際に、必要なケースがでてきたので書きました。 状況 Property wrapperを使った解決 Equatableへの応用 サンプルコード 状況 以下のHogeのように一部のパラメーターでdecodeはしたい…
DateFormatterに関しては古くからあり、おおよそのプロジェクトで使われているイメージですが、DateComponentsFormatterやRelativeDateTimeFormatter(iOS13+なので最近)については体感としてあまり使われておらず、特に歴史のあるプロジェクトでは独自のform…
6月23日(水)にPotatotips #74に参加させていただき、iOS枠で発表しました。 potatotips.connpass.com ちょうどWWDCの後だったこともあり、SharePlayやGroup Activitiesなど、自分がキャッチアップできていない部分のお話を聞けて、とても楽しかったです。 An…
iOS開発をしていてデバッグする際に、コピーしたり、"を外したりするのが地味にめんどくさいので作ってみました。 今回は、SwiftのStringをopenurl hogeのようなコマンドで開くのを目指します。(Swift以外でもほぼ同じです) openurlコマンドの作成 コマンド…
普段からVimを使うようなその道の人には有名かと思いますが、XcodeやらVSCodeやらを使う人々にとっても、おすすめできるので書いてみました。 自分もiOSやる前はEmacsユーザーで、正直あんまりVimは慣れていないのですが、それでも使いやすいです。 git merg…
iOS開発でログを利用する場合、自前のロガーを利用したり、OSSを利用する選択肢が多いですが、標準のOSLogのAPIが新しくなり、iOS14以降で使いやすくなりそうなので、紹介します。 printと比べて何が良いか OSLogを利用した出力 Loggerを用意する ログを出力…
NSObjectは自身がEquatableなので、==やEquatableに対するメソッドが呼べたりするのですが、デフォルトの動作はポインタを比較するSwiftでいう===相当なので気をつけましょう。 final class Hoge: NSObject { let value: Int init(_ value: Int) { self.valu…