トップページ⇒php
1002コメント237KB

【PHP】2chat開発スレ【2chを越える】 [無断転載禁止]©5ch.io

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん2016/04/23(土) 13:45:28.79ID:???
【2chatとは】
掲示板とチャットを組み合わせたオープンソースのPHPスクリプトです。
名前の由来は2ch+chat

【特徴】
*基本的な面
ユーザー登録は必要だが、匿名
ユーザーは日付の経過や書き込み、荒らしなどでレベルが上下し、このレベルは通報の影響度などに関わる
管理人が不在でも通報が集まった書き込みは自動削除
チャット形式の為、書き込み上限はなく、テンプレはいつでも誰でも編集可能
板はなく、各スレッドはカテゴリを付けられる為、スレッドを探しやすい
単発スレには向かない

*専ブラ
jsを使い専ブラなしで快適に閲覧出来るUIを提供
WEBで見れるため、PC⇔スマホで開いているスレなどを完全同期できる

*API
誰でも使えるAPIを提供(jsonp対応)
2ch互換のAPIも提供
ユーザーはサブパスワードを作る事で、悪意を持った外部サービス管理人によるアカウントの乗っ取りを防ぐ事が出来る
開いているスレなども外部サービス間で同期可能
030612016/08/29(月) 16:36:49.08ID:???
>>304
勿論VPS使うよ
0307nobodyさん2016/08/31(水) 01:45:15.60ID:???
Linuxで、C#? 実績ないだろ

Javaを使え
030812016/08/31(水) 15:52:02.60ID:???
java大嫌いなんだけど
プロパティもないしgetter地獄になるし
APS.NET Coreって実勢ないの?
030912016/08/31(水) 16:04:44.50ID:???
確かにjavaの方が実績は多いだろうけど
日本語情報も
でもあの文法はなー
031012016/08/31(水) 16:05:36.50ID:???
でも安定求めるならjavaの方がいいのだろうか
0311nobodyさん2016/08/31(水) 17:12:49.80ID:???
実績はそりゃ、今年出たばっかだからないだろ。
でも、小さなシステムだし、.NET Coreでいいんじゃね。
逆に、Javaでも、Getter地獄で苦しまんだろ。どうせ作るクラスも少ないだろうし。
なんでもいいじゃね。
031212016/08/31(水) 17:19:32.30ID:???
それより日本語の情報少なすぎてMySQLに接続しようとするだけで4日経った
MySql.Data使おうとしてもできないし
031312016/08/31(水) 17:22:41.52ID:???
確かにjavaの方がいいかもな
情報少なすぎて何もできない
0314nobodyさん2016/08/31(水) 17:28:54.73ID:???
そっか。.NET CoreはDB周りまだ、プロバイダの方はまだとかそんなオチとか。
0315nobodyさん2016/08/31(水) 17:30:38.95ID:???
まぁ、勉強のためもあるんだろうが、小さいシステムなんだから最初から
言語とかにこだわらずに、言語に依存しないWebアプリの作り方とか注意点とか
そういうの学べれば最低限OKだと思うけどな。
031612016/08/31(水) 18:20:32.53ID:???
じゃあやっぱりjavaか…
javaいつになったらプロパティ取り入れる気なんだろ
031712016/08/31(水) 18:52:09.43ID:???
まだリポジトリパターンがいまいち分かってない
0318nobodyさん2016/08/31(水) 23:40:16.15ID:???
ここでNode.jsを勧めてみるテスト
031912016/08/31(水) 23:49:13.93ID:???
Node.jsはいつか覚えたい
javaとかC#の標準APIに比べるとjsって何か足りないんだよな
Nodeは知らないけど
032012016/08/31(水) 23:50:44.60ID:???
Node.jsってsocketが得意なのか
0321nobodyさん2016/09/01(木) 01:07:03.22ID:???
Go, Ruby, Python
032212016/09/01(木) 18:49:35.16ID:???
リポジトリ作り直してどんどんコミットしていくわ
早く作らないとモチベが持たん
032312016/09/01(木) 18:58:08.34ID:???
プロはどうやって開発しているの?このくらいなら3日くらいで終わらせる人いそうだけど
0324nobodyさん2016/09/01(木) 19:01:47.32ID:???
見た感じ飽きっぽさそうだからどうしようもない。
どうせ、もう1個のゲームの方だかも完成してないんでしょ?
032512016/09/01(木) 19:02:57.67ID:???
とりあえず新リポジトリ
https://github.com/kgtkr/nch
032612016/09/01(木) 19:03:47.72ID:???
>>324
まだ完成してない
一個のプロジェクトばかりしてたら飽きてくるし…
こっちは慣れている間に結構進んだけど
032712016/09/01(木) 19:04:04.83ID:???
「離れている間」のミスね
032812016/09/01(木) 19:08:43.45ID:???
まあのんびりと作るか
0329nobodyさん2016/09/01(木) 19:16:27.12ID:???
つか、色々アドバイスしてくれる人は君が離れてる間にどっかいっちゃったしね・・
0330nobodyさん2016/09/01(木) 20:27:30.02ID:???
飽き性でスケジュールも決めない人は向いてないよね
新入社員でも出来る事しかできないコーダー止まりのパターンだ
033112016/09/01(木) 20:36:09.48ID:???
じゃあスケジュールだけでも作るか
033212016/09/01(木) 21:34:15.95ID:???
予定
https://github.com/kgtkr/nch/milestones
033312016/09/01(木) 21:43:11.59ID:???
今日から9月だから9/30までにサーバーサイド終わらせよう
0334nobodyさん2016/09/02(金) 01:33:57.49ID:???
こういうガワだけアピールして結局何にも完成出来ない人間腐る程見て来たから是非頑張ってほしい
口だけじゃなくて
0335nobodyさん2016/09/02(金) 02:40:46.70ID:???
>>323
まず初めに、簡単なチャット機能を作ってみましょうって、言語の本に、よく載っている。
それをコピペすればいいだけ

君は本を読んだことがあるのか?
033612016/09/02(金) 07:48:46.29ID:???
>>334
完成させる気はあるんだけどやっぱり周りから見たらそう見えるよな
頑張るわ

>>335
java本は読んだ事あるけどサーブレットはない
今持ってるのは、java2冊とUnity一冊
033712016/09/02(金) 16:29:06.20ID:???
ThreadをTopicに名前変更(java.lang.Threadと被って面倒なので)
ついでにResponseをResに変更。こっちは単純に短くしたかった
033812016/09/03(土) 00:02:23.49ID:???
・トリップ機能は実装しない予定
代わりに無制限に作れるプロフィール機能を作る

・名前欄の図形
★☆ 管理人等による書き込み
●○ 上記のプロフィール付き書き込み
■□ システムによる書き込み

※以下は今後使う事になる可能性があるので念のため白図形への置き換えを行う
▲△
▼▽
◆◇
??
??
??
??
033912016/09/03(土) 00:03:17.11ID:???
文字化け修正

♠♤
♣♧
♥♡
♦♢
034012016/09/03(土) 00:03:58.56ID:???
ここUnicode未対応鯖か
下4組はトランプ記号です
034112016/09/03(土) 00:13:36.52ID:???
トランプ記号はやっぱりなしで
034212016/09/03(土) 00:27:00.07ID:???
読みやすいコードをパフォーマンスの両立って難しいな
実際に測定した訳ではないけど読みやすさを意識するとDBアクセスがかなり増える
034312016/09/04(日) 14:57:21.86ID:???
javaの1ファイル1クラス制限はenumとか例外とかでかなり面倒
enumも例外も短くて済むから制限しなくてもいいのに
0344nobodyさん2016/09/04(日) 15:21:26.77ID:???
Javaで一番うざいのは、ソースファイルを簡単にフォルダ分けできないのがうざい・・
パッケージ名の階層がフォルダ階層する慣習?がうざいったらありゃしない。
.NETだと、Visual Studioで簡単にソリューションエクスプローラでフォルダ作れば、
自由自在だが。
034512016/09/04(日) 15:25:04.13ID:???
>>344
これもある
名前空間にするほどじゃないけどソース分けたい事とかあるし
コンパイル後のclassファイルだけ1ファイル1クラス、名前空間=フォルダ構造にすれば実行時も困らないだろうに
0346nobodyさん2016/09/04(日) 15:34:52.79ID:???
だな。コンパイル後は、名前空間=フォルダ構造で勝手にしてくれればいいが、
ソースファイルまでそんな扱いにする慣習がうざい。
慣習だから勝手にEclipseとかAndroid Studioがやってるだけで、
ビルド構成をいじくれば、自由自在にできんだけど、めんどくせぇわ。
034712016/09/04(日) 15:39:23.40ID:???
あとチェック例外も
とりあえず作って最後に例外処理したい時とかも、大量の赤ビックリが目障り
0348nobodyさん2016/09/04(日) 15:53:47.02ID:???
ああ。チェック例外か。チェック例外の良し悪しはまだ断定できんな俺。
でも、結構チェック例外いいかもと思ってる。
034912016/09/04(日) 16:00:01.44ID:???
確かに便利な事もある(ドキュメントの例外部分を見落としていた時に教えてくれたり)けど、、
オプションで指定みたいな事は出来ないのだろうか
035012016/09/04(日) 16:21:54.84ID:???
timeAPIが結構便利そう
035112016/09/04(日) 17:26:15.41ID:???
2chって一ヶ月に7000万くらいレスあるのか
035212016/09/04(日) 17:30:30.15ID:???
Twitterは2ch軽く越えてた
035312016/09/04(日) 20:34:53.79ID:???
とりあえずpushした
035412016/09/04(日) 20:36:08.51ID:???
Repositoryパターンが分かって気がする
035512016/09/04(日) 22:10:52.35ID:???
運営はルール違反には関わっても、マナー違反には関わるべきではないと言うのが個人的な考えだから、不愉快な書き込みには低評価をするシステムは取り入れる
違法な内容とか規約違反とかは通報フォームで済ませるけど
035612016/09/04(日) 22:36:32.46ID:???
DMも実装します
035712016/09/04(日) 22:46:52.57ID:???
・メモ
DMのホワイトリストorブラックリストモードはクライアントで実装出来るのでサーバーサイドでは実装しない
なるべくサーバーサイドは小さくする
035812016/09/04(日) 23:07:43.24ID:???
うわっ
APIリストマークダウンで作ったら文字コードが英語専用になってたからデータ吹っ飛んだ
MarkDown#Editorって奴htmlだとutf-8で出力出来るのにmdだと出来ないんだけど
035912016/09/04(日) 23:50:36.87ID:???
実装が必要な機能を整理する為にまとめました
https://github.com/kgtkr/nch/blob/master/api.md
0360nobodyさん2016/09/05(月) 00:16:09.63ID:???
今更だけど、まず1が2ちゃんねるについて理解してるのかが謎なんだよな
0361nobodyさん2016/09/05(月) 09:09:40.30ID:???
そこは別にどうでもいいし、なんとでもなるでしょ
036212016/09/05(月) 15:53:24.15ID:???
「2chについて理解」って例えばどんな事ですか?
ソースを読んだ事はありませんが(perlが分からないので)
036312016/09/05(月) 16:31:50.70ID:???
何かSQLの基本が理解出来ていない気がする
プログラミング言語の感覚だと全く理解できないし
0364nobodyさん2016/09/05(月) 18:27:46.72ID:???
.NETやってたんならLINQ使ってただろ?
036512016/09/05(月) 18:31:51.03ID:???
>>364
javaの方がいいと言われたのでjavaにしました
本当はリンク使いたいですが…
036612016/09/05(月) 18:43:45.84ID:???
あっ読み間違えた

.NETでDBを使ったことはなく、LINQはこれから勉強しようと思っていた所なのでまだ使った事はありません
0367nobodyさん2016/09/05(月) 18:51:49.35ID:???
そっか。基本的な操作ぐらいはすぐ覚えれるだろう。
まぁ、ものにするには、慣れるしかないけど。
俺は昔にOracle(SQL)を触りまくって覚えて、最近、全然データベース触ってないけど、
触りまくったらからなんとか今でもサクッと書ける。そりゃ細かい構文は忘れるけど。
036812016/09/05(月) 18:56:14.95ID:???
本当に基本的な物なら分かるんですが、少し複雑な事をしようとするとどうすればいいか分からなくなるんですよね
入門サイト見ても追加、更新、削除、検索の基本くらいしか載っていないので…
036912016/09/05(月) 18:58:20.34ID:???
Query外部ファイル化面倒だし、だからと言って一行に書くわけにもいかない
メソッドチェーンで文字列を作っていって、toString()でQuery文字列に変換みたいな事出来ないだろうか
037012016/09/05(月) 19:05:59.31ID:???
stream-apiって言うのがjavaにあるらしいがSQLで使う事出来ないのか?
ggっても出てこないんだけど
037112016/09/05(月) 23:03:06.58ID:???
SQL文ってやっぱり外部ファイル化した方がいい?
0372nobodyさん2016/09/05(月) 23:38:28.62ID:???
いや、さすがにそれはしないな・・
0373nobodyさん2016/09/05(月) 23:40:30.37ID:???
ユーザーが変更できるようにそういう目的があるならしてもいいかもしれんが、
SQL分を埋め込まなきゃいけないのは宿命。もしくは、
ORMに逃げる。
0374nobodyさん2016/09/05(月) 23:41:44.09ID:???
というか、そういうクソSQLというかデータへのアクセスを1か所にまとめるために、なんとかパターンとかあるわけで。
リポジトリパターンもそんな感じじゃねぇのかな?
037512016/09/05(月) 23:46:37.63ID:???
別に変更の必要はないんだけど、javaだと1行で書くか、複数行を頑張って書くかしか選択肢ないのが辛い
037612016/09/05(月) 23:48:35.26ID:???
こうやって行ごとに+演算子とリテアル書かないといけないからかなり読みにくいんだよな

"CREATE TABLE topic("
+ "id int NOT NULL PRIMARY KEY AUTO_INCREMENT,"
+ "title text NOT NULL,"
+ "category text NOT NULL,"
+ "text text NOT NULL,"
+ "updatetime datetime NOT NULL,"
+ ""
+ "INDEX(id)"
+ ")"
+ "ENGINE=InnoDB;"
0377nobodyさん2016/09/05(月) 23:53:43.48ID:???
それは、がんばってインデント揃えてスペース入れたりして見やすくするしかないような。
ヒアドキュメントみたいのないんじゃねぇかな。
037812016/09/05(月) 23:55:34.34ID:???
複数行文字列プラグインが消えたのがな…
https://fushihara.org/blog/archives/1657

自作出来ないかな
0379nobodyさん2016/09/06(火) 00:08:45.20ID:???
EclipseのJavaのデフォルトのフォーマッタが邪魔するかもしれんが、
俺は+を後ろにおいて揃えるな。
" CREATE TABLE topic( " +
"  id int NOT NULL PRIMARY KEY AUTO_INCREMENT, " +
"  title text NOT NULL,"
038012016/09/06(火) 00:56:17.95ID:???
>>379
後ろの方が見やすいのかな
前までは後ろ派だったけど前の方が良いって聞いたから前に書くようにしたんだけど…


これさえインストール出来ればいいんだが…
installボタンないからアカウント作ればいいのかと思って作ったけど出てこない
もしかして完全に消えた?何故
https://marketplace.eclipse.org/content/java-multi-line-string-editor
038112016/09/06(火) 22:52:05.68ID:???
ヒアドキュメントを出来るプラグイン探していたら2日潰れた
本当java嫌い
038212016/09/06(火) 23:23:10.96ID:???
仕方ない…とりあえずこのまま頑張るか
038312016/09/06(火) 23:26:54.82ID:???
コピーしたらIDEがエスケープしてくれる機能使って、

/*
ここの元SQL文を書いておく
改行したり
*/
String query="";//←ここに上のコメントの中身をコピー

これなら少しはマシになりそう
雑だけどしばらくはこれで代用するか
ここでプラグイン探したりしていたらモチベ死ぬ自信しかないし
038412016/09/08(木) 17:49:49.04ID:???
TwitterってjavaじゃなくてScalaだったのか
038512016/09/08(木) 20:20:13.73ID:???
3日でScalaに移植しよう
基本クラスの作成は11日までだから間に合うはず
0386nobodyさん2016/09/08(木) 20:23:29.33ID:???
なんかブレブレだけど大丈夫か
038712016/09/08(木) 20:47:43.55ID:???
全然大丈夫じゃない
038812016/09/08(木) 20:49:02.98ID:???
Twitterはjavaで出来ていると思っていたけど、Scalaだと言う事を知ってScalaの方がいいのかなと思って
JVMは好きだけどjavaは嫌いだからScala覚えた方がいいのかなと
038912016/09/08(木) 20:58:31.43ID:???
何かかなり複雑な言語っぽいな
使いこなせたら強力な武器になりそうだけど
0390nobodyさん2016/09/08(木) 21:08:27.74ID:???
目的見失いすぎワロタ
039112016/09/08(木) 21:12:13.43ID:???
javaerがScalaerに3日でなれるのだろうか
039212016/09/08(木) 21:21:52.20ID:???
Scara入れたらエクリプスが異常に重くなった
0393nobodyさん2016/09/08(木) 22:06:08.52ID:???
5ヵ月目で出来たものは結局20年前からある会員制BBSの劣化β版か…
一生完成しないパターンだから見限るわ
0394nobodyさん2016/09/08(木) 22:06:42.58ID:???
典型的な完璧主義者だな。
度を超すと、物事完成させれなくなるよ。
シューティングゲームの方は完璧主義がたたって壁にぶつかったんじゃないの??
それでこっち逃げてきたとか。
039512016/09/08(木) 22:07:24.97ID:???
STGはそんなにぶれていない
こっちはブレブレだけど
039612016/09/08(木) 22:12:01.54ID:???
もう5ヵ月か…
PHP→javaよりはjavq→Scalaの方が楽だろうけど
039712016/09/08(木) 23:00:15.26ID:???
思ってたよりjava→scalaの移植簡単だ
039812016/09/08(木) 23:11:20.13ID:???
Scalaらしさとか追及していたら時間掛かりすぎてモチベ死ぬだろうから、そういうのは全く考えずにとりあえず移植する
0399nobodyさん2016/09/09(金) 13:43:10.78ID:???
>>394
作り方に拘って完成に辿り着けないタイプだよね
Twitterのブランド力に影響されてるところからミーハーでもあるけど
ここで「GoogleはPythonを使っているらしい」と指摘したらまた言語を変えて作り始めそう
040012016/09/09(金) 17:36:59.04ID:???
動的言語は苦手だからそれはないと思う
0401nobodyさん2016/09/09(金) 18:54:09.26ID:???
動的言語が苦手ならなぜPHPで作り始めたのか
JavaScriptも苦手っぽいけど、今時静的言語だけで頑張るのは厳しい
0402nobodyさん2016/09/09(金) 18:58:04.81ID:???
Pythonが動的言語かいなかをいいたいんじゃなくて、あくまでPythonは例で、
君の性格について言及するに引き合いにだしただけなのに、
動的言語は苦手だからとか見当はずれなレスして読解力もないのか・・
040312016/09/09(金) 19:00:04.29ID:???
最初からPHPとjavaには不満あったけど、Scalaは結構合いそうだからこのまま進める
0404nobodyさん2016/09/09(金) 19:01:41.17ID:???
Scalaは趣味ではいいけど、仕事の求人数的には役立たずじゃね。
040512016/09/09(金) 19:29:45.30ID:???
>>404
これ趣味だし、好きな言語使いたい
これから普及する可能性もあるし
■ このスレッドは過去ログ倉庫に格納されています