mike-neckのブログ

Java or Groovy or Swift or Golang

セキュア・バイ・デザイン 2 章

読書会に参加するので、まとめておくだけ

  • 2.1 ビジネスルールの観点における完全性の問題
    • 不正なデータ入力によって損失が発生してた
    • 不正なデータに対するサブシステムの振る舞いが異なっている
  • 2.2 浅いモデリング
    • 最初にモデリングできたと思ったあとに深く考えることをやめたその場しのぎのモデリング
    • 冊数、IDなどを Int 等の抽象的な型で表現できていることで満足(暗黙的に表現した概念)
    • 型がドメインでどのように機能するのかは理解できてない
  • 2.3 深いモデリング
    • 概念の表現ではなく概念の理解に向かう
      • 下限・上限、許される文字など
    • 専用の型を用いる
  • まとめ
    • モデルの不完全性から不具合=セキュリティ上の欠陥が生じる

2021 年も終わりの近況

2021 年は何もできなかった。その多くはうつ病のためにやる気が無くなってたことが原因である。それは今も変わらない。

万年うつ病がひどくなったのは、仕事をさがしている間に何度か遭遇した突然連絡がとれなくなる企業のおかげである。

不採用にしたいんだが、企業が断ったことにしたくないのか、求職者から辞退の連絡を入れてもらえるようにダマを決め込んで急に連絡が取れなくなる。

このような企業のサービスは顧客の方を向いてなさそうで利用するのがこわいと思う。

今は、そんなうつ病機関中でもちょいちょい生存確認の連絡をくれた企業で働いている。

なお、契約の関係上個人事業主になっている。


読んだ本

全然読んでない。

最近になって少し心の余裕ができたので、次の本を読んだ。

今は次の本を読んでいる。初学者の人は増田さんの 『現場で役立つシステム設計の原則』 の次に読むと良いかもしれないが、用語として エリック・エヴァンス本 も読んでおいたほうがよい…のだが、そんなことしてたらいつまで経っても読み始められないので、読みたいと思った時に読むのが良いだろう。


体重

うつ病を生き残るのに大量に食ってたら太った。 83kg になってた。


プログラム

全然書いてない。

graalvm plugin の方も対応しなければ行けないのだが、うつ病でそれどころではない

graalvm-native-image-plugin の v1.4.0 をリリースしました

表記の通り、 Gradle プラグインの graalvm-native-image-plugin の v1.4.0 をリリースしました。

plugins.gradle.org

このリリースでは以下の機能が追加されました。

  • シェアードライブラリーをビルドする機能(Java11 以降のみ)
  • 上記の機能追加に伴う、 nativeImage#setMainClass(String) メソッドの非推奨化
続きを読む

graalvm-native-image-plugin を使用している際に、 The command line is too long というエラーメッセージが表示される場合の対応方法

Windows 環境にて、 graalvm-native-image-plugin を利用している際に、タイトルにあるようなエラーが発生することがあるようです。

github.com

どのような形にするのが良いか解決方法を検討中ですが、一時的に回避する方法として、 jar の Class-Path アトリビュートに jar ファイルのリストを記述する方法が簡単な回避方法かと思われるので、そちらについて紹介します。

時間のない方のために 3 行でまとめると

  • Windows でコマンドが長いためにエラーになるケースがある
  • native-image コマンドの -cp オプションではなく、 jar ファイルの Class-Path 属性で依存ライブラリーを指定する
  • プラグインでこの方法を反映させるかどうかを悩んでる(対応させるのは可能だけど、わりと泥臭くて黒魔術っぽいコードになりそうな予感)
続きを読む