0206
仕事は何してたっけなあ。なんか最近は仕事終わってから寝る前にもコードをいろいろ書くので仕事で何やってたかが思い出しづらい。単なる加齢の可能性はある。
ああそうだ、勉強会資料を作ろうと思ってちょっと着手したんだけど、リアクティヴプログラミングってなんのためにあるんでしたっけ、という疑問に自分がうまく答えられないことに気がついた。いやまあ、何ができるかとかはもちろん知っているけど、これでないとできないことってなんかあるんでしたっけ……みたいなところで詰まる。もちろんRxのほうが表現力はほぼ純粋に高いのだから、そういう例はいくらでも構成できるだろうけれど、現実で使うことがどの程度あるかというと、怪しい。すくなくとも普通に非同期WebAPIを呼び出すだけならPromiseで足りるし、そのくらいのほうがフットワークが軽くていい。なのでそういう「動機」ベースの説明をするとよくわからなくなりそう。まあ、Combineって追加されたんでどう使えばいいですかね、みたいな「機能」ベースの説明をして、「あ、そうそうこれはRxとだいたい同じですね」みたいな感じのことを言えばだいたいいいかなあ。その後で「こいつ思ったほどSwiftUIとなじまないですね」という話をするんですが。
夜はコードを書こうとしたんだけど、なんかXcode11.2の不具合のせいで思うように進まなかった。11.3だと問題ないらしいんだけど、11.2までのSwift Package ManagerはなぜかBuild Configuartionが"Debug"か"Release"のどちらかの名前であることを前提しているらしくって(いまだに信じられていない、そんな狂った実装があるか?)、そこから逸脱するとうまく依存関係を読み込んでくれないらしい。仕方がないのでXcodeをアップデートしているが、遅いのでだるい。
暇だったのでSwiftLintとかSwiftGenを導入してみた。こいつは所詮試作機なので別に必要ないのだけど、まあ設定とかはいまのうちに作っておくと使い回せそうだしね。
明日は自宅で仕事。ちょっと余裕ありそうだから、仕事のプロジェクトもXcodeGenにできないか試してみようかなあ。