Skip to content

Instantly share code, notes, and snippets.

@fujimisakari
fujimisakari / abstract_factory_pattern.md
Last active August 20, 2021 09:05
AbstractFactoryパターン

AbstractFactoryパターン

HeadFirstデザインパターン Index

パターンについて

クライアントが具象クラス特定することなく一連のオブジェクト作成できるようにします。
そのため、具体的なクラスをクライアントから隠蔽でき容易に切り換えることができます。

HeadFirstデザインパターンでの定義

@fujimisakari
fujimisakari / observer_pattern.md
Last active August 11, 2017 10:19
Observerパターン

Observerパターン

HeadFirstデザインパターン Index

パターンについて

状態が変化したときにオブジェクトへ通知します。
あるオブジェクト(通知元)の状態変化を不特定多数のオブジェクト(通知先)に知らせたいときに利用します。
監視対象オブジェクトを中継させることで、通知元オブジェクトは通知先オブジェクトのことを知らなくても定義できます。

HeadFirstデザインパターンでの定義

@fujimisakari
fujimisakari / decorator_pattern.md
Last active March 3, 2023 11:30
Decoratorパターン

Decoratorパターン

HeadFirstデザインパターン Index

パターンについて

新しい振舞いを提供するために、オブジェクトをラップします。
オブジェクト毎に機能を追加したいときや機能を動的に付け外ししたいとき、同じインターフェース
を持つオブジェクトで被せるようにすることで、既存クラスに手を加えずに機能追加ができます。

@fujimisakari
fujimisakari / strategy_pattern.md
Last active August 11, 2017 09:50
Strategyパターン

Strategyパターン

HeadFirstデザインパターン Index

パターンについて

Strategyパターンは交換可能な振舞いをカプセル化し、委譲を使って使用すべき振舞いを決定します。
主要な処理を行っているコードの中で一部動的に振舞いを変更させたい場合に利用し、
コードの中で動的に振舞い変更したい場合は、if文なので条件分岐しがちになりますが
Strategyを利用することで主要な処理に対して影響を与えず、1つのステートメントで動的な振舞いを定義することができます。

@fujimisakari
fujimisakari / head_first_design_pattern.md
Last active October 22, 2023 06:14
HeadFirstデザインパターン 学習メモ

プログラミングErlang - 分散プログラミング

10章あたり

分散プログラム

分散プログラムとは、ネットワークを構成するコンピュータで動作するように設計されたプログラムのこと。
Erlangの分散プログラムは、信頼できる動作環境でどのErlangノードでも他のノードに対して
メッセージパッシングだけを使ってお互いの動作の調和をとることができる

プログラミングErlang - 並行プログラミングにおけるエラー

9章あたり

エラー処理に関わる概念

並行プログラミングにおけるエラーを理解するには以下の3つの概念を理解する

プロセスリンク

  • リンクは2つのプロセスの間のエラー伝播経路を定義するもの
  • 2つのプロセスがリンクされている場合に一方のプロセスが死ぬと、終了シグナルがもう一方のプロセスに送られる。

プログラミングErlang - 並行プログラミング

8章あたり

並行プログラミングの基本処理

Eralngで並行プログラミングするには、以下の3つプリミティブ処理を覚えればいい

プロセスの作成

プログラミングErlang - コンパイルと実行

5章あたり。

プログラムの実行方法

プログラムを3種類の方法で実行してみる

・hello.erl

プログラミングErlang - 構文

4章あたり。

関数の参照

現在のモジュールや別のモジュールで定義されている関数を参照するには以下の方法がある。

  • fun LocalFunc/Arity