03/12/02 11:11 .net
>>72
いやもっとあるよ。オレは詳しくはないけどね。
もちろんリファクタリングするにはテストファーストが重要だから。
それがなけりゃダメ。
76:nobodyさん
03/12/02 14:00 c/j/bWHB.net
デザインパターンて何?
77:nobodyさん
03/12/02 14:11 .net
>>76 ずばり!システムデザインのパターンです。
78:
03/12/02 17:54 .net
なんでデザインなんだろう。
79:nobodyさん
03/12/02 19:32 /3byaW6X.net
デザイン≒設計
80:nobodyさん
03/12/02 20:02 .net
>>79
81:nobodyさん
03/12/02 21:34 .net
デザインパターン≒下絵
?→?→?
↓ ↑ ↑
?→?←?
82:nobodyさん
03/12/04 14:10 .net
>>72
URLリンク(objectclub.esm.co.jp)
83:nobodyさん
03/12/05 00:56 .net
おすすめの書籍を教えてよ。
リファクタリング+デザインパターンもの?
84:nobodyさん
03/12/05 22:40 .net
Java言語で学ぶデザインパターン入門
85:nobodyさん
03/12/21 01:33 hM57n5k9.net
昔Observerを使ったMVCを知って、
『こりゃいいや!』ってWebプログラムで使おうとして
かえってごちゃごちゃになった。
86:nobodyさん
03/12/21 01:36 hM57n5k9.net
あ、本題書き忘れた。
Compositeパターンはツリー型掲示板なんかにうってつけじゃないの?
87:nobodyさん
03/12/21 10:57 .net
>>86
そうですか?
なんかただの木構造と混同してないか?
88:85
03/12/21 13:13 .net
>>87
ん?……あ、そうか。
スレッド(トピック?)の下にスレッドがあるような再起構造じゃないや。
でも、子記事を持つものをComposite、持たないものをLeafと見立てて
使えないかな?
それとも俺何か勘違いしてるかな?
89:nobodyさん
03/12/21 15:35 .net
>>87
木構造を表現するのに適切なデザインパターンだと思うけど?> Composite pattern
>>79,81
パターン言語には、その(solution)解法を適用する場合のコンテキスト
(背景・解決する問題の状況)や、force(制約・制限)等が書かれているはず。
更に言えば、具体的な事例や、そのパターンを適用した際に起こる副作用とかトレードオフ等、
こういった一連の状況を指してパターンと呼んでいるんじゃなかった?
solutionの部分だけを指してパターンと呼んでいる人が多い様に見受けられる。
FAQにもパターンという表現は誤解を招きやすい言葉だったって書かれているけどね。
だからと言って誤解されたままでは有益な議論は出来ないよ。
一言で説明するのは難しいかも知れないけど、設計と言い切ってしまうのはどうかな?と思う。
デザインパターン => オブジェクト指向での設計上の問題に対する解決策とそれに関する知見。
>>85
かえってごちゃごちゃになったのなら、どうしてそうなったのか考えてみよう?何か原因あるはずだよね?
ここで、パターン使ってこうなったからパターンは使えない、なんて短絡的な発想はせずに。
どうすれば、その問題をスマートに解決出来るんだろうと考えてみる。
例えば、Observerパターンで知られている問題点は、
Subjectが複数になった場合に保守や拡張が困難になる、その場合はSubjectに中間層を設けるなど。
パターンの説明には必ず関連するパターンへの参照や、例外/制限事項等が書かれているはずです。
クラス図だけ見真似てデザインパターンを使ったつもりに浸っていると、
パターン使った=>更に悪化 という*パターン(繰返しの意味で)*に陥りやすいです。
90:nobodyさん
03/12/21 15:43 .net
>>89
めんどいから要約してくれ。3行位に。大体それくらいの情報量だろ?
91:nobodyさん
03/12/21 15:55 .net
無理。
ジャンプ&フローで要約性がないパターン。
92:nobodyさん
03/12/21 17:02 .net
>>90
>>89を要約すると「お前らもっと勉強しろ、俺はこれだけ物知りだ」になります
93:85
03/12/21 17:14 .net
>>89
ああ、ごめん、言葉が足りなかった。
>>85は
Observerを使ったMVCはGUIなソフトとかには使えるけど
Webアプリケーションなんかには向かないぞ、気をつけろー。
Webアプリケーション用のMVCはJ2EEとかを参考にしろー。
って意味だったんです。
94:nobodyさん
03/12/22 01:36 .net
CGIはGoF的なデザインパターン使って作っても
オブジェクト生成して一回で捨てちゃうもんな
95:nobodyさん
03/12/22 01:50 .net
こんな100レス近くも語ってて
結局>>6を改善することはできないんですか?
96:nobodyさん
03/12/22 07:37 .net
>>94
再利用できる要素はいっぱいあるんだけどな。
ファイル操作とか毎回組んでも面倒くさいしバグの入り込む余地があるしろくな事がないと思うよ。
97:nobodyさん
03/12/23 02:36 .net
>>95
>>6みたいなのが良いとは思ってないが、
>>6の代行になる優れたコードがあったとしても
結局>>6レベルくらいで求められる規模のwebAPPの場合
実際のところ>>6が一番速く書けて一番シンプルで
一番速く動くコードだったりしちゃわないか
98:nobodyさん
03/12/23 10:20 .net
>>97
再利用生が抜けてるよ。
99:nobodyさん
03/12/26 13:59 5BZ0FoxA.net
>>96
ファイル周りで、こういう処理にはこういうパターンがいいよ、みたいのある?
趣味でCGIスクリプト作ってるけど結局ファイル入出力が処理の中心で、
ここをシンプルに書ければだいぶ綺麗になるんだけどなぁ。
100:nobodyさん
03/12/26 23:27 .net
>>99
>>60
後、今、RubyとXML使って汎用的なCGI向きなファイルシステム書いてます。
101:nobodyさん
03/12/26 23:57 .net
だれか
>ファイルとかDBとかを同じメソッドで
>アクセスできるようにするためのラッパクラス。
これ作ってください。
102:ヽ(´ー`)ノ
03/12/27 04:55 .net
> だれか
> >ファイルとかDBとかを同じメソッドで
> >アクセスできるようにするためのラッパクラス。
> これ作ってください。
Perl の DBI に当たるクラスって Ruby には無いの?
103:100
03/12/27 09:14 .net
>>102
アルみたいですな。知らなんだ。
ちょっと興味があるんですが、データをCSVとかXMLに落としてくれるドライバって存在するんですか?
104:nobodyさん
03/12/27 22:23 .net
Ruby/DBI URLリンク(ruby-dbi.sourceforge.net)
105:nobodyさん
04/01/03 11:48 2WhaiS3p.net
Bridgeパターン
URLリンク(www.lyricfathom.com)
106:nobodyさん
04/01/03 14:16 /y0BIE8s.net
PHPのパターンならここが有名でしょうね。
URLリンク(www.phppatterns.com)
107:nobodyさん
04/01/05 19:45 .net
PHP、言語として機能が足りてないからデザパタに向いてないよ。
典型的な例が Singleton。
108:nobodyさん
04/01/05 20:23 .net
$a = NULL;
function GetSameObject(){
global $a;
if($a == NULL){
$a = new SameObject();
}
return $a;
}
109:nobodyさん
04/01/07 09:41 .net
>>108
だから、そういう小汚いコード書かなきゃイカンから言語として機能が足りてないんだろ。
PHP5 だと static あるから Singleton は書けるようになるが…それでもどうかと思う。
110:nobodyさん
04/01/07 18:00 .net
>>109
PEAR パッケージでよく使われてますが、 PHP4 でも普通に書けますよ。
class Hoge
{
function &singleton()
{
static $instance;
if (!isset($instance)) {
$instance = new Hoge;
// $instance = HogeHoge::factory;
}
return $instance;
}
$instance = &Hoge::singleton();
111:107
04/01/08 05:49 .net
>>110
>>109 の言う「小汚い」部類じゃないかね、そのコードは。
クラス内唯一のインスタンスなんだから、論理的に言えばクラスが static 変数として持つべきだろう。
> PHP5 だと static あるから Singleton は書けるようになるが
と言っている時点で >>109 の言いたい事は自明だと思うんだが…。あんた大丈夫か?
PEAR のコードや Do You PHP にあるデザインパターンのサンプルでも良く見掛けるが、
PHP4 自体の機能が足りずに他の言語ではしなくていいような事をしている点がいくつもある。
少くとも俺は PHP はオススメしない。
112:nobodyさん
04/01/08 06:38 .net
>>111
デザパタの本の「はじめに」とか「概要」を読み直すことを推奨。
113:nobodyさん
04/01/08 06:44 .net
>>111
てことはCはダメ言語でerronoなんて使ってるunixは目も当てられないって事になるのだろうか。
そんなことだからいつまでもプログラマ + Web特化なんだな。
114:nobodyさん
04/01/08 06:47 .net
まぁ C はダメ言語だろうな。
115:nobodyさん
04/01/08 08:32 .net
>>110
クラス・メソッドを使わずnewすると普通に別のインスタンス作成出来るよね?
116:110
04/01/08 09:17 .net
>>115
できますよ。
言語特性や制限はありますが PHP や Perl では Private メソッドも含めてそういう
ものは書く側が慣習的に守るというだけのことです。 111 さんがいうようなことも
当然ありますけど、だからといってその言語の利点があるわけですから使い分けるの
が良いというだけの話でしょう。
117:nobodyさん
04/01/08 14:14 .net
そうだなあ、singleton という、
コンストラクタの実装とクラス変数に大きく依存するパターンは、
PHP の言語仕様とインピーダンスミスマッチが大きい、ということは言えそうに思う。
ただ、GoFパターン全部がそういうわけではなく、
むしろ singleton が例外的だとも言える。
つか、そもそも singleton ってウェブプログラミングで使う?
まあ、singleton 以外のパターンも今のところウェブプログラミングでの使い道が
あまり見つかってないようではあるが。
しかし、ぱっとすぐ思いつかないが、
singleton 以外でも PHP が向かないパターンはありそうな感じではある。
>>107 への宿題として、
singleton 以外で PHP が向いていないと思われるパターンを提出せよ。
「ウェブプログラミングで使える」というスレの趣旨を満たすとモアベターだが、
さすがにそこまでは難しいか。
118:nobodyさん
04/01/08 20:51 .net
>>116
一応、慣習や暗黙の了解みたいなのは理解しています。が、
言語としての機能が足りていない部分という論点に関して言えば、コードの奇麗汚いではなくて
singletonパターンの条件を完全に満たす事が出来ない点じゃないかな。と思った。
>>117
例:データベースへ接続するクラスをSingletonにする。
ウェブプログラミングでもアプリケーションサーバ等フレームワークにはよく使われてるよ。
119:107
04/01/08 23:07 .net
>>117
宿題も糞も、PHP のデザインパターンのサンプルコード読めよ。
その辺の問題点も全部書いてるわ。
120:nobodyさん
04/01/08 23:24 .net
まぁ、極論すればグローバル変数をラップしただけという代物だ。
気を付けてグローバル変数を使用するのと早々大差はない。
121:nobodyさん
04/01/09 07:36 .net
,イ │
// |:!
//,. -/r‐- 、| !
/,/ ./ | _」 ト、
/.\`/ |二...-┘ ヽ
. i ,.>、;/ー- 、 l
! ∠.._;'____\ |
,!イ く二>,.、 <二>`\.、ヽ.
/'´レ--‐'ノ. `ー---- 、 |\ ヽ、
\ `l (!" Jfヽ! `''-;ゝ 大佐ではない
`‐、jヽ ヾニニ> ゙イ" }_,,. ‐''´
`´\ ー / ,ィ_}
. |_ `ー ''´ _」'
, ー‐-‐‐‐--''.‐''゛,,;,,...: ゛''-、、,;,,
,ィ'゛ ゛゛""' ゛"'''-、
/ ヽ
/ '、
l l
. l i. l
l :i. ヽ.:.:...:.:: "'
. l .:l ヽ.:.::... "''、
. l. .:l ヽ.:..:. `'、
l ::l: ';.:.:..... ヽ
l .:l.:.. .:ィ.):.:. l.:.:.: .:.ヽ、
. l .:l..: ''ー.: .:.:l.:.:..:..:: .:i'゛
122:nobodyさん
04/01/09 10:45 .net
>>118
フレームワーク内で使われるのはわかるが
DBのコネクションプールはそうやってフレームワークが管理してくれるはずだから
ユーザがコード書く段階では気にしなくていいぢゃん。
Perl ですら mod_perl + Apache::DBI 使えばいいし。
と思ったが、よくよく考えてみたら、PHP にはコネクションプールが無いのか。
それは確かに問題だな。
123:110
04/01/09 11:34 .net
>>122
私の知る限りでは Apache::DBI はコネクションプールをしているわけではな
くて PHP の持続的接続と同等の機能を提供するはずです。
つまり DSN 毎にコネクションを維持するだけ (さらにプロセス毎に) だと理
解していますが。
さらにコネクションプールは SQL Relay 等で実現できますよ。
124:nobodyさん
05/01/27 00:47:17 .net
一生懸命読んだけど23の中の一個も理解できませんでした
どうしればいいでしょうか。
早くオブジェクト脳になりたいんです!
125:nobodyさん
05/01/27 08:39:42 .net
>>124
オブジェクト指向を学ぶ
126:nobodyさん
05/04/03 21:00:04 .net
保守
127:nobodyさん
05/04/24 12:25:02 .net
PHP5だとデザインパターンも生きてくるのかな?
128:nobodyさん
05/05/02 21:38:03 M34Qp7Tn.net
プログラムの改修作業で、既存の動いているクラスを
変更なしに機能を追加したりするときにアダプタっていう
デザインパターンを使うのかな?使い方間違ってる?
129:nobodyさん
05/05/02 22:18:31 .net
こっちで聞いた方が詳しく教えてくれると思うが、既存のクラスの機能を拡張するなら違うと思うぞ。
スレリンク(tech板)
130:nobodyさん
05/05/03 22:22:38 .net
>>129
実は仕事で既に動いているPHPプログラム改修作業をすることに
なったのですが、
・非常に見づらいソース。開発者は既に退社&ドキュメントは無し。
・納期は短いのでリコーディングすることはできない。
・動作自体には問題はなく、現在正常に稼動中。
・機能拡張もあり。
という状況です。ソースが非常に見づらく保守性が著しく低いのと
機能拡張は大幅な仕様変更になるので、できればリコーディングしたい
ところなのですが、納期も無いことですし、何より現在問題なく
稼動中なのでそれはできません。
そこでなるべく既存のクラスに手を加えずに、機能拡張をしたい
という感じです。
このような場合、既存のクラスを継承させた新しいクラスを作り、
動いている部分は利用しつつ、新規の仕様に合わせた設計に作り変える
というやりかたを考えているのですが、これは別にデザインパターンという
わけではなくて、ただのOOPの継承を使ってるだけということですかね。
ちなみに、上記のような場合皆さんならどのような手法を取りますか?
識者のご意見をお聞かせいただけたらと思います。
131:nobodyさん
05/05/05 23:01:05 .net
手法云々以前に、そんなDQNな物を担当させられる事になったら
漏れなら先ず上司に現状を報告し、指示を仰ぐな
1.現状のプログラムが如何に問題点の多い物であるか
2.前任者の無能さを叩き、リコーディングの必要性の訴え
3.リコーディングすれば納期に間に合わせる事は難しい。
しかし前任者のプログラムに手を入れた場合、(極端に保守性が悪いので)変更によって障害が起きる可能性が高く、納期が大幅に遅れる危険がある。
以上を伝えて今後の方針を決め、増援を求めるなり何なり対策を協議して・・
(要は、「責任逃れの道はちゃんと作っておけよ」と)
132:130
05/05/20 00:05:10 .net
>>131
遅レスですが・・・
非常に勉強になりました。
133:nobodyさん
05/05/28 13:42:10 .net
保守
134:nobodyさん
05/06/11 13:52:15 .net
PHPでデザインパターン使ってる?
135:nobodyさん
05/06/23 01:29:49 l0fPbzln.net
URLリンク(www002.upp.so-net.ne.jp)
>>6のかわりってこれでいいんじゃね?
136:nobodyさん
05/07/14 05:02:59 Dw3R1Zsm.net
良スレだと思うんだけど
みんなデザインパターンってあまり知らないのか?
137:nobodyさん
05/07/14 05:09:10 .net
ムのスレもそうだけで知ってる人ってほんと書かないね
138:nobodyさん
05/07/14 05:35:55 .net
このスレはお題があれば再生するんじゃないの。
139:nobodyさん
05/07/14 20:33:00 .net
良スレだと思うんだけどな。
140:nobodyさん
05/07/14 21:17:21 .net
待ったり進行でいいんジャマイカ?
141:nobodyさん
05/08/09 19:13:09 1DO6YyCD.net
まあ、とりあえずJ2EEパターンやPoEAに書かれているパターンは抑えるべきだと思うが。
後者の場合、Webは選択肢の一つに過ぎないけど参考になる。
これらをPHPに適用するとどうなるか考えるのも面白い。
142:nobodyさん
05/09/02 22:29:06 .net
このスレ死んでるのか^^; 既に語り尽くされてしまっているからなぁ。
143:nobodyさん
05/09/08 20:14:04 UAazRTeh.net
全然尽くされてないだろ。
URLリンク(www.phparch.com)
とりあえずPHP向けの本が出てるから皆買おう。
そうでなきゃ話しも出来ん。
144:nobodyさん
05/09/09 01:34:49 .net
PHP向けのは要らない
145:nobodyさん
05/09/13 13:39:23 .net
>>143
ペーパーバッグなのにやたら高いね
146:nobodyさん
05/09/19 05:28:58 .net
>>145
> ペーパーバッグ
紙袋?
147:nobodyさん
05/09/19 10:34:02 .net
ペーパーバックって何よw
148:nobodyさん
05/09/19 11:32:36 .net
>>147
「ペーパーバック」なら表紙が紙でできた安もんくさい本のことかな。
149:nobodyさん
05/09/20 02:45:05 .net
うわ、今まで
ペーパーバッグとペーパーバック間違えてた
ビートルズの曲もペーパーバッグライターと思ってた…
150:nobodyさん
05/09/20 02:46:20 .net
ペーパーバッグライター の検索結果 約 148 件
よかった他にもたくさんいた…
151:nobodyさん
06/01/19 19:25:49 tf3J2l5I.net
俺の場合、Singleton、Template Method、Factory Method、
Strategy、あたりを使うねぇ。
152:nobodyさん
06/01/20 08:07:06 .net
でたこのパターーーーーーーーーン
153:nobodyさん
06/01/20 09:25:32 .net
でたこ
154:nobodyさん
06/01/20 09:48:05 .net
でたこタンハァハァ
155:nobodyさん
06/01/20 13:38:24 .net
PHPだけど、
class array_formatter{
function format_array(&$array){
if(!count($array)) return $this->format_empty();
$html = $this->format_header($array);
foreach($array as $key => $value){
$html .= $this->format_item($key, $value);
}
$html .= $this->format_footer($array);
return $html;
}
function format_empty(){
}
function format_header(&$array){
}
function format_footer(&$array){
}
function format_item($key, $value){
}
}
こんな感じのクラスを継承して使いまくってる。
156:nobodyさん
06/01/25 17:02:55 thETe4Qv.net
>>155
それがデザインパターンと何の関係があるの?
157:nobodyさん
06/01/28 21:15:46 .net
パターンだろ。
158:nobodyさん
06/01/30 22:36:27 .net
Template Method?
159:nobodyさん
06/09/27 12:34:29 .net
URLリンク(www.amazon.co.jp)
はじめてのPHP5プログラミング エキスパート編
ワイズノット (著)
価格: ¥ 2,730 (税込)
単行本: 378ページ
出版社: 秀和システム (2006/05)
ASIN: 4798013188
目次
オブジェクト指向プログラミング
クラスの作成とオブジェクトの操作
PHPのオブジェクト指向のその他の話題
PEAR
Smarty
ユーザ認証とアクセス制御
セキュリティ
エラーと例外処理
Mojavi
PDO
オークションシステムの作成
データベースアクセスの実装
プログラムの実装
システムの問題点と、改良、拡張方法
Chapter03「PHPのオブジェクト指向のその他の話題」(P60~76)で、デザインパターンの説明があります。
PHPでデザインパターンを勉強する人は参考になるかな?
160:nobodyさん
10/06/02 21:28:21 .net
4年ぶりに記念カキコ。
161:nobodyさん
12/05/25 13:18:41.79 /0EJtfhp.net
この課題の意味を日本語に翻訳してくださいw
Command パターン、Observer パターン(イベントリスナ)のような、デザインパターン、あ
るいは、MVC モデルを利用した、独自のプログラムを設計する。GoF の 23 パターンであれば、どのようなパ
ターンを用いてもよい。レポート中には、適用したパターン名、および、適用箇所を明記すること。なお、最低
でも4つ以上の独自のプロトタイプ・オブジェクトを用いてプログラムを設計するものとする。設計内容として、
次の3項目を記述する。
1. デザインパターンによって生みだす特徴を参考に、ソフトウェアのテーマを詳細に記述する。
例: Facebook のようなアドレス帳
例: Twitter のような掲示板
デザインパターンとソフトウェアの機能との関連性を考察し、なぜそのソフトウェが必要で、なぜデザイン
パターンを適用したのかを説明する。
2. 設計したソフトウェアについて、プロトタイプ・オブジェクトの一覧と、各プロトタイプ・オブジェクトが
実現する機能、および、各プロトタイプ・オブジェクト間の関係を記述する。なお、全プロトタイプ・オブ
ジェクトについて、下記のように、クラスの属性とメソッドがわかるように、ソースコードを添付すること。
162:nobodyさん
12/05/27 11:21:33.31 I9XKNPOE.net
163:nobodyさん
12/05/27 22:35:05.32 pPYyk92v.net
>>161
命令形態、観察者形態(出来事聴取者)のような、設計形態、あ
るいは、模表制 模型を利用した、独自の計画を設計する。四の団 の 弐拾参 形態であれば、どのような形
態を用いてもよい。論文中には、適用した形態名、および、適用箇所を明記すること。なお、最低
でも四つ以上の独自の原型・物体を用いて計画を設計するものとする。設計内容として、
次の参項目を記述する。
一. 設計形態によって生みだす特徴を参考に、柔軟製品の思想を詳細に記述する。
例: 顔本のような住所帳
例: さえずり のような掲示板
設計形態と柔軟製品の機能との関連性を考察し、なぜその柔軟製が必要で、なぜ設計
形態を適用したのかを説明する。
二. 設計した柔軟製品について、原型・物体の一覧と、各原型・物体が
実現する機能、および、各原型・物体間の関係を記述する。なお、全原型・物
体について、下記のように、部門の属性と手法がわかるように、源符号を添付すること。
164:161
12/05/28 16:57:47.92 .net
>>163
回答ありがとうございます。
「四の団 の 弐拾参 形態」とは何でしょうか?
165:電脳プリオン!ninja 【17m】
14/05/06 23:27:44.25 .net
もうネタ切れか
166:nobodyさん
14/08/14 18:18:08.87 .net
イラストレーターで収入が少ないからと30代後半で漫画家になろうとする、ひきこもりのバカ発見。
足立区に住んでいるそうだ
URLリンク(inumenken.blog.jp)
167:nobodyさん
14/10/18 13:39:25.49 7o723kow.net
お世話になります。
私、責任者の加茂と申します。以後、宜しくお願い致します。
URLリンク(www.apamanshop.com)
浪速建設様の見解と致しましては、メールによる対応に関しましては
受付しないということで、当初より返信を行っていないようで、今後につい
てもメールや書面での対応は致しかねるというお答えでした。
このように現在まで6通のメールを送られたとのことですが、結果一度も
返信がないとう状況になっています。
私どものほうでも現在までのメール履歴は随時削除を致しております
ので実際に11通のメールを頂戴しているか不明なところであります。
弊社としましても今後メールでのやり取りを差し控えたく、浪速建設様
と同行の上でお会いさせていただきたい所存です。
・ブラックロックシューター
URLリンク(s-at-e.net)
・ベヨネッタ
URLリンク(s-at-e.net)
・風ノ旅ビト
URLリンク(s-at-e.net)
URLリンク(s-at-e.net)
・2012
URLリンク(s-at-e.net)
・プロメテウス
URLリンク(s-at-e.net)
・アバター
URLリンク(s-at-e.net)
168:nobodyさん
15/10/27 08:47:29.44 AiH50osU.net
転職の際は要チェック。
下記の条件が全て当てはまる会社にご注意下さい。
・IT系 in Tokyo
・転職会議で2.5点
・転職会議の「その他>2ch情報」の欄で過去の2chスレが表示される
169:nobodyさん
17/12/30 13:22:56.31 YhlYw6jg.net
誰でも簡単にネットで稼げる方法など
参考までに、
⇒ 『半藤のブブイウイウレレ』 というサイトで見ることができます。
グーグル検索⇒『半藤のブブイウイウレレ』
V6XHOPNRFF
170:nobodyさん
23/08/22 11:52:14.26 .net
参考書買っただけで、勉強をした気になったよ