Wiz テックブログ

Wizは、最新のIoTやICTサービスをお客様に届ける「ITの総合商社」です。

バックエンド

【Laravel/TDD】100日後でも死なないテスト駆動開発のやり方〜Laravel8編〜

半年間、TDDに触れてみて自分なりにテストしやすい構造を練ってみました!それらの手法をご紹介したいと思います。

MySQLの実行計画について

MySQLにおける実行計画の確認方法とサンプルチューニングについて簡単にまとめました。

【Laravel】DDDでセッションを取り扱う際の妥協した実装

LaravelでDDDを採用する際のセッション取り扱いの一例について解説しました。

php-cs-fixerをつかったコードフォーマットの自動化(git hook)

phpのパッケージphp-cs-fixerを使ったコードフォーマットのやり方と、git hookを使った自動化について簡単に紹介します。

PHPでコンストラクタを複数定義する【初級〜中級者向け】

PHP(Laravel)を使って、コンストラクタを複数定義する方法について書いてみました

面倒な作業をコマンドでできるようにする

業務効率化のためにShellスクリプトを書いてみました。

AWSでSlackアプリを作ってみた ~開発環境構築からデプロイまで~

こんにちは、フロントエンドエンジニアの高野です。 最近AWSで簡単なSlackアプリを作成したので、その記録をまとめていきます。 今回話すこと/話さないこと 話すこと Slack側のapp初期設定について 開発環境の構築について Lambdaのフォルダ構成について 話…

LINEBotのメッセージ形式あれこれ

「line-bot-sdk-php」を使ってLINEユーザーにメッセージを送る方法を紹介します。

LINEBotをPHPで自作する

「line-bot-sdk-php」ライブラリを使ってPHPでLINEBotを自作する方法を紹介します。

PHP(サーバ)上からWebSocketにアクセスする

通常はjavascriptから接続するWebSocketですが、サーバからアクセスする方法について紹介します。

LaravelでWebSocket(Ratchet)を使ってみた

「Ratchet」というライブラリを使って、PHPでWebSocket環境を構築する方法を紹介します。

アプリ開発で使う通信の仕組み〜階層型プロトコル・TCP/IP〜【初心者向け】

「階層化されたネットワークの仕組み」 について調べ、概要とメリットをまとめてみました。

MySQLで行うパフォーマンスチューニング

こんにちは。バックエンドエンジニアの米山です。 私個人はJava+Oracleでお仕事をする期間が長かったのですが、昔はよくOracle側のパフォーマンスチューニングを行っていました。 弊社では、まだ採用ケースは少ないのですがDBにMySQLを採用し、経年によるデ…

【Laravel】DDDで、テストの時はDBを使わないリポジトリに差し替える

LaravelでDDDを採用しテストを書くさいに、DBを使わないリポジトリに差し替える方法について書きました。

SSRのバックエンドをServerlessFramework Laravelで構築する

アーキテクチャ セットアップ serverless.yml デプロイ 他の必要リソースをTerraformで構築 クライアントマシンからAuroraへ接続 メール送信設定 最後に こんにちは。バックエンドエンジニアの高橋です。 SSR(Serverless Next.js)のバックエンドを Serverl…

記事及び求人ページに構造化データを導入

担当メディアで記事及び求人ページの構造化データを導入した実例を元に構造化データの導入例を紹介します。 構造化データとは 検索エンジンがページ内容を理解しやすくなるデータ形式のことです。 正しく記述することで検索エンジンがページの内容をより理解…

LaravelでStrategyパターン & Factory Methodパターン

LaravelでStrategyパターンとFactory Methodパターンを実装してみました。 単純なif分岐をデザインパターンを使ってリファクタリングしていくという流れでやってみました。

データベースの正規化(第1〜第3正規形)

新入社員の方に「データベースの設計」について研修を行いました。中でも重要であった正規化について、第1正規形〜第3正規形までを改めてまとめてみました。

TerraformでCodeDeploy+CodePipeline (GitHub Ver2)を実装する

バランサーとEC2 デプロイフロー Terraformで実装 前提 ディレクトリ構成 CodeDeploy 必要なリソースのインポート ①インポートしたリソースの定義 ②デプロイアプリケーションとデプロイグループの作成 CodePipeline ①IAMロール作成とポリシーアタッチ ②S3バ…

第2回LT会を行いました。

第2回LT会レポ JSモジュールバンドラのこれからについて考える メモリーを認識したプログラム PHPのInterfaceの使いどころ TypeScript導入のススメ 第2回LT会レポ 今回のLT会の内容は 発表者: 4名 制限時間: 発表時間 5分 + 質問時間 10分 テーマ: 自由 で行…

Laravelで既存画像のWebP対応

今回はPHPのLaravelで既存画像のWebP化及び切替表示について実装例を紹介してみようと思います。 目的 記事の画像をWebP化することによって記事の表示スピードを早くする。 WebP(うぇっぴー)とは 軽量の新画像形式で開発したグーグルによると、画像をWebP…

PHPのInterface -メリットと使い所-

今回はPHPのInterfaceの使い所について、例を交えつつ紹介してみようと思います。 本題に入る前にこの記事内のサンプルコードについてです。 サンプルコードは全て、フレームワークにLaravelを使用しているという前提で記述しています。 LaravelでInterface…

Lambda@EdgeでCloudFrontの配信をコントロールしたい

Lambda@Edgeとは 設定出来るフック 例:webp画像を配信して表示速度高速化したい ①IAMロールを作成 ② Lambda関数を作成 ③関数コードを作成 ④デプロイパッケージを作成 ⑤.zipファイルをアップロード ⑥テストを行ってみる ⑦ Lambda@EdgeをデプロイしCloudFront…

Laravel8 使ってみた。

Laravel7との違い ①ルートファイルの書き方 Laravel7では以下の様な記述でしたが、