Enviar pesquisa
Carregar
レガシーコード In WordPress
•
6 gostaram
•
14,606 visualizações
M
mask_legacy
Seguir
LT from phpcon2013
Leia menos
Leia mais
Denunciar
Compartilhar
Denunciar
Compartilhar
1 de 21
Baixar agora
Baixar para ler offline
Recomendados
Webエンジニアがスタートダッシュをキメるためのローカル開発環境の勘所
Webエンジニアがスタートダッシュをキメるためのローカル開発環境の勘所
Y Watanabe
サーバーサイドな人がフロントエンド技術と仲良くするはじめの一歩
サーバーサイドな人がフロントエンド技術と仲良くするはじめの一歩
Y Watanabe
テスト駆動開発入門 - C4K Meetup#2
テスト駆動開発入門 - C4K Meetup#2
Masashi Shibata
レビューで保守性のためにした コメントをふりかえってみた
レビューで保守性のためにした コメントをふりかえってみた
Takhisa Hirokawa
(過去バージョン) Q#基礎 ver1.0
(過去バージョン) Q#基礎 ver1.0
Takayoshi Tanaka
Q#基礎 ver1.1
Q#基礎 ver1.1
Takayoshi Tanaka
Selenium再入門-W3C勧告とページオブジェクトパターンと私-201707webエンジニア勉強会#2神田
Selenium再入門-W3C勧告とページオブジェクトパターンと私-201707webエンジニア勉強会#2神田
Y Watanabe
プログラミング初心者に ECMAScript(JavaScript) を最初の言語として勧めるべき? Meguro es6
プログラミング初心者に ECMAScript(JavaScript) を最初の言語として勧めるべき? Meguro es6
健太 田上
Mais conteúdo relacionado
Mais procurados
技術書へのいざない
技術書へのいざない
Go Sueyoshi (a.k.a sue445)
Kubo100903
Kubo100903
kubo
組み込みプログラマとテスト駆動開発
組み込みプログラマとテスト駆動開発
bei_kan
Pythonでラズパイのgpio制御
Pythonでラズパイのgpio制御
artk saga
CodeIgniter をモダンに改造してみた
CodeIgniter をモダンに改造してみた
Masaru Matsuo
Perl (OSC2011 Tokyo/Spring, Doc-ja)
Perl (OSC2011 Tokyo/Spring, Doc-ja)
Masaharu IWAI
あるゲームアプリケーションの構成とアップデートサイクル
あるゲームアプリケーションの構成とアップデートサイクル
Kentaro Iizuka
(KOF2017) LibreOffice development activities: QA and Translation
(KOF2017) LibreOffice development activities: QA and Translation
iCRAFT Corp. (アイクラフト株式会社)
LT
LT
okuraofvegetable
Gradle PluginとCIと俺
Gradle PluginとCIと俺
Shinobu Okano
FunScript:F#からJavaScriptへのコンパイラー
FunScript:F#からJavaScriptへのコンパイラー
Alfonso Garcia-Caro
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 .
JavaScriptで味わう! 関数型プログラミングのメリット!!
JavaScriptで味わう! 関数型プログラミングのメリット!!
Keigo Magami
Devel ptkdb - perlをグラフィカルにデバッグする
Devel ptkdb - perlをグラフィカルにデバッグする
Masaaki Takasago
表参道.rb #1 Ruby Gold 2.1 に合格した話
表参道.rb #1 Ruby Gold 2.1 に合格した話
Yoshiaki Yoshida
Rust v1.0 release celebration party
Rust v1.0 release celebration party
Akira Hayakawa
Kanrk05 .Netでお仕事しているプログラマがスクリプト言語として使うRuby
Kanrk05 .Netでお仕事しているプログラマがスクリプト言語として使うRuby
Shinichi Okada
PHPの拡張モジュールをGoで作る
PHPの拡張モジュールをGoで作る
Yoshio Hanawa
Mais procurados
(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で作る
Semelhante a レガシーコード In WordPress
2015.04.19 WordBench 埼玉 Git & WordPress
2015.04.19 WordBench 埼玉 Git & WordPress
Yutaro Miyazaki
DLR言語によるSilverlightプログラミング
DLR言語によるSilverlightプログラミング
terurou
Webブラウザで使えるいろんな処理系
Webブラウザで使えるいろんな処理系
祐司 伊藤
Gitと出会って人生変わった テックヒルズ2013-03-22
Gitと出会って人生変わった テックヒルズ2013-03-22
Shota Umeda
【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 運用が地味に面倒になって困る話 (未完)
Itsuki Sakitsu
phpspecで始めるBDD
phpspecで始めるBDD
Yuuki Takezawa
SEゼミ2015 - コードチェンジ
SEゼミ2015 - コードチェンジ
Kouhei Sutou
Laravelから学びレガシーと闘いはじめた
Laravelから学びレガシーと闘いはじめた
Yuta Ohashi
PhpStormを使おう --高槻からは快速急行が早くなります #jbugj
PhpStormを使おう --高槻からは快速急行が早くなります #jbugj
Hisateru Tanaka
C・C++用のコードカバレッジツールを自作してみた話
C・C++用のコードカバレッジツールを自作してみた話
simotin13 Miyazaki
Riverpodでテストを書こう
Riverpodでテストを書こう
Shinnosuke Tokuda
三位一体の自動化で壊せ DevとOpsの壁~アラサーエンジニアの挑戦~
三位一体の自動化で壊せ DevとOpsの壁~アラサーエンジニアの挑戦~
Rakuten Group, Inc.
設計書からの卒業
設計書からの卒業
Fumiyasu Sumiya
Javaプログラミング入門【第1回】
Javaプログラミング入門【第1回】
Yukiko Kato
Scrutinizer CIでPHPも静的解析 #phpstudy
Scrutinizer CIでPHPも静的解析 #phpstudy
Hiraku Nakano
Dangerでpull requestレビューの指摘事項を減らす
Dangerでpull requestレビューの指摘事項を減らす
Shunsuke Maeda
トランザクションスクリプトのすすめ
トランザクションスクリプトのすすめ
pospome
リーダブルコードを読んだ後
リーダブルコードを読んだ後
Kouhei Sutou
趣味プロダクトで楽しいコードライフワークを送る
趣味プロダクトで楽しいコードライフワークを送る
volpe_hd28v
Semelhante a レガシーコード 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
3.
レガシーコードとは ● 理解しづらい、変更しにくいコード ● ユニットテストが存在しないコード ●
技術的負債 ● プログラマの嫌いなもの
4.
プログラマからみたWordPress ● すごく流行っている ● でもコードは読みづらい ●
できればコードは触りたくない ● 正直我慢ならないレベル ● →レガシーコード的な特徴を持っている
5.
レガシーコード化した理由 ● 貢献の難しさ ● 良くないプログラミング手法の多用 ●
古いPHPの機能への依存
6.
貢献の難しさ ● SVN +
Tracなのでパッチを送るのが面倒 ● GitHubからプルリクエストを送っても放置 ● プラグインの開発とかも重くて大変 ● Git > Svn では無いけれど、議論も停滞。 ● plugin.svn リビジョン番号77万
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.
あなた達です!
Baixar agora