究極にして至高のWAF
Upcoming SlideShare
Loading in...5
×

Like this? Share it with your network

Share

究極にして至高のWAF

  • 161 views
Uploaded on

勢いだけで作った

勢いだけで作った

参考文献: やはりお前らのMVCは間違っている
http://www.slideshare.net/MugeSo/mvc-14469802

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
161
On Slideshare
161
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
0
Comments
0
Likes
1

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. 究極にして至高のWAF 第1次 MVC大戦 @hoto17296
  • 2. モヒカン野郎の 登場です
  • 3. 今までに触ったWAF • (自作フレームワーク) • CakePHP • FuelPHP • Symfony • Sinatra • Ruby on Rails • Amon2
  • 4. やはり
  • 5. お前らのMVCは
  • 6. 間違って いる
  • 7. まずは
  • 8. そもそもが
  • 9. おまえは
  • 10. MVC ではない
  • 11. Amon2 初見のイメージ Teng Text::Xslate Dispatcher Controllerっぽいナニカ Viewっぽいナニカ ?????
  • 12. Teng
  • 13. 人人人人人人人人 < Tengじゃ、   > < Tengの仕業じゃ!> YYYYYYYY ////<_ノ ヽ_ノ\// /// (○) ッ(○) |/ /| (( ノ ヽ ))+|/ /| + ))Г ̄|(( |/ /|+ U |WWW| U |/ /∧   |WWW|  /// ///\__`ーイ_////
  • 14. Modelではない
  • 15. Teng::Iterator Teng::Row が
  • 16. Modelっぽい扱いに されているのが
  • 17. 紛らわしすぎ
  • 18. なにも考えずに Amon2 を使った場合 Teng Text::Xslate Dispatcher
  • 19. なにも考えずに Amon2 を使った場合 Teng Text::Xslate Dispatcher Fat Dispatcher!
  • 20. なにも考えずに Amon2 を使った場合 Fat Dispatcher! Teng Text::Xslate Dispatcher Fat Dispatcher!
  • 21. なにも考えずに Amon2 を使った場合 Fat Dispatcher! Text::Xslate Dispatcher Fat Dispatcher! Teng Fat Dispatcher!
  • 22. すぐに Dispatcher を太らす
  • 23. そもそも
  • 24. なぜ MVC は MVC というのか
  • 25. Model > View > Controller
  • 26. 軽量WAFで似非MVCをしたときに 陥りがちなミス
  • 27. Controller > View > Model
  • 28. 正しい Amon2 の使用例 Teng Text::Xslate Dispatcher 自作 Model Redis RDB とか
  • 29. ビジネスロジックは 自分でなんとかする
  • 30. これができない もしくは
  • 31. ここまでやってもまだ太る ような規模なら
  • 32. Rails を使おう
  • 33. まずはこちらを ご覧ください
  • 34. FuelPHP のアーキテクチャ Model View Controller ViewModel ???
  • 35. 更新処理と取得処理の分離 Model View Controller ViewModel 更新処理 取得処理
  • 36. 名前がとても紛らわしい ViewModel
  • 37. 名前がとても紛らわしい MVVMC? MVVM? ※ まったくの別物
  • 38. 紛らわしいから改名します!!!!! ViewModel ↓ (1.7.2以降) Presenter
  • 39. 名前がとても紛らわしい(2) MVPC? MVP? ※ まったくの別物
  • 40. FuelPHP まとめ 紛らわしい
  • 41. Ruby on Rails のアーキテクチャ ActionController ActiveModel ActionView ActiveRecord Redis RDB とか
  • 42. ありがちなDisられポイント • 柔軟性がない • ActiveRecord が宇宙 • 学習コストが高い
  • 43. 柔軟性がない? そんなことはない
  • 44. 設定より規約 • 単純にするが柔軟性は失わせない • 「いつも通りではない場合」のみ 設定を記述する – 変態的なルーティング – NoSQL 余裕 – レスポンスフォーマットもなんでもアリ
  • 45. ActiveRecord が宇宙? はい
  • 46. ActiveRecord とは • 「レコード1行につき1オブジェクト」 • デザインパターン – Ruby だけのものではない
  • 47. ActiveRecord は宇宙だが
  • 48. コードは読める
  • 49. 何も恐れることはない
  • 50. ( ◠‿◠ )
  • 51. 学習コストが高い? はい
  • 52. 逆に訊くが
  • 53. 軽量WAFは学習コストが 低いのだろうか?
  • 54. 軽量WAFは学習コストが低い? • 「それっぽいものを作れるように  なるまで」はとても速い • 「正しく使えるようになるまで」は  同じように時間がかかる • 積み上がる負の遺産
  • 55. 「はじめからみんな正しく  使えればいいのでは?」
  • 56. 無理
  • 57. 「自由なWAF」 とは 「そう書くべきでないコードでも 動いてしまう」 ということ
  • 58. 「チームのルールとか運用方針を  ちゃんと決めれば大丈夫だし!」
  • 59. ┓(́ー`)┏
  • 60. 「だいたいいつも通り」 なのになぜ 何度も同じレールを敷く 必要があるのか
  • 61. 先人たちが積み上げてきた “王道“ がここにある R a i l