PHP BLT とは
概要は下記イベントページより
https://phpblt.connpass.com/event/55972/
私の感じたイベントの雰囲気などなど
PHP BLTと銘打っているもののPHPのお話でなくても全然ok!
ほんとは↓くらいタグつけたかったのですが5個までと怒られましたw
php css golang composer mBaaS laravel heroku backStopJS GOF GCP GitLab PHP7 Scrutinizer codacy Codecov
雰囲気としては、とても柔らかめ。マサカリが飛んで来ることもありません(多分)
私はこういうイベントで登壇したことありませんが、
次は登壇してみようかなと思うような場でした
そんな雰囲気を作ってくださった運営(メルカリさん)の皆様に感謝です。
あと、飲食物の提供もあったので腹ペコで向かった私はとても助かりましたw
LTについての雑感
19:10分過ぎについてしまったので私が聞いた範囲のものから順にメモを記そうと思います。
タイトルをメモるのが間に合わなかったりしたのでざっくりな
タイトルとなってしまうことお許しください。
あと、ここ違うんだけどってことあれば編集リクエストなり、
コメントなりいただければと思います。
すぐに修正させていただきます。
Saasのお話
自分たちでツールは作らずに便利なSaaS使ってくのはどうかというお話
紹介いただいた下記2点は、実際にトライアルから使ってみたいなと思いました。
codacy
複数の静的解析ツールを可視化。Scala界隈では有名らしい
issuesのスコアが時間制。勝手に計算してくれる
どこからリファクタすればよいかも教えてくれる
例えば最短ルートなど
codeCov
1コミット毎に評価してくれる
カバレッジ下がったらマージさせないなどできる。おもしろい
NCMBのお話
NCMB → mBaaS
KVSなデータストア等の機能がある
モバイル系のSDKは入っている
PHPも対応!!(登壇者の方が作成!)
Parseを参考に作ったとのこと(mBaaSのサービス)
2017/01/28にサービスは終了したみたいです。
Laravel Collectionの話
結構laravel使ったことある人いましたね、4系なのでしょうか、5系なのでしょうか
Collectionが実装しているpublicメソッドの数を調べるために
リフレクションクラス使って云々はなるほどなーと思いました。
interfaceのメソッドの抽出とかやってみたいと思ってるので
↑のやり方真似すればうまくいくかな。。
laravelのCollectionは大体やりたいことできると思うので
公式とりあえずみておきましょう、損はしないはずです
登壇者の方の記事
ほんとにCollectionメソッド全部書いて、テストしてます、気合が違いますね。。
Coveralls migration
カバレッジ計測、静的コード解析のサービス
php-coveralls
TravisCI-php7.1対応を頑張ってくださっている
早くマージしてほしいのに、prophecyを使おうとか注文が多く苦労したみたいです
(prophecyについては、 この記事 がわかりやすかったです)
プルリクを見てもらっているから丁寧な対応を心がける、誠意が大事ですね。。
OSSへの貢献してみようかなと感化されました。
phperのためのgolangのお話
phpstormでgolangはゴリゴリ書ける!
Ctrl+ ~ プロジェクト切り替えが簡単!
関数の型宣言必須!php7の人には嬉しい。
golangでレシーバは使ったことなかったから理解しておきたいなぁ。
書き方はしっくりこないですねー。
その点、Rustはtraitっていうのが好きです
Herokuでphpとnodejs
困ったときは公式を熟読しよう。検索結果が新しいとは限らないので。
herokuって便利なんだろうけどデプロイすんなりいかないと
嵌りそうで怖い。
ただそれも一回きりなんだろうけど汗
backStopJSとCSS
変更の前後でスクショを取って差分をチェックできる
laravelで動作サンプルも作ってくださってる
スライド
Event Dispatcher
コードリーディングより生まれた疑問を噛み砕いて
解説してくださった。
該当していたのはsymfony-eventdispatcher
observerパターンについて
スライド
GCPで無料枠のサーバを立てるときにハマりそうなこと
支払いログを設定しよう
バケット名の付け方には注意
us-*リージョンが無料。インスタンスはmicroを使う。
固定IPも無料。
freenom.com, 無料ドメインとれるみたいです、知らなかったです。
composerパッケージについて
ライセンスについて、
ライセンスは必ず書くべき。
合法的に編集できなくなる
GPLライセンス, Apache2.0, MIT
conposer.jsonで痛い目にあったのだろうか、
require部分のファイル編集は絶対ダメと熱が入っておりました。
すごいわかりますねw
同じことで
composer updateは不用意にうったらいけません
phpの使ったことない機能について
V8js入れたかったけど、断念。
$ pecl ~
のワンライナーでは入らないみたいですね
Vのお話
webアプリケーションにおけるViewのお話
インラインで書かれたjsなど↓
Viewがなぜ乱れるか
扱う職種が様々
書き方も様々
jsでオブジェクティブに書ける人は少ないから難しそう、、
負債を作らないようなチームづくり、レビュー文化
余談
docker for Macにedgeバージョンあるなんて知らなかったです。
教えていただきありがとうございました!
これ使えばローカルのdocker環境が1.5倍くらい早くなるはず。。!
今のところはdocker-sync使ってますが
開発早くて不安定になりそうなのが怖いので。。
GitLab CI / Review Apps
ymlでブランチごとのレビュー環境が作れるようです
DB連携は未対応とのこと
gitlabは機能追加が早いので時間の問題なのかなと思います。
Debug Interactively
php -a
使ったことなかったです。。
↓さらにリッチなもの
psysh
configファイルにautoloadファイルとか読ませれば
自分のリポジトリだけの環境ができるようです
いつまでphp5.X使ってるの
php5.5以下はサポート切れてるからどうにかしようね、どうにか
php7.0.*も今年でアクティブサポートが切れる。
↑これは知らなかったので、今動いているphp5.6アプリケーションは7.1にしないとですね
php7cc, php7mar マイグレーション支援系のツール
まとめ
静的解析ツールやテストのお話が多かったような印象です。
コードが読みやすいに越したことはないのでこの辺の技術共有は
自分からも発信していきたいですね。
そして、エンジニアを支えるこういったツールを作ってくれる会社に還元できればと。。
別の静的解析ツールでscrutinizerを耳にしました。
結局のところ何がいいのでしょうか、オススメあったら教えていただきたいです。。
私のチームではCIにJenkinsを使っていて、XDebugのカバレッジは見れるのですが
よくわからない(見づらい)のでCodacy等リッチなGUIを使いながら
気持ちよく技術的負債が減らせる環境を作りたいですね。