記事一覧

技術記事・日々の学びをまとめています。

URLルーティングをつくる エピソード3(完結編)
アルゴリズムとデータ構造 2019-03-17

URLルーティングをつくる エピソード3(完結編)

ツリー構造を使ってURLルーティングを自作するシリーズのエピソード3。PHPで、パスパラメータやHTTPメソッド、ツリーベースの探索アルゴリズムに対応したURLルーティングを完成させるまでを解説する。

#PHP#URLルーティング#HTTP#データ構造#router

最新記事

Laravel JP Conferenceにコアスタッフ兼LTスピーカーとして参加してきました
ポエム 2019-02-16

Laravel JP Conferenceにコアスタッフ兼LTスピーカーとして参加してきました

Laravel JP Conferenceにコアスタッフ兼LTスピーカーとして参加し、LaravelのテストのベストプラクティスやDuskについて登壇した経験を紹介します。

#Laravel#LT#PHP
ubuntu初期設定メモ
インフラストラクチャ 2019-02-15

ubuntu初期設定メモ

Ubuntuサーバーの初期構築の手順を、ときどき忘れてしまうため実践的なメモとしてまとめた記事です。ConoHa上のUbuntuを例に、パッケージのアップデートや作業用ユーザーの作成、sudo権限の付与、ホストネームの設定といった、初期セットアップで行う作業を解説します。

#Ubuntu
雑Trelloと雑spreadsheetを公開した話とプライベートのタスクを計測し始めた話
ポエム 2019-02-12

雑Trelloと雑spreadsheetを公開した話とプライベートのタスクを計測し始めた話

プライベートな時間のタスクを可視化しているTrelloと、自分なりのスプリントの計測データを管理しているスプレッドシートを使った、個人のタスク管理の取り組みを紹介する記事です。ストーリーポイントやスプリント計画を取り入れて、個人のタスクを管理・計測する仕組みについてまとめます。

#Google SpreadSheet#Trello
Laravelでの機能テストの始め方雑メモ
テスト 2019-02-11

Laravelでの機能テストの始め方雑メモ

Laravelでの機能テストの始め方と簡単な使い方について、テストを書いたことがない人向けに紹介します。browser-kit-testingを活用したAPIテストの実装例を通して、入門レベルで機能テストの基本を押さえられる内容です。

#Laravel#機能テスト
Goでmysqldumpツールをつくる
アプリケーション 2019-02-04

Goでmysqldumpツールをつくる

SSHとTOML設定ファイルを使い、リモートサーバーのデータベースを自動バックアップするGo製mysqldumpツールをつくる方法を解説します。

#Golang#MySQL#SSH
PHPで学ぶデザインパターン - Adapterパターン
アプリケーション 2019-02-01

PHPで学ぶデザインパターン - Adapterパターン

「PHPで学ぶデザインパターン Advent Calendar 2018」の記事の1つで、Adapterパターンを取り上げます。互換性のないインターフェース同士を適合させ、既存のクラスに手を加えることなく再利用できるようにするこのパターンの仕組みと、PHPでの実装方法を解説します。

#デザインパターン#GoF#PHP
PHPで学ぶデザインパターン - Bridgeパターン
アプリケーション 2019-02-01

PHPで学ぶデザインパターン - Bridgeパターン

「PHPで学ぶデザインパターン Advent Calendar 2018」の記事の1つで、Bridgeパターンを取り上げます。機能の拡張と実装の拡張という2つの階層を分離し、それぞれを独立して拡張できるようにするこのパターンの考え方と、PHPでの実装方法を解説します。

#GoF#PHP#デザインパターン
PHPで学ぶデザインパターン - Mediatorパターン
アプリケーション 2019-01-31

PHPで学ぶデザインパターン - Mediatorパターン

「PHPで学ぶデザインパターン Advent Calendar 2018」の記事の1つで、Mediatorパターンを取り上げます。複雑になりがちなオブジェクト同士のやり取りを仲介役(Mediator)に集約し、オブジェクト間の関係の見通しを良くするこのパターンの仕組みと、PHPでの実装方法を解説します。

#PHP#デザインパターン#GoF
PHPカンファレンス仙台2019に参加した
ポエム 2019-01-27

PHPカンファレンス仙台2019に参加した

PHPカンファレンス仙台2019で聞いた、TDD、レガシーPHPの移行、PSR、ミドルウェア設計、テストの課題解決などのセッションを紹介します。

#PHP#PHPカンファレンス
入門監視
インフラストラクチャ 2019-01-26

入門監視

『入門監視』の書評。監視の基本的な考え方と実践を学べる一冊。何をどう監視するか、アンチパターンを避けながら効果的な監視を組み立てる勘所を押さえられる、監視を学び始めるときの入門書。

#監視#書評
ソフトウェアアーキテクトが知るべき97のこと
アーキテクチャ 2019-01-26

ソフトウェアアーキテクトが知るべき97のこと

『ソフトウェアアーキテクトが知るべき97のこと』の書評。著名なソフトウェアアーキテクトたちの姿勢や考え方を、97の短いエッセイとして知ることができる一冊。断片的ながら、アーキテクトとしての視点や心構えに幅広く触れられる。

#書評
grep入門
OS 2019-01-22

grep入門

習得するgrepコマンド手法。正規表現による検索、オプション活用、OR検索・AND検索の実装、ディレクトリ除外など、テキスト検索とファイル操作の効率化を解説

#Linux#grep
URLルーティングをつくる エピソード2
アルゴリズムとデータ構造 2019-01-06

URLルーティングをつくる エピソード2

ツリー構造を使ってURLルーティングを自作するシリーズのエピソード2。エピソード1のツリー構造を洗練させ、エンドポイントのマッピングやスケーラブルなルーティングロジックの実装を解説する。

#HTTP#URLルーティング#データ構造#router
2018年の振り返りと2019年の目標
ポエム 2018-12-31

2018年の振り返りと2019年の目標

エンジニア3〜4年目だった2018年の1年を振り返り、2019年の目標をまとめた記事。インプット不足の自覚からインプットに注力した年の学びや行動を率直に振り返り、今後のキャリアについて考えたことを記す。

#振り返りと抱負
今年買ってよかったモノ
ポエム 2018-12-29

今年買ってよかったモノ

2018年に買ってよかったモノをリストアップした記事。長財布などの革製品やiPad、クロスバイク、オーディオ機器など、その年の暮らしを充実させてくれた買い物を、順位をつけずに気ままに紹介する。

#ライフスタイル#ガジェット
URLルーティングをつくる エピソード1
アルゴリズムとデータ構造 2018-12-19

URLルーティングをつくる エピソード1

ツリー構造を使ってURLルーティングを自作するシリーズのエピソード1。HTTPリクエストのマッチングやパスパラメータの扱いを軸に、効率的にリクエストを処理するルーティングの仕組みを実装しながら解説する。

#HTTP#URLルーティング#データ構造#router
PHPカンファレンス2018のLT枠で登壇してきた
ポエム 2018-12-16

PHPカンファレンス2018のLT枠で登壇してきた

PHPカンファレンス2018のLT枠で、「20代が考えるエンジニアキャリア論」をテーマに登壇した内容を紹介する記事です。前年の2017に続く登壇となった今回の発表を振り返りつつ、20代の視点から見たエンジニアのキャリアについての考えをまとめます。

#PHPカンファレンス
PHPで学ぶデザインパターン - Strategy
アプリケーション 2018-12-09

PHPで学ぶデザインパターン - Strategy

「PHPで学ぶデザインパターン Advent Calendar 2018」の記事の1つで、Strategyパターンを取り上げます。アルゴリズムをそれぞれクラスとして切り出して動的に切り替えられるようにし、条件分岐を減らして開放閉鎖の原則(OCP)に沿った設計を実現する方法を、PHPでの実装例とともに解説します。

#デザインパターン#PHP#GoF
PHPのインターフェースとタイプヒンティング
アプリケーション 2018-12-08

PHPのインターフェースとタイプヒンティング

「PHP Advent Calendar 2018」の記事の1つで、PHPのインターフェースとタイプヒンティングについて解説します。インターフェースはメソッドの実装を保証する「契約」のような役割を持ちます。機能と実装を分離し、コードの再利用性と柔軟性を高める方法を、具体例を交えて紹介します。

#PHP#インターフェース#タイプヒンティング