タグ

ブックマーク / blog.monochromegane.com (2)

  • Go言語での構造体実装パターン

    Go言語での構造体実装は、埋込や独自コンセプトのインターフェースといったGo言語独自の機能を理解して行う必要があります。 今年からGo言語を始めましたが理解が曖昧なままだと実装に迷うことが何度かありました。今回よい機会なので、Go言語での構造体実装パターンとしてまとめてみることにしました。 構造体実装パターン 実装パターンの洗い出しとして、GoFデザインパターンをGo言語で実装する手法をとりました。 その中で繰り返し現れる実装をGo言語での構造体実装パターンとしてまとめてみました。 コンストラクタ関数 エクスポートによるアクセス許可 インターフェースによるポリモフィズム 構造体によるポリモフィズム 構造体によるサブクラス・レスポンシビリティ 構造体による移譲 関数による移譲 以下、それぞれのパターンを解説していきます。 コンストラクタ関数 Go言語には構造体のコンストラクタがないため、構造

    Go言語での構造体実装パターン
  • ComposerとPackagistでPHPライブラリを開発、テスト、公開する(1/2)

    PHP: The Right Wayを読んで、そのコンセプトに共感したので、今回、ComposerとPackagistでライブラリを開発、テスト、公開する手順をまとめておこうと思います。 Composerって Composerは、PHPのライブラリ依存管理ツールです。RubyBundlerのように依存するライブラリを設定ファイルに書いてコマンドたたけばライブラリのインストールと利用準備が整います。 また、Composer用のリポジトリだけでなく、PEARやGithubのリポジトリもComposer経由で取得できるので、とても便利です。 基的な使い方 インストール プロジェクトのカレントディレクトリにcomposer.pharをダウンロードする。これだけ。

    ComposerとPackagistでPHPライブラリを開発、テスト、公開する(1/2)
  • 1