以下に移行しました。 kenzo0107.github.io

以下に移行しました。 kenzo0107.github.io
(7/3 14:05追記)Javaに関する記述について誤認があったので盛大に書き換えました。Java 6、Java 7、Java 8それぞれで実装が変わっていたようです。 (7/13 23:55追記)本記事中ではroundを四捨五入と言い切ってしまっています。これは筆者がC99のroundを基準に考えているためですが、言語によっては偶数丸めになっているround関数も珍しくありません。ご注意ください。 PHPのround関数について、ネット上で次のような記述を見つけました。 PHP 四捨五入の計算を間違える唯一の言語として畏れられていましたが、そのバグは治っているかもしれません(治ってないかもしれません) 主要なプログラミング言語8種をぐったり解説 - 鍋あり谷あり 各言語を面白おかしく紹介する内容とはいえ、ずいぶん雑な理解だなーという印象です。ゆるふわな話だけでPHPがdisられ続けるの
2019-02-10 追記: SonarQubeではなくPHPStanで同様のことをする記事も書きました。いま個人開発ならこちらがを選ぶことも多そうです。 LaravelプロジェクトのコードをCircleCI上のPHPStanで静的解析してreviewdogにコメントしてもらう SonarQubeはオープンソースの静的解析ツール 一言で言うと「コードのダメな部分を教えてくれるやつ」です。LGPLライセンス。 下のようなこんな感じでコード品質の推移が一覧できます。また、コードごとに何が悪いのか、どう直すべきなのかを見ることができます。(画像はDrupalの解析結果) オンプレ環境で使えるのがメリットで、GitHubで個人のプロジェクトを解析するなら、各種静的解析SaaSを使うのが簡単なのでおすすめです。 PHP向け静的解析SaaSの主観的比較 (Scrutinizer, SensioLabs
先日別のチームから、 「PHPで作成したWebアプリの速度が遅いので助けてくれー」 という相談を受けた。 対応したものの、結構時間がかかって面倒だったので、 今後こういった問題が起こった時に使えるよう、チェックリストをまとめてやった。 基本的な内容だけど、 このチェックリストの内容をやってみて、それでもダメなら相談しなさい、 と伝えておくことで相談を減らすフィルタとして働いてくれるはずだ。 PHPプロジェクトに限らず、バックエンドでデータベースを使用している Webアプリのプロジェクトなら試す価値のあるものが多いはず。 調査や対応方法の手軽さ順で並べるとこんな感じ: Webブラウザのデベロッパーツールでレスポンスを計測する Webサーバ(Apache)のリクエスト時間をログに出力する ログ解析ツールでURL毎の付随リクエスト数を確認する データベースのスロークエリログを出力する プロファイ
2021年2月26日追記 最近は PCOV が良いらしいです。 PCOV は PHPUnit8 以降の対応なので、この記事は PHPUnit8 未満の方向けです。 2021年8月2日追記 が、phpdbg と比べてカバレッジが下がってしまう場合もあるようです ユニットテストの評価に、コードカバレッジを使用することは、よくあると思います。 従来より、 PHPUnit にはコードカバレッジ解析機能が実装されており、 HTML をはじめとするいくつかの形式で、レポートを出力可能です。 PHP5 では、 xdebug が提供するステートメントカバレッジ機能が利用されてきましたが、これが大変遅く、1100 Assertions ほどの EC-CUBE3 のカバレッジを出力するまで、2時間以上かかります。 しかも、速い CPU にしても大して速くならないのです。 Windows 環境では特に遅くなるら
Post author:sider Post category:Engineering / Other Reading time:3 mins read Post published:2016-01-13 エンジニア x ニッチ(特化)なサービスを調査、「これは流行りそう…!」と思ったサービスを10個ご紹介。 誰もが知っていそうなサービスは含んでません。「俺はエンジニア向けサービス詳しいぜ!」という方も安心して御覧ください。 CI(継続的インテグレーション) DEPLOYBOT デプロイのためだけのCIサービス。デプロイに特化。 リリースノートページやリリースの度にリリース内容をメモする事が出来る機能、デプロイのトリガーを手動で実行することが出来る「デプロイ」ボタン機能などがある。 1リポジトリの「Hobby」ユースであれば永年無料。 deploybot.com Codecov コードのテ
新年明けましておめでとうございます。GMOメディアの流しエンジニア、山田コーダーです。さて、ようやく弊社でもPHP 5.3、5.4系のプロジェクトの5.6化が一段落してまいりました。 PHP 5.6のリリースが2014年ですので今更感がありますが、「レガシーなPHPプロジェクトのバージョンアップに困っている」「使いたいライブラリーが5.3に対応してないからバックポートした」などという悲痛な声を目にしたこともあり、これからPHPのバージョンアップをされる方たちへのささやかな参考資料になればと思い、書かせていただきました。 さて、まずは本題に入る前に結果からお見せしようと思います。以下はNew Relic(アプリケーションのパフォーマンス監視サービス)のレスポンスタイムのグラフです。なおこのプロジェクトでは、ブラウザー表示用HTMLを出力するサーバー(Web 約10台)と、スマートフォンアプリ
PHPはよくDISられることがあります。しかし、実際にはほとんどPHPを利用していない人が印象だけでDISってることが多いような気がします。 そこで、PHPがよくDISられている点について、実際どうなのかをPHP未体験者向けに解説していきたいと思います。PHPを触ったことない人でもわかりやすいようにシンプル目な仕様のRubyを例に説明していきたいと思います!( Ruby触ったことなくても、その他のOOP言語を触ったことあれば雰囲気は理解できるように書いています ) DIS例1 / PHPは配列操作がしづらい PHPの配列操作は扱いづらい等とDISる人たちがいます。実際のところどうでしょうか。 以下のような処理を配列への中間変数を用いず行うコードを例に考えてみます。
2015年11月にリリースされるというPHP7。エンジンも換わり、それに伴ってパフォーマンスも向上していると言われています。しかしその結果、これまで使えていた書き方ができなくなっています。 そこでこれまでのPHPアプリケーションをphp7ccを使ってチェックしてみましょう。PHP7に対応しているかどうか、チェックしてくれます。 php7ccの使い方 php7ccは以下のように対象になるファイル、またはディレクトリを渡すだけで使えます。 $ /usr/bin/php bin/php7cc.php src/File.php Checked 1 file(s) in 0.005065 second(s) エラーがあると、ファイル名と行数、それと理由が表示されます。 $ /usr/bin/php bin/php7cc.php ~/htdocs/ File: /path_to_file/func.p
仕事で使っているPHPアプリケーションをPHP7 beta1で動かしてみたらそのままでは動きませんでした。 私が実際にはまった点を紹介します。 なお、PHP7の変更点についてはhnwさんの記事に詳しく網羅されているのでご一読ください。 PHP7で変わること - hnwの日記 Apacheのモジュール名が変わっていた ApacheにPHPを組み込むためのモジュール(俗にいうmod_php)のモジュール名・ファイル名が変更になっていました。 LoadModule php5_module modules/libphp5.so ↓ LoadModule php7_module modules/libphp7.so memcache extensionがインストールできない PHPからMemcachedを使うためのExtensionには2つあります。 memcache memcached memca
Googleは同社ブログにおいて、「Google App Engine for PHP」のベータテストの終了と、一般公開の開始を発表した。 App Engine for PHPは1年以上にわたってベータテストが実施されてきている。なおPHPは、Python、Java、Goに続き、App Engineで4番目にサポートされたスクリプティング言語だ。 App Engineは、「Google Cloud Platform」上でユーザーが自らのアプリケーションの開発や実行を行えるようにするPlatform as a Service(PaaS)だ。 なお5月には、「Google App Engine for Java」のパッチ未適用の脆弱性に関する詳細が明らかにされている。 これらの脆弱性はセキュリティ専門企業Security Explorationsによって発見されたものだ。同社は、これら脆弱性の
ファーストサーバーといえば、ファーストサーバ岡田良介社長、新幹線で全裸になって逮捕とかファーストサーバ障害、深刻化する大規模「データ消失」の事案で有名な会社ですが、この会社の提供する共用サーバーもなかなかぶっ飛んでました。 VPSやクラウドサービスが浸透した現代では驚くほど時代遅れ且つ特殊です。 何も知らない私がいつものノリでLaravelアプリをファーストサーバーにデプロイしたら、全然まともに動かず、すごく苦労させられました。 私と同じような苦労をする方が出ないことを願って、その原因と対策方法を紹介します。 このお話に出てくるサーバーはファーストサーバーの共用サーバーで、PHPのバージョンは5.3.19です。 なんでそうした?PHPのconfigureオプション ./configure --enable-cgi --with-config-file-path=/usr/local/lib
Wandbox for PHP/Hack @melpon さんと @kikairoya さんが作成された Wandbox をベースに、PHP を異様に充実した形にして公開しました。 サポートする言語 PHP Hack (HHVMのみ) サポートする処理系 PHP 5.2~ HHVM (比較的新しいリリースとLTSと開発版スナップショット) Quercus (JVMで走るPHP処理系) HippyVM (RPython(PyPy)で実装された処理系) PyHP (RPython(PyPy)で実装された処理系) PHPPHP (PHPで実装された処理系) その他の機能 PHP_CodeSniffer によるコーディングスタンダード逸脱の検出 PHPMD による静的解析 phpcpd によるコピペ検出(事実上使い道がない) 何が嬉しいか? 関数の動作の確認を手軽に行いたい場合や遭遇した問題を最小
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く