SlideShare una empresa de Scribd logo
1 de 16
フレームワーク概要


     株式会社ワイズノット 駒形真幸
               2005年7月30
フレームワークとは?

フレームワーク [framework]

           ・骨組み、骨格、枠組み

                         大辞林より


・ものすごく意味が広い
・最近乱用されがち
・以後フレームワーク=Webアプリケーションフレームワーク
Webアプリケーション
            フレームワーク

・Webアプリケーションのための枠組みプログラム

・JavaのStrutsをきっかけに有名になった考え方

・PHPではPhrame、Mojavi、Maple、Ethnaなどが有名

・PerlのCatalyst、Rubyのruby on rails等々
従来のWebアプリの作り方と
   どう違うのか?
従来の開発(イメージ)

     ライブラリ       ライブラリ




        メインロジック(自作)



・メインロジックを自分で書き、ライブラリを呼び出す
フレームワークでの開発(イメージ)

     モジュール       モジュール
      (自作)        (自作)




      メインロジック(フレームワーク)



・モジュールを自分で書き、フレームワークに
 呼び出してもらう
従来の開発と
 フレームワークでの開発の違い

・呼び出す側を作るか、呼ばれる側を作るかの違い


    呼ばれる側           呼ばれる側




            呼び出す側
イメージだけでは
 よくわからない
従来の開発(コード)
・ライブラリ
Class Library {
   function execute() {
                            ライブラリ
      echo “Hello World”;
   }
}


・メインロジック(自作)                メインロジック
                              (自作)
include ”Library.php”;
$library = new Library();
$library->execute();
フレームワークでの開発(コード)
・モジュール(自作)
Class Module {
   function execute() {           モジュール
      echo “Hello World”;
                                   (自作)
   }
}


・メインロジック(フレームワーク)                 メインロジック
                                 (フレームワーク)
include $_GET[“name”].”.php”;
$module = new $_GET[“name”]();
$module ->execute();
フレームワークを使うと
  何が嬉しいのか
フレームワークの利点

・Webアプリに共通の処理を書かなくて良い
  -リクエストの振り分け、入力値検証、ログ保存など
  -アプリに固有の処理に注力できる


・品質の均一化
  -フレームワークの縛りによってコードの品質が揃い易い
フレームワークの欠点

・柔軟性の低下
  -フレームワークの縛りによってアプリに制限

・導入コストが高い
  -フレームワークに習熟するまでは生産性が低下する場合も
  -簡単なものを作るのにもたくさんファイルを作る必要が
  -こんな発表を聞かなければならない事自体・・・
フレームワークと開発規模

・開発の規模が大きい程フレームワークの恩恵
  -フレームワーク = ルール・規約
  -繰り返し、大勢で使うほど利点が生かされる


・大規模開発を指向するPHP
  -よりオブジェクト指向に(PHP5)
  -IBM、Oracleなどが支持
                       それを踏まえて・・・
結論


PHPでもフレームワークを使いましょう
             (できればMojavi・・・)
ありがとうございました。

Más contenido relacionado

La actualidad más candente

Web技術勉強会5回目(Slide Share用)
Web技術勉強会5回目(Slide Share用)Web技術勉強会5回目(Slide Share用)
Web技術勉強会5回目(Slide Share用)龍一 田中
 
【13-D-4】 アナタのアプリ性能改善の秘訣、オラクルが教えます!
【13-D-4】 アナタのアプリ性能改善の秘訣、オラクルが教えます!【13-D-4】 アナタのアプリ性能改善の秘訣、オラクルが教えます!
【13-D-4】 アナタのアプリ性能改善の秘訣、オラクルが教えます!devsumi2009
 
Sd Loader Seasar Con2009 White
Sd Loader Seasar Con2009 WhiteSd Loader Seasar Con2009 White
Sd Loader Seasar Con2009 WhiteAkio Katayama
 
Howtousenetboss
HowtousenetbossHowtousenetboss
Howtousenetbosskumee
 
WebアプリケーションフレームワークMojoの紹介
WebアプリケーションフレームワークMojoの紹介WebアプリケーションフレームワークMojoの紹介
WebアプリケーションフレームワークMojoの紹介Yuki Kimoto
 
ソフトウェアの構造とオープン化
ソフトウェアの構造とオープン化ソフトウェアの構造とオープン化
ソフトウェアの構造とオープン化Kiro Harada
 
Web技術勉強会 第18回
Web技術勉強会 第18回Web技術勉強会 第18回
Web技術勉強会 第18回龍一 田中
 
章文嵩:使用LVS集群架设高可扩展的网络服务.pdf
章文嵩:使用LVS集群架设高可扩展的网络服务.pdf章文嵩:使用LVS集群架设高可扩展的网络服务.pdf
章文嵩:使用LVS集群架设高可扩展的网络服务.pdfXMourinho
 
Bee Style vol043のご案内
Bee Style vol043のご案内Bee Style vol043のご案内
Bee Style vol043のご案内Tsuyoshi Horigome
 
Uliweb 快速易用的Python Web Framework
Uliweb 快速易用的Python Web FrameworkUliweb 快速易用的Python Web Framework
Uliweb 快速易用的Python Web Frameworkmodou li
 
Wikiスパムの傾向と対策
Wikiスパムの傾向と対策Wikiスパムの傾向と対策
Wikiスパムの傾向と対策Makio Tsukamoto
 
数年後のWEB標準標準
数年後のWEB標準標準数年後のWEB標準標準
数年後のWEB標準標準sato165 @delab
 
淺嚐新火狐
淺嚐新火狐淺嚐新火狐
淺嚐新火狐Bob Chao
 
Wiki Wiki Decade - WikiBaseとYukiWiki 1.x
Wiki Wiki Decade - WikiBaseとYukiWiki 1.xWiki Wiki Decade - WikiBaseとYukiWiki 1.x
Wiki Wiki Decade - WikiBaseとYukiWiki 1.xMakio Tsukamoto
 
イケテルRuby開発環境
イケテルRuby開発環境イケテルRuby開発環境
イケテルRuby開発環境mokada
 

La actualidad más candente (20)

Web技術勉強会5回目(Slide Share用)
Web技術勉強会5回目(Slide Share用)Web技術勉強会5回目(Slide Share用)
Web技術勉強会5回目(Slide Share用)
 
【13-D-4】 アナタのアプリ性能改善の秘訣、オラクルが教えます!
【13-D-4】 アナタのアプリ性能改善の秘訣、オラクルが教えます!【13-D-4】 アナタのアプリ性能改善の秘訣、オラクルが教えます!
【13-D-4】 アナタのアプリ性能改善の秘訣、オラクルが教えます!
 
Sd Loader Seasar Con2009 White
Sd Loader Seasar Con2009 WhiteSd Loader Seasar Con2009 White
Sd Loader Seasar Con2009 White
 
Howtousenetboss
HowtousenetbossHowtousenetboss
Howtousenetboss
 
Web2.0 and Ruby
Web2.0 and RubyWeb2.0 and Ruby
Web2.0 and Ruby
 
WebアプリケーションフレームワークMojoの紹介
WebアプリケーションフレームワークMojoの紹介WebアプリケーションフレームワークMojoの紹介
WebアプリケーションフレームワークMojoの紹介
 
ソフトウェアの構造とオープン化
ソフトウェアの構造とオープン化ソフトウェアの構造とオープン化
ソフトウェアの構造とオープン化
 
Web技術勉強会 第18回
Web技術勉強会 第18回Web技術勉強会 第18回
Web技術勉強会 第18回
 
章文嵩:使用LVS集群架设高可扩展的网络服务.pdf
章文嵩:使用LVS集群架设高可扩展的网络服务.pdf章文嵩:使用LVS集群架设高可扩展的网络服务.pdf
章文嵩:使用LVS集群架设高可扩展的网络服务.pdf
 
Bee Style vol043のご案内
Bee Style vol043のご案内Bee Style vol043のご案内
Bee Style vol043のご案内
 
Uliweb 快速易用的Python Web Framework
Uliweb 快速易用的Python Web FrameworkUliweb 快速易用的Python Web Framework
Uliweb 快速易用的Python Web Framework
 
Wikiスパムの傾向と対策
Wikiスパムの傾向と対策Wikiスパムの傾向と対策
Wikiスパムの傾向と対策
 
数年後のWEB標準標準
数年後のWEB標準標準数年後のWEB標準標準
数年後のWEB標準標準
 
HTML
HTMLHTML
HTML
 
Asp.Net2 12
Asp.Net2 12Asp.Net2 12
Asp.Net2 12
 
淺嚐新火狐
淺嚐新火狐淺嚐新火狐
淺嚐新火狐
 
Way to Wikiwyg
Way to WikiwygWay to Wikiwyg
Way to Wikiwyg
 
Wiki Wiki Decade - WikiBaseとYukiWiki 1.x
Wiki Wiki Decade - WikiBaseとYukiWiki 1.xWiki Wiki Decade - WikiBaseとYukiWiki 1.x
Wiki Wiki Decade - WikiBaseとYukiWiki 1.x
 
イケテルRuby開発環境
イケテルRuby開発環境イケテルRuby開発環境
イケテルRuby開発環境
 
Jslunch5
Jslunch5Jslunch5
Jslunch5
 

Más de Masaki Komagata

フィヨルドでのCaster活用事例
フィヨルドでのCaster活用事例フィヨルドでのCaster活用事例
フィヨルドでのCaster活用事例Masaki Komagata
 
Webデザイナーのための「本当は怖くない」"黒い画面"入門
Webデザイナーのための「本当は怖くない」"黒い画面"入門Webデザイナーのための「本当は怖くない」"黒い画面"入門
Webデザイナーのための「本当は怖くない」"黒い画面"入門Masaki Komagata
 
This is presentation at Mitaka.rb #10.
This is presentation at Mitaka.rb #10.This is presentation at Mitaka.rb #10.
This is presentation at Mitaka.rb #10.Masaki Komagata
 
WordPressに足りないモノ
WordPressに足りないモノWordPressに足りないモノ
WordPressに足りないモノMasaki Komagata
 
Webアプリケーションの国際化
Webアプリケーションの国際化Webアプリケーションの国際化
Webアプリケーションの国際化Masaki Komagata
 
RESTfullアプリケーションの簡単作成
RESTfullアプリケーションの簡単作成RESTfullアプリケーションの簡単作成
RESTfullアプリケーションの簡単作成Masaki Komagata
 

Más de Masaki Komagata (12)

漬け水に浸かる
漬け水に浸かる漬け水に浸かる
漬け水に浸かる
 
フィヨルドでのCaster活用事例
フィヨルドでのCaster活用事例フィヨルドでのCaster活用事例
フィヨルドでのCaster活用事例
 
CMS for Cloud by Ruby
CMS for Cloud by RubyCMS for Cloud by Ruby
CMS for Cloud by Ruby
 
CMS for Cloud by Ruby
CMS for Cloud by RubyCMS for Cloud by Ruby
CMS for Cloud by Ruby
 
PaaS向けCMS Lokka
PaaS向けCMS LokkaPaaS向けCMS Lokka
PaaS向けCMS Lokka
 
Webデザイナーのための「本当は怖くない」"黒い画面"入門
Webデザイナーのための「本当は怖くない」"黒い画面"入門Webデザイナーのための「本当は怖くない」"黒い画面"入門
Webデザイナーのための「本当は怖くない」"黒い画面"入門
 
What make you
What make youWhat make you
What make you
 
This is presentation at Mitaka.rb #10.
This is presentation at Mitaka.rb #10.This is presentation at Mitaka.rb #10.
This is presentation at Mitaka.rb #10.
 
WordPressに足りないモノ
WordPressに足りないモノWordPressに足りないモノ
WordPressに足りないモノ
 
MSICC
MSICCMSICC
MSICC
 
Webアプリケーションの国際化
Webアプリケーションの国際化Webアプリケーションの国際化
Webアプリケーションの国際化
 
RESTfullアプリケーションの簡単作成
RESTfullアプリケーションの簡単作成RESTfullアプリケーションの簡単作成
RESTfullアプリケーションの簡単作成
 

What is PHP Frameworks?