X



PHPでOOP
00011 ◆SWtzLesEmM
垢版 |
2007/02/23(金) 13:35:52ID:???
PHPを使ってプログラミングするとき、
プロシージャ指向(手続き型、構造化プログラミング)でもできますが、
オブジェクト指向を使った場合の恩恵を享受するために、
PHPでオブジェクト指向プログラミングの勉強をしてみましょう。

<目的>
PHP5でオブジェクト指向プログラミングを行なうための知識を習得する。
(PHP4のOOPもOK、このスレが1000に行く前にPHP6が出たらPHP6のOOPもOK)

<方向性>
・このスレは、プログラミング初心者、PHP初心者の勉強の場として利用することを前提にします。
・PHPのOOPの話題に限定します。
(Ruby、Python、Javaなど他言語のOOPについては、その言語のスレッドでお願いします。)
・PHPのOOP学習に役立つ本、WEBサイトの紹介をお願いします。

<その他>
・略記は、「OO」=「オブジェクト指向」、「OOP」=「オブジェクト指向プログラミング」でお願いします。
・質問をする人はなるべくトリップを付けましょう。
・荒らし、煽り、叩き、気違いは無視・無干渉でお願いします。

このスレで、今日から貴方もOOP!!!\(^o^)/
0742nobodyさん
垢版 |
2009/05/07(木) 16:51:10ID:???
OOPの理論って奥が深いな。
デザインパターンなども学んで理論に忠実に沿った理想的な
プログラミングをしてみたいなとも思ったけれど、つきつめると
ケースバイケースってことに落ち着くから、こういう、忠実さを
追いかけるのは無駄な考え方のような気もしている。
この考えで合ってるよね?w
0743nobodyさん
垢版 |
2009/05/07(木) 16:54:10ID:???
結論出ちゃったじゃないか
0744nobodyさん
垢版 |
2009/05/07(木) 20:10:16ID:???
それ、ASP.NETに新しく導入された「ASP.NET MVC」ってフレームワークの記事なんだよ。
そもそもASP.NETはイベントドリブンなフレームワークで、本来の意味でのMVCを採用してたんだけど、StrutsとかRoRとかがウェブで流行ったから、MSも似たようなフレームワークを作ったわけ。
だからのこれまでのASP.NETの方が本来的なMVCに近い。「ASP.NET MVC」は「ASP.NET ウェブMVC」とかって名前にすれば良かったのに。
0745nobodyさん
垢版 |
2009/05/07(木) 20:53:37ID:???
M$って、紛らわしい名前つけるのが好きだよね。
ASP.NETにおいてMVCに関する詳しい記事かなと思ったけれど、
実際に読んでみると、まったく別なフレームワークってことだった。
違いについて理解するのがひとつ面倒になったなぁ。
0746nobodyさん
垢版 |
2009/05/07(木) 23:05:13ID:???
stackoverflowを作ったヤツね。
0748nobodyさん
垢版 |
2009/06/18(木) 20:12:33ID:???
なんでカソってんだー
0749nobodyさん
垢版 |
2009/07/02(木) 08:55:14ID:SGa5I59I
PHPにおけるOOPは100mを自動車で走るようなもの
自転車を使え
走れ
歩いてもいいぞ
0750nobodyさん
垢版 |
2009/07/02(木) 09:07:04ID:???
OOPを使いまくる必要はないけど
必要な機能をモジュール化したいときにOOPをいいとこ取りすれば便利
0752nobodyさん
垢版 |
2009/08/27(木) 07:51:29ID:???
>>748
最初に設定していた目標が概ね達成出来たからじゃね?w
っていうか、このスレに求めているものを書いていけば
盛り上がりを戻す可能性もあると思うよ。
質問するとか、何かソースを提供するとか。
0753nobodyさん
垢版 |
2009/10/25(日) 21:56:08ID:???
一応保守しておきます。
0754nobodyさん
垢版 |
2009/10/30(金) 22:56:19ID:???
OOPのしっかりしてるFWどれ
0755nobodyさん
垢版 |
2009/11/13(金) 21:51:59ID:???
FWは、その開発目的によるので、結論は出ない。
いや、あおりとかじゃなくて。
0756nobodyさん
垢版 |
2009/11/19(木) 15:33:07ID:???
コードの参考になるのはどれかと
07571 ◆SWtzLesEmM
垢版 |
2009/12/17(木) 22:30:30ID:???
PHPのフレームワークでMVCのタイプを使ってみました。
同じ機能を作るのに、コードを書く量が少なくて済むと楽ですね!

ただ、MVCだとスクリプトのファイル数が多くなると、ゴチャゴチャして見づらいと思いました。
MVC以外のフレームワークでオススメのものはありますか?

http://www.slideshare.net/NetPenguin/mvc-2659370
・PAC
・RecursiveMVC(HMVC)
・MMVC
・Doc/View
という仕組みが紹介されていました。
07591 ◆SWtzLesEmM
垢版 |
2009/12/17(木) 22:48:51ID:???
>>754
ttp://d.hatena.ne.jp/sotarok/20091126/modern_php_programming_at_pfi
↑このスライド資料の72ページ目に、PHPフレームワークの評価が紹介されていました。

・CakePHP
 世界でも日本でも大流行り。当然日本語での情報量も多い。
 Modelが使いやすい。それ以外は嫌いだけど。
 Cake3が別フレームワークにfork

・ZendFramework
 世界的にシェアNo.1?
 書く量の減らないドMフレームワーク
  というかいわゆるライブラリ群

・symfony
 これも利用者多い
 大規模向け。がっちりしてる。

・Ethna
 グリーはこれで動いている!(古いバージョンだけど)

・rhaco2
 大本命の超変態フレームワーク
 すごい

Ruby(RoR)っぽいFW → CakePHP / Lithium
Java(Struts)っぽいFW → symfony
Python(Django)っぽいFW → rhaco
というかんじでしょうか?
07601 ◆SWtzLesEmM
垢版 |
2009/12/17(木) 22:56:44ID:???
>>756
ttp://d.hatena.ne.jp/kagigotonet/20091215/1260851032
>PHPはWeb特化言語という特性上他の言語では見られない強力な仕組みがあります。
>その特徴は他の言語では参照で取り回すところを文字列で取り回すところである、と言えるでしょう。
>可変関数
>PHPのフレームワークは、これを基本としています。ライブラリ、モジュールを動的にロードするのが非常に容易
>可変変数
>このように可変変数や可変引数を組み合わせるだけでも、少ないコード量でかなり複雑なことが可能になります。

各フレームワークのディスパッチ(処理の割当て)の仕組みを見ると、参考になりますね。
07611 ◆SWtzLesEmM
垢版 |
2009/12/17(木) 23:07:31ID:???
>>750
「名前空間」を活用すると、たくさんモジュールを作っても分類が楽になりますね!
ttp://d.hatena.ne.jp/Fivestar/20091215
ttp://prezi.com/0-vyhjdkslih/
0762nobodyさん
垢版 |
2009/12/17(木) 23:10:38ID:???
人の書いた文章を全文コピペするのはどうかと思うよ
07641 ◆SWtzLesEmM
垢版 |
2009/12/17(木) 23:43:57ID:???
>>734
>Viewにループしてもらったほうがスッキリ
そうですね。
データをループ表示させるのは、ビューの役割。

ビューの部分には
・テンプレート(HTMLファイル)
・テンプレートエンジン(HTMLファイルに文字列を当てはめるパーサー)
の二つが含まれている形にすれば、
表示に関するロジック(繰返し表示の処理など)はビューの中に置けばOK
=表示に関する機能を修正する場合、ビューの中を探せばOK
07651 ◆SWtzLesEmM
垢版 |
2009/12/18(金) 00:45:09ID:???
>>727
MVCのモデルはどんなふうに作るか?という話で、
・トランザクションスクリプト
・ドメインモデル
という二つのスタイルがあるそうです。

ttp://pc11.2ch.net/test/read.cgi/php/1241341332/
ttp://proshile.blog.drecom.jp/archive/616
・トランザクションスクリプト
 →古きよきC言語時代の関数が主体の書き方
・ドメインオブジェクト
 →オブジェクト毎に内包する値と役割の責務を明確にしたOOPライクな書き方

MVCのモデルの部分は2層に分けて、
(1)ビジネスロジックコンポーネント
(2)デーアクセスロジックコンポーネント(O/Rマッパーを含む)
と分類する考え方があるそうです。

ttp://satoshi.blogs.com/life/2009/10/rails_mvc.html
ttp://d.hatena.ne.jp/p4life/20091014/1255532618
>Skinny Controller, Fat Model
・コントローラーはシンプルにする
・モデルに処理を集約する → 上記(1)ビジネスロジック=データの加工を担当
・モデルはデータの整合性を保証する → 上記(2)データアクセスロジック=データの読み書きを担当

ttp://www.virtual-tech.net/blog/2008/10/reflex-restful.html
ttp://www.virtual-tech.net/blog/uploaded_images/designold-722880.PNG
↑この図だと、モデルの部分が2層に分かれていて、
サービス層=上記(1)
ドメイン層=上記(2)
という形になるかと思います。
07661 ◆SWtzLesEmM
垢版 |
2009/12/18(金) 00:55:44ID:???
>>728
C側に書いてあるコードを、なるべくM側の方に移動した方がスッキリするかも?
CとMの間のデータ受け渡しについて、こんな記事がありました。

ttp://q.hatena.ne.jp/1242894491
>個々のSetterをオーバーライド出来るところが
>symfonyの便利な部分じゃないでしょうか。
>これが出来ないと個々のコントローラでデータを加工するハメになります・・。
>「MVCとして洗練されている」というのは
>「MVCに忠実に機能している」というのと同義かと思います。

一口にOOPと言っても、各フレームワークでちょっとずつ使い方に違いがありますね。
07671 ◆SWtzLesEmM
垢版 |
2009/12/18(金) 01:20:21ID:???
>>89
フレームワークを使ってみて、OOPの使い方の理解が深まりました。
皆さん、たくさんのアドバイスをいただき、どうもありがとうございました。
分からないことがあっても、検索したり質問して1個ずつ埋めていけば、確実に進歩できると思います。

どんなプロフェッショナルな人でも、最初は素人だった…
これからPHPの勉強を始める方がいましたら、焦らずに頑張ってくださいね!(*^o^*)/
0768nobodyさん
垢版 |
2010/01/16(土) 21:42:43ID:???
どのフレームワーク?
0770nobodyさん
垢版 |
2010/04/20(火) 14:58:53ID:???
オブジェクト指向ってrequire文とinclude文みたいな考えと同じかな?
必要なときにどこからでも呼び出せるプログラムみたいなものだよね。
0772nobodyさん
垢版 |
2010/04/21(水) 02:32:40ID:???
OOPの説明で一番わかりやすかったのがプレーヤーの例

プレーヤーを継承した CDプレーヤー,MP3プレーヤー がある
それぞれに 再生,停止,早送り,巻き戻し,次トラック,前トラック という機能(メソッド)がある

具体的な処理はそれぞれが行うので,使う人はプレーヤーの処理している内容を
理解している必要はなく,再生したいときに再生ボタンを押すという事だけ
分かっていればいい。(カプセル化)

つまり考え方であって,そういう意味では間違ってないのかもしれない。
0773nobodyさん
垢版 |
2010/04/21(水) 23:48:02ID:???
それぞれにあるのではなく、プレイヤーという抽象クラスにあるのでは?
0774nobodyさん
垢版 |
2010/04/22(木) 01:28:13ID:???
>>773
ダックタイピングなら、それぞれにあってもいいよね
0775nobodyさん
垢版 |
2010/04/22(木) 20:41:56ID:???
OOPの説明でダックタイピングの例出すの?
0776772
垢版 |
2010/04/22(木) 23:04:57ID:???
>>773
そうなんだけど,具体的な実装がそれぞれ違うという意味で
ああいう書き方にした。
0777nobodyさん
垢版 |
2010/04/23(金) 00:43:27ID:???
>>775
PHPは型にしばられない(しばられなさすぎて困る)スクリプト言語だからね。

逆に、静的言語のように型を意識しすぎると、スクリプト言語のメリットが少なくなると思う。

「じゃぁ、お前、クラス階層つかわねーのか?」と言われればノー
コンポーネント(レイヤ)の中では、型を意識し、拡張する場合は継承も使用する。
コンポーネント間の接続は型ではなくメッセージ(メソッド)に束縛させるように意識している。

でも最近は、interface作って、抽象クラス作ってというのがおっくうになってきたので、可能ならメソッドポインタによるコールバックで済ませちゃうこともしばしば。
0779nobodyさん
垢版 |
2010/05/22(土) 17:38:18ID:???
保守しておきます。
0780nobodyさん
垢版 |
2010/05/24(月) 00:43:02ID:???

javaや.NETはたまたPythonあたりの純血PGが書けばOOPっぽいソースになると思うよ。
PerlとかPHPから始めました、ってのはだめだな。
0781nobodyさん
垢版 |
2010/06/09(水) 18:32:35ID:uqJikGsn
PHP6のオブジェクト指向ってなにか大きな変化ある?
0782nobodyさん
垢版 |
2010/06/09(水) 21:02:23ID:???
遅延静的束縛とか
名前空間とか
0784nobodyさん
垢版 |
2010/06/09(水) 22:50:19ID:???
遅延静的束縛もですが
0785nobodyさん
垢版 |
2010/06/11(金) 20:18:27ID:???
機能追加がほとんどか。
じゃあ、PHP5のコードをPHP6に移植しても問題なく動くってことでいい?
PHP4→PHP5のときは大変みたいだったけど。
同じ思いをしたくない。
0786nobodyさん
垢版 |
2010/06/12(土) 05:01:32ID:???
互換性見れば分かるだろ
0787nobodyさん
垢版 |
2010/06/13(日) 07:15:58ID:???
逆に互換性なんかいいから関数の無茶苦茶な命名規則とか直して欲しい
0788nobodyさん
垢版 |
2010/06/20(日) 11:50:01ID:???
関数はもうほうっておいて、
公式にオブジェクト指向ライブラリを提供すればよい
0790nobodyさん
垢版 |
2010/06/21(月) 16:09:23ID:L/6UXzEf
質問するのが怖いんだけど、自分はフォームのパーツを呼び出すのに
オブジェクト指向(クラス)を使ってるつもりなんだけど正しいのか自信がない

クラスformPartsの中で各プルダウンやラジオボタンの要素(nameとvalue)を
外部ファイルから読み込んどいて
$fp = new formParts();
$pref = $fp->callPullDown('prefecture',$val);
$job = $fp->callPullDown('job',$val);
$sex = $fp->callRadioButton('sex',$val);

こんな感じでメソッドでパーツの種類を指定しつつ(ラジオボタンかプルダウンか)
そのパーツの要素(都道府県とか職業とか)と既定値($val)を投げて呼び出してる。
プルダウン要素とかは各メソッド内部で引数によって外部ファイルから読みこんでる。

クラスってこんな使い方でいいの? 継承とかはさっぱりわからない、どういう状況で使うんだか。
あと1さん凄いね、ガッツがあるなぁ。。
0792nobodyさん
垢版 |
2010/06/22(火) 02:53:02ID:???
分からないなら普通に勉強しろよ・・・
0793nobodyさん
垢版 |
2010/06/26(土) 22:03:26ID:lGwy0O8s
ツールの勉強する前に基本を勉強しろ
0794nobodyさん
垢版 |
2010/06/28(月) 10:27:12ID:PXXo1bnr
oopってさ
PHP最大の武器であるHTMLとの親和性の高さを殺してるよね
0796nobodyさん
垢版 |
2010/06/28(月) 22:25:44ID:???
いまの流行はテンプレートだから
PHPのHTML埋め込みなんてもう古い
0797nobodyさん
垢版 |
2010/06/29(火) 01:12:38ID:???
そんな流行もあったねぇ。今は違うよ。
0799nobodyさん
垢版 |
2010/06/30(水) 18:24:45ID:???
テンプレートってどんな利点があるの?
そもそもPHP自体テンプレートみたな言語じゃん。

index.php
 <?php
 $title = "hoge";
 $hello = "hello world";
 include "template.php";
 ?>

template.php
 <html>
 <head><title><?php echo $title ?></title><head>
 <body>
 <h1><?php echo $hello ?></h1>
 </body>
 </html>

こういうのとは違うの?
0800nobodyさん
垢版 |
2010/07/01(木) 00:39:53ID:???
ほとんどの言語は、HTMLの中で
コードを動かすという発想で作られていない。
コードーの中でHTMLを出力するという発想。

そういう言語ではテンプレートが重要。
PHPでテンプレートの意味が薄いのは確か

ただテンプレートの意味がまったくないかというと、そうではなく
分業作業。つまりプログラマとデザイナに分かれて開発するときは便利。
デザイナはphpコードはまったく知らない。だからなるべくシンプルな
記号レベルの書き方であってほしい。しかもDreamweaverのような
HTMLエディタで見たときに不具合無く表示されるものの方がいい。
0801nobodyさん
垢版 |
2010/07/01(木) 14:26:10ID:ksuFUfiJ
デザイナーでもHTMLとPHPの繋がりぐらいは分かる
いや、分かるようにPHPを書かなければならいと思う
それがPHP
0802nobodyさん
垢版 |
2010/07/01(木) 19:54:20ID:???
デザイナーって馬鹿だな
まで読んだ
0803nobodyさん
垢版 |
2010/07/07(水) 17:20:53ID:???
ここで議論してる奴らは世に影響力のないカスばかりだから参考にしなくて良い
0805nobodyさん
垢版 |
2010/08/20(金) 14:43:19ID:???
852 忍者Perl ◆M5ZWRnXOj6 [] 2010/08/20(金) 13:30:09 ID: Be:
    マルチしてんじゃないですよクソゴミww(笑)wwww(笑)wwww(笑)wwww(笑)ww
    ww(笑)wwww(笑)wwww(笑)wwww(笑)wwww(笑)wwww(笑)wwww(笑)ww
    ww(笑)wwww(笑)wwww(笑)wwww(笑)wwww(笑)wwww(笑)wwww(笑)wwww(笑)ww
    ww(笑)wwww(笑)wwww(笑)wwww(笑)wwww(笑)wwww(笑)wwww(笑)ww
    ww(笑)wwww(笑)wwww(笑)wwww(笑)wwww(笑)wwww(笑)wwww(笑)wwww(笑)wwww(笑)wwww(笑)ww
    ww(笑)wwww(笑)wwww(笑)wwww(笑)wwww(笑)wwww(笑)wwww(笑)wwww(笑)wwww(笑)wwww(笑)ww
    ww(笑)wwww(笑)wwww(笑)wwww(笑)wwww(笑)wwww(笑)wwww(笑)wwww(笑)wwww(笑)wwww(笑)ww
    ww(笑)wwww(笑)ww
    PHPやってるやつノウタリンばっかりwwwwwwww
0806nobodyさん
垢版 |
2011/10/15(土) 11:25:55.76ID:???
PHPでOOPやると重いと感じませんか?
0807nobodyさん
垢版 |
2011/10/17(月) 12:28:57.35ID:???
いいんです!
コーディングが楽だから、OOPで良いんです!!
0808nobodyさん
垢版 |
2011/12/16(金) 08:42:12.54ID:???
逆だろ
OOPだからボトルネックが把握しやすくてメンテナンスや新実装がしやすくなる
0809nobodyさん
垢版 |
2011/12/18(日) 18:35:23.31ID:XDa3NN+N
しかし、実行速度遅くなるね
0810nobodyさん
垢版 |
2011/12/18(日) 21:04:34.89ID:???
遅くなるって体感でわかるほど遅くなるのか?
だったら書き方おかしいよ
0811nobodyさん
垢版 |
2011/12/19(月) 12:14:00.72ID:8JBaGfsG
>>810
体感できないとは幸せだね。
0813nobodyさん
垢版 |
2012/01/12(木) 17:20:16.63ID:???
>>736
コントローラを肥大させてはならないという概念ではわかりにくい。
もっと具体的に境界線を引くべきだと思う。以下俺の意見なんだけど、

MVCってユニットテストために
ユニットテストを難しくする汚染要素を隔離するためにあるのだと思う。

具体的に言うとこんな感じ。
View(GUI, xml, html, json)
Controller(Session, Request, Form, 画面遷移などWeb独自のデータ)
Model(RDB, KVS)

MとCが分離されることでMはWebスコープから分離され、CはSQLから分離される。
でもこの理屈だとVとCの関係がおかしくなっちゃうね。
CがVにデータを渡すときはリクエストスコープを経由しないで
直に関数の引数で整数や文字列、オブジェクトを渡すべきって話になるから。
0814nobodyさん
垢版 |
2012/01/12(木) 19:14:14.99ID:???
>>813
ゴバクしただけあって、センス悪いな。
0815nobodyさん
垢版 |
2012/01/13(金) 12:44:55.80ID:???
>>813

> MVCってユニットテストために
> ユニットテストを難しくする汚染要素を隔離するためにあるのだと思う。

正しいが、これは現場的な視点の1つの考え方。

MVCは、スケーラブルなサイト構築のためのパラダイムという方が、しっくりくると思うが...
0816nobodyさん
垢版 |
2012/01/13(金) 14:14:37.80ID:???
新米PGに教える方法としては良いかもしれん
0817nobodyさん
垢版 |
2012/03/25(日) 15:09:36.84ID:AY6baIQV
PHPのOOPフレームワークを教えて下さい。
イメージとしてはJavaのStrutsのようなものです。
0818nobodyさん
垢版 |
2012/03/26(月) 23:05:27.26ID:???
JavaStrutsはさておき、おすすめはYIIだな。PHPの中では美しい。
0819nobodyさん
垢版 |
2012/03/28(水) 01:58:44.02ID:???
>>818
YII以外では無いのでしょうか?
YIIはOOPフレームワークとしては不完全です。
0821nobodyさん
垢版 |
2012/03/28(水) 10:27:45.07ID:???
>>820
オブジェクト指向言語であればオブジェクトを使用するところで、
配列を使用する点。
0822nobodyさん
垢版 |
2012/03/28(水) 19:46:43.02ID:???
>>821
なんでOOPフレームワークを使いたいの?
0823nobodyさん
垢版 |
2012/03/29(木) 00:32:40.17ID:???
>>822
OOPに慣れてるからです。
オブジェクトとして定義するところで
phpの場合、配列になるのでいらいらします。
たとえばCakePHP。ModelがModelになっていない。
やはり後付けでOOP機能が加わった言語では無理があるのですね。
0824nobodyさん
垢版 |
2012/03/29(木) 00:43:24.51ID:???
>>823
ModelがModelになってないというのは具体的にどういうこと?
0825nobodyさん
垢版 |
2012/03/29(木) 08:52:29.82ID:???
>>824
どのオブジェクト指向言語を経験しましたか?
それにあわせて話をします。
0826nobodyさん
垢版 |
2012/03/29(木) 09:19:41.82ID:???
>>823
phpで本格的なオブジェクト指向ははじめから無理だよ。
0827nobodyさん
垢版 |
2012/03/29(木) 12:36:50.80ID:???
PHPのOOP自体、後付けだし...
0829nobodyさん
垢版 |
2012/03/30(金) 00:15:47.79ID:???
>>828
ぜひStrutsの話を聞きたいですね。
たとえばCakePHPやsymphonyとどう違いますか?
0830sage
垢版 |
2012/03/31(土) 00:44:25.15ID:5Y7rPOtM
PHPのOOP関連機能が中途半端なのは当たり前。
実行速度が遅いPHPではそもそも向いていない。
0831nobodyさん
垢版 |
2012/03/31(土) 17:53:30.17ID:???
>>829
話をすると言って聞くばかりなのはなんでだ?
0832nobodyさん
垢版 |
2012/03/31(土) 21:49:54.25ID:???
>>831
Javaのフレームワークのことを教えてください
0833nobodyさん
垢版 |
2012/04/02(月) 08:52:20.20ID:???
>>832
ModelがModelになってないというのは具体的にどういうこと?
0834nobodyさん
垢版 |
2012/04/02(月) 10:00:58.63ID:???
>>833
Javaのフレームワークの比較で語りましから、あなたが今までにどのJavaフレームワークを使ってきたのか教えてください
0836nobodyさん
垢版 |
2012/04/03(火) 02:25:26.03ID:???
>>835
無知の自慢するべきではない。
あなたは一生、PHPでOOPの真似やってた方がよい。
08371
垢版 |
2012/04/03(火) 05:28:27.27ID:???
語りまし?
いやです
0838sage
垢版 |
2012/04/03(火) 09:03:36.19ID:s3V9thNo
phpでOOPはダメぽ
0840nobodyさん
垢版 |
2012/04/03(火) 13:09:50.72ID:???
完全にoopオリエンテッドな言語でしかoopしないって主張が、かなりダメぽ
0841nobodyさん
垢版 |
2012/04/03(火) 13:40:01.23ID:???
phpは継ぎ接ぎだからoopに向いてない
速度の面でも不利
レスを投稿する


ニューススポーツなんでも実況