【PHP】2chat開発スレ【2chを越える】 [無断転載禁止]©5ch.net
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2016/04/23(土) 13:45:28.79ID:???掲示板とチャットを組み合わせたオープンソースのPHPスクリプトです。
名前の由来は2ch+chat
【特徴】
*基本的な面
ユーザー登録は必要だが、匿名
ユーザーは日付の経過や書き込み、荒らしなどでレベルが上下し、このレベルは通報の影響度などに関わる
管理人が不在でも通報が集まった書き込みは自動削除
チャット形式の為、書き込み上限はなく、テンプレはいつでも誰でも編集可能
板はなく、各スレッドはカテゴリを付けられる為、スレッドを探しやすい
単発スレには向かない
*専ブラ
jsを使い専ブラなしで快適に閲覧出来るUIを提供
WEBで見れるため、PC⇔スマホで開いているスレなどを完全同期できる
*API
誰でも使えるAPIを提供(jsonp対応)
2ch互換のAPIも提供
ユーザーはサブパスワードを作る事で、悪意を持った外部サービス管理人によるアカウントの乗っ取りを防ぐ事が出来る
開いているスレなども外部サービス間で同期可能
0002nobodyさん
2016/04/24(日) 09:11:09.09ID:???0003nobodyさん
2016/04/24(日) 11:10:56.66ID:???0004nobodyさん
2016/04/24(日) 11:46:44.86ID:???https://github.com/kgtkr/2chat
0005nobodyさん
2016/04/24(日) 22:54:01.29ID:???PHPは簡単に書ける分、コードが汚くなりやすいみたいですので・・・
0006nobodyさん
2016/04/24(日) 22:57:03.03ID:???永続化の実装、つまりmysqliなどはまだコードに出なくていい
0007nobodyさん
2016/04/24(日) 23:03:15.96ID:???まだメソッドの中身は書かずに、メソッドの宣言だけを書いてクラス設計を行っています
デスクトップアプリでのオブジェクト指向はある程度分かるんですが、DBを使ったオブジェクト指向が結構難しくて・・・
c#と違ってプロパティがないのも厳しいです
0008nobodyさん
2016/04/25(月) 00:00:42.13ID:???Node.jsやPythonとか、他にも候補にがありそうだが
0009nobodyさん
2016/04/25(月) 00:15:05.76ID:???そうすると扱える言語はPHPしかないので・・・
中括弧言語以外は苦手ですし
0010nobodyさん
2016/04/25(月) 09:23:17.98ID:???とりあえずPSR読んで、それとテスト書く準備しておけばいいよ
00111
2016/04/25(月) 18:46:27.88ID:???内部ではフィールドにあるんじゃなくて、Threadクラスのgetterでクエリー呼び出しているんだけど
全て独立したクラスとして考えた方が、良い気がする
WEBアプリはやっぱり難しい・・・
デスクトップなら多少パフォーマンス悪くても、問題ないけど、WEBアプリは大人数で使うからパフォーマンスはやっぱり重視しないとね・・・
0012nobodyさん
2016/04/25(月) 20:17:34.90ID:???まずは実装ではなく仕様を煮詰めていかないと
ある程度仕様が決まったらフレームワークとか決めてそこから本格的にクラス設計(まさかフレームワーク使わず全部自分でとは言わないよね?)
00131
2016/04/25(月) 20:29:42.47ID:???フレームワークの予定はなかったんですが、使った方がいいですかね?
PHPでは、APIの提供のみを行い、UIはhtmlとjsのみで作りたいと考えています
00141
2016/04/25(月) 20:37:28.05ID:???APIは、XML/JSON/JSONP/2ch互換のdatで提供する予定です
0015nobodyさん
2016/04/25(月) 21:44:24.42ID:???読み書きはレベル0のゲスト扱いで参加できるのかな
0016nobodyさん
2016/04/25(月) 21:59:23.79ID:???redditみたいな感じです
0017nobodyさん
2016/04/25(月) 22:04:06.33ID:???idとパスワードだけでもハードルはかなり上がるから2ch越えるのは絶対無理
00181
2016/04/25(月) 22:48:29.11ID:???0019nobodyさん
2016/04/26(火) 11:57:33.77ID:???んでもって認証は後回しの設計と言うか別のサーバとか
プロセスに委任する形にしようぜ
まずはスクラッチとして本体だけの設計で作ってみたらどう?
認証後回しにするってのはそれが阻害する場合があるから
とりあえず作ることによって誰がどんなもののためにどうして必要なのかが見えてくる
ある程度の想定した問題に対応するのはいいとして仮定の問題に固執して対応するのは現状いらんと思うな
アイパスとか個人設定とか細かい面倒なのは後回しにしたほうが楽しめる
00201
2016/04/26(火) 17:59:11.72ID:???今はDBと接続するクラスを作っています
多分モデルって奴です
0021nobodyさん
2016/04/26(火) 20:14:15.16ID:???00231
2016/04/27(水) 00:07:04.34ID:???00241
2016/04/27(水) 17:31:27.88ID:???00251
2016/04/27(水) 17:33:51.47ID:???・ドキュメントコメント通りの動作をするように、エラーチェックとクエリーを行っていく
・このクラス群をAPIとして提供するためにラップ
・jsでUIを作る
00261
2016/04/27(水) 18:19:17.43ID:???大文字小文字直そう・・・
00271
2016/04/27(水) 18:26:07.36ID:???0028nobodyさん
2016/04/27(水) 19:06:13.28ID:???00291
2016/04/27(水) 20:03:03.06ID:???javaとかc#でも色々なアプリ作りましたが、一回もした事ないので何をすればいいか。。
でもWEBアプリなら脆弱性に繋がったりするので必要ですよね
勉強してみます
0030nobodyさん
2016/04/28(木) 07:16:10.47ID:???FW導入した方がいいよテスト関連も充実してるし
SPAとか使うならそっち関連の導入もあるし
0031nobodyさん
2016/04/28(木) 16:55:45.15ID:???使い捨てのつもりでいいからとりあえず動くものを作ってまずは1つ完成させること
完璧を目指して手が止まるのが一番まずい
百聞は一見に如かず、実物の試作品があればいろいろと意見も出しやすいし
00321
2016/04/28(木) 18:01:16.00ID:???コメントでメソッドの責任は書いたので、あとは実装するだけです
00331
2016/04/28(木) 18:18:39.80ID:???$delete
$attack
$category
$template
$title
00341
2016/04/28(木) 18:34:56.96ID:???$not
00351
2016/04/29(金) 18:14:46.02ID:???00361
2016/04/29(金) 23:59:23.36ID:???あまり長いメソッドだと、変数の上書きなどで、バグが発生する可能性があるので・・・
00371
2016/04/30(土) 14:10:30.08ID:???SHA256を64進数
00381
2016/04/30(土) 17:36:20.68ID:???00391
2016/04/30(土) 17:38:06.14ID:???00401
2016/05/01(日) 00:01:30.60ID:???0041nobodyさん
2016/05/01(日) 00:10:12.39ID:???0042nobodyさん
2016/05/01(日) 11:31:02.55ID:???なんてサービスなのさ
0045nobodyさん
2016/05/01(日) 12:39:10.92ID:???匿名にしたいのか、登録ユーザ性にしたいのか、よくわからん
00461
2016/05/01(日) 14:25:44.88ID:???ユーザーから見たら匿名だけど、管理を楽にするためにID制
どのユーザーが書き込んだら分かるのは管理人だけ
本人確認は2chと同じでトリップとID
00471
2016/05/01(日) 15:04:10.58ID:???とりあえずSQL制約を設定していく
00481
2016/05/01(日) 15:20:28.63ID:???書き直さないと
00491
2016/05/01(日) 15:37:09.59ID:???0050nobodyさん
2016/05/01(日) 17:21:21.58ID:???それはシステム管理者から見たら全く匿名ではないってことだよね
警察とか公的権力が働いたらログを出す義務が発生するんじゃない?
00511
2016/05/01(日) 21:15:32.10ID:???そうなるけど・・・
そっちの方が管理しやすいし
完全匿名でも、普通IPは記録するから、権力が働いたら匿名じゃなくなるのは一緒なのでは?
00521
2016/05/01(日) 23:06:54.88ID:???ちょっと複雑な事するとかなり難しくなる
0053nobodyさん
2016/05/01(日) 23:08:57.58ID:???そりゃ、TCP/IPを使っているのだからIPは記録するさ
でも「原理的に匿名でない設計」と「匿名を目指している設計」は似て非なるものだと思うよ
「表面的には匿名だけど、いつでも書き込んだ主を公開できる準備があるので注意してね」なんて注意書きを書いたらユーザはどう感じるかな
0054nobodyさん
2016/05/01(日) 23:38:17.36ID:???00551
2016/05/01(日) 23:41:41.15ID:???IDにLVをつける事によって、通報の多い書き込みの自動削除などがやりやすくなる
今の2ch見ていると、明らかに削除人が足りていないから、出来るだけ自動化したいし
00561
2016/05/02(月) 00:16:33.73ID:???スレッドに対するレス番じゃなくて、全部のレスに適当に番号振っていった方がよさそう
2chを意識しすぎた感
明日設計見直そう
00571
2016/05/02(月) 22:28:44.39ID:???・・・と思ったんですが、javaとc#にincludeがないので、書くのすっかり忘れていました・・・
includeとコメントを詳しく書いたりして、APIを作っていきます
APIはtypeパラメーターに形式(XML、JSON、JSONP)を指定するタイプにします
00581
2016/05/03(火) 01:01:09.35ID:???00591
2016/05/05(木) 09:05:44.80ID:???そこで、短い書き込み用のGET、圧縮して送るGET、formタグからならPOSTが可能な事を利用したリダイレクトありPOSTを用意したいと思っています
0060nobodyさん
2016/05/05(木) 09:43:28.83ID:???00611
2016/05/05(木) 11:19:03.14ID:???00641
2016/05/06(金) 23:23:44.10ID:???長くて6000文字程度だし
IEの2000文字制限がな・・・
00651
2016/05/07(土) 08:58:18.11ID:???00661
2016/05/07(土) 11:54:41.03ID:???タイムゾーン
UPDATE変更の必要なし問題
0067nobodyさん
2016/05/07(土) 15:24:21.79ID:???サーバ構成はどんなふうに考えてるとか
サイトマップとかページのフレーム構成とか
どんなふうに考えてるのか見てみたいな
00681
2016/05/07(土) 17:30:20.31ID:???Twitter風UIにする予定です
00691
2016/05/07(土) 20:28:53.36ID:???Twitterの場合、TLに返信が色々出てくるんだが
検索速度を考えると、整合性に気をつけてテーブル分割した方がよさそう
00701
2016/05/07(土) 22:04:18.58ID:???サーバーサイドは単純作業で、セキュリティにだけ気を付ければよかったけど
00711
2016/05/07(土) 22:19:37.26ID:???00721
2016/05/07(土) 22:45:50.93ID:???http://www.dotup.org/uploda/www.dotup.org852825.png
00731
2016/05/08(日) 00:57:34.98ID:???00741
2016/05/09(月) 00:53:48.86ID:???土日ずっとしていたからかなり進んだ
0075nobodyさん
2016/05/09(月) 07:30:48.17ID:???だからSPAにしろって
今から覚えるならJQueryよりおすすめ
HTMLのView地獄の深みにハマってつらい思いするぞ
00771
2016/05/09(月) 23:27:19.16ID:???$$から始まる関数をJQオブジェクト作成関数にして、$始まる変数をJQオブジェクトにします
00781
2016/05/09(月) 23:45:45.83ID:???jsの設計分からん
0079nobodyさん
2016/05/10(火) 00:41:45.00ID:???そうだっけ
どういうコードなんだろう
00801
2016/05/10(火) 07:50:47.24ID:???00811
2016/05/10(火) 21:16:30.20ID:???00821
2016/05/10(火) 23:59:09.03ID:???0083nobodyさん
2016/05/11(水) 11:02:28.76ID:???開発の仕方が5年ぐらい前に流行った開発だよね
ggったらよく出てくる内容だから勉強しやすいのかもしれないけど
特に今年は新しい環境が出揃ってこれからっていう元年に近い年だから
そっちに倣ったほうが楽しいと思うんだがな
それじゃ頑張ってくださいノシ
0084nobodyさん
2016/05/11(水) 11:35:03.10ID:???せめて誘導しろや>そっちに倣ったほうが楽しい
00851
2016/05/11(水) 16:03:56.63ID:???すみません
今ajaxが流行っていると書いてあったので、ajaxで作ってみました
00861
2016/05/11(水) 20:04:05.59ID:???0087nobodyさん
2016/05/12(木) 02:44:05.11ID:???SPA作るならフロントはReact+redux+react-routerで
ビルドはwebpackで十分だし
Angular2に手を出すのもアリだけど
DOM操作なんて人間様のやる事じゃないのでjQueryは必要無し
サーバーサイドPHPにするんならオレオレじゃなくて有名どころのFW使わないとセキュリティ周りで死ぬぞ
0088nobodyさん
2016/05/12(木) 03:01:13.65ID:???流行ってるってどこに書いてあるんだそんなの
0089nobodyさん
2016/05/12(木) 10:13:48.26ID:tNg+7L1IDOMで皆苦しんだ
0090nobodyさん
2016/05/12(木) 10:37:40.79ID:???一度組み上げてこのままじゃだめだよねと確認して次のステップへ行こう
この場につきっきりでコミュニケーション取りながら教えられる人なんていないだろうし
0091nobodyさん
2016/05/12(木) 12:12:53.26ID:???0092nobodyさん
2016/05/12(木) 13:23:55.76ID:???形から入って完成しないパターンにしかならんしな
とりあえず動くものを用意して反応を貰うのが一番良い
00931
2016/05/12(木) 15:51:12.71ID:???SPAアプリだと他のライブラリの方が、保守しやすいみたいですので、色々触ってみます
動く物を見せたいのですが、現在サーバーの審査待ちですので、少々お待ち下さい
00941
2016/05/12(木) 17:05:14.47ID:???Angular2+TypeScript+css+htmlで作る予定です
00951
2016/05/12(木) 17:05:51.17ID:???クライアントサイドは
Angular2+TypeScript+css+htmlで書き直す予定です
00961
2016/05/12(木) 17:46:48.88ID:???0097nobodyさん
2016/05/12(木) 18:18:58.09ID:???00981
2016/05/12(木) 18:44:34.33ID:???また、APIでAccess-Control-Allow-Origin: *を出力して、POST通信でも出来るようにします
00991
2016/05/13(金) 20:11:58.20ID:???日曜用事あるから、土曜頑張ろう
01001
2016/05/14(土) 16:33:06.50ID:???かなり分かりやすくなった
01011
2016/05/14(土) 16:59:04.14ID:???各レスに固有IDつけているけど
■ このスレッドは過去ログ倉庫に格納されています