Submit Search
Upload
レガシーコード In WordPress
•
6 likes
•
14,618 views
M
mask_legacy
Follow
LT from phpcon2013
Read less
Read more
Report
Share
Report
Share
1 of 21
Download now
Download to read offline
Recommended
WEBエンジニア勉強会 #01 (東京都, 新橋) - connpass https://connpass.com/event/57201/
Webエンジニアがスタートダッシュをキメるためのローカル開発環境の勘所
Webエンジニアがスタートダッシュをキメるためのローカル開発環境の勘所
Y Watanabe
ES6,Node.js,npm,sass,typescript,angular,react...フロントエンドはあまりにもめまぐるしく、JavaScriptカウボーイですら暴れ馬から振り落とされ気味です。この勉強会では、フロントエンド技術の良し悪しではなくとにかく便利なものは使ってみようという視点から、src/main/java, src/main/resources のようなソースコードツリーにフロントエンド技術を取り入れる足がかりについて、ハンズオン形式でお送りします。
サーバーサイドな人がフロントエンド技術と仲良くするはじめの一歩
サーバーサイドな人がフロントエンド技術と仲良くするはじめの一歩
Y Watanabe
C4K Meetup発表資料。TDDの基礎を解説しPythonを使ったデモを行なった。
テスト駆動開発入門 - C4K Meetup#2
テスト駆動開発入門 - C4K Meetup#2
Masashi Shibata
2021年12月1日ラクス様主催のコードレビュー LT会でLTしたときの資料です。
レビューで保守性のためにした コメントをふりかえってみた
レビューで保守性のためにした コメントをふりかえってみた
Takhisa Hirokawa
ver1.1を参照してください。 https://www.slideshare.net/tanakata/q-ver11
(過去バージョン) Q#基礎 ver1.0
(過去バージョン) Q#基礎 ver1.0
Takayoshi Tanaka
Q#を始める人向けのまとめ資料 v1.1。Quantum Development Kit 0.3に対応。
Q#基礎 ver1.1
Q#基礎 ver1.1
Takayoshi Tanaka
Selenium再入門 W3C勧告とページオブジェクトパターンと私 透明人間がブラウザを操作するかのようにテストしてくれるSelenium. まだキワモノ扱いだった初期から、web driverの登場、w3c勧告、そしてheadless chromeへと、いまも進化し続けています。簡単なデモを交えてざっくりとお話しします。 https://connpass.com/event/60947/ WEBエンジニア勉強会 #02 (東京都, 神田)
Selenium再入門-W3C勧告とページオブジェクトパターンと私-201707webエンジニア勉強会#2神田
Selenium再入門-W3C勧告とページオブジェクトパターンと私-201707webエンジニア勉強会#2神田
Y Watanabe
目黒.es #6 で発表 freeCodeCampの紹介と、よく質問を受ける「やっておいた方がいいプログラミング言語ってありますか」について考えました。
プログラミング初心者に ECMAScript(JavaScript) を最初の言語として勧めるべき? Meguro es6
プログラミング初心者に ECMAScript(JavaScript) を最初の言語として勧めるべき? Meguro es6
健太 田上
Recommended
WEBエンジニア勉強会 #01 (東京都, 新橋) - connpass https://connpass.com/event/57201/
Webエンジニアがスタートダッシュをキメるためのローカル開発環境の勘所
Webエンジニアがスタートダッシュをキメるためのローカル開発環境の勘所
Y Watanabe
ES6,Node.js,npm,sass,typescript,angular,react...フロントエンドはあまりにもめまぐるしく、JavaScriptカウボーイですら暴れ馬から振り落とされ気味です。この勉強会では、フロントエンド技術の良し悪しではなくとにかく便利なものは使ってみようという視点から、src/main/java, src/main/resources のようなソースコードツリーにフロントエンド技術を取り入れる足がかりについて、ハンズオン形式でお送りします。
サーバーサイドな人がフロントエンド技術と仲良くするはじめの一歩
サーバーサイドな人がフロントエンド技術と仲良くするはじめの一歩
Y Watanabe
C4K Meetup発表資料。TDDの基礎を解説しPythonを使ったデモを行なった。
テスト駆動開発入門 - C4K Meetup#2
テスト駆動開発入門 - C4K Meetup#2
Masashi Shibata
2021年12月1日ラクス様主催のコードレビュー LT会でLTしたときの資料です。
レビューで保守性のためにした コメントをふりかえってみた
レビューで保守性のためにした コメントをふりかえってみた
Takhisa Hirokawa
ver1.1を参照してください。 https://www.slideshare.net/tanakata/q-ver11
(過去バージョン) Q#基礎 ver1.0
(過去バージョン) Q#基礎 ver1.0
Takayoshi Tanaka
Q#を始める人向けのまとめ資料 v1.1。Quantum Development Kit 0.3に対応。
Q#基礎 ver1.1
Q#基礎 ver1.1
Takayoshi Tanaka
Selenium再入門 W3C勧告とページオブジェクトパターンと私 透明人間がブラウザを操作するかのようにテストしてくれるSelenium. まだキワモノ扱いだった初期から、web driverの登場、w3c勧告、そしてheadless chromeへと、いまも進化し続けています。簡単なデモを交えてざっくりとお話しします。 https://connpass.com/event/60947/ WEBエンジニア勉強会 #02 (東京都, 神田)
Selenium再入門-W3C勧告とページオブジェクトパターンと私-201707webエンジニア勉強会#2神田
Selenium再入門-W3C勧告とページオブジェクトパターンと私-201707webエンジニア勉強会#2神田
Y Watanabe
目黒.es #6 で発表 freeCodeCampの紹介と、よく質問を受ける「やっておいた方がいいプログラミング言語ってありますか」について考えました。
プログラミング初心者に ECMAScript(JavaScript) を最初の言語として勧めるべき? Meguro es6
プログラミング初心者に ECMAScript(JavaScript) を最初の言語として勧めるべき? Meguro es6
健太 田上
新卒向け社内LT大会でしゃべった資料です
技術書へのいざない
技術書へのいざない
Go Sueyoshi (a.k.a sue445)
10/09/03に行った社内勉強会の資料
Kubo100903
Kubo100903
kubo
組み込みプログラマとテスト駆動開発
組み込みプログラマとテスト駆動開発
bei_kan
11月26日にアールテクニカ佐賀の学生主催で開催された「ラズパイをさわってみよう会」の当日の資料です。 ラズパイをPythonで制御する場合の簡易手引きです。 開催の様子は以下より。 https://teksaga.wordpress.com/2017/11/29/teksaga-01-%E3%80%8E%E3%83%A9%E3%82%BA%E3%83%91%E3%82%A4%E3%81%95%E3%82%8F%E3%81%A3%E3%81%A6%E3%81%BF%E3%82%88%E3%81%86%E4%BC%9A%E3%80%8F%E3%82%92%E7%B5%82%E3%81%88%E3%81%A6/
Pythonでラズパイのgpio制御
Pythonでラズパイのgpio制御
artk saga
FuelPHP&CodeIgniter ユーザの集い #4 で「CodeIgniter をモダンに改造してみた」という話をさせていただきました。 http://atnd.org/events/49496
CodeIgniter をモダンに改造してみた
CodeIgniter をモダンに改造してみた
Masaru Matsuo
OSC2011 Tokyo/Springで開催された「翻訳・ローカリゼーションBoF」でのスライド
Perl (OSC2011 Tokyo/Spring, Doc-ja)
Perl (OSC2011 Tokyo/Spring, Doc-ja)
Masaharu IWAI
DroidKaigi 2015 の発表資料です. とある Android ゲームアプリの全体像と,アップデートに関する Tips 集の発表です.
あるゲームアプリケーションの構成とアップデートサイクル
あるゲームアプリケーションの構成とアップデートサイクル
Kentaro Iizuka
関西オープンフォーラム2017でのLibreOfficeインターン TRABELSI Mohamedの発表資料です。 https://k-of.jp/2017/session/1090
(KOF2017) LibreOffice development activities: QA and Translation
(KOF2017) LibreOffice development activities: QA and Translation
iCRAFT Corp. (アイクラフト株式会社)
クソスライド
LT
LT
okuraofvegetable
Gradle PluginとCIと俺 kyobashi.dex #3 http://rmp-quipper.connpass.com/event/31744/
Gradle PluginとCIと俺
Gradle PluginとCIと俺
Shinobu Okano
JavaScriptのコンパイラーが多いですがFunScriptを使用してどのメリットがありますか。
FunScript:F#からJavaScriptへのコンパイラー
FunScript:F#からJavaScriptへのコンパイラー
Alfonso Garcia-Caro
Fukuoka.php Vol.14 でお話しました。PHP カンファレンス 2014 参加リポート http://fukuokaphp.doorkeeper.jp/events/15519
PHP カンファレンス 2014 に行ってきたよ
PHP カンファレンス 2014 に行ってきたよ
Masaru Matsuo
プログラマーにとってリファクタリングがどんな意味を持つのか、プログラミング初心者向けにわかりやすく解説。
Mizukiryu refactering-20110821
Mizukiryu refactering-20110821
Mizuki Yamanaka
20101211 gunma.web#3 LanguaGegenerationLoss
20101211 gunma.web#3 LanguaGegenerationLoss
ivoryworks .
We Are JavaScripters! @9th 資料
JavaScriptで味わう! 関数型プログラミングのメリット!!
JavaScriptで味わう! 関数型プログラミングのメリット!!
Keigo Magami
以下で発表した分の資料になります。 use Kansai::Tiny v0.0.1 2015-08-08(土)10:00 - 12:00 https://kansai-tiny.doorkeeper.jp/events/29279
Devel ptkdb - perlをグラフィカルにデバッグする
Devel ptkdb - perlをグラフィカルにデバッグする
Masaaki Takasago
表参道.rb #1 Ruby Gold 2.1 に合格した話
表参道.rb #1 Ruby Gold 2.1 に合格した話
表参道.rb #1 Ruby Gold 2.1 に合格した話
Yoshiaki Yoshida
A presentation at a celebration party for the release of Rust language. At Mozilla Japan, Giroppon
Rust v1.0 release celebration party
Rust v1.0 release celebration party
Akira Hayakawa
関西RubyKaigi05のLTのスライドです。 .Net用のコードをRubyを使って自動生成するお話です
Kanrk05 .Netでお仕事しているプログラマがスクリプト言語として使うRuby
Kanrk05 .Netでお仕事しているプログラマがスクリプト言語として使うRuby
Shinichi Okada
Go Conference 2015 Winter 発表資料
PHPの拡張モジュールをGoで作る
PHPの拡張モジュールをGoで作る
Yoshio Hanawa
WordBenc 埼玉 2015 #02 Git と WordPress 運用で使用した資料です。
2015.04.19 WordBench 埼玉 Git & WordPress
2015.04.19 WordBench 埼玉 Git & WordPress
Yutaro Miyazaki
DLR言語によるSilverlightプログラミング
DLR言語によるSilverlightプログラミング
terurou
More Related Content
What's hot
新卒向け社内LT大会でしゃべった資料です
技術書へのいざない
技術書へのいざない
Go Sueyoshi (a.k.a sue445)
10/09/03に行った社内勉強会の資料
Kubo100903
Kubo100903
kubo
組み込みプログラマとテスト駆動開発
組み込みプログラマとテスト駆動開発
bei_kan
11月26日にアールテクニカ佐賀の学生主催で開催された「ラズパイをさわってみよう会」の当日の資料です。 ラズパイをPythonで制御する場合の簡易手引きです。 開催の様子は以下より。 https://teksaga.wordpress.com/2017/11/29/teksaga-01-%E3%80%8E%E3%83%A9%E3%82%BA%E3%83%91%E3%82%A4%E3%81%95%E3%82%8F%E3%81%A3%E3%81%A6%E3%81%BF%E3%82%88%E3%81%86%E4%BC%9A%E3%80%8F%E3%82%92%E7%B5%82%E3%81%88%E3%81%A6/
Pythonでラズパイのgpio制御
Pythonでラズパイのgpio制御
artk saga
FuelPHP&CodeIgniter ユーザの集い #4 で「CodeIgniter をモダンに改造してみた」という話をさせていただきました。 http://atnd.org/events/49496
CodeIgniter をモダンに改造してみた
CodeIgniter をモダンに改造してみた
Masaru Matsuo
OSC2011 Tokyo/Springで開催された「翻訳・ローカリゼーションBoF」でのスライド
Perl (OSC2011 Tokyo/Spring, Doc-ja)
Perl (OSC2011 Tokyo/Spring, Doc-ja)
Masaharu IWAI
DroidKaigi 2015 の発表資料です. とある Android ゲームアプリの全体像と,アップデートに関する Tips 集の発表です.
あるゲームアプリケーションの構成とアップデートサイクル
あるゲームアプリケーションの構成とアップデートサイクル
Kentaro Iizuka
関西オープンフォーラム2017でのLibreOfficeインターン TRABELSI Mohamedの発表資料です。 https://k-of.jp/2017/session/1090
(KOF2017) LibreOffice development activities: QA and Translation
(KOF2017) LibreOffice development activities: QA and Translation
iCRAFT Corp. (アイクラフト株式会社)
クソスライド
LT
LT
okuraofvegetable
Gradle PluginとCIと俺 kyobashi.dex #3 http://rmp-quipper.connpass.com/event/31744/
Gradle PluginとCIと俺
Gradle PluginとCIと俺
Shinobu Okano
JavaScriptのコンパイラーが多いですがFunScriptを使用してどのメリットがありますか。
FunScript:F#からJavaScriptへのコンパイラー
FunScript:F#からJavaScriptへのコンパイラー
Alfonso Garcia-Caro
Fukuoka.php Vol.14 でお話しました。PHP カンファレンス 2014 参加リポート http://fukuokaphp.doorkeeper.jp/events/15519
PHP カンファレンス 2014 に行ってきたよ
PHP カンファレンス 2014 に行ってきたよ
Masaru Matsuo
プログラマーにとってリファクタリングがどんな意味を持つのか、プログラミング初心者向けにわかりやすく解説。
Mizukiryu refactering-20110821
Mizukiryu refactering-20110821
Mizuki Yamanaka
20101211 gunma.web#3 LanguaGegenerationLoss
20101211 gunma.web#3 LanguaGegenerationLoss
ivoryworks .
We Are JavaScripters! @9th 資料
JavaScriptで味わう! 関数型プログラミングのメリット!!
JavaScriptで味わう! 関数型プログラミングのメリット!!
Keigo Magami
以下で発表した分の資料になります。 use Kansai::Tiny v0.0.1 2015-08-08(土)10:00 - 12:00 https://kansai-tiny.doorkeeper.jp/events/29279
Devel ptkdb - perlをグラフィカルにデバッグする
Devel ptkdb - perlをグラフィカルにデバッグする
Masaaki Takasago
表参道.rb #1 Ruby Gold 2.1 に合格した話
表参道.rb #1 Ruby Gold 2.1 に合格した話
表参道.rb #1 Ruby Gold 2.1 に合格した話
Yoshiaki Yoshida
A presentation at a celebration party for the release of Rust language. At Mozilla Japan, Giroppon
Rust v1.0 release celebration party
Rust v1.0 release celebration party
Akira Hayakawa
関西RubyKaigi05のLTのスライドです。 .Net用のコードをRubyを使って自動生成するお話です
Kanrk05 .Netでお仕事しているプログラマがスクリプト言語として使うRuby
Kanrk05 .Netでお仕事しているプログラマがスクリプト言語として使うRuby
Shinichi Okada
Go Conference 2015 Winter 発表資料
PHPの拡張モジュールをGoで作る
PHPの拡張モジュールをGoで作る
Yoshio Hanawa
What's hot
(20)
技術書へのいざない
技術書へのいざない
Kubo100903
Kubo100903
組み込みプログラマとテスト駆動開発
組み込みプログラマとテスト駆動開発
Pythonでラズパイのgpio制御
Pythonでラズパイのgpio制御
CodeIgniter をモダンに改造してみた
CodeIgniter をモダンに改造してみた
Perl (OSC2011 Tokyo/Spring, Doc-ja)
Perl (OSC2011 Tokyo/Spring, Doc-ja)
あるゲームアプリケーションの構成とアップデートサイクル
あるゲームアプリケーションの構成とアップデートサイクル
(KOF2017) LibreOffice development activities: QA and Translation
(KOF2017) LibreOffice development activities: QA and Translation
LT
LT
Gradle PluginとCIと俺
Gradle PluginとCIと俺
FunScript:F#からJavaScriptへのコンパイラー
FunScript:F#からJavaScriptへのコンパイラー
PHP カンファレンス 2014 に行ってきたよ
PHP カンファレンス 2014 に行ってきたよ
Mizukiryu refactering-20110821
Mizukiryu refactering-20110821
20101211 gunma.web#3 LanguaGegenerationLoss
20101211 gunma.web#3 LanguaGegenerationLoss
JavaScriptで味わう! 関数型プログラミングのメリット!!
JavaScriptで味わう! 関数型プログラミングのメリット!!
Devel ptkdb - perlをグラフィカルにデバッグする
Devel ptkdb - perlをグラフィカルにデバッグする
表参道.rb #1 Ruby Gold 2.1 に合格した話
表参道.rb #1 Ruby Gold 2.1 に合格した話
Rust v1.0 release celebration party
Rust v1.0 release celebration party
Kanrk05 .Netでお仕事しているプログラマがスクリプト言語として使うRuby
Kanrk05 .Netでお仕事しているプログラマがスクリプト言語として使うRuby
PHPの拡張モジュールをGoで作る
PHPの拡張モジュールをGoで作る
Similar to レガシーコード In WordPress
WordBenc 埼玉 2015 #02 Git と WordPress 運用で使用した資料です。
2015.04.19 WordBench 埼玉 Git & WordPress
2015.04.19 WordBench 埼玉 Git & WordPress
Yutaro Miyazaki
DLR言語によるSilverlightプログラミング
DLR言語によるSilverlightプログラミング
terurou
Creators MeetUp #36発表資料
Webブラウザで使えるいろんな処理系
Webブラウザで使えるいろんな処理系
祐司 伊藤
Gitと出会って人生変わった テックヒルズ2013-03-22
Gitと出会って人生変わった テックヒルズ2013-03-22
Shota Umeda
Git を中心にしてシステム実行環境やアプリケーションの変更を行う GitOps という考え方が広がりつつあります。この GitOps に取り組んでらっしゃる株式会社ベルシステム 24 ホールディングス様の事例とともに、 GitOps の概要とその効果をご紹介します。
【de:code 2020】 Azure Kubernetes Service と Azure DevOps による GitOps の実践
【de:code 2020】 Azure Kubernetes Service と Azure DevOps による GitOps の実践
日本マイクロソフト株式会社
Gopher道場#3 LT会資料
vendoring が無くなると Go x Github private repo x Docker 運用が地味に面倒になって困る話 (未完)
vendoring が無くなると Go x Github private repo x Docker 運用が地味に面倒になって困る話 (未完)
Itsuki Sakitsu
BDDと開発サイクルについて、phpspecでBDDを始めるには
phpspecで始めるBDD
phpspecで始めるBDD
Yuuki Takezawa
2015年のSEゼミの「プログラミングが好きな学生のためのリーダブルコード勉 強会」のコードチェンジのやり方の説明。
SEゼミ2015 - コードチェンジ
SEゼミ2015 - コードチェンジ
Kouhei Sutou
Laravel Meetup Tokyo Vol.9
Laravelから学びレガシーと闘いはじめた
Laravelから学びレガシーと闘いはじめた
Yuta Ohashi
JetBrainsユーザーグループ in 大阪 の PHP セッション
PhpStormを使おう --高槻からは快速急行が早くなります #jbugj
PhpStormを使おう --高槻からは快速急行が早くなります #jbugj
Hisateru Tanaka
Kernel/VM探検隊online part5 での発表資料です。
C・C++用のコードカバレッジツールを自作してみた話
C・C++用のコードカバレッジツールを自作してみた話
simotin13 Miyazaki
2022/1/29 第一回FlutterGakkai登壇資料
Riverpodでテストを書こう
Riverpodでテストを書こう
Shinnosuke Tokuda
安全で安心なWebサービスの継続的な改善をするために、開発、テスト、運用のサイクルを早いフローで実現する、DevOpsや継続的デリバリー、Infrastructure as Code などの開発手法がコミュニティで提案されています。その一方、企業文化や組織体系のためにうまく導入が進まないケースも多いです。 本セッションでは、楽天のDevとOpsのアラサーエンジニアが、開発・テスト・運用の三位一体の自動化でDevOpsを社内に導入したFearless Changeについてのストーリーをお話しします。 Developers Summit 2016 で発表資料です。 http://event.shoeisha.jp/devsumi/20160218/session/1041/
三位一体の自動化で壊せ DevとOpsの壁~アラサーエンジニアの挑戦~
三位一体の自動化で壊せ DevとOpsの壁~アラサーエンジニアの挑戦~
Rakuten Group, Inc.
社内用
設計書からの卒業
設計書からの卒業
Fumiyasu Sumiya
Java言語プログラミングレッスン[第3版](結城浩著)の写経&授業
Javaプログラミング入門【第1回】
Javaプログラミング入門【第1回】
Yukiko Kato
第78回 PHP勉強会 - PHP勉強会@東京 | Doorkeeper http://phpstudy.doorkeeper.jp/events/11523 で話した内容です。
Scrutinizer CIでPHPも静的解析 #phpstudy
Scrutinizer CIでPHPも静的解析 #phpstudy
Hiraku Nakano
Dangerというツールを使って Pull Request のレビューでの指摘を減らしましょう。
Dangerでpull requestレビューの指摘事項を減らす
Dangerでpull requestレビューの指摘事項を減らす
Shunsuke Maeda
トランザクションスクリプトのすすめ
トランザクションスクリプトのすすめ
トランザクションスクリプトのすすめ
pospome
DevLOVE 2012での「リーダブルコードを読んだ後」というセッションで説明のために使ったスライドです。セッションの内容は、リーダブルコードに書かれていることを実際に使うためにはどうすればよいかということを実際にやってみるというものです。ワークショップ形式のセッションです。 リーダブルコードという読みやすいコード(リーダブルなコード)の書き方をわかりやすく説明した本があります。リーダブルコードに書かれているテクニックを使えばリーダブルな理解しやすいコードを書けるようになります。 しかし、リーダブルコードを読んだ人すべてがリーダブルなコードを書けるようになれるわけではありません。リーダブルコードに書かれていることを知識として持っているだけではリーダブルなコードは書けません。実際にその知識を使ってコードを書かなければリーダブルコードを読む前と同じようなコードばかり書くことになります。
リーダブルコードを読んだ後
リーダブルコードを読んだ後
Kouhei Sutou
2014年 札幌市中央区Ruby会議で発表した資料です
趣味プロダクトで楽しいコードライフワークを送る
趣味プロダクトで楽しいコードライフワークを送る
volpe_hd28v
Similar to レガシーコード In WordPress
(20)
2015.04.19 WordBench 埼玉 Git & WordPress
2015.04.19 WordBench 埼玉 Git & WordPress
DLR言語によるSilverlightプログラミング
DLR言語によるSilverlightプログラミング
Webブラウザで使えるいろんな処理系
Webブラウザで使えるいろんな処理系
Gitと出会って人生変わった テックヒルズ2013-03-22
Gitと出会って人生変わった テックヒルズ2013-03-22
【de:code 2020】 Azure Kubernetes Service と Azure DevOps による GitOps の実践
【de:code 2020】 Azure Kubernetes Service と Azure DevOps による GitOps の実践
vendoring が無くなると Go x Github private repo x Docker 運用が地味に面倒になって困る話 (未完)
vendoring が無くなると Go x Github private repo x Docker 運用が地味に面倒になって困る話 (未完)
phpspecで始めるBDD
phpspecで始めるBDD
SEゼミ2015 - コードチェンジ
SEゼミ2015 - コードチェンジ
Laravelから学びレガシーと闘いはじめた
Laravelから学びレガシーと闘いはじめた
PhpStormを使おう --高槻からは快速急行が早くなります #jbugj
PhpStormを使おう --高槻からは快速急行が早くなります #jbugj
C・C++用のコードカバレッジツールを自作してみた話
C・C++用のコードカバレッジツールを自作してみた話
Riverpodでテストを書こう
Riverpodでテストを書こう
三位一体の自動化で壊せ DevとOpsの壁~アラサーエンジニアの挑戦~
三位一体の自動化で壊せ DevとOpsの壁~アラサーエンジニアの挑戦~
設計書からの卒業
設計書からの卒業
Javaプログラミング入門【第1回】
Javaプログラミング入門【第1回】
Scrutinizer CIでPHPも静的解析 #phpstudy
Scrutinizer CIでPHPも静的解析 #phpstudy
Dangerでpull requestレビューの指摘事項を減らす
Dangerでpull requestレビューの指摘事項を減らす
トランザクションスクリプトのすすめ
トランザクションスクリプトのすすめ
リーダブルコードを読んだ後
リーダブルコードを読んだ後
趣味プロダクトで楽しいコードライフワークを送る
趣味プロダクトで楽しいコードライフワークを送る
レガシーコード In WordPress
1.
レガシーコード in WordPress
2.
3.
レガシーコードとは ● 理解しづらい、変更しにくいコード ● ユニットテストが存在しないコード ●
技術的負債 ● プログラマの嫌いなもの
4.
プログラマからみたWordPress ● すごく流行っている ● でもコードは読みづらい ●
できればコードは触りたくない ● 正直我慢ならないレベル ● →レガシーコード的な特徴を持っている
5.
レガシーコード化した理由 ● 貢献の難しさ ● 良くないプログラミング手法の多用 ●
古いPHPの機能への依存
6.
貢献の難しさ ● SVN +
Tracなのでパッチを送るのが面倒 ● GitHubからプルリクエストを送っても放置 ● プラグインの開発とかも重くて大変 ● Git > Svn では無いけれど、議論も停滞。 ● plugin.svn リビジョン番号77万
7.
8.
9.
良くないプログラミング手法 ● グローバル変数 コード解読とテストの難易度を上げる WordPress中に1,044ヶ所出現
10.
古いPHPの機能への依存 ● var PHP4の不完全なオブジェクト指向機能 731ヶ所出現 (grep
‘var $’)
11.
コメントにはpublicって書いてある protected は付けてるのに… コメントには private
と書いてある
12.
古いPHPの機能への依存 ● mysql_connect 廃止が決まっている非推奨のPHPの機能 2009年からPDOへの移行が提案されたまま
13.
mysql_connect deprecatedのエラーを消してる
14.
コミュニティの断絶 ● PSR 20以上のFWやCMSが参加する標準 WordPressは投票にも参加していない
15.
なんでそんなことに ● 後方互換性の重視 ユーザの環境を壊せない 機能も増えないしバグも治らない のにコード変えるの?
16.
maybelater?
17.
その結果 ● PHPでWordPressがいずれ動かなくなる? ● CMSの相互連携などが進みづらい ●
WordPressでPHPを学習すると10年近く前の スタイルのPHPしか覚えられない
18.
負債への対応 ● 学習、学習、学習 正しい手法を使う ● テストによる支援 後方互換性を維持しながらコード変更する ●
外交手腕 ただしい手腕を進める体制づくり
19.
ここで叫んでも何も変わらないのは わかってます
20.
変えることができるのは…
21.
あなた達です!
Download now