タグ

2020年12月16日のブックマーク (2件)

  • neue cc - UnitGenerator - C# 9.0 SourceGeneratorによるValueObjectパターンの自動実装とSourceGenerator実装Tips

    ValueObjectは好きですか?私は大嫌いです。いじょ。 ざっくり言えばプリミティブ型に専用の型を付ける教義です。例えばUserIdをintとして扱っているとTeamIdと取り違えるかもしれないし、Hpに突っ込んでしまうかもしれない。StrengthとIntelligenceとAgilityとSpeedは別物なのだから全部intじゃなくて区別して欲しい、そうじゃないと間違った演算しちゃうぞ、と。まぁそういう自体を避けるために、それぞれラップした個別型を作るのです。int strengthじゃなくてStrength strengthだぞ、と。 これは一見正しく実際正しいのですが、問題もあります。一つに面倒くさい。ラップしたctorを作るのだけでも定形でウザ、と思いますが、更に等値とか実装するのは面倒くさい。また、そのままだと計算できなくなるので、算術演算のために生の値を.Valueで取り

    masaru_b_cl
    masaru_b_cl 2020/12/16
    なるほど。“生成コードがC#コンパイラのメモリ内で完結していることです。” / あと本題については、演算子オーバーロードできるC#ならではの旨味って感じがあって良い。hoge.Valueはたしかにうざいもの。
  • 知らないシステムを孤立させてしまった話 - Qiita

    何事もなく進む作業。 今回は一部機器繋ぎこみだけなので、そろそろ作業の終わりも見えてきたとき、一の電話がかかってきた。 一の電話 電話の表示を見ると、その時の案件リーダの方の名前が表示されている。 このタイミングでかかってくる電話に良いことがあったためしがない。 でたくない、、、でたくないが、意を決して出る。 私:「どうしましたか?」 リ:「お客様から電話があって監視からエラーが出ていると連絡があったけど何かやった?」 私:「今、L3スイッチを繋いだところなのでリンクアップのメッセージとかじゃないですか?」 リ:「うちのシステムではなく、別のシステムの監視からエラーが出続けているそうなんだけど。」 私:「(別のシステム!?)」 自分のシステムならともかく、別のシステム!!! しびれとも寒気ともいえぬ、血の気が引く感覚が全身を駆け巡りました。 惨劇はなぜおこってしまったのか すぐに原因の

    知らないシステムを孤立させてしまった話 - Qiita
    masaru_b_cl
    masaru_b_cl 2020/12/16
    設定内容や手順のレビューが行われたかどうかも気になるところ