社会人になって幸運にも4年間Ruby + Ruby on Railsを使った開発に慣れ親しんだ後に、 PHPを使った歴史あるシステムに2年間携わってきました。 その中で、 * RubyからPHPを使うようになってどう考えが変わったか * RubyとPHPの両方を見れて良かったこと * 今後Rub…
〔PHPカンファレンス2013 発表資料〕PHPとJavaScriptはどちらもオブジェクト指向言語ですが、PHPはクラスベース、JavaScriptはプロトタイプベースという違いがあります。本発表では、クラスベースとプロトタイプベースがどのように違うのかを、仕組みから詳しく解説します。またプロトタイプベース特有のパターンについても説明します。 対象:初級〜中級Read less
PHPカンファレンス2013における徳丸のプレゼン資料です。後から、参考文献などを加筆しました。Read less
常連プログラマがほぼ Rubyist しかいないP4Dなのですが、なぜかPHPカンファレンスで枠をいただいたとのことで、デザイナーとGitについて話し合ってみようという企画に参加してきました。 「生煮えぷるり」をプログラマとデザイナーの間で行ったり来たりさせる話 Pull Request 4 Designers - GitHubを使ったプログラマとデザイナーのイテレーティブな開発フロー// Speaker Deck GitHubを使った、実際のプログラマとデザイナーの協業の様子を見てもらおうということで、私がお手伝いさせていただいている、[https://forkwell.com:title=Forkwell] と [https://jobs.forkwell.com:title=Forkwell Jobs] での開発の様子を例にお話させていただきました。 補足とか 「生煮えぷるり」という
9. 問題の実装 9 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 <?php class BlackListDB { const DBPATH = "/tmp/db.gdbm"; public function isBlock($id) { $dbh = dba_open(self::DBPATH, "r", "gdbm"); if ($dbh === false) { return null; } $ret = dba_exists($id, $dbh); dba_close($dbh); return $ret; } } 10. 問題点 10 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 <?php class BlackListDB { const DBPATH = "/tmp/db.gdbm"; publ
(2013/10/09追記) PHP開発環境を構築するサンプル Vagrantfile をアップしました。 PHP開発環境のサンプルVagrantfile 第7回関西PHP勉強会で発表した下記の内容をベースに、より実践的な内容を追加しました。 PHPシステムの開発環境をVagrantで作ることを題材に、基本的な流れをお話しました。 ポイントは、プロビジョニングにシェルを使う部分と、やはり synced_folder ですね。AWS上にも同じ環境を構築できる部分ももう少し深くお話したかったのですが、時間が足りませんでした>< また、Vagrantfile があるディレクトリ(vagrant upしたカレントディレクトリ)も synced_folder となっていて、仮想マシンでは /vagrant としてアクセスできるということも知っておくと便利です。これを利用するとChefのtemplat
1. MySQL Admin が見た Devs の常識、 DBA は非常識 2013/09/14 yoku0825@MyNA PHP Conference 2013 2. \こんにちは!/ ● yoku0825 ● とある企業の DBA ● MySQL 歴 5 年くらい ● オラクれない ● ポスグれない ● 嫁の夫 ● せがれの父 ● 日本 MySQL ユーザ会 (MyNA) のスベり担当 3. \しゃべること!/ ● 日常的に MySQL のソースコードに触れる変態 DBA がフツーの Devs に投げた愛のマサカリ集 ( のつもり ) ● ウチの開発言語は PHP > Java >> Ruby らしいです ● ウチでは DBA がサーバーの構築、 Devs が設計・ テーブル構築・運営、 DBA はトラブルシュートや改 善提案 ( 運用 ) 、というサイクルで回しています。
PHPカンファレンス2013で「PHPアプリケーションの継続的アップデート」というタイトルで話をしてきました。僕は、いまでこそPerlやRubyの人みたいな感じですが、もともとはPHPからプログラミングを始めたので、PHPカンファレンスで話すというのは、感慨深いものでした。「ぺちぺ」「ぺちぱー」という言葉の創始者でもありますし。 トークの内容は、最近仕事でやってきたことのまとめみたいな感じです。PHPといいながら、2/3ぐらいはPHPには直接関係ないことばかりでしたが。トーク中でもいったように、言語そのものというよりは、システムの複雑性をいかに減らすかが「継続的な」取り組みには必要なので、いたしかたありません。それなりに面白いものになっていると思います。 スライドは以下。 これまで『WEB+DB PRESS Vol.75』『入門Puppet - Automate Your Infrastr
2. キャッシュとは? データを再利用する仕組み オペコードキャッシュとは? コンパイル後のバイトコードを共有メモリに保持、再利用することで、 パース/コンパイルの時間・負荷をなくす。 キャッシュの利点: 応答速度改善、サーバ負荷低減 実行形態:サーバ組込型:APC, Xcache, OPcache 等、分散型: memcache キャッシュとは? クライアント ( Webブラウザ ) クライアントクライアントクライアントクライアント キャッシュキャッシュキャッシュキャッシュ ページキャッシュページキャッシュページキャッシュページキャッシュ データデータデータデータ キャッシュキャッシュキャッシュキャッシュ オペコードオペコードオペコードオペコード キャッシュキャッシュキャッシュキャッシュ 出力 PHPスクリプト レスポンス リクエスト Webサーバー/PHP フラグメントキャッシュフラグ
9月14日に開催されたPHPカンファレンス2013で発表してきました。以下が発表資料です。 マニアックな内容なのと、裏に面白そうな発表があったのでガラガラかと予想していたのですが、思った以上に盛況で驚きました。僕個人が伝えたかった内容は「PHPコア見るの楽しい」「Zend OPcacheは仕事上も趣味上も要注目」ということでした。どれくらいの人に伝わったかは不安ですが、この発表を機に興味をもってもらえれば嬉しく思います。 今回は廣川さんとテーマがかぶってしまって驚いたのですが、うっかりお昼ご飯に行っていて僕自身は廣川さんの発表を見られませんでした。プレゼン資料が公開されると嬉しいのですが…。 また、anatooさんやYahoo!の蒋さんもPHPの内部まで踏み込んだ発表をされていました。こうした発表を聞いて、「PHPのソースコードまで読んでみようかな」という人が少しでも増えてくれたらいいなと
2018年1月10日に開催された DCI Tokyo 1 に続き、2018年3月27日に DCI Tokyo 2 が開催されました。今回も James Coplien @jcoplien さんをお招きしてのトークセッションとなりました。会場は 株式会社ヴァル研究所 様に提供していただきました。 セッションは、前回同様 @remore さんと @ganchiku さんによる同時通訳とともに進められました。 今回のテーマはマルチパラダイムデザイン(Multi-Paradigm Design: MPD)の中核を成し、DCI / リーンアーキテクチャ(Lean Architecture)とも深く関係する 共通性/可変性分析 でした。 レポートは @smori1983 が担当させていただきます。 当日の様子は Coplien さんの許可を得て YouTube の DCI Tokyo 公式アカウントに
This document discusses emergent design and test-driven development using PHP and PHPSpec. It emphasizes designing software through describing how objects interact to solve problems, focusing on messaging between objects. Simple design rules like removing duplication and complexity are recommended to make code more testable, modular, and change-friendly. Designing for delegation using mocks is pre
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く