Docker PHPにcomposerからライブラリ を入れようとしたらハマった話し。

composer自体はサクっと入る Dockerfile FROM php:7.3-fpm COPY --from=composer:latest /usr/bin/composer /usr/bin/composer ライブラリ を入れる $ docker image build . $ docker container run -d <imageID> $ docker exec -it <containerID> bash $ composer require <package> とする</package></containerid></imageid>…

Docker上のjupyterでselenium.webdriver.Chromeを動かす

seleniumとchromedriverのインストール $ apt install -y chromium-browser $ apt-get install chromium-chromedriver $ pip install -U selenium ダメなケース from selenium import webdriver browser = webdriver.Chrome() browser.get('https://...') イ…

MediatorとObserverの違い

復習したのでメモ。 Mediator mediatorは状態が変更された時にmediator自身に変更を通知するオブジェクトを返す。 実装のイメージ。コンパイルは通らない。 class mData{ Mediator mediator; change(){ mediator.notify(); } } class Mediator { mData mData…

深さ優先探索の探索順配列モデルの生成

お勉強がてら書いてみた。 こういう数値リストを [5, 20, 22, 35, 64, 71] 組み合わせごとの探索順のツリーにする。 言語はvar_dumpが綺麗なPHPで。

DDD 各役割のメモ書き

DDDの各コンポーネントの役割のメモ書き。 Entity アプリケーション上で登録や変更が行われるような情報を指す。アプリケーションから一意に識別できる必要がある。RDBの行データのようなイメージ。 exp. User, Order, Product ValueObject Entityを構成する…

ValueObjectについてのメモ書き

ValueObjectとは? クラスプロパティにプリミティブ型ではなくオブジェクトとして定義する。 class User{ int volume; // プリミティブ型 Volume volume; // ValueObject } メリット整理 型安全、null安全、値安全を構築しやすい コンストラクタでフィルター…

浮動少数と丸め誤差

floatやdouble型をloopカウンタや終了条件にすると意図したループ回数にはならない時もあるので注意。 丸め誤差 限られたビット数で浮動小数点数を表現した時、実際の値と近似した値で誤差が出る。 float f1, f2; f1 = 0.1f; f2 = 0.100000001f; printf( " %…