SlideShare uma empresa Scribd logo
1 de 20
Baixar para ler offline
WeeklyCMS主催	
  
8時間耐久勉強会	
    酒井能克	
  
  WeeklyCMS主催	
  
  XOOPSリーダー
ありたい姿ー現状=課題	
•  今日の勉強会を足がかりに成りたい姿を描い
   てみよう。	
  
•  それに対して現状を自分で分析してみよう。	
  
•  差分がこれからの課題です。	
  


 では貴方の目の前の人に説明してみて下さい。
アジェンダ	
•  10:00-­‐11:00	
  PHP基礎/ローカル環境構築編	
  
•  11:00-­‐12:00	
  エディタを使ってプログラミング	
  
•  12:00-­‐13:00	
  ソーシャルランチ	
  
•  13:00-­‐14:00	
  PHPクラスについて	
  
•  14:00-­‐15:00	
  オブジェクト指向PG技法	
  
•  15:00-­‐16:00	
  MVCプログラミング技法:CakePHP	
  
•  16:00-­‐17:00	
  MVCをCMSへ応用:
   WordPress,XOOPSでCakePHP	
  
•  17:00-­‐18:00	
  Webアプリ構築実践編:CMSで
   Scaffoldしてみる
10:00-­‐11:00	
  PHP基礎	
  
           ローカル環境構築編	
  
•    XAMP,MAMP,WebMatrix。	
  
•    Weeklycmsフォルダを作る。	
  
•    Phpinfo(); 関数で状態をチェックする。	
  
•    PHP早食いでおさらい	
  
•    関数とは	
  
•    get_loaded_extensions();	
  
•    get_defined_funcTons();
ぷろぐらみんぐ	
•  基礎	
  
   –  プログラム	
  (Program)	
  
      For($i=0;$i<10;$i++){	
  
                Echo	
  “Hello	
  world!”;	
  
      }	
  
   –  サブルーチンとは	
  (subrouTne)	
  
      FuncTon	
  helloWorld($max=10){	
  
         	
  For($i=0;$i<$max;$i++){	
  
                          	
  Echo	
  “Hello	
  world!”;	
  
              	
  }	
  
      }	
  
      helloWorld(8);	
  
ふぁんくしょん	
•  関数の引数	
  (argument)	
                                   Hoge	
  –  値渡し (call	
  by	
  value)	
  
  –  参照渡し	
  (call	
  by	
  reference)	
                  Hoge	
                   FuncTon	
     foo	



                                                       foo	
               hoge
11:00-­‐12:00	
  エディタを	
  
          使ってプログラミング	
  
                    	
•  Eclipse,Espresso,PHPStorm,ソコラ辺	
  
•  FireFox,ChromeとかでFireBug	
  
12:00-­‐13:00	
  ソーシャルランチ	
•    FaceBook,Twiderで皆さんつながろー	
  
•    ランチいってらー	
  
•    時間余ったらライセンスの話とか	
  
•    GPLはガッツリプルコギランチではない。
13:00-­‐14:00	
  PHPクラスについて	
•  クラスは関数の集合体でデータを内部で保持
   できる	
  
•  クラスの生成をインスタンス化といいます。	
  
•  インスタンス化すると自分専用の領域を持ち
   ます。$変数名 =	
  new	
  クラス名([引数,...]);	
  
•  アクセス修飾子(public,private)
継承	
<?php	
  	
  
class	
  サブクラス名 extends	
  スーパークラス名 {	
  
          	
  サブクラスの処理定義 	
  
}	
  	
  
?>	
  
継承によりスーパークラスの機能をサブクラスで上書き
することを「オーバーライド」と言います。オーバーライド
されなかったスーパークラスのメソッドはサブクラスでも
そのまま引き継がれ、あたかも自分自身で定義したメ
ソッドであるかのように利用できます。
用語集	
•  メソッド(method)	
  
   クラス内にある関数(funcTon)のこと	
•  プロパティ(property)	
  
   クラス内の変数(variable)のこと。メンバ変数も同
   じ意味	
•  コンストラクタ(Constructor)

   初期化用のメソッド。オブジェクト生成時にやりた
   いことを入れる	
•  継承(Inheritance)

   クラスを元に新しいクラスを作る。さっきのヤツ
キモはカプセル化	
•    クラスで使われてるメソッドやプロパティはなるべく隠し、外部とやりとりするものだけを最低
     限の範囲で出す。	
  
	
  
class	
  shopping	
  {	
  
	
  	
  	
  	
  	
  var	
  $cart=array();	
    var	
  $name	
  =	
  “Guest”; 	
  //メンバ変数(プロパティ)	
    func8on	
  cart($thing){ 	
  //メソッド	
        $this-­‐>cart[]	
  =$thing	
  ;	
    	
  
	
  	
  	
  	
  }	
  	
  
	
  	
  	
  	
  FuncTon	
  reji(){	
  
	
  	
  	
  	
  }	
  
}	
$sp	
  =	
  new	
  shopping();//インスタンス作成	
  
                                           	
  
$sp-­‐>cart(“Cofffe”);	
  
$sp-­‐>cart(“Milk”);	
  
$sp-­‐>cart(“Ocha”);	
  
$sum	
  =	
  $sp-­‐>reji();	
  
14:00-­‐15:00	
  オブジェクト指向PG技法	
  
           【object	
  oriented】	
•  ソフトウェアの設計や開発において、操作手順よ
   りも操作対象に重点を置く考え方。	
•  関連するデータの集合と、それに対する手続き
   (メソッド)を「オブジェクト」と呼ばれる一つのまと
   まりとして管理し、その組み合わせによってソフト
   ウェアを構築する。	
  
•  すでに存在するオブジェクトについては、利用に
   際してその内部構造や動作原理の詳細を知る
   必要はなく、外部からメッセージを送れば機能す
   る。
現実の世界をモデル化する	


   Method	



              Object
15:00-­‐16:00	
  MVCプログラミング技法	
                               Browser	
                                         1:Request	
   5:Responce	
                              Controller	
                                                        3:Responce	
                                4:Output	
                                    2:Command	

            View	
                                     Model	


ZendFramework、CakePHP、Simfony	
  
Oreore	
                                                       Data
CakePHP	
•  RAD(Rapid	
  ApplicaTon	
  Development)	
  
•  CakePHPはRuby	
  on	
  Railsの思想に強いインスピ
   レーションを受けて開発されています。データ
   ベースへアクセスするコードを書かずにデータ
   ベースを扱う AcTveRecordや、基本的な登録、
   表示、編集、削除(Create,Read,Update,Delete)	
  な
   どの動作を自動的に提供するscaffolding機能を
   提供しています。これによりわずか数分間程度
   の作業で、データベース内のデータを更新する
   よう なアプリケーションを作成する事も可能です。
1st	
  Bite	


•  hdp://www.sitepoint.com/applicaTon-­‐
   development-­‐cakephp/	
  

•  hdp://localhost/cakephp/authors
16:00-­‐17:00	
  MVCをCMSへ応用	
•  XOOPS	
  Cube	
  で	
  Cake	
  する
17:00-­‐18:00	
  Webアプリ構築実践編	
•  CMSでScaffoldしてみる
CakeCMS	
•  材料	
  
   –  XOOPS	
  Cube	
  Pack2012	
  
      hdp://www.xoopscube.net	
  
   –  CakeCMS	
  
      hdp://sourceforge.jp/projects/xcake/

Mais conteúdo relacionado

Mais procurados

最新PHP事情 (2000年7月22日,PHPカンファレンス)
最新PHP事情 (2000年7月22日,PHPカンファレンス)最新PHP事情 (2000年7月22日,PHPカンファレンス)
最新PHP事情 (2000年7月22日,PHPカンファレンス)Rui Hirokawa
 
運用構築技術者の為のPSプログラミング第1回
運用構築技術者の為のPSプログラミング第1回運用構築技術者の為のPSプログラミング第1回
運用構築技術者の為のPSプログラミング第1回Shigeharu Yamaoka
 
SmartNews TechNight Vol5 : SmartNews AdServer 解体新書 / ポストモーテム
SmartNews TechNight Vol5 : SmartNews AdServer 解体新書 / ポストモーテムSmartNews TechNight Vol5 : SmartNews AdServer 解体新書 / ポストモーテム
SmartNews TechNight Vol5 : SmartNews AdServer 解体新書 / ポストモーテムSmartNews, Inc.
 
Ansible 入門 #01 (初心者向け)
Ansible 入門 #01 (初心者向け)Ansible 入門 #01 (初心者向け)
Ansible 入門 #01 (初心者向け)Taro Hirose
 
PHPコードではなく PHPコードの「書き方」を知る
PHPコードではなく PHPコードの「書き方」を知るPHPコードではなく PHPコードの「書き方」を知る
PHPコードではなく PHPコードの「書き方」を知るMasashi Shinbara
 
Webサーバ勉強会03
Webサーバ勉強会03Webサーバ勉強会03
Webサーバ勉強会03oranie Narut
 
Powershell勉強会 v2 (もっと新しいバージョンがあります)
Powershell勉強会 v2 (もっと新しいバージョンがあります)Powershell勉強会 v2 (もっと新しいバージョンがあります)
Powershell勉強会 v2 (もっと新しいバージョンがあります)Tetsu Yama
 
Ansibleで始めるサーバ管理勉強会(2014年10月1日)
Ansibleで始めるサーバ管理勉強会(2014年10月1日)Ansibleで始めるサーバ管理勉強会(2014年10月1日)
Ansibleで始めるサーバ管理勉強会(2014年10月1日)CLARA ONLINE, Inc.
 
Fabricでサーバー管理をDRYにしよう
Fabricでサーバー管理をDRYにしようFabricでサーバー管理をDRYにしよう
Fabricでサーバー管理をDRYにしようmax747
 
書籍「軽量・高速モバイルデータベース Realm入門」を使って学ぶRealmの勘所
書籍「軽量・高速モバイルデータベース Realm入門」を使って学ぶRealmの勘所書籍「軽量・高速モバイルデータベース Realm入門」を使って学ぶRealmの勘所
書籍「軽量・高速モバイルデータベース Realm入門」を使って学ぶRealmの勘所Yu Sugawara
 
Powershell勉強会 v3 (もっと新しいバージョンがあります)
Powershell勉強会 v3 (もっと新しいバージョンがあります)Powershell勉強会 v3 (もっと新しいバージョンがあります)
Powershell勉強会 v3 (もっと新しいバージョンがあります)Tetsu Yama
 
シュッとふりかえる Ruby 2.0 以降
シュッとふりかえる Ruby 2.0 以降シュッとふりかえる Ruby 2.0 以降
シュッとふりかえる Ruby 2.0 以降Tomohiro Nishimura
 
JavaScriptユーティリティライブラリの紹介
JavaScriptユーティリティライブラリの紹介JavaScriptユーティリティライブラリの紹介
JavaScriptユーティリティライブラリの紹介Yusuke Hirao
 
Powershell基礎_20180521用
Powershell基礎_20180521用Powershell基礎_20180521用
Powershell基礎_20180521用Tetsu Yama
 

Mais procurados (18)

最新PHP事情 (2000年7月22日,PHPカンファレンス)
最新PHP事情 (2000年7月22日,PHPカンファレンス)最新PHP事情 (2000年7月22日,PHPカンファレンス)
最新PHP事情 (2000年7月22日,PHPカンファレンス)
 
Ansible入門
Ansible入門Ansible入門
Ansible入門
 
運用構築技術者の為のPSプログラミング第1回
運用構築技術者の為のPSプログラミング第1回運用構築技術者の為のPSプログラミング第1回
運用構築技術者の為のPSプログラミング第1回
 
SmartNews TechNight Vol5 : SmartNews AdServer 解体新書 / ポストモーテム
SmartNews TechNight Vol5 : SmartNews AdServer 解体新書 / ポストモーテムSmartNews TechNight Vol5 : SmartNews AdServer 解体新書 / ポストモーテム
SmartNews TechNight Vol5 : SmartNews AdServer 解体新書 / ポストモーテム
 
Ansible 入門 #01 (初心者向け)
Ansible 入門 #01 (初心者向け)Ansible 入門 #01 (初心者向け)
Ansible 入門 #01 (初心者向け)
 
Fabric Essentials
Fabric EssentialsFabric Essentials
Fabric Essentials
 
実践Realm
実践Realm実践Realm
実践Realm
 
PHPコードではなく PHPコードの「書き方」を知る
PHPコードではなく PHPコードの「書き方」を知るPHPコードではなく PHPコードの「書き方」を知る
PHPコードではなく PHPコードの「書き方」を知る
 
Webサーバ勉強会03
Webサーバ勉強会03Webサーバ勉強会03
Webサーバ勉強会03
 
Powershell勉強会 v2 (もっと新しいバージョンがあります)
Powershell勉強会 v2 (もっと新しいバージョンがあります)Powershell勉強会 v2 (もっと新しいバージョンがあります)
Powershell勉強会 v2 (もっと新しいバージョンがあります)
 
NodeFest2014 - Transpiler
NodeFest2014 - TranspilerNodeFest2014 - Transpiler
NodeFest2014 - Transpiler
 
Ansibleで始めるサーバ管理勉強会(2014年10月1日)
Ansibleで始めるサーバ管理勉強会(2014年10月1日)Ansibleで始めるサーバ管理勉強会(2014年10月1日)
Ansibleで始めるサーバ管理勉強会(2014年10月1日)
 
Fabricでサーバー管理をDRYにしよう
Fabricでサーバー管理をDRYにしようFabricでサーバー管理をDRYにしよう
Fabricでサーバー管理をDRYにしよう
 
書籍「軽量・高速モバイルデータベース Realm入門」を使って学ぶRealmの勘所
書籍「軽量・高速モバイルデータベース Realm入門」を使って学ぶRealmの勘所書籍「軽量・高速モバイルデータベース Realm入門」を使って学ぶRealmの勘所
書籍「軽量・高速モバイルデータベース Realm入門」を使って学ぶRealmの勘所
 
Powershell勉強会 v3 (もっと新しいバージョンがあります)
Powershell勉強会 v3 (もっと新しいバージョンがあります)Powershell勉強会 v3 (もっと新しいバージョンがあります)
Powershell勉強会 v3 (もっと新しいバージョンがあります)
 
シュッとふりかえる Ruby 2.0 以降
シュッとふりかえる Ruby 2.0 以降シュッとふりかえる Ruby 2.0 以降
シュッとふりかえる Ruby 2.0 以降
 
JavaScriptユーティリティライブラリの紹介
JavaScriptユーティリティライブラリの紹介JavaScriptユーティリティライブラリの紹介
JavaScriptユーティリティライブラリの紹介
 
Powershell基礎_20180521用
Powershell基礎_20180521用Powershell基礎_20180521用
Powershell基礎_20180521用
 

Destaque

Final david c roberts ece 2011 pecha kucha
Final david c roberts ece 2011 pecha kuchaFinal david c roberts ece 2011 pecha kucha
Final david c roberts ece 2011 pecha kuchaDavid C Roberts
 
States and capitals nov 2010
States and capitals nov 2010States and capitals nov 2010
States and capitals nov 2010rlymanor
 
Online networks & the traditional university a prospectus
Online networks & the traditional university    a prospectusOnline networks & the traditional university    a prospectus
Online networks & the traditional university a prospectusDavid C Roberts
 
Jubilee Time Capsule Background Slides - Thai Cyber University International ...
Jubilee Time Capsule Background Slides - Thai Cyber University International ...Jubilee Time Capsule Background Slides - Thai Cyber University International ...
Jubilee Time Capsule Background Slides - Thai Cyber University International ...David C Roberts
 
Public Art - Lauren Holtz
Public Art - Lauren HoltzPublic Art - Lauren Holtz
Public Art - Lauren Holtzlholtz00
 
XOOPS Cube 2.2 Pack 2011
XOOPS Cube 2.2 Pack 2011XOOPS Cube 2.2 Pack 2011
XOOPS Cube 2.2 Pack 2011Yoshi Sakai
 

Destaque (7)

Final david c roberts ece 2011 pecha kucha
Final david c roberts ece 2011 pecha kuchaFinal david c roberts ece 2011 pecha kucha
Final david c roberts ece 2011 pecha kucha
 
States and capitals nov 2010
States and capitals nov 2010States and capitals nov 2010
States and capitals nov 2010
 
Oss活動指針
Oss活動指針Oss活動指針
Oss活動指針
 
Online networks & the traditional university a prospectus
Online networks & the traditional university    a prospectusOnline networks & the traditional university    a prospectus
Online networks & the traditional university a prospectus
 
Jubilee Time Capsule Background Slides - Thai Cyber University International ...
Jubilee Time Capsule Background Slides - Thai Cyber University International ...Jubilee Time Capsule Background Slides - Thai Cyber University International ...
Jubilee Time Capsule Background Slides - Thai Cyber University International ...
 
Public Art - Lauren Holtz
Public Art - Lauren HoltzPublic Art - Lauren Holtz
Public Art - Lauren Holtz
 
XOOPS Cube 2.2 Pack 2011
XOOPS Cube 2.2 Pack 2011XOOPS Cube 2.2 Pack 2011
XOOPS Cube 2.2 Pack 2011
 

Semelhante a Weeklycms20120218

PHP in Java -Quercus- によるレガシーマイグレーション実例 #jjug_ccc #ccc_r12
PHP in Java -Quercus- によるレガシーマイグレーション実例 #jjug_ccc #ccc_r12PHP in Java -Quercus- によるレガシーマイグレーション実例 #jjug_ccc #ccc_r12
PHP in Java -Quercus- によるレガシーマイグレーション実例 #jjug_ccc #ccc_r12Ryuji Yamashita
 
今、最もイケてるPHPフレームワークLaravel4
今、最もイケてるPHPフレームワークLaravel4今、最もイケてるPHPフレームワークLaravel4
今、最もイケてるPHPフレームワークLaravel4アシアル株式会社
 
PHP と SAPI と ZendEngine3 と
PHP と SAPI と ZendEngine3 とPHP と SAPI と ZendEngine3 と
PHP と SAPI と ZendEngine3 とdo_aki
 
WTM53 phpフレームワーク いまさらcodeigniter
WTM53 phpフレームワーク いまさらcodeigniterWTM53 phpフレームワーク いまさらcodeigniter
WTM53 phpフレームワーク いまさらcodeigniterMasanori Oobayashi
 
Modern PHP Programming @ PFI Seminar
Modern PHP Programming @ PFI SeminarModern PHP Programming @ PFI Seminar
Modern PHP Programming @ PFI SeminarSotaro Karasawa
 
Cookpad 17 day Tech internship 2017 言語処理系入門 Rubyをコンパイルしよう
Cookpad 17 day Tech internship 2017 言語処理系入門 RubyをコンパイルしようCookpad 17 day Tech internship 2017 言語処理系入門 Rubyをコンパイルしよう
Cookpad 17 day Tech internship 2017 言語処理系入門 RubyをコンパイルしようKoichi Sasada
 
CodeIgniter入門
CodeIgniter入門CodeIgniter入門
CodeIgniter入門Sho A
 
プログラマ進化論
プログラマ進化論プログラマ進化論
プログラマ進化論Sotaro Omura
 
ZabbixのAPIを使って運用を楽しくする話
ZabbixのAPIを使って運用を楽しくする話ZabbixのAPIを使って運用を楽しくする話
ZabbixのAPIを使って運用を楽しくする話Masahito Zembutsu
 
スクリプト言語PHP攻略法
スクリプト言語PHP攻略法スクリプト言語PHP攻略法
スクリプト言語PHP攻略法Rui Hirokawa
 
SmartPhone development guide with CoffeeScript + Node + HTML5 Technology, for...
SmartPhone development guide with CoffeeScript + Node + HTML5 Technology, for...SmartPhone development guide with CoffeeScript + Node + HTML5 Technology, for...
SmartPhone development guide with CoffeeScript + Node + HTML5 Technology, for...Naoya Ito
 
今、最もイケてるPHPフレームワークLaravel4
今、最もイケてるPHPフレームワークLaravel4今、最もイケてるPHPフレームワークLaravel4
今、最もイケてるPHPフレームワークLaravel4leverages_event
 
Kink: invokedynamic on a prototype-based language
Kink: invokedynamic on a prototype-based languageKink: invokedynamic on a prototype-based language
Kink: invokedynamic on a prototype-based languageTaku Miyakawa
 
<第1回>Laravelハンズオンセミナー
<第1回>Laravelハンズオンセミナー<第1回>Laravelハンズオンセミナー
<第1回>LaravelハンズオンセミナーTatsuyoshi Mashiko
 
Backlogでの Perlのつかいかた
Backlogでの PerlのつかいかたBacklogでの Perlのつかいかた
Backlogでの PerlのつかいかたRyuzo Yamamoto
 
PHPフレームワーク入門
PHPフレームワーク入門PHPフレームワーク入門
PHPフレームワーク入門Sho A
 
恋に落ちるデプロイツール
恋に落ちるデプロイツール恋に落ちるデプロイツール
恋に落ちるデプロイツールtotty jp
 
GiNZAで始める日本語依存構造解析 〜CaboCha, UDPipe, Stanford NLPとの比較〜
GiNZAで始める日本語依存構造解析 〜CaboCha, UDPipe, Stanford NLPとの比較〜GiNZAで始める日本語依存構造解析 〜CaboCha, UDPipe, Stanford NLPとの比較〜
GiNZAで始める日本語依存構造解析 〜CaboCha, UDPipe, Stanford NLPとの比較〜Megagon Labs
 

Semelhante a Weeklycms20120218 (20)

PHP in Java -Quercus- によるレガシーマイグレーション実例 #jjug_ccc #ccc_r12
PHP in Java -Quercus- によるレガシーマイグレーション実例 #jjug_ccc #ccc_r12PHP in Java -Quercus- によるレガシーマイグレーション実例 #jjug_ccc #ccc_r12
PHP in Java -Quercus- によるレガシーマイグレーション実例 #jjug_ccc #ccc_r12
 
今、最もイケてるPHPフレームワークLaravel4
今、最もイケてるPHPフレームワークLaravel4今、最もイケてるPHPフレームワークLaravel4
今、最もイケてるPHPフレームワークLaravel4
 
PHP と SAPI と ZendEngine3 と
PHP と SAPI と ZendEngine3 とPHP と SAPI と ZendEngine3 と
PHP と SAPI と ZendEngine3 と
 
実"戦"CakePHP Plugin
実"戦"CakePHP Plugin実"戦"CakePHP Plugin
実"戦"CakePHP Plugin
 
WTM53 phpフレームワーク いまさらcodeigniter
WTM53 phpフレームワーク いまさらcodeigniterWTM53 phpフレームワーク いまさらcodeigniter
WTM53 phpフレームワーク いまさらcodeigniter
 
Modern PHP Programming @ PFI Seminar
Modern PHP Programming @ PFI SeminarModern PHP Programming @ PFI Seminar
Modern PHP Programming @ PFI Seminar
 
Cookpad 17 day Tech internship 2017 言語処理系入門 Rubyをコンパイルしよう
Cookpad 17 day Tech internship 2017 言語処理系入門 RubyをコンパイルしようCookpad 17 day Tech internship 2017 言語処理系入門 Rubyをコンパイルしよう
Cookpad 17 day Tech internship 2017 言語処理系入門 Rubyをコンパイルしよう
 
CodeIgniter入門
CodeIgniter入門CodeIgniter入門
CodeIgniter入門
 
プログラマ進化論
プログラマ進化論プログラマ進化論
プログラマ進化論
 
ZabbixのAPIを使って運用を楽しくする話
ZabbixのAPIを使って運用を楽しくする話ZabbixのAPIを使って運用を楽しくする話
ZabbixのAPIを使って運用を楽しくする話
 
スクリプト言語PHP攻略法
スクリプト言語PHP攻略法スクリプト言語PHP攻略法
スクリプト言語PHP攻略法
 
SmartPhone development guide with CoffeeScript + Node + HTML5 Technology, for...
SmartPhone development guide with CoffeeScript + Node + HTML5 Technology, for...SmartPhone development guide with CoffeeScript + Node + HTML5 Technology, for...
SmartPhone development guide with CoffeeScript + Node + HTML5 Technology, for...
 
今、最もイケてるPHPフレームワークLaravel4
今、最もイケてるPHPフレームワークLaravel4今、最もイケてるPHPフレームワークLaravel4
今、最もイケてるPHPフレームワークLaravel4
 
Kink: invokedynamic on a prototype-based language
Kink: invokedynamic on a prototype-based languageKink: invokedynamic on a prototype-based language
Kink: invokedynamic on a prototype-based language
 
Haikara
HaikaraHaikara
Haikara
 
<第1回>Laravelハンズオンセミナー
<第1回>Laravelハンズオンセミナー<第1回>Laravelハンズオンセミナー
<第1回>Laravelハンズオンセミナー
 
Backlogでの Perlのつかいかた
Backlogでの PerlのつかいかたBacklogでの Perlのつかいかた
Backlogでの Perlのつかいかた
 
PHPフレームワーク入門
PHPフレームワーク入門PHPフレームワーク入門
PHPフレームワーク入門
 
恋に落ちるデプロイツール
恋に落ちるデプロイツール恋に落ちるデプロイツール
恋に落ちるデプロイツール
 
GiNZAで始める日本語依存構造解析 〜CaboCha, UDPipe, Stanford NLPとの比較〜
GiNZAで始める日本語依存構造解析 〜CaboCha, UDPipe, Stanford NLPとの比較〜GiNZAで始める日本語依存構造解析 〜CaboCha, UDPipe, Stanford NLPとの比較〜
GiNZAで始める日本語依存構造解析 〜CaboCha, UDPipe, Stanford NLPとの比較〜
 

Mais de Yoshi Sakai

いきなりAi tensor flow gpuによる画像分類と生成
いきなりAi tensor flow gpuによる画像分類と生成いきなりAi tensor flow gpuによる画像分類と生成
いきなりAi tensor flow gpuによる画像分類と生成Yoshi Sakai
 
Access で Excel ファイルの操作を行う為のライブラリ設定
Access で Excel ファイルの操作を行う為のライブラリ設定Access で Excel ファイルの操作を行う為のライブラリ設定
Access で Excel ファイルの操作を行う為のライブラリ設定Yoshi Sakai
 
Paypal REST api ( Japanese version )
Paypal REST api ( Japanese version )Paypal REST api ( Japanese version )
Paypal REST api ( Japanese version )Yoshi Sakai
 
Rhodes mobile Framework
Rhodes mobile FrameworkRhodes mobile Framework
Rhodes mobile FrameworkYoshi Sakai
 
Rhodes mobile Framework (Japanese)
Rhodes mobile Framework (Japanese)Rhodes mobile Framework (Japanese)
Rhodes mobile Framework (Japanese)Yoshi Sakai
 
Osc2009tokyofall xoops groupware
Osc2009tokyofall xoops groupwareOsc2009tokyofall xoops groupware
Osc2009tokyofall xoops groupwareYoshi Sakai
 
XOOPS EC Distribution
XOOPS EC DistributionXOOPS EC Distribution
XOOPS EC DistributionYoshi Sakai
 
XOOPS and Twitter Bootstrap
XOOPS and Twitter BootstrapXOOPS and Twitter Bootstrap
XOOPS and Twitter BootstrapYoshi Sakai
 
XOOPS EC on C4SA Paas deployment
XOOPS EC on C4SA Paas deploymentXOOPS EC on C4SA Paas deployment
XOOPS EC on C4SA Paas deploymentYoshi Sakai
 
XOOPS Securilty flow
XOOPS Securilty flowXOOPS Securilty flow
XOOPS Securilty flowYoshi Sakai
 
Xoops Cube Saturday Lab. 2010/09/25
Xoops Cube Saturday Lab. 2010/09/25Xoops Cube Saturday Lab. 2010/09/25
Xoops Cube Saturday Lab. 2010/09/25Yoshi Sakai
 

Mais de Yoshi Sakai (16)

いきなりAi tensor flow gpuによる画像分類と生成
いきなりAi tensor flow gpuによる画像分類と生成いきなりAi tensor flow gpuによる画像分類と生成
いきなりAi tensor flow gpuによる画像分類と生成
 
Access で Excel ファイルの操作を行う為のライブラリ設定
Access で Excel ファイルの操作を行う為のライブラリ設定Access で Excel ファイルの操作を行う為のライブラリ設定
Access で Excel ファイルの操作を行う為のライブラリ設定
 
Paypal REST api ( Japanese version )
Paypal REST api ( Japanese version )Paypal REST api ( Japanese version )
Paypal REST api ( Japanese version )
 
Rhodes mobile Framework
Rhodes mobile FrameworkRhodes mobile Framework
Rhodes mobile Framework
 
Rhodes mobile Framework (Japanese)
Rhodes mobile Framework (Japanese)Rhodes mobile Framework (Japanese)
Rhodes mobile Framework (Japanese)
 
Xoopsec
XoopsecXoopsec
Xoopsec
 
Osc2009tokyofall xoops groupware
Osc2009tokyofall xoops groupwareOsc2009tokyofall xoops groupware
Osc2009tokyofall xoops groupware
 
XOOPS EC Distribution
XOOPS EC DistributionXOOPS EC Distribution
XOOPS EC Distribution
 
XOOPS and Twitter Bootstrap
XOOPS and Twitter BootstrapXOOPS and Twitter Bootstrap
XOOPS and Twitter Bootstrap
 
XOOPS EC on C4SA Paas deployment
XOOPS EC on C4SA Paas deploymentXOOPS EC on C4SA Paas deployment
XOOPS EC on C4SA Paas deployment
 
Xcc2012
Xcc2012Xcc2012
Xcc2012
 
Xoops x
Xoops xXoops x
Xoops x
 
XOOPS Securilty flow
XOOPS Securilty flowXOOPS Securilty flow
XOOPS Securilty flow
 
Seminer20110119
Seminer20110119Seminer20110119
Seminer20110119
 
Satlab20101127
Satlab20101127Satlab20101127
Satlab20101127
 
Xoops Cube Saturday Lab. 2010/09/25
Xoops Cube Saturday Lab. 2010/09/25Xoops Cube Saturday Lab. 2010/09/25
Xoops Cube Saturday Lab. 2010/09/25
 

Weeklycms20120218

  • 1. WeeklyCMS主催   8時間耐久勉強会 酒井能克   WeeklyCMS主催   XOOPSリーダー
  • 2. ありたい姿ー現状=課題 •  今日の勉強会を足がかりに成りたい姿を描い てみよう。   •  それに対して現状を自分で分析してみよう。   •  差分がこれからの課題です。   では貴方の目の前の人に説明してみて下さい。
  • 3. アジェンダ •  10:00-­‐11:00  PHP基礎/ローカル環境構築編   •  11:00-­‐12:00  エディタを使ってプログラミング   •  12:00-­‐13:00  ソーシャルランチ   •  13:00-­‐14:00  PHPクラスについて   •  14:00-­‐15:00  オブジェクト指向PG技法   •  15:00-­‐16:00  MVCプログラミング技法:CakePHP   •  16:00-­‐17:00  MVCをCMSへ応用: WordPress,XOOPSでCakePHP   •  17:00-­‐18:00  Webアプリ構築実践編:CMSで Scaffoldしてみる
  • 4. 10:00-­‐11:00  PHP基礎   ローカル環境構築編   •  XAMP,MAMP,WebMatrix。   •  Weeklycmsフォルダを作る。   •  Phpinfo(); 関数で状態をチェックする。   •  PHP早食いでおさらい   •  関数とは   •  get_loaded_extensions();   •  get_defined_funcTons();
  • 5. ぷろぐらみんぐ •  基礎   –  プログラム  (Program)   For($i=0;$i<10;$i++){   Echo  “Hello  world!”;   }   –  サブルーチンとは  (subrouTne)   FuncTon  helloWorld($max=10){    For($i=0;$i<$max;$i++){    Echo  “Hello  world!”;    }   }   helloWorld(8);  
  • 6. ふぁんくしょん •  関数の引数  (argument)   Hoge –  値渡し (call  by  value)   –  参照渡し  (call  by  reference) Hoge FuncTon foo foo hoge
  • 7. 11:00-­‐12:00  エディタを   使ってプログラミング   •  Eclipse,Espresso,PHPStorm,ソコラ辺   •  FireFox,ChromeとかでFireBug  
  • 8. 12:00-­‐13:00  ソーシャルランチ •  FaceBook,Twiderで皆さんつながろー   •  ランチいってらー   •  時間余ったらライセンスの話とか   •  GPLはガッツリプルコギランチではない。
  • 9. 13:00-­‐14:00  PHPクラスについて •  クラスは関数の集合体でデータを内部で保持 できる   •  クラスの生成をインスタンス化といいます。   •  インスタンス化すると自分専用の領域を持ち ます。$変数名 =  new  クラス名([引数,...]);   •  アクセス修飾子(public,private)
  • 10. 継承 <?php     class  サブクラス名 extends  スーパークラス名 {    サブクラスの処理定義   }     ?>   継承によりスーパークラスの機能をサブクラスで上書き することを「オーバーライド」と言います。オーバーライド されなかったスーパークラスのメソッドはサブクラスでも そのまま引き継がれ、あたかも自分自身で定義したメ ソッドであるかのように利用できます。
  • 11. 用語集 •  メソッド(method)   クラス内にある関数(funcTon)のこと •  プロパティ(property)   クラス内の変数(variable)のこと。メンバ変数も同 じ意味 •  コンストラクタ(Constructor)
 初期化用のメソッド。オブジェクト生成時にやりた いことを入れる •  継承(Inheritance)
 クラスを元に新しいクラスを作る。さっきのヤツ
  • 12. キモはカプセル化 •  クラスで使われてるメソッドやプロパティはなるべく隠し、外部とやりとりするものだけを最低 限の範囲で出す。     class  shopping  {            var  $cart=array();     var  $name  =  “Guest”;  //メンバ変数(プロパティ)     func8on  cart($thing){  //メソッド         $this-­‐>cart[]  =$thing  ;             }            FuncTon  reji(){          }   } $sp  =  new  shopping();//インスタンス作成     $sp-­‐>cart(“Cofffe”);   $sp-­‐>cart(“Milk”);   $sp-­‐>cart(“Ocha”);   $sum  =  $sp-­‐>reji();  
  • 13. 14:00-­‐15:00  オブジェクト指向PG技法   【object  oriented】 •  ソフトウェアの設計や開発において、操作手順よ りも操作対象に重点を置く考え方。 •  関連するデータの集合と、それに対する手続き (メソッド)を「オブジェクト」と呼ばれる一つのまと まりとして管理し、その組み合わせによってソフト ウェアを構築する。   •  すでに存在するオブジェクトについては、利用に 際してその内部構造や動作原理の詳細を知る 必要はなく、外部からメッセージを送れば機能す る。
  • 15. 15:00-­‐16:00  MVCプログラミング技法 Browser 1:Request 5:Responce Controller 3:Responce 4:Output 2:Command View Model ZendFramework、CakePHP、Simfony   Oreore Data
  • 16. CakePHP •  RAD(Rapid  ApplicaTon  Development)   •  CakePHPはRuby  on  Railsの思想に強いインスピ レーションを受けて開発されています。データ ベースへアクセスするコードを書かずにデータ ベースを扱う AcTveRecordや、基本的な登録、 表示、編集、削除(Create,Read,Update,Delete)  な どの動作を自動的に提供するscaffolding機能を 提供しています。これによりわずか数分間程度 の作業で、データベース内のデータを更新する よう なアプリケーションを作成する事も可能です。
  • 17. 1st  Bite •  hdp://www.sitepoint.com/applicaTon-­‐ development-­‐cakephp/   •  hdp://localhost/cakephp/authors
  • 20. CakeCMS •  材料   –  XOOPS  Cube  Pack2012   hdp://www.xoopscube.net   –  CakeCMS   hdp://sourceforge.jp/projects/xcake/