PHP7でデザインパターン入門12/23 Decoratorパターン

Decorator パターンとは このパターンは、既存のオブジェクトに新しい機能や振る舞いを動的に追加することを可能にする。 Decorator パターン - Wikipedia スポンジケーキが1つあるとする。クリームを塗れば何も載っていないショートケーキができあがる。い…

PHP7でデザインパターン入門11/23 Compositeパターン

Composite パターンとは 「構造に関するパターン」に属する。Composite パターンを用いるとディレクトリとファイルなどのような、木構造を伴う再帰的なデータ構造を表すことができる。 Composite パターン - Wikipedia コンピュータにおけるディレクトリのよ…

PHP7でデザインパターン入門10/23 Strategyパターン

Strategy パターンとは Strategy パターンは、コンピュータープログラミングの領域において、アルゴリズムを実行時に選択することができるデザインパターンである。 Strategy パターン - Wikipedia ようするにアルゴリズムの実装部分をごっそり交換可能にす…

PHP7でデザインパターン入門9/23 Bridgeパターン

Bridge パターンとは 「橋渡し」のクラスを用意することによって、クラスを複数の方向に拡張させることを目的とする。 Bridge パターン - Wikipedia この「橋渡し」をする場所は、「機能のクラス階層」と「実装のクラス階層」である。 機能のクラス階層 新し…

pip, pyenv, BeautifulSoup4をインストールする

「PythonによるWebスクレイピング」を読んでいる。 本書の実践をする上でPython, BeautifulSoup4 のインストールを行う必要がある。 そのインストール手順の備忘録。 install pip $ wget https://bootstrap.pypa.io/get-pip.py $ python get-pip.py install …

PHP7でデザインパターン入門8/23 Abstract Factoryパターン

Abstract Factory パターンとは 関連するインスタンス群を生成するための API を集約することによって、複数のモジュール群の再利用を効率化することを目的とする。 Abstract Factory パターン - Wikipedia example サンプルプログラムは階層構造を持ったリ…

PHP7でデザインパターン入門7/23 Builderパターン

Builder パターンとは オブジェクトの生成過程を抽象化することによって、動的なオブジェクトの生成を可能にする。 Builder パターン - Wikipedia example 以下は、Builderパターンで文書を作成するサンプルプログラム。 Builder 抽象クラス

PHP7でデザインパターン入門6/23 Prototypeパターン

Prototype パターンとは 生成されるオブジェクトの種別がプロトタイプ(典型)的なインスタンスであるときに使用され、このプロトタイプを複製して新しいオブジェクトを生成する。 このパターンは Abstract Factory パターンでなされるように、クライアント…

PHP7でデザインパターン入門5/23 Singletonパターン

Singleton パターンとは Singleton パターンを用いると、そのクラスのインスタンスが1つしか生成されないことを保証することができる。ロケールやLook&Feelなど、絶対にアプリケーション全体で統一しなければならない仕組みの実装に使用される。 Singleton …

PHP7でデザインパターン入門4/23 Factory Methodパターン

Factory Method パターンとは Factory Method パターンは、他のクラスのコンストラクタをサブクラスで上書き可能な自分のメソッドに置き換えることで、 アプリケーションに特化したオブジェクトの生成をサブクラスに追い出し、クラスの再利用性を高めること…

PHP7でデザインパターン入門3/23 Template Methodパターン

Template Method パターンとは スーパークラスで処理の枠組みを定め、サブクラスでその具体的内容を定めるようなデザインパターンのこと。 Template Method パターン - Wikipedia example 文字や文字列を5回繰り返して表示する、というプログラムをtemplate …

PHP7でデザインパターン入門2/23 Adapterパターン

Adapter パターンとは インターフェースが異なっている2つの間に入り、そのずれを埋めるためのパターン。既存のクラスに対して修正を加えることなく、インタフェースを変更することができる。 Adapter パターン - Wikipedia example Bannerクラス string = …

第219回TOEIC結果

結果 score: 740 listening: 400 (-40) reading: 340 (-5) 前回と比較して、listening 440 -> 400, reading 345 -> 340 という結果。 相変わらず点数が伸びない。こうもreadingが伸びないと勉強する意欲も薄れてきてしまう。 今回も最後のトリプルパッセージ…

laravel 5.4 migration error: [ErrorException] Undefined index: yyyy_mm_dd_hhmmss_create_xxxx_table

laravel で作成したmigrationファイルが不要になったため削除すると、migration時にエラーが出るようになった。 $ php artisan migrate:refresh [ErrorException] Undefined index: 2017_03_24_082414_xxx_table 上記は、削除したはずのテーブルだが、まだ参…

PHP7でデザインパターン入門1/23 Iteratorパターン

結城浩氏の「増補改訂版Java言語で学ぶデザインパターン入門」を読んでいる。 これは、デザインパターンについてまとめられた良書だ。 各デザインパターンについて、自分なりまとめてみようと思う。 Iterator パターンとは Iteratorパターンとは、何かの集合…

laravel 5.4 - vagrant環境(centOS6)で認証機能をデモしてみる

vagrant環境でlaravel 5.4 の認証機能をテストする # composer からlaravelをインストールする $ composer global require "laravel/installer" # プロジェクトを作成する $ laravel new myApp $ cd myApp $ composer install $ cp .env.example .env # .env…

目黒川の桜

仕事終わりに中目黒へ夜桜を観に行った。 駅改札からもうかなりの人混み。配備された警備員が声を張り上げていた。 目黒川両脇には、屋台が並んでいて、ちょうちんの灯と合わせてまるで祭りのような雰囲気。 屋台ではワインを売ってる店が多くて、中目黒だな…

第218回TOEIC結果

結果 score: 785 listening: 440 reading: 345 過去最高点を20点だけ更新した(765 -> 785)。 readingは前回の320 -> 345 と25点アップしたが、実感はない。 最後の5問はほぼ読む時間がなく勘で答えたぐらいだから、運が良かっただけかもしれない。 readingが…

デジタル一眼の基礎知識まとめ

一昨年ミラーレス一眼を買った。Nikon J5 ダブルレンズキット。 購入して1年以上経っているが、未だにプログラムオート撮影しか使ったことがない。 もうちょっとこだわった写真を撮りたいと思うようになったので、勉強することにした。 Nikonのオフィシャル…

多摩動物公園へ行く

多摩動物公園に行ってきた。 多摩動物公園駅を降りたら目の前がもう多摩動物公園入り口になっている。 入り口には「アリからゾウまで」の文字。A to Zってことかな?と思ったけど、それだとant to elephant だから違うよなあ。とかどうでも良いことを考えな…

ミュシャ展へ行く

国立新美術館のミュシャ展へ行ってきた。 www.mucha2017.jp アルフォンス・ミュシャ - Wikipedia メイン展示は、スラヴ民族の神話、歴史を描いたスラヴ叙事詩。チョコ以外での公開は初とのこと。 入場して、いきなり6m x 8m という超巨大な絵画がでてきた驚…

phpdocumenterでpackages下にdefault.html, Default.htmlが出力される問題

PHP

phpdocumenterでソースコードからドキュメント自動生成をしたときに起きた問題。 https://github.com/phpDocumentor/phpDocumentor2 # ドキュメント生成コマンド $ phpdoc run -d <SOURCE_DIRECTORY> -t <TARGET_DIRECTORY> --template=responsive-twig すると、TARGET_DIRECTORY/packages配下にd</target_directory></source_directory>…

MySQLでタグ機能を実装しAND検索する

商品(item)にN個のタグを設定し、tag名(tag id)で商品をAND検索できる機能を実装したい。 table design 以下の3つのテーブルを用意する item: 商品テーブル。タグの設定対象 item_to_tag: itemとtagの中間テーブル tag: タグテーブル item table mysql> sele…

第217回TOEIC結果

結果 score: 765 listening: 425 reading: 320 過去最高点を10点だけ更新した。(755 -> 765) 時間配分は今までで一番良くできた。それだけに800取れてるといいなーと思ったけど現実は非情だった。とはいえ最高点取れたのは多少励みになるかな。 内訳をみると…

コスモプラネタリウム渋谷に行く

桜ヶ丘町の文化総合センターという施設の12Fにプラネタリウムがある。 コスモプラネタリウム渋谷|渋谷区文化総合センター大和田 以前桜ヶ丘町で働いていたことがあって、何度か前を通ったことがあったはずなんだけどその時は存在に全く気づかなかった。 中…

親テーブルに紐づく最新のログ1件をJOINしたい

以下のような2つのテーブル(user, user_log)があり、userテーブルに紐づく最新のログ1件をjoinして取得したい。 例えば、ユーザに紐づく直近のアクションログだけをjoinしたい場合に使えるかも。 以下、サンプル。 user table mysql> select * from user; +…

数字の森を観に行く。国立新美術館 10th anniversary

数字の森*1という展示が観たくて、平日の仕事の昼休みに観に行ってきた。*2 さすがに平日月曜の昼は空いている様子。 入り口の木が草間彌生っぽくなってる。何かそれ関連の展示でもあるんだろうか。 数字の森は10th anniversary展示の1つ。 国立新美術館は…

hackerrank.com でベーシックアルゴリズムを(英語で)復習する

introduction 昨年、RSSだか社内チャットだかどこだったか忘れたが、とある海外エンジニアのブログを読んだ。 job interview をどう突破したのかが書かれていて、非常に刺激になった。 そこに、面接対策として、hackerrank.comで基本的なアルゴリズムを復習…

webで副業を探す

今いる会社は副業がOKなので何か本業(webエンジニアリング)と関係あることで仕事がないか探している。*1 クラウドワークスとcodealというサービスに登録してみた。 しかしまあ、相当に面倒である。ポートフォリオを入力するだけで体力をかなり消耗した。 10h…

2016年持ち物まとめ

引っ越し 2016年12月に半年ぶりに海外出張*1から帰国した。 当然日本の賃貸物件は解約していたため、帰国時はホームレスである。 12月に急いで部屋探しをして入居を決めた。 とにかく引っ越しにかかる労力は大きい。毎回のこの苦痛を減らすという理由だけで…

第216回TOEIC結果

結果 score: 700 listening: 385 reading: 315 半年ぶりに受けたけど、これは酷すぎる… 前回よりかなり落ちてしまった。 新形式になってはじめてのテストっていうのもあるけど、ちゃんと勉強しないとほんとに点数上がらない。 次回は1/29。

2017年の目標

今年の目標 副業をする TOEICで900点を取る 早起きする(朝6時に起きる) 12人新たな知り合いを作る 12本映画を観る 12冊本を読む 週1ペースでブログを更新する。50記事以上/年 行ったことない国を旅行する 体脂肪10.0%以下を維持する 残業しない 夏に槍ヶ岳登…

ホーチミン1区Đa Kao周辺の飲食店情報

ホーチミンの1区Đa Kaoに半年間滞在していた。 その間ずっと外食をしていたため*1、この界隈の飲食店にはそれなりに詳しくなった。また来るかもしれないのでメモしておく。 highlands coffee ドリンクメニュー以外にもフォーやバインミーもある。 平日の11-1…

イラン旅行

10日間の休暇を取ってイラン旅行へ行ってきた。その時のメモ。 最低限準備した物 USドル クレジットカードは殆ど使えない。旅行に必要な分だけのUSドルを持っていく必要がある。日本円は基本的に両替できない。 ペルシア語 イスラエルでは英語はあまり通じな…

ホーチミン人文社会科学大学のベトナム語クラスに申し込む方法

ホーチミンの人文社会科学大学(University of Social Sciences and Humanities)ベトナム語クラスへ申し込んできた。申し込み場所とか手続きについて不明な点が多かったので記載しておく。*1 最新情報の確認 webサイトがあるので、まずは最新情報を確認しよう…

sublime text3 でPSR-2 formatを適用する

PHP

自分はsublime textは使ってないけども、調べる必要があったのでメモ。 fabpot/php-cs-fixer をインストール $ curl -sS https://getcomposer.org/installer | php $ mv composer.phar /usr/local/bin/composer $ composer global require fabpot/php-cs-fix…

海外長期出張前にやったこと

今からベトナムのホーチミンへ出張する。約6ヶ月は滞在する予定。羽田空港ロビーで時間が余ったのでnetflixで映画を見ながら書いてる。 長期出張前にやったことリスト 携帯を解約する simフリースマホを買う 家具を売る(発送できないものはジモティーで引取…

ホーチミン出張

初のベトナムに行ってきた。 旅行ではなく、仕事の出張だ。滞在期間は1週間。 航空券 羽田 - ホーチミン 直行便で$590ぐらいの便があった。 乗り継ぎ便だともっと安いのもあるが、流石に出張では辛いのでやめた。 宿泊 webで予約した。50$もあればちゃんとし…

ウズベキスタン旅行

ウズベキスタンを旅行してきた。 訪問した場所は以下の通り タシケント ウルゲンチ ヒヴァ ブハラ サマルカンド シャフリサーブス 言語 ウズベク語とロシア語。 英語はなかなか通じない。 最低限挨拶くらいは現地の公用語で話そう。 ウズベク語 こんにちは: …

ウズベキスタン観光ビザ取得方法

ウズベキスタンへ旅行するために観光ビザを取得してきたので、その覚え書き。 ※2015年8月時点での情報 ビザ申請書類の作成 下のリンクから申請書入力フォームへいき、申請書フォームを入力、印刷する。 Visa to Uzbekistan 下のページに入力例などが載ってい…

谷川岳へ日帰り登山(西黒尾根-下りロープウェイ)

都内から谷川岳への電車で日帰り登山へ行ってきた。 谷川岳最寄りの土合駅までの道のり 当初の予定ではこんな感じ 6:27 池袋発 JR埼京線川越行 6:56 大宮着 7:02 大宮発 JR上越新幹線 越後湯沢行き 8:06 越後湯沢着 8:13 越後湯沢発 JR上越線 水上行 8:39 土…

Yii PHP Framework 2.0 インストール

Yii Frameworkを学習する. Yii Framework とは Yii PHP Framework: Best for Web 2.0 Development YiiはWebアプリケーション開発のための高性能なPHPフレームワーク. Yiiの由来は「Yes It Is」の頭文字であり、「Yii(イー)」と発音する. インストール 公式に…

[Error] bin/rails:6: warning: already initialized constant APP_PATH [rails]

エラー rails new でAPPを作成後、rails s で躓いた. $ rails s bin/rails:6: warning: already initialized constant APP_PATH /home/dev1/railbook/bin/rails:6: warning: previous definition of APP_PATH was here 環境 $ ruby -v ruby 2.2.0p0 (2014-12…

2015年福袋の中身 MAMMUT(マムート)編

購入方法 新宿L-Breath初売りで購入。 1万円MAMMUT福袋 中身一覧 (※品名 税抜き価格) Wing Jacket AF ¥15,000 Zip T-shirts AF 値札なし(¥9,000ぐらい※ネット調べ) Element T-shirts ¥6,600 以上の計3点 Wing Jacket AF ¥15,000 Zip T-shirts AF 値札な…

2015年福袋の中身 mont-bell(モンベル)編

購入方法 モンベル店舗の初売りで購入。 1万円モンベル福袋 中身一覧 (※品名 税抜き価格) U.L. ダウンT ¥10,800 ライトシェルジャケット ¥6,858 シャミース ベスト ¥4,300 シャミース インナーグローブ ¥1,800 以上の計4点 U.L. ダウンT ¥10,800 ライ…

長期海外旅行(バックパッカー)に持っていったものリスト

2012年長期海外バックパッカー時(アジア→中東→ヨーロッパ)の装備品覚え書き。 バッグ / 収納 [バックパック(メイン)] mont-bell チャチャパック [モンベル] mont-bell チャチャパック 45 1223363 BK (BK)出版社/メーカー: mont-bell(モンベル)メディア: ウェ…

三鷹の森ジブリ美術館へ行ってきた

先日たまたまチケットを手に入れたので、ジブリ美術館へ行ってきた。 三鷹の森ジブリ美術館 ジブリ美術館へ向かう 午前10時入場チケットだったので、入場時間に間に合うように三鷹駅へ9:40頃に到着。 駅から出ているバスに乗ろうとしたが、満席で乗れず。歩…

セブの美味いシーフードレストラン

シーフードレストラン STK ta Bay! 数年前セブに留学していたときに、ルームメイトの韓国人に教えてもらったお店。 安くて美味いので毎週通っていた。 公式サイト STK ta Bay! メニュー 写真・金額入りのメニューがサイトにあるので心配なら確認を。 Menu | …

Maker Faire Tokyo 2014

これに行ってました。 Maker Faire Tokyo 2014 | Maker Faire Tokyo 2014 | Make: Japan Maker Faire Tokyo 2014 | Maker Faire Tokyo 2014 | Make: Japan 実際に触れたり、体験できるものも多く、技術的なことがわからなくても子供から大人まで楽しめる素晴…

長野旅-4 諏訪湖周辺観光

諏訪大社を巡る 長野県中央の諏訪湖を挟んで、以下の二社四宮の境内が鎮座する。 上社 (かみしゃ) ・本宮 (ほんみや)(長野県諏訪市中洲宮山) ・前宮 (まえみや)(長野県茅野市宮川) 下社 (しもしゃ) ・秋宮 (あきみや)(長野県諏訪郡下諏訪町武…