2024年になんで2013年のMacを動かさなあかんねん、というのはあるのですが、そういう状況になりました。 そして、色々あって安定しなかったMacBook Airが安定するようになったのでそのご報告です。 以下のエントリの完結編になります。 sironekotoro.hateblo…
行ってきましたYAPC::Hakodate 2024 yapcjapan.org 現在、うちは経理の仕事をしております。 月初には前月分の売上・仕入・経費などの計上があり、(月の初めの)土日も働いております。 まして10月といえば四半期決算。通常より厳しいスケジュールです。 厳…
PlanetScale というサーバレスDBを使ってみました。 以下のQiita見てサインアップしました。 多少画面遷移は変わっていますが、なんとかなるレベルです。スクショ貼ってくれるのは本当にありがたい・・・ あ、無料プランで登録したのですがクレカの登録は必…
yapcjapan.org 3年ぶりにリアル開催のカンファレンスに参加してきました。 3年、長いですね。 この間、Perl入学式 in 東京 のスタッフとして、id:xtetsuji や godan さんと講義をオンライン配信したり、小規模な対面形式の講義を行ってきました。 お二方は今…
母のスマホ購入 元々、母からスマホを利用したいということを聞いていました。 職場(保育園の看護師)や民生委員の活動、友達との集いで LINE の利用が多いとのこと。 LINE を使うためにスマホに変えたいということでした。 母は iPad を利用してニュースや…
2022年を振り返って お仕事が忙しかったりなんなりで、2ヶ月も空いてしまいました。 Perl入学式 in 東京の講師と、テキストの改修を担当しておりました。 今年は春、秋と開催し、オフラインでの講義に切り替えました。 やはり近くに講義を受けている方がいて…
13章もパラパラっとページをめくってみた感じ、文章がメインぽいですね。 13.1 邪悪な構造に陥りがちな User クラス 面白い。いかにもありそうな気がする。 User というログインユーザーを示すクラスを作る そこにIDや名前などのプロパティを追加していく Us…
久々に 経理の仕事において、四半期決算ってのは本当に大変なお仕事で、ほぼ1ヶ月持っていかれます。 翌月はそのリカバリでボーッとしているという感じでした。 (これはどうにかして負荷を軽減したいところ・・・) その余波で「良いコード/悪いコードで学…
何度目かの環境再構築中 色々あって、業務で利用している Macbook Pro 2017 をリカバリすることにしました。 ディスクユーティリティで SSD を一旦まっさらに。 そこに macOS Monterey をネットワーク経由でクリーンインストール。 ちょうど経理の月初作業も…
macOS 起動時に autossh を実行したい autossh という ssh のラッパーソフトがあり、sshが切れたら自動的に繋ぎ直してくれるという便利なやつです。 autossh は homebrew で入れられます。 これを ターミナル起動時 ではなく、macOS の起動時に自動実行させ…
第9章から文字比率が高くなり、そのまま書き出すと文章を書写するだけになってしまう・・・ということで、小見出し&ときどき感想って形式で。 目的駆動名前設計 名前から目的や意図が読み取れることを特徴とします。 10.1 悪魔を呼び寄せる名前 例として挙…
ここはコードがほとんどないというか、あっても見てすぐに動作が予測できるものばかりなので、さらっと。 9.1 デッドコード または到達不能コード。 本文では絶対に通らない else 文の例で表されている。 コードの可読性を損なうので、削除。 9.2 YAGNI原則 …
リスト8.7 ,リスト8.8 物理攻撃クラス&武闘家の物理攻撃クラス Mouse での継承で override を使うの初めて。 というか、それ以前でもなかったかも。 親クラスの同名のメソッドを上書きして使いたい時に使うもの、程度の認識です。 今回は差をわかりやすくす…
ちょっと時間あいてしまいましたあが、のんびりやっていきます。 来月7月はお仕事が忙しくなる予定なので、やっぱり時間が空いてしまうのではないかなぁ、という感じです。 8章は6章なみに長くて盛り沢山だし・・・ しかし、現実逃避的に学習が進む可能性も…
リスト7.1 「牢屋の鍵」の所持を調べるコード まずは例示コードを愚直に。 #!/usr/bin/env perl use strict; use warnings; use feature qw/say/; use constant { false => !!0, true => !!1 }; my $has_prison_key = false; my @items = qw(steal_sword iro…
一旦まとめ 7章を目前に、どの内容をどこで学んだんだっけ・・・?というのを自分なりにまとめておきたくなりました。 コード書いたからか、結構覚えているなーという感じです。 あと、本を先に進めたい!という気が勝っておざなりにしてるところがあるなぁ…
リスト6.62 フラグ引数を使っている例 damege(true, damegeAmount); 確かに、これだけでは何が true なのかはコードを追いかけて関数の中身を見ないとわからんよなぁ。 ということで、それを「メソッドを分離する」で改良したところから。 ここクリックして…
リスト6.51〜6.54まで 一気にまとめたコードがこれ。 途中でしれっと出てくる Money クラスの add メソッドも書いております。 ・・・Perl で書き換えながらめっちゃ書きにくさを感じることがあります。 このコードだと、interface の HotelRates の中で分岐…
「このコード、動いたけど納得いかないかっこ悪い。絶対にもっとまともな実装の方法が有るはず」という直感は外れたことない気がする— sironekotoro (@sironekotoro) 2022年6月13日 という直感があって、その解が得られるタイミングは往々にして年単位だった…
リスト6.41 と 6.42 Gold会員とシルバー会員の判定メソッド あー、こういうコード書いた覚えあります・・・ ゴールド会員の判定ロジック if ( 100000 <= $history->total_amount ) { if ( 10 <= $history->purchase_frequency_per_month ) { if ( $history->…
脚注からヒントを得る ここしばらく「良いコード/悪いコードで学ぶ設計入門 ―保守しやすい 成長し続けるコードの書き方」をやっております。 gihyo.jp その中でインターフェースって何?ということでググりつつ、適当にネットから拾いつつやっていたのですが…
早期 return でネスト解消 まぁ、これは書くまでもなく、わかる。 というか、例示コード書くのも辛い・・・ if ( $a == 1 ) { if ( $b == 2 ) { if ( $c == 3 ) { } } } 的な。 これに else や elsif が入ってくるとさらにカオスになるという。 ネストの深淵…
リスト5.19 C# の出力引数 ここでサンプルコードが C# になってますが、まぁなんとか読める気がします。 関数に参照渡しを行って宣言元の変数を変えるというコードです。 Perl だとこんな感じですかね。 #!/usr/bin/env perl use strict; use warnings; sub …
祝!Perl 5.36 ! ということで、初夏のはじめ頃のイベントである Perl の新規安定版リリースです。 metacpan.org うちは(anyenv経由の) plenv で複数の Perl のバージョンを扱っているので、 plenv での作業を書いておきます。 誰のためってもちろん、来…
目的を見失いがち そもそも、例示コードを自分の好きに発展させて満足するのが目的ではない・・・ので、そういうのはほどほどに本を読み進めることにする。 5.1 staticメソッドの誤用 Java にはインスタンスを生成することなく、メソッドを呼び出す方法とし…
想定外に時間ができた2022年5月 今は経理のお仕事メインでやってるのですが、5月は月初の連休のため月次の処理が後ろ倒しになります。 しかし、親会社への報告とか後ろ倒しにできないものもあり、気合を入れてゴールデンウィーク前から準備し、ゴールデンウ…
リスト4.1 変数tmpへの度重なる再代入 サンプルコードから書かれてないところを想像して書いていくの、楽しいですよね。 ってわけで、Perl で書いてみます。 これまでいろんな方法で Perl のオブジュエクト書いてきたけど、Function::Parameters でやります…
この調子でやっていくの・・・? やっていきます。 リスト3.14 金額ではない値を渡せてしまう final int ticketCount = 1 // チケット枚数 money.add(ticketCount); とまー、金額の足し算のメソッドなのに、予期しない引数がきちゃうかもしれないよね?とい…
リスト3.1 金額を表すクラス 前回に続いてやっていきます。 sironekotoro.hateblo.jp そして早速なやむ。 インスタンス変数しか持っていない、典型的なデータクラスです。 Java でいうところのインスタンス変数ってのは、Perl のオブジェクトでいうところの…
巷で話題の本(2022年春現在) gihyo.jp DMM Books が 30% ポイント還元をやっていたので、他の本と一緒に購入しました。 なんで読もうと思ったか 自分のコードが良いコードではない、という漠然とした不安がありました。 また自分の書いたコードも保守性が…