アプリケーション
223 件の記事
Rubyのブロック構文について
理解するRubyブロック構文。do..end形式、{}形式、yield、block_given?、&blockパラメータ、クロージャの特性を習得。
RubyのModuleについて
RubyのModule(モジュール)について解説する記事です。クラスや他のモジュールに共通のメソッドや定数を提供する仕組みとして、名前空間の分割やMixinによる多重継承的な機能の共有、クラスメソッド・インスタンスメソッドの定義方法などを、具体例を交えて紹介します。
RubyのProcとlamdaについて
RubyのProcとlambdaの違いについてまとめた記事です。ブロックをオブジェクト化した手続きオブジェクトであるProcを軸に、引数の厳格さの違いや、returnとnext・breakといったジャンプ文の挙動の差、そして手続きをオブジェクト化してコードを再利用するパターンを解説します。
Rubyの特異クラス・特異メソッドとは|仕組みを解説
実装するRuby特異クラス・メソッド。class << objectパターン、オブジェクト特有のメソッド定義、singleton_methodsの活用法。
Rubyのシンボルについて
Rubyのシンボルについて書いた記事です。任意の文字列と一対一で対応し、内部的には整数として管理されるシンボルについて、文字列との効率性の比較やイミュータブル(不変)である性質、ハッシュのキーとしての利用、enumのような状態管理パターンなど、実践的な活用方法を紹介します。
たのしいRuby
『たのしいRuby』の書評。Rubyをこれから学ぶ初心者に向けた入門書。オブジェクト指向や他言語の経験があるとより読み進めやすい面もあるが、Rubyの基礎を一通りやさしく身につけられる。
パーフェクトRuby on Rails
『パーフェクトRuby on Rails』の書評。Ruby on Railsに入門したい人に向けた一冊。フレームワークの機能が網羅的に書かれており、Railsが提供する仕組みの全体像を把握するのに役立つ。
パーフェクトRuby
『パーフェクトRuby』の書評。Rubyの言語仕様や機能を網羅的に解説する「パーフェクトシリーズ」の一冊。基礎から一歩踏み込んだ内容まで押さえられ、Rubyを腰を据えて学びたいときに頼りになる安定した内容。
プロを目指す人のためのRuby入門
『プロを目指す人のためのRuby入門』の書評。Rubyの基礎から、業務レベルで役立つ実践的な内容までを詳しく解説する一冊。説明が丁寧で読みやすく、これからRubyでプロを目指す人が土台を固めるのに適している。
自作HTTPルーターから新しいServeMuxへ
自作HTTPルーターgoblinからGo 1.22で強化されたnet/http ServeMuxへ移行。新しいルーティングパターンや他ルーターとの性能比較、ServeMuxで十分なケースを解説します。
PHPCompatibilityを使ってPHP8.2の互換性チェックを行う際にハマったこと
PHPCompatibility(CodeSniffer)でPHP8.2の互換性チェックを行う手順と、ツールの制限やdevelopブランチ利用でハマった点を解説します。
Goのrune型について
rune型がint32のエイリアスでUnicodeコードポイントを表現することを解説し、string型とのループ挙動の違いやマルチバイト文字処理を詳述。
Goでオレオレ証明書がほしいときの一手
Go標準のgenerate_cert.goを使い、opensslやmkcertなしでローカルHTTPS用の自己署名証明書(cert.pem/key.pem)をワンコマンドで生成する方法を解説します。
Goで指数バックオフとジッターを実装する|リトライ設計
指数バックオフとジッターを組み合わせたリトライ実装をGoで実装し、Full・Equal・Decorrelated Jitterの3種類のアルゴリズムを比較。
FuelPHPとPHPのアップデートプロジェクトレポート
FuelPHPアプリケーションをPHP7.3から8.1へアップデートした実践記録。モノリス構成での進め方と互換性チェックツールの活用を解説します。
Go1.22rcで変更されるServeMuxの仕様
Go1.22のServeMuxで導入されたHTTPメソッド指定・パスパラメータ・{$}ワイルドカードなどのルーティング拡張仕様を実装例で検証。
gRPCとProtocol Buffersについて復習するためのリンク集
gRPCとProtocol Buffersを、ロードバランシングやKubernetesデプロイ、ベストプラクティスの観点から復習するためのリンク集を紹介します。
Goのマルチモジュール構成でWorkspace modeを使ってみる
Go 1.18以降のWorkspace modeでマルチモジュール開発を簡単にする方法。go work init、go.workファイルの構成、go.modを編集せずにローカルモジュールを参照する手順を解説します。
OpenAPIを使ったスキーマ駆動開発
OpenAPIを使ったスキーマ駆動開発について解説する記事です。OpenAPI Specificationとは、言語に依存しない形でHTTP APIの仕様を定義するためのフォーマットです。この仕様を起点に、REST APIの仕様定義やコード生成、モックサーバーの活用といったメリットを紹介します。
GoReleaserを使ってのGoのアプリケーションを配布する
GoReleaserを使って、Goで書いたアプリケーションをクロスコンパイルし、バイナリとして配布する方法を解説した記事です。GoReleaserとはどのようなツールなのかを説明したうえで、実際に設定してリリースを行うまでの手順を紹介します。