並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 198件

新着順 人気順

phpunitの検索結果1 - 40 件 / 198件

  • 現在時刻が関わるユニットテストから、テスト容易性設計を学ぶ - t-wadaのブログ

    この文章の背景について この文章はテスト容易性設計をテーマに 2013/11/26 に CodeIQ MAGAZINE に寄稿したものです。残念ながら CodeIQ のサービス終了と共にアクセスできなくなっていたため、旧 CodeIQ MAGAZINE 編集部の皆様に承諾いただき、当時の原稿を部分的に再編集しつつ、ライセンス CC BY(クリエイティブ・コモンズ — 表示 4.0 国際 — CC BY 4.0) で再公開いたしました。 旧 URL にいただいたブックマークとご意見はこちらです(これであなたもテスト駆動開発マスター!?和田卓人さんがテスト駆動開発問題を解答コード使いながら解説します~現在時刻が関わるテストから、テスト容易性設計を学ぶ #tdd|CodeIQ MAGAZINE)。旧記事には本当に多くの反響をいただき、誠に感謝しております。 目次 この文章の背景について 目次 出

      現在時刻が関わるユニットテストから、テスト容易性設計を学ぶ - t-wadaのブログ
    • 「ブラックリスト」「マスター/スレイブ」というプログラミング用語が「人種差別的」として言い換えられつつある

      「ブラック・ライヴズ・マター(BLM)」を合い言葉に黒人差別への抗議を訴える運動が2020年5月から急速に広がっています。その中で、プログラミングの世界で使われている「マスター/スレイブ」や「ブラックリスト/ホワイトリスト」などの言葉が言い換えられ始めていることが報じられています。 GitHub to replace "master" with alternative term to avoid slavery references | ZDNet https://www.zdnet.com/article/github-to-replace-master-with-alternative-term-to-avoid-slavery-references/ 特定のユーザーや言葉を拒否する「ブラックリスト」、そして逆に許可するユーザーや言葉をまとめた「ホワイトリスト」という言葉が人種差別的だ

        「ブラックリスト」「マスター/スレイブ」というプログラミング用語が「人種差別的」として言い換えられつつある
      • 実践! ユニットテスト入門

        PHPカンファレンス沖縄2022の登壇資料です。 発表時間の関係で収まりきらなかった内容を大幅に加筆しています。 以下プロポーザルの内容を転記。 ---- テスト書いてますか? テストを書く理由と実際のテストコードを紹介する実践編に分け、TDD を3年間実践してきた経験に基づいてお話しします。 テストを書いたことのない方が、テストを書いてみたいと思ってもらえることを目指します。 サンプルコードは PHP + PHPUnit ですが、他言語でも通用する考え方を紹介します。 ■ 概要 ・なぜテストコードを書くのか ・レガシーコードとは、テストのないコード ・テストはコストが安いフィードバックループである ■ 実践編 ・テストケースは日本語で書こう ・いろんな assertion を知ろう ・arrange / act / assertion のテストコード実装パターン ・set up / te

          実践! ユニットテスト入門
        • PHPの改善 !== PHPのバージョンアップ | PR TIMES 開発者ブログ

          <? include("abc.php"); include("def.php"); include("conf.php"); include("db.php"); include("some.php"); include("what.php"); Define("NUM", 100); class super_calc extends great_calc { /* * * * コンストラクタ * * * * */ public function super_calc($initial_num){ $this->db = DB::getDb(DSN); $this->initial_num = $initial_num; } /* * * * チェック * * * * */ public add_ok($add_num){ $res = $this->addable($add_num);

            PHPの改善 !== PHPのバージョンアップ | PR TIMES 開発者ブログ
          • Slim Framework と Docker を使って本格的にアプリを作ってみよう|技術ブログ|北海道札幌市・宮城県仙台市のVR・ゲーム・システム開発 インフィニットループ

            Slim Framework と Docker を使って本格的にアプリを作ってみよう はじめに Web アプリケーションの開発をするにあたっては勉強しなければならないことは多く、どう勉強すれば良いかはなかなか難しい問題です。初心者向けの解説は比較的たくさんあるのでとりあえずやってみるくらいは何とかなるものの、実戦的な開発がどうなっているかという総合的な話は実務を経験しないとわからないことが多いことでしょう。 ということで、本記事では最近流行の Docker と、そこそこ名前は見かける PHP のマイクロフレームワークの Slim Framework を使って実戦的な Web アプリの開発をしてみる(開発環境を作ってみる)こととします。実装的には、ドメイン実装としてユーザー登録、ログイン、ユーザー情報取得の3つのAPIを実装するところまでを取り扱います。また、静的解析を最大限活用してユニット

              Slim Framework と Docker を使って本格的にアプリを作ってみよう|技術ブログ|北海道札幌市・宮城県仙台市のVR・ゲーム・システム開発 インフィニットループ
            • level=0 から始める PHPStan(Larastan) 導入ガイド - Shin x Blog

              PHP にはアプリケーションを実行せずに静的にコード品質をチェックする静的解析ツールがいくつかあります。有名なところでは、PHPStan や Psalm、Phan、PHPMD などがあります。本エントリでは、まだこうした静的解析ツールを導入していないプロジェクト向けに PHPStan 導入の流れをまとめてみました。 3(4) 行まとめ サンプルコード PHPStan とは 適用方針 Playground PHPStan のインストール Composer Composer(Larastan) Docker 設定ファイルの作成 PHPStan の実行 主なエラー(level=0) baseline ファイルの作成 baseline ファイルの修正 CI での自動実行 GitHub Actions の設定 ブランチ保護ルール さいごに 3(4) 行まとめ composer もしくは Docker

                level=0 から始める PHPStan(Larastan) 導入ガイド - Shin x Blog
              • PHPアプリ開発をPhpStormでスムーズに始められるよう、設定ファイルとドキュメントを用意する - BASEプロダクトチームブログ

                BASE株式会社 Product Dev Division ソフトウェアエンジニアの田中(@tenkoma)です。主にPHPアプリ開発を担当しています。 BASEでは、PHPアプリ開発で使うエディタに制限はありませんが、希望する人はPhpStormを使えます。 PhpStormは設定を全くしなくてもかなり快適に使えると思いますが、多少設定するとより快適になります。 この記事では主に、開発環境とIDEを連携させアプリケーション開発をスムーズに始めるため、以下の設定について紹介します。 Xdebugと連携してリモートデバッグを可能にする PHPUnitと連携してテストをIDEから実行可能にする PHP_CodeSnifferを使ってコーディングスタイルを適用する EditorConfigを追加してコーディングスタイルを開発者で共有可能にする Xdebugと連携してリモートデバッグを可能にする

                  PHPアプリ開発をPhpStormでスムーズに始められるよう、設定ファイルとドキュメントを用意する - BASEプロダクトチームブログ
                • Laravel実践入門! シンプルなREST APIを実装して学ぶ、多機能なPHPフレームワークの使い方|ハイクラス転職・求人情報サイト AMBI(アンビ)

                  これからLaravelを利用するのであれば、どのバージョンを使えばよいでしょうか? 現在(2020年9月時点)の状況であれば、6もしくは8のいずれかを選択することになります。どちらを選ぶかはアプリケーションの要件次第です。長期間安定したバージョンを利用したいのであれば6を、最新機能を利用していきたければ8を選ぶことになります。 この選択はさらに、セキュリティフィックス期限が切れた後にも影響します。例えば6を選択した場合、おそらく長期間利用することになるので、次にバージョンを上げる際は最新バージョンとの差異が大きくなり、アップグレードに手間がかかる可能性があります。 一方、8を選択して最新バージョンに適宜アップグレードしていけば、頻度は増えますが、都度の手間は小さくなります。ご自身やチームの開発状況や方針などを鑑みて、どちらを選ぶか検討してください。 なお、Laravelは6以降、セマンティ

                    Laravel実践入門! シンプルなREST APIを実装して学ぶ、多機能なPHPフレームワークの使い方|ハイクラス転職・求人情報サイト AMBI(アンビ)
                  • 文化祭入退場・混雑管理システム "CAPPUCCINO" 開発・運用記

                    この記事は、文化祭実行委員会に所属する[1]現高校 3 年生 3 人で文化祭の入退場混雑管理システム「CAPPUCCINO」を 2 年間に渡り開発し、実際に運用した記録を残したものです。 *この記事は以下の 3 名による共同執筆です 著者・開発者: すばる (@su8ru / Twitter:@su8ru_) 高校3年生。普段は TypeScript に使われながらウェブフロントエンド技術で遊んでいます。 たけ (@takeno_hito / Twitter:@Takeno_hito) こうこうさんねんせい。コーディングよりはゲームのほうが好きです。上下二人に揉まれながらも一応リーダーをやってました。 ふわわあ (@fuwa2003 / Twitter:@ibuki2003) 高3。Vimmer。半言い出しっぺなのに後半コード書いてないとかで最近は肩身が狭い思いをしています。 1. CAP

                      文化祭入退場・混雑管理システム "CAPPUCCINO" 開発・運用記
                    • 待って!そのデプロイ本当に大丈夫?✋ - きりだるまの記録帳

                      全国100万人のエンジニアの皆さんこんにちは、デプロイしてますか? この記事は、本番環境でやらかしちゃった人 Advent Calendar 2019の5日目の記事です 予想以上にこのアドベントカレンダーが注目されてて、書きながら「これ炎上しないよね…」「なんかマズイこと書いてないよな…」と胃が痛くなってます 自分みたいなザコメンタルにはつらい…めっちゃやむ… この記事はただの不注意が原因のやらかし話です 過度な期待はしないで下さい 追記 さすが3000人以上に購読されてるアドベントカレンダー、アクセス数がすごいことになってますね…怖い… いくつかコメントや言及を頂いたので、追記というのをしておきます テスト環境ないの? あります タスクAに関してはテスト環境での動作チェックが不十分だった タスクCに関しては焦ってて動作確認せずに出しちゃった(「まぁこれくらいの変更なら大丈夫でしょ」という

                        待って!そのデプロイ本当に大丈夫?✋ - きりだるまの記録帳
                      • 10年開発してきたPHPアプリケーションにPHPStanを導入した - BASEプロダクトチームブログ

                        Tech Dept. 基盤グループエンジニアの @tenkoma です。 BASEには50以上のPHPプロジェクトのプライベートリポジトリがあります。 (アプリケーションは十数個で、残りの多くが、アプリケーションが依存するライブラリです) 過去4年ほどの間に新規に作られたリポジトリにはほぼ最初からPHPStanが導入されていますが、それ以前から開発していたリポジトリには導入されていないものが多数ありました。 それらのリポジトリにPHPStanを導入していったので、なぜ導入したか、導入方法、得られた効果について紹介します。 PHPStanとは PHPコードを実行せずに、実行時にエラーになりうる箇所を検出するツールです。PHPStanを利用しCIに組み込むと、テスト実行せずに検出できるバグの一部は、PHPStan解析で指摘してくれるので、コードレビューの負担が減ることが期待できます。 なぜPH

                          10年開発してきたPHPアプリケーションにPHPStanを導入した - BASEプロダクトチームブログ
                        • テスト駆動開発(TDD)とは何か。コードで実践方法を解説します - パンダのプログラミングブログ

                          この記事は、弁護士ドットコム Advent Calendar 2019 - Qiitaの2日目の記事です。 TL;DR TDDの実践方法を実際にコードを書いて解説します TDDの「レッド・グリーン・リファクタリング」のリズムを学ぼう 何度もテストを実行して、プログラムに対する不安を取り除こう TDDはテスト技法ではなく設計手法 TDD Boot Camp Sendai 9thに参加しました。TDDの伝道師和田さん(@t_wada)を講師に迎え、有志たちで開かれた勉強会でした。 午前中は和田さんによるTDDに関する講演とライブコーディング。午後は参加者同士のペアプロで出題されたお題を実装していく活気あるイベントでした。 イベントを通じてTDDはテストファーストのことだと考えていた自分は目を見開かされました。TDDは単にテストファーストでプログラムを実装することではなく、実装(ソフトウェア)が

                            テスト駆動開発(TDD)とは何か。コードで実践方法を解説します - パンダのプログラミングブログ
                          • Laravel 製アプリケーションに対する自動テストでなにをどうテストすればいいか - Qiita

                            この記事について 自分の所属するチームに、自動テストを書いたことがないメンバーが加わったとき、ガイドラインとなるようなドキュメントがほしいなと思っていたので、書きました。どうせなら他のチームでも使いたいので、ドメインはぼかして汎用的になるようにして公開します。独自のベストプラクティス的なものですが、これまでのチームではわりとどこもこれに近くうまくいっていたので、汎用的に使えるんじゃないかと想像します。 はじめに 環境 Laravel: 5.8 以上 PHP: 7.0 以上 PHPUnit: 7.0 以上 いちおうバージョンは書きましたが、あまり関係はないです。 基本方針 基本方針は、自分の経験上これがいちばんコストパフォーマンスがいいと思っているガイドラインですが、自分はベンチャーやスタートアップ企業で、スピード重視の文化に身を置くことが多いため、テストは最低限にして、素早くリリースするの

                              Laravel 製アプリケーションに対する自動テストでなにをどうテストすればいいか - Qiita
                            • 第二新卒が1年でフルスタックエンジニアへ!チームラボエンジニアリングのスキルアッププログラムが素晴らしい - Qiita Zine

                              2018年4月にチームラボエンジニアリングへ入社。2018年5月以降は、SNSサービス、大学サイトなどの環境構築、設計、実装を担当。2019年4月からは大規模予約サービスのオンプレミスからAWS移行プロジェクトに参画している。 転職しつつ、学び直す道へ ──尾上さんがチームラボエンジニアリングに転職を考えたキッカケはどんなものだったのですか? 尾上あづささん(以下、尾上):前職ではPHPを使ったサービスの運用・保守を行っていました。ただ、私はもっとコードを書きたくて。ゼロからモノを作る仕事がしたいと思ったことが転職のキッカケですね。 ──運用・保守のプロジェクトに携わっている場合、ゼロから設計したりするケースは稀ですよね。 尾上:そうですね。私が携わっていた領域も実装とテストがメインでした。例えば、インフラは他のエンジニアの方が用意してくださっていたり、お客様の交渉も別の方が行っていたり。

                                第二新卒が1年でフルスタックエンジニアへ!チームラボエンジニアリングのスキルアッププログラムが素晴らしい - Qiita Zine
                              • PHPerのための「PHPと型定義」を語り合う【PHP TechCafe イベントレポート】 - RAKUS Developers Blog | ラクス エンジニアブログ

                                弊社で毎月開催し、PHPエンジニアの間で好評いただいているPHP TechCafe。 2023年5月のイベントでは「型定義」について語り合いました。 弊社のメンバーが事前にまとめてきた情報にしたがって、他の参加者に意見を頂いて語り合いながら学びました。 今回はその内容についてレポートします。 rakus.connpass.com PHPと型 静的型付け言語 動的型付け言語 一般的な誤解 PHPの型 単一の式が持つ型 型システムで扱える型 never型について void型について self,parent,static型について resource型について evalでresource型を宣言すると リテラル型について ユーザー定義型について 複合型について 型のエイリアス mixed iterable PHPで取り入れられた型表現 型宣言のメリット PHPの歴史を振り返る PHPのドキュメント

                                  PHPerのための「PHPと型定義」を語り合う【PHP TechCafe イベントレポート】 - RAKUS Developers Blog | ラクス エンジニアブログ
                                • ラクスのPHPエンジニア12人によるPHPカンファレンス2020参加レポート - RAKUS Developers Blog | ラクス エンジニアブログ

                                  はじめに 株式会社ラクス 配配メール開発課のPHPエンジニア Jazumaです。 2020年12月12日(土)にPHPカンファレンスが開催されました。 phpcon.php.gr.jp 例年では「大田区産業プラザ PiO」で開催予定でしたが、今年は新型コロナウイルスの影響でオンライン開催となりました。個人的にはオンライン開催である分、地方のエンジニアでも気軽に参加することができたのは良かったのではないかと思います。 ラクスはPHPカンファレンスにスポンサーとして参加させていただいている他、社内からLT枠で2名が登壇しました。 今回はPHPカンファレンスに参加した社内のPHPエンジニアがイベントをレポートしましたので、ご紹介したいと思います。 各セッションのスライドについては以下にまとめましたので、ご活用いただければ幸いです。 No タイトル 1 SPAのAPI開発の「やりづらさ」をDDDと

                                    ラクスのPHPエンジニア12人によるPHPカンファレンス2020参加レポート - RAKUS Developers Blog | ラクス エンジニアブログ
                                  • PHPerKaigi 2021 スライドまとめ - Qiita

                                    PHPerKaigi 2021 とは 公式サイト https://phperkaigi.jp/2021 公式Twitter https://twitter.com/phperkaigi ハッシュタグ #phperkaigi PHPerによるPHPerのためのお祭り! 日時 3/26(金) 16:00 - 前夜祭 3/27(土) 10:00 - 本編1日目 3/28(日) 10:00 - 本編2日目 PHPerKaigi 2021 YouTube再生リスト PHPerKaigi 2021 ブログリンク一覧 PHPerKaigi 2021 ブログリンク一覧 PHPerKaigi 2021 スピーカー一覧 PHPerKaigi 2021 スピーカー一覧 タイムテーブル ニコ生の番組URLは以下です。 ■3月26日(金) day0 前夜祭 Track A: http://live.nicovide

                                      PHPerKaigi 2021 スライドまとめ - Qiita
                                    • PHPコードでの、`empty()`避けようねとか`===`のほうがベター、などは phpstan/phpstan-strict-rules を使って指摘しよう - Software engineering from east direction

                                      TL;DR PHPアプリケーションにおいて、表題のような「PHPを使う上で自制心を持とうな」みたいな温度感でstrictな書き方を推奨される昨今 こういうのは往々にして人間が言うのはそのうちげんなりしてくるし、逆に言われる方も同じ PHPStanが提供しているカスタムルール phpstan/phpstan-strict-rules を使おう 前提 PHPStanを使うことを前提としています。 phpstan/phpstan-strict-rules github.com PHPStanは、「PHPStanでCustomRuleを作る」という発表でも解説されている通り、任意のカスタムルールをクラスとして定義することで、ルールを追加できます。しかし、すでにPHPStanが提供しているルールもいくつかあります。その一つが phpstan/phpstan-strict-rules です。 導入方法

                                        PHPコードでの、`empty()`避けようねとか`===`のほうがベター、などは phpstan/phpstan-strict-rules を使って指摘しよう - Software engineering from east direction
                                      • 本当に"簡単な操作"なのか?E2Eテスト自動化ツール『Autify』を導入してみた。 - Paytner Tech Blog

                                        はじめに ペイトナーのエンジニアの井齊です。 みなさんはシステムのテストをどのように行っていますか? バックエンドであれば、PHPunit, RSpec, JUnitなど フロントエンドであればJestなどで行われているかと思います。 弊社のペイトナーファクタリングのシステムではバックエンドはRailsでRSpecを使っており、フロントエンドのテストとして自動E2E(End to End)テストツールである「Autify」を使っています。 paytner.co.jp 今回はその一環として、フロントエンドのテストとして導入した「Autify」についての感想や良かった点、課題などを伝えたいと思います。 結論 直感的でわかりやすい!! AutifyのHPでも、 ノーコードと簡単な操作でスムーズにテスト作成 と紹介されておりますが、ぽちぽち画面の要素を押すだけという"簡単な操作"で、直感的にE2E

                                          本当に"簡単な操作"なのか?E2Eテスト自動化ツール『Autify』を導入してみた。 - Paytner Tech Blog
                                        • 第1回 学習用テスト ~学びを自動テストとして書く~ | gihyo.jp

                                          こんにちは、今回からコラムを書かせていただく和田(t_wada)と申します。 現代のソフトウェア開発の対象領域は、広く複雑で不確実なものになりました。この連載では、自動テスト(Automated Test)に関わるトピックを中心に、ソフトウェア開発の荒野を生き抜いていくためのプログラミングやソフトウェアエンジニアリングの考え方を書いていきたいと考えています。 初回のテーマは、学習や調査が目的のテストコードを書くテクニック「学習用テスト」(⁠Learning Test)です。では、よろしくお願いします。 二兎を追わない プログラミングのコツに、「⁠一度に2つ以上のものを相手にしないこと」があります。 未知の技術を使って問題を解決するコードを書こうとするとき、私たちは2つのものと同時に戦うことになります。未知の技術そのものと、その技術を使った問題解決の2つです。2つ以上のものを同時に取り扱おう

                                            第1回 学習用テスト ~学びを自動テストとして書く~ | gihyo.jp
                                          • PHPについて語り合うイベント『PHP TechCafe』の反響が大きかったイベント10選 - RAKUS Developers Blog | ラクス エンジニアブログ

                                            はじめに こんにちは、MasaKuです。 弊社では、PHP に関する最新ニュースの発信や気になるお題について議論するイベント「PHP TechCafe」を毎月開催しております。 本日は、PHP TechCafe とはどんなイベントなのかのご説明と、過去開催したイベントの中で特に盛り上がったイベントをご紹介させていただきます。 Web × PHP TechCafe はじめに PHP TechCafeの目的 立ち上げからの経緯 参加対象者とその理由 運営メンバー テーマ選定方針 コンテンツ作り 特に評判の良かったテーマ10選 PHPerのための「PHPと型定義を語り合う」 PHP TechCafe PHPerのための「PHPのリーダブルなコード」を語り合うPHP TechCafe PHPerのための「Laravel10の新機能」を語り合う PHP TechCafe PHPerのための「PHPD

                                              PHPについて語り合うイベント『PHP TechCafe』の反響が大きかったイベント10選 - RAKUS Developers Blog | ラクス エンジニアブログ
                                            • このPHP QAツールがすごい!2019

                                              このPHP QAツールがすごい!2019 1. PHP Conference Japan 2019 Dec 01, 2019 2. https://www.meti.go.jp/policy/it_policy/softseibi/metrics/product_metrics.pdf 3. ◼ ◼ ◼ ◼ ◼ ◼ ◼ ◼ 4. ツールの歩み brief history around PHP QA tool 5. ⚫ ⚫ ⚫ ⚫ ⚫ ⚫ ⚫ ~ 2007 6. 2008 ~ 2011⚫ ⚫ ⚫ ⚫ ⚫ ⚫ ⚫ ⚫ ⚫ ⚫ ⚫ 7. 2012 ~ 2015⚫ ⚫ ⚫ ⚫ ⚫ ⚫ ⚫ ⚫ ⚫ ⚫ 8. https://qafoo.com/talks/16_10_internation_php_conference_automating_architecture_constraint_check

                                                このPHP QAツールがすごい!2019
                                              • PHPUnit の始め方について語りあう 【PHP TechCafe イベントレポート】 - RAKUS Developers Blog | ラクス エンジニアブログ

                                                弊社で毎月開催し、PHPエンジニアの間でご好評をいただいているPHPエンジニアのための勉強会 『PHP TechCafe』。2021年9月に開催されたイベントでは「PHPUnit の始め方」について語り合いました。 社外の有識者にも参加頂いてアドバイスを受けながらPHPUnitの使い方やテストコードの書き方を学びました。 今回はその内容についてレポートします。 rakus.connpass.com PHPUnitテストコードの書き方 setUpメソッド アサーション データプロバイダ アノテーション モック 結果の確認方法 テスト実行時に値が変わるケースの実装方法 イベント参加者からの質問コーナー おわりに PHPUnitテストコードの書き方 以下のShowNoteをベースに、「PHPUnit導入の目的」 ~ 「入門にあたり押さえておくべきポイント」などに ついてディスカッションしました。

                                                  PHPUnit の始め方について語りあう 【PHP TechCafe イベントレポート】 - RAKUS Developers Blog | ラクス エンジニアブログ
                                                • Lancers本番環境のコンテナ化が完了しました | ランサーズ(Lancers)エンジニアブログ

                                                  Lancers Engineer Blog をご覧のみなさんこんにちは。開発部/技術基盤 SREの安達(@adachin0817)です。以下前回のブログから3ヶ月経ちましたが、ついにLancersのBatch、AppサーバーをEC2からECS/Fargateに移行完了しました。 そして長年自前で運用していたデプロイシステムを廃止して、CI/CDはCircleCIに完全統一しました。これにて、Lancersの全サービスをコンテナに移行完了となりました。 ※見ていない方はぜひ一読してもらえると幸いです。 ・LancersをAmazon Linux2へログ基盤のリニューアルと管理画面をECS/Fargateに移行しました 旧開発環境、EC2での運用課題 Ansibleコンテナによる開発環境の統一により工数がかかる 本番コンテナ化以前は、EC2で利用しているAnsibleの管理を開発環境にも適用す

                                                    Lancers本番環境のコンテナ化が完了しました | ランサーズ(Lancers)エンジニアブログ
                                                  • 【株式会社ラクス】SaaSプロダクト別の技術スタックを一挙公開! - RAKUS Developers Blog | ラクス エンジニアブログ

                                                    (本記事は2023/10/2時点の情報にアップデートしております) こんにちは、技術広報のyayawowoです。 突然ですが、株式会社ラクスと聞いて何を思い浮かべますでしょうか? 弊社ラクスでは、様々なプロダクトを展開していますが正直認知度は低いと思っております。 そこで今回、弊社についてもっともっと知っていただくため・・・ ラクスが展開している全10プロダクト 全10プロダクトの技術スタック インフラ/SRE/デザイナーの技術スタック について、ご紹介させていただきます! SaaS開発に携わる方、弊社に少しでも興味を持っている方の一助となれば幸いです! ラクスが展開している全10プロダクトとは? バックオフィス向け フロントオフィス向け 10プロダクトの技術スタック 楽楽販売 楽楽精算 楽楽明細 楽楽電子保存 楽楽勤怠 MailDealer 配配メール Curumeru blastmai

                                                      【株式会社ラクス】SaaSプロダクト別の技術スタックを一挙公開! - RAKUS Developers Blog | ラクス エンジニアブログ
                                                    • 本番環境でやらかしちゃったかもしれない話 2021-12-22 - Qiita

                                                      本番環境でやらかしちゃった人 Advent Calendar 2021 22日目。 log4jの脆弱性CVE-2021-44228を狙った攻撃が多発していますね。 ご存知の方も多いと思いますが、私のサーバにもこの日(12/10)から多くの攻撃者が訪れています。 FortiGuard Labs Weekly Threat Briefsでは、毎週どんな攻撃が流行っていたのか、週ごとにまとめて紹介しています。12/17掲載記事 Log4j.Error.Log.Remote.Code.Execution が初登場で 検出数で1位を獲得しました。ThinkPHPやPHPUnitなど、昨年春からTOP5に鎮座していた競合からトップを奪取しました。すごいことです。 今回は、なんとlog4jさんのノック攻撃に返信してしまい、さらなる攻撃(第二波、第三波...)を受けるという失態を犯してしまいました。 皆さ

                                                        本番環境でやらかしちゃったかもしれない話 2021-12-22 - Qiita
                                                      • PHP-ScoperでWordPressプラグインのコンフリクトを解決する – Capital P – WordPressメディア

                                                        PHPにはcomposerという高度なパッケージ管理ツールが存在しており、WordPressでもcomposerを利用した開発がさかんに行われている。しかし、ついにコンフリクトが発生するようになったため、その解決方法と知見を共有したい。本記事の対象読者は以下の通り。 プラグインを作成している。 テーマを開発しているがプラグインで問題が起きた。Uncaught Error: Call to undefined method GuzzleHttp\Utils::chooseHandler() と言われた。 開発者ではないユーザーにとっては、「そういうプラグインを使わない」という解決策しかないので、ご了承いただきたい。では、本題に入ろう。 なぜコンフリクトが発生するか composerは基本的に「プロジェクト単位で1つ」という暗黙の前提が存在するツールである。たとえばPHPのフレームワークLar

                                                          PHP-ScoperでWordPressプラグインのコンフリクトを解決する – Capital P – WordPressメディア
                                                        • Circle CI で mysql-client が apt-get install できなくなってCI環境が壊れた話 - ユアマイスター株式会社エンジニアブログ

                                                          どうも。ユアマイスター星(@inase17000)です。 circle ci で mysql-client のインストールで失敗するようになった。ハマリング。— 星 永亮@ユアマイスターCTO (@inase17000) July 15, 2019 ある日突然Circle CIのビルドが通らなくなり、つらい思いをしたのでシェアしておこうと思います。 暫定ではありますが解決済みですので、万が一同じことで困ってる人がいたら途中は読み飛ばしてください。 背景 ユアマイスターでは Circle CI を使って、mysqlのコンテナを立ち上げ、CakePHP/PHPUnitでテストを動かしています。 その際、テスト用データベースの作成のために、mysqlコマンドを使う必要があるのですが、Circle CIのデフォルトのイメージにはインストールされていないので、自前で入れる必要があります。 .circ

                                                            Circle CI で mysql-client が apt-get install できなくなってCI環境が壊れた話 - ユアマイスター株式会社エンジニアブログ
                                                          • 【最強のプルリクレビュー環境】 GitHub ActionsとPHPStanを繋げてPRのコード上に自動で静的解析のエラーが出てくる仕組みを作る - Qiita

                                                            【最強のプルリクレビュー環境】 GitHub ActionsとPHPStanを繋げてPRのコード上に自動で静的解析のエラーが出てくる仕組みを作るPHPGitHubPHPStanGitHubActions GitHubでプルリクをレビューするとき、こんな風にコード上に勝手にエラーがあるよ!って表示されたら嬉しいなあということがあります。 わざわざCIの実行結果を見に行ってひとつひとつエラーを確認するのは面倒ですからね。 というわけで、今回は上の画像のように自動でエラーがコード上に現れて教えてくれる環境をGitHub Actionsで作りたいと思います。 大前提 PHPStanがプロジェクトに導入されている 今回はPHPStan 1.5.4を使用して検証しています PHPStanが入ってないと話が始まらないので、まずは入れておきましょう。 GitHub ActionsからPHPStanが走るよ

                                                              【最強のプルリクレビュー環境】 GitHub ActionsとPHPStanを繋げてPRのコード上に自動で静的解析のエラーが出てくる仕組みを作る - Qiita
                                                            • PHP カンファレンス 2019 登壇資料まとめ - Qiita

                                                              敬称略 Track 1 PHPの今とこれから2019 廣川 類 https://www.slideshare.net/hirokawa/php2019-202563364 コミュニティアップデート powered by GMOインターネット GMOインターネット株式会社 思想と理想の果てに -- クリーンアーキテクチャのWEBフレームワークを作ろう 成瀬 允宣 https://nrslib.com/phpcon-2019-proposal/ PHPUnit: Past, Present and Future Sebastian Bergmann オニギリペイのセキュリティ事故に学ぶ安全なサービスの構築法 徳丸浩 https://www.slideshare.net/ockeghem/phpconf2019 Track 1 - LT Laravel + Nuxt.js + Firebaseで

                                                                PHP カンファレンス 2019 登壇資料まとめ - Qiita
                                                              • The New Life of PHP – The PHP Foundation | The PhpStorm Blog

                                                                IDEs AppCode CLion DataGrip DataSpell Fleet GoLand IntelliJ IDEA PhpStorm PyCharm RustRover Rider RubyMine WebStorm Plugins & Services Big Data Tools Code With Me Quality Assurance JetBrains Platform Scala Toolbox App Writerside JetBrains AI Team Tools Datalore Space TeamCity Upsource YouTrack Hub Qodana .NET & Visual Studio .NET Tools ReSharper C++ Languages & Frameworks Kotlin Ktor MPS Amper Edu

                                                                  The New Life of PHP – The PHP Foundation | The PhpStorm Blog
                                                                • 誤解されることが多い「テスト自動化」の範囲について - Qiita

                                                                  1 概要 近年、「テスト自動化」と言う用語が話題になることが多いです。 しかし、特に初学者の方が「テスト自動化」と表現される場合、「単体テストの自動化」のみをターゲットにされている方が多いように感じています。 テストの工程や種類(タイプ)には単体テスト以外にも様々なものがあり、それらの種類を押さえたうえで「どこまでのテストが必要」で、「どこまでが自動化できているか」を把握されることが重要と考え、まとめてみました。 2 テスト工程について テストの工程には、以下のようなものがあります。 なお、ここでの工程はプロジェクトごとに呼び方が違いますので、一例とお考え下さい。 ① 単体テスト 単体テストは、「ユニットテスト」、「コンポーネントテスト」、「モジュールテスト」、「プログラムテスト」などとも表現されます。 テスト対象としては「単体のプログラム」となり、メソッドや関数などの単位でのテストを行い

                                                                    誤解されることが多い「テスト自動化」の範囲について - Qiita
                                                                  • ピクシブ百科事典のテストにphp-mysql-engineを導入しました - pixiv inside

                                                                    はじめましての方ははじめまして、アルバイトとして働いているJavakkyです。 本記事では、データベースを利用するアプリケーションのテストに利用できるphp-mysql-engineというライブラリの導入方法と使用感について紹介します。 github.com php-mysql-engineとは php-mysql-engineは動画共有サイトを運営するVimeo社が開発しています。このライブラリの目論見はVimeo Engineering Blogで説明されています。 medium.com このライブラリはVimeo社のMatt Brownさんが二年前に開発していたhacktophpを用いて、Slack社がHackで実装したslackhq/hack-sql-fakeをPHPコードに変換したものを下敷きにしています。 開発者のMatt Brownさんは、静的解析でVimeo社のコードを改善

                                                                      ピクシブ百科事典のテストにphp-mysql-engineを導入しました - pixiv inside
                                                                    • 【感想】『レガシーコードからの脱却』:既存のやり方を越えたその先の探求 - Rのつく財団入り口

                                                                      レガシーコードからの脱却 コロナウィルス騒動でIT系イベントの中止が相次ぐ最近ですが、技術書の感想エントリです。「ITエンジニア本大賞 2020」の技術書部門大賞も受賞した2019年9月刊行の本。名著の予感がしていたのでAWS認定に受かってから読むことにして、楽しみに取っておいてありました。 文脈によって「テストコードのないコード」などの意味で使われることもある「レガシーコード」ですが、本書では「修正や拡張、作業が難しいコード」と定義しています。 一見するとレガシコードを避けるためのプログラミングテクニックに焦点を当てた本にも思えますが、帯に「レガシーコードを初めから作らない」とあるように焦点はプロセス。レガシーコードを生み出さないような開発形態、手法、エンジニアとしての在り方などを総合的に述べた本となっています。 www.oreilly.co.jp メインはレガシーコードをビヨンドしてい

                                                                        【感想】『レガシーコードからの脱却』:既存のやり方を越えたその先の探求 - Rのつく財団入り口
                                                                      • CakePHP 2 のテストを PHPUnit 9で動かしてみた - BASEプロダクトチームブログ

                                                                        基盤チームに所属している @okinaka です。 個人的には CakePHP とは長い付き合いで、もう14年以上になります。 BASE の事業においても10年間ずっと支えてくれている大変ありがたい Web フレームワークです。 以前から BASE の多くのコードはまだ古い CakePHP 2 (v2.10.24) 上で動作していることが課題になっています。 CakePHP 自身は順調に開発が継続されていますが、2系から3系へのバージョンアップはなかなか困難で二の足を踏んでいました。 そうこうしているうちに古いバージョンの2系は既に公式でのサポートは切れているうえに PHP 8.0 未サポートの状態です。 さすがにそのまま継続して利用するのは無理があるので、数年前から、より柔軟にシステムを構築するためのアーキテクチャ再設計をすすめています。 その成果は上がってきているのですが、単純なフレー

                                                                          CakePHP 2 のテストを PHPUnit 9で動かしてみた - BASEプロダクトチームブログ
                                                                        • Laravel 6 ディレクトリ・ファイル構造 - Qiita

                                                                          artisan readme.md server.php composer.json composer.lock phpunit.xml package.json .editorconfig .env .env.example .gitattributes .gitignore .styleci.yml webpack.mix.js イントロダクション Laravelのデフォルトアプリケーション構造はアプリケーションの大小にかかわらず、素晴らしいスタートを切ってもらえることを意図しています。アプリケーションは皆さんのお好みに応じ、自由に体系立ててください。クラスがComposerによりオートローディングできるならば、Laravelはクラスをどこに配置するか強制することはまずありません。 modelsディレクトリはどこにある? Laravelを学習し始めるとき、多くの開発者は models

                                                                            Laravel 6 ディレクトリ・ファイル構造 - Qiita
                                                                          • Linuxでも「ブラックリスト」「スレーブ」などの用語を変更へ

                                                                            印刷する メールで送る テキスト HTML 電子書籍 PDF ダウンロード テキスト 電子書籍 PDF クリップした記事をMyページから読むことができます Linus Torvalds氏は米国時間7月10日、Linuxのカーネルコードやドキュメントでの新しい、よりインクルーシブ(包括的)な用語の使用を承認した。 Linux開発者らは今後、master/slave(マスター/スレーブ)やblacklist/whitelist(ブラックリスト/ホワイトリスト)の代わりに新たな用語を使用するよう求められる。 マスター/スレーブの代替としては以下が提案されている。 primary/secondary(プライマリー/セカンダリー) main/replicaまたはsubordinate(メイン/レプリカまたは従属物) initiator/target(イニシエーター/ターゲット) requester/

                                                                              Linuxでも「ブラックリスト」「スレーブ」などの用語を変更へ
                                                                            • Laravelに1行足すだけでOpenAPIを吐き出せるものを作った - ROXX開発者ブログ

                                                                              この記事は個人ブログと同じ内容です。 kotamat.com SPA + API構成でLaravelを使っているところも多いかと思いますが、双方の通信のインターフェースを担保するのに皆さんはどうしているでしょうか。 REST APIのスキーマ定義としてOpen APIが現在主流かとは思いますが、スキーマ定義言語そのものが最初に作ったら終わりというものではなく、サービスが続く限りメンテナンスをし続けなければならないものであるため、特にサービスロンチ前のプロダクトでは得られる恩恵よりもコストが上回ってしまうために嫌煙されてしまうこともあるかと思います。 一方でOpenAPIを書いておくと、インターフェースから型定義を生成できるため、通常開発以上のコストを払わなくて済むのであれば、ぜひとも導入しておきたいものかと思います。 今回は過去に作った kotamat/laravel-apispec-ge

                                                                                Laravelに1行足すだけでOpenAPIを吐き出せるものを作った - ROXX開発者ブログ
                                                                              • 【個人開発】実務経験約6ヶ月の僕が実務で使ってない技術だらけでWebアプリを0から開発してみた話 - Qiita

                                                                                ポイントとしてはarticlesテーブルにprefecturesやcompany_types、phaseの情報をベタでINSERTせずにそれぞれのテーブルで値を保持しておき、articlesテーブルではそのidを参照するように外部キー制約を設定しました。(正規化っていうらしい) 詳しいことは上のER図をみていただければわかるかなと思います。 僕はこれまでER図を書いたことがなかったので1から勉強しました。 初めはリレーションあたりが「?」でしたが、めっちゃググって理解できました。ググった中でも特にわかりやすかった記事を下にピックアップします↓ VSCodeでDraw.ioが使えるようになったらしい! エンティティとリレーションシップ やさしい図解で学ぶ ER図 表記法一覧 9.ソース管理 ソース管理は皆さんお馴染みのGit/GitHubです。 個人開発なのでGitHub Flowでソース管

                                                                                  【個人開発】実務経験約6ヶ月の僕が実務で使ってない技術だらけでWebアプリを0から開発してみた話 - Qiita
                                                                                • PHP Conference Japan 2022 に BASE から4名のエンジニアが登壇及び協賛します - BASEプロダクトチームブログ

                                                                                  2022/09/24(土) 〜 2022/09/25(日)の日程で開催される PHP Conference Japan 2022 で BASE に所属する4名のエンジニアが登壇します。 phpcon.php.gr.jp BASE はこれまでも PHP カンファレンスへの登壇並びに協賛をしています。 PHPカンファレンス2021に5名のメンバーが登壇・プラチナスポンサーとして協賛しました - BASEプロダクトチームブログ PHP Conference Japan 2020に4名のメンバーが登壇!プラチナスポンサーとして協賛しました! - BASEプロダクトチームブログ PHP Conference Japan 2019に3名のメンバーが登壇・プラチナスポンサーとして協賛しました - BASEプロダクトチームブログ 「PHP Conference 2018」にゴールドスポンサーとして参加しま

                                                                                    PHP Conference Japan 2022 に BASE から4名のエンジニアが登壇及び協賛します - BASEプロダクトチームブログ