2023-06-01から1ヶ月間の記事一覧
なぜやるか 人生を重く捉えすぎたり、真面目に生きすぎる事で、自身を追い詰めてしまった 休職をすることにまでなってしまった そうなったのなら、それを学びにして、今後を改善したい 休職になったことをきっかけに哲学・生き方・思考法を学んだものをアウ…
新しいネットワークの形 1-6-2 CDNとは Content Delivery Networkの略称で、画像・動画・HTML・CSSなど、webコンテンツで使用される、色々なファイルを大量配信するために最適化されたインターネット上のサーバーネットワークのこと。 オリジナルのwebコンテ…
集約とは ドメイン駆動設計において、一つ以上のエンティティを束ね、単一のトランザクションの枠内で整合性を保つための仕組みです。 例えば、銀行口座とそれに紐づく取引履歴エンティティがある場合、これらを銀行口座集約として束ね、取引が行われた場合…
MSW (Mock Service Worker) MSW はブラウザのネットワークリクエストをインターセプトし、モックのレスポンスを返すことができるツールです。これにより、実際のサーバーと通信することなく、API のレスポンスをシミュレートすることができます。 コンポーネ…
DockerとDocker Composeのインストール DockerとDocker Composeを使用するために、まずはこれらのツールをあなたのマシンにインストールします。これらのツールはDockerの公式ウェブサイトからダウンロードできます。 Dockerfileの作成 ルートディレクトリに…
使うライブラリ・パッケージと概要 React, TypeScript, Storybook: ReactはJavaScriptライブラリであり、ユーザーインターフェイスの構築を容易にします。TypeScriptはJavaScriptのスーパーセットで、型安全性を提供し、バグを早期に発見し、コードのリーダ…
前提として成長の定義は できなかったことを、できるようになること Growth(成長)マインドセットとは 会社の成功に必要なスキルを自分から積極的に学び、習得しようとするマインドセット ある人とない人の違い 新しい挑戦に対して、チャンスと捉えるか、それ…
PDU 各階層で細かく分割されて、データは処理される その一つの塊をPDU(Protcol Data Unit)と呼ばれる ヘッダーとペイロードで構成されている PDUは処理される階層により名称が異なります。 アプリケーション層のPDUは「メッセージ」 トランスポート層のPD…
例えばこちらですと、test1 test2 が表示されている(見える)ことを確認しています。 describe('TopPage', () => { test('デフォルト(テストケース)', async () => { render(<Default />); await waitFor(() => { expect(screen.getByText('test1')).toBeVisible(); </default>…
見るたびに何となく理解しては、時間が経つと忘れてしまっているのでまとめます。 インストール npm i lodash @types/lodash コード import { values } from "lodash"; const obj = { a: 1, b: 2, c: 3, }; const valArray = values(obj); デベロッパーツー…
storeの中にreducerがある なので実際の実装では、configureStore内にreducerを設定する sliceにはstate reducer actioncreatorがある sliceの中にreducerがあるので、sliceからreducerを取り出して、storeに入れる なので実際の実装では、exportの際にreduc…
const Template = (args) => <Button {...args} />; がよくわからなかったので調べました まずそれぞれの関係性の把握から StorybookとTemplate関数、そしてButtonコンポーネントの関係を示す図 Storybookは、異なる状態を表現するためのargsをTemplate関数に提供します。 Templa</button>…
Chapter0 コンピューターは電気ものを考える 電気のオンオフでものを考えるので、電気が必要である 電気を使ってコンピューターはどのように考えるのかを知ることが大切 Chapter0-1 ち”びっと”だけど広がる世界 コンピューターはオン=1 オフ=2としか理解…
1-2-2 プロトコルは階層で整理する プロトコルで定義されている通信機能は、その処理に応じて階層構造になっている 送信元では、階層構造の上から順にデータを処理する パケットを受け取ったコンピューターは、その逆に下から上の順に、送信元のコンピュータ…
1-2-1 プロトコルで決まっていること 物理的な仕様 LANケーブルの素材 コネクタの形状 ピンアサイン(ピン配列) ネットワーク etc 目に見えるものは全てプロトコルで定義されている 送信相手の特定 ネットワークの世界でも住所を割り当てて、送信相手を区別…
1-1-2 回線交換方式とパケット交換方式 回線交換方式 イメージは固定電話 回線を占有してしまうため無駄が多い パケット交換方式 パケットは小包という意味で、データを小さい単位に分割してネットワークに流す ヘッダーという情報をくっつけて流す ヘッダー…
15-1 軽量DDDに陥らないために 軽量DDDとは ドメイン駆動設計に登場するパターンのみを取り入れること コードの書き方というパターンを主題としていることで、開発者だけ完結してしまい、実践しやすく、短期的にプロダクトのコードにある程度の秩序をもたら…
14-2 アーキテクチャの解説 ドメイン駆動設計と同時に語られることの多いアーキテクチャ レイヤードアーキテクチャ ヘキサゴナルアーキテクチャ クリーンアーキテクチャ ドメイン駆動設計においては、ドメインが隔離されることが重要である アーキテクチャに…
14-1 アーキテクチャの役目 ドメイン駆動設計において、アーキテクチャは主役ではない 14-1-1 利用なUI ドメインオブジェクトに記載されるべきルールやメソッドがユーザーインフェースに記載されている状態を指す 14-1-2 ドメイン駆動設計がアーキテクチャに…
13-2 仕様とリポジトリを組み合わせる リポジトリの検索のメソッド、検索の処理の中には重要なルールを含むものがある 重要なルールを仕様オブジェクトに記述し、リポジトリに引き渡すようにする プレミアムユーザであることを表す仕様オブジェクト export c…
13-1 仕様 オブジェクトの評価は単純なものならメソッドで定義されるが、すべてが単純なものではなく、メソッドとして定義するべきものでないものもある アプリケーションサービスに記述されがちだが、オブジェクトの評価はドメインの重要なルールなので、サ…
集約とは オブジェクト指向プログラミングでは複数のオブジェクトがまとめられ、一つの意味を持ったオブジェクトが構築される オブジェクトのグループには維持されべき不変条件が存在する オブジェクトのデータ変更の操作を無制限に受け入れてしまうと不変条…
10-4-2 トランザクションスコープを利用したパターン トランザクション処理はデータベースに限ったことではない トランザクションスコープとは、一連の操作が全て成功するか、全て失敗する(ロールバックされる)ことを保証する範囲のことを指します。これは…
10-4 トランザクションによる防衛 トランザクションは一貫した状態を保つために、相互依存的な操作の完了ないし取り消しを保証します 通販サイトで商品を購入するときにポイントを使うとします システムはまずユーザの使用しようとしたポイントを減らします …
10-1 整合性とは 矛盾がなく一貫性のあること・ズレがないこと 注文書で例えると ヘッダ部かボディ部のどちらかが欠けても注文書は成り立たない ヘッダ部がないと誰に届ければいいかわからないし、ボディ部がないと注文明細を届け先がわかっても何を届ければ…