Skip to content

Instantly share code, notes, and snippets.

Ryo Fujimoto fujimisakari

Block or report user

Report or block fujimisakari

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
@fujimisakari
fujimisakari / abstract_factory_pattern.md
Last active Aug 11, 2017
AbstractFactoryパターン
View abstract_factory_pattern.md

AbstractFactoryパターン

HeadFirstデザインパターン Index

パターンについて

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

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

@fujimisakari
fujimisakari / observer_pattern.md
Last active Aug 11, 2017
Observerパターン
View observer_pattern.md

Observerパターン

HeadFirstデザインパターン Index

パターンについて

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

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

@fujimisakari
fujimisakari / decorator_pattern.md
Last active Sep 5, 2018
Decoratorパターン
View decorator_pattern.md

Decoratorパターン

HeadFirstデザインパターン Index

パターンについて

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

@fujimisakari
fujimisakari / strategy_pattern.md
Last active Aug 11, 2017
Strategyパターン
View strategy_pattern.md

Strategyパターン

HeadFirstデザインパターン Index

パターンについて

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

@fujimisakari
fujimisakari / head_first_design_pattern.md
Last active Jun 24, 2019
HeadFirstデザインパターン 学習メモ
View head_first_design_pattern.md
View programming_erlang_distributed.md

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

10章あたり

分散プログラム

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

View programming_erlang_parallel_error.md

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

9章あたり

エラー処理に関わる概念

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

プロセスリンク

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

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

8章あたり

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

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

プロセスの作成

View programming_erlang_compile.md

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

5章あたり。

プログラムの実行方法

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

・hello.erl

View programming_erlang_syntax.md

プログラミングErlang - 構文

4章あたり。

関数の参照

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

  • fun LocalFunc/Arity
You can’t perform that action at this time.