【Console Application】ファイルとデータベース 160【学習記】
ファイルとかデータベースの話🤤
→ Java や C と時代が離れているせいか文法が違うので調べないと危ない
・可視性は省略すると public で public って書くと IntelliJ が「冗長」って文句言う😞
・継承可能クラスは open と付ける
・コンストラクタを private にするとインスタンス化できなくなる
・コンストラクタはクラス名ではなく 'fun' 句無しで init
→他の言語でクラス名コンストラクタから別途 init を呼ぶ形のものは移植に注意
いやしかし、当初移植しながらやろうかなって考えてたの、ほんとヤバかったなって思う🙄
Java でちゃんと使えるようになるまで150以上も勘定が進んでるわけでそのままやってたら間違いなく混沌だったかねぃ😞
ま、いいや、進めよっと🤤
MathUtil
それじゃ移植開始するぽ🤤
まずは使わないって分かってる乱数生成のやつから🤪
……… Kotlin の乱数ワカンナイ🤪
普通に Math.random あるけど欲しいのは seed 指定しないで毎回違う乱数の方なので記事にある SecureRandom を採用かな🤤
doc は勿論コピペ🤪
Java と合わせる為に com.example パッケージ作って移動したら build.gradle でまたエラーになったけどクラス名をちゃんと合わせて階層名足したら通った🤤
こういうとこはリファクタリングしてくれないので今ひとつだなって思う🙄
Console
初期に随分苦労して結局 jar で持ってくるのを諦めた readLine を含むライブラリ🤤
scan 系は readLine が有るので排除してもいいかな、多分🤔
………🤔
builtin で呼べるから変に再定義するより無い方がマシかなこれは🤤
そういう意味では readLine も含める必要が無いんだけどこれは学習用にあれこれやってこの形になったやつだからこのまま入れるっぽ🤤
クラスの doc もコピペコピペ🤪
AnalyzeArgs
クラスの移植が一番大変🙄
こんなとこかな🤤
そいや Kotlin なら main で AnalyzeArgs のガワ作らなくて良いんだっけか、そういうとこは後発言語のイイトコロよね☺️
次回は
stdlib からかな🤤
その後は DB も CSV もファイル確認してるから file になると思うけどそこまで進むかな…?🙄🚩