トップページ⇒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も提供
ユーザーはサブパスワードを作る事で、悪意を持った外部サービス管理人によるアカウントの乗っ取りを防ぐ事が出来る
開いているスレなども外部サービス間で同期可能
020212016/05/25(水) 21:32:34.96ID:???
ライブラリは薄いラッパーだけ出来た
ただJSDocの仕様はどこが正しいのか分からん
乱立している感じなのだろか?
020312016/05/25(水) 22:30:44.77ID:???
ライブラリコミットしました
020412016/05/26(木) 19:04:37.67ID:???
大改造したらエラーの山で泣きそう
020512016/05/26(木) 19:07:58.80ID:???
しかも90%以上のエラーが、コンパイル式静的言語ならコンパイル時に分かるエラー・・・
本当動的インプリンタ言語嫌い
0206nobodyさん2016/05/26(木) 19:25:28.08ID:???
>>205
TypeScriptでも使ったら?
0207nobodyさん2016/05/26(木) 19:33:43.03ID:???
なぜPHPにしたのか
020812016/05/26(木) 19:52:38.27ID:???
>>206
クライアントサイドは別にそこまでエラーない
問題はサーバーサイド

>>207
対応サーバー多いから
0209nobodyさん2016/05/26(木) 19:59:33.02ID:???
2ch越えるってんなら設定自由にいじれるサーバ使うだろうし好きな言語でよくね?
巨大掲示板群を作るのではなくOSS配布が目的なの?
0210nobodyさん2016/05/26(木) 20:10:55.24ID:???
1番の目的はWebサービスの開発経験を積むことです。
021112016/05/26(木) 23:07:33.49ID:???
>>209
とりあえず今回はPHPで作ってみます
サーバーサイドはクライアントサイドに比べるとあまり複雑ではないので、移植しようと思えば結構すぐ出来そうですし

>>210
一番ではないですが、それもありますね
0212nobodyさん2016/05/27(金) 11:47:01.69ID:???
PHPってバージョン7ではセキュリティもパフォーマンスも
だいぶ上がってるみたいだし、オンラインヘルプ充実してるし俺は良いと思うけど
Node.jsなんかは作りやすいものなのか?
0213nobodyさん2016/05/27(金) 12:15:09.23ID:???
なんでコンパイル時に型のエラーを検出できる静的型付言語にしなかったのかという話なのにnode.jsなんだ

nodeよりはタイプヒントつけられるPHPのほうがマシ
PHP7.1でプロパティの型も入りそうだし
0214nobodyさん2016/05/27(金) 12:44:59.76ID:???
そもそも静的型付けが必要なプログラマーって実力がないからなのかな
注意力がないというか
0215nobodyさん2016/05/27(金) 13:01:35.98ID:???
静的のメリットはよくわかるけど
動的のせいにするような人は静的でもあまり…
0216nobodyさん2016/05/28(土) 00:15:16.67ID:AXBYWEwi
実力とか必要の問題じゃなく保守管理性の問題だと思うんですけど
0217nobodyさん2016/05/28(土) 00:18:18.29ID:???
人間はミスをする生き物だから機械的に保証するべきだよ
0218nobodyさん2016/05/28(土) 00:24:09.68ID:???
ま、技術的にいくら優れてようが2chに勝てないわけだが
0219nobodyさん2016/05/28(土) 01:12:32.12ID:???
イントランスってなんだインスタンスだろ
022012016/05/28(土) 09:48:33.10ID:???
俺と同じ間違え方している人いたのか
先月までイントランスってずっと読んでた
022112016/05/28(土) 10:23:30.26ID:???
PHPってint同士の除算でもdoubleになるのか・・・
めっちゃ混乱した
022212016/05/28(土) 10:50:33.77ID:???
VIPみたいな単発メインの掲示板にはしたくないんだよな
とりあえず、ユーザー登録とスレ建てにはキャプチャ認証つけたよう
022312016/05/28(土) 10:50:50.51ID:???
×つけたよう
○つけよう
022412016/05/28(土) 10:53:46.94ID:???
API形式にしたいから、BDにキャプチャIDと、非公開のランダム文字列を登録して、Image.phpかなんかにgetでID渡させて、画像表示すればいいか
022512016/05/28(土) 10:58:06.59ID:???
画像合成は昔PHPで作った経験ある
022612016/05/28(土) 13:53:54.23ID:???
登録時の画像認証出来た
スレ建て時の認証はいいや
本番稼働時はかなり厳しい制限する予定だし
022712016/05/28(土) 14:38:38.31ID:???
サーバーのお試し期間があと1週間だ
022812016/05/28(土) 23:09:27.15ID:???
この単一ファイルコンポーネントってnode.jsじゃないと出来ないのかな
javaScriptはNodeの事言っているのか、クライントの言っているのか分からない解説が多い気がする
http://qiita.com/ayasuda/items/92221229e8f8c65c6f7c
022912016/05/28(土) 23:15:02.03ID:???
JQueryから逃げたいんだけど、JQuery UIみたいなVue.js UIみたいなライブラリってないかな・・・
0230nobodyさん2016/05/28(土) 23:18:41.67ID:???
>>228
node上のツールでコンパイルしてブラウザ用ファイルを吐き出すってだけだぞ
023112016/05/28(土) 23:28:02.40ID:???
最近のjsってnodeと連携している感じなの?
nodeはphpとかperlとかrubyみたいな事をする言語と思っていたんだが違うのだろうか
023212016/05/28(土) 23:30:02.90ID:???
単純に使いたいだけなのにnodeとかnpmとか色々ありすぎて・・・
デスクトップアプリは単一言語で開発(WPFとかはあるけど・・・)出来て楽だったけどWEBは言語多いし難しい
0233nobodyさん2016/05/28(土) 23:46:18.76ID:???
javascriptをどこで実行するか、それがブラウザとNode.jsの違い
ブラウザ上はご存知の通りDOMやそれに関連した操作を行うためのもので制限も多いが、これが基本
そのためのライブラリがJQueryとかAngular.jsとかVue.jsとか

javascriptをブラウザ以外でも使えるようにしたのがNode.js
ブラウザ上ではないので他の言語と同じようにほぼ自由になんでも出来る
パッケージマネージャとしてnpm、タスクランナーとしてgulpなど様々なツールがある

大雑把な理解はこんな感じ
0234nobodyさん2016/05/28(土) 23:55:30.99ID:???
Javascriptは言語、Node.jsは実行環境
PerlやPHPなどは言語 = 実行環境みたいなものだから混乱しやすいね
一応C#もC#という言語と.NETという実行環境な感じで分かれてなかったっけよくしらんけど
0235nobodyさん2016/05/29(日) 03:25:55.75ID:???
クライアントサイドはjavascript一択だからわかりやすいけど
サーバーサイドって何を使うか迷うね

クライアントとサーバーで共通の言語使えるのが一番楽だけど
Node.jsってPHPなんかに比べてサーバーアプリ作りやすいのかな?

しかも投資効率ということを考えると、RubyやPythonの方が将来性あるのかとか
いろいろ迷うね
023612016/05/29(日) 22:23:37.62ID:???
>>234
.NETと同じような物か
納得した

あと、JQueryから逃げるために、頑張って自力でタブ作った
次はモーダルウィンドウ
023712016/05/29(日) 23:33:03.85ID:???
モーダルウィンドウ中央表示以外は出来た
中央表示は分からん・・・
これでJQuery UIからは逃げられたから、あとはJQueryから逃げればいい
0238nobodyさん2016/05/30(月) 08:38:42.12ID:???
なんで逃げたいんだ?
0239nobodyさん2016/05/30(月) 13:04:08.11ID:???
>>238
俺もそれ知りたい
技術的な理由があるならぜひ教えて欲しい >>1
0240nobodyさん2016/05/30(月) 13:45:49.40ID:???
むしろSPAでなんで逃げたくないんだ
024112016/05/30(月) 18:11:10.84ID:???
使っていてJQueryとVue.jsは相性悪いと思ったから
024212016/05/30(月) 18:29:27.79ID:???
あとサーバー5日だ・・・
024312016/05/30(月) 18:48:42.47ID:???
マークダウンみたいな修飾タグ実装したいな
2chのソース貼り付けしにくいし
あと&ってエスケープしないと本当に危険なんだろうか?
024412016/05/30(月) 18:52:14.27ID:???
やっぱり危ないらしいな
http://shimax.cocolog-nifty.com/search/2007/12/php_f864.html

UTF-8だからとりあえずはいいか
024512016/05/30(月) 18:57:35.57ID:???
今気づいたんだが、$noコマンドいらなくね
$の前に半角スペース入れれば全く同じ動作する
024612016/05/30(月) 23:32:46.98ID:???
そういえば、Vueイントランスの作成を、el:bodyを指定して全体に適用させているんだけど、個別に分割したほうがいいのだろうか?
0247nobodyさん2016/05/31(火) 08:50:59.54ID:???
イントランスとは
0248nobodyさん2016/05/31(火) 09:06:57.79ID:???
インスタンス?
024912016/05/31(火) 17:28:24.29ID:???
また間違った
恥ずかしい
インスタンス
0250nobodyさん2016/06/01(水) 09:32:20.94ID:???
実は足腰の弱いプログラマ−?
025112016/06/01(水) 16:22:37.91ID:???
>>250
プログラマじゃなくて学生
まだ勉強初めて1年半くらいだから・・・
0252nobodyさん2016/06/01(水) 18:56:45.44ID:???
autoloadの設定は初期化処理のファイルで一回すれば十分だぞ
ファイルごととか見たことない
025312016/06/01(水) 19:19:03.50ID:???
>>252
include_onceなので1回しか読み込まれないはずですが、やめた方がいいんですか?
0254nobodyさん2016/06/01(水) 19:56:17.53ID:???
すべてのクラスファイルがautoloaderのファイルパスに依存するとか最悪にメンテナンス性悪いでしょ
エントリポイントとなるファイルで読みこめば充分

一回他のフレームワークのコードとか覗いてみたら
0255nobodyさん2016/06/01(水) 21:56:51.28ID:zrVe8lVb
staticおじさん
025612016/06/03(金) 18:24:58.53ID:???
今日でサーバーのお試し終了
まだ問題点が改善できていないから、まだ新しいサーバーにはアップしない
025712016/06/03(金) 19:12:37.92ID:???
もう少しで考査始まるので更新少なくなるかもしれません
0258nobodyさん2016/06/03(金) 21:36:52.56ID:???
設定用のクラスにパスワードやソルトをハードコードしてるの正直どうかと思う
dotenvとか使えば?
025912016/06/03(金) 23:25:16.83ID:???
>>258
確かにgitで間違ってコミットしてしまったりすると怖いですね
ただ、今クライアント側を作っているので待って下さい


any型を使えばtsとvueを上手く使えそうな気がしたのでts使ってみます
026012016/06/04(土) 09:31:53.27ID:???
ts凄い
026112016/06/07(火) 18:54:38.94ID:???
モチベ下がってきたからしばらく開発休むかも
しばらくSTGの開発休んでいたけど、モチベ戻ってきたし
026212016/06/07(火) 18:57:40.62ID:???
基本的に3つくらいのプロジェクトをローテーション(1ヵ月〜1ヵ月半くらい)で開発しているので、たまに長期間消えますが、プロジェクトが中止した訳ではありませんので
一つを続けてやると、飽きてくるので・・・
0263nobodyさん2016/06/07(火) 18:58:11.44ID:???
予想通り
026412016/06/07(火) 19:10:49.38ID:???
1年くらい続けているプロジェクトをそろそろ完成版リリースしたいし・・・
0265nobodyさん2016/06/08(水) 01:59:58.09ID:???
tsてなに たいむしふと?
0266nobodyさん2016/06/08(水) 08:19:40.65ID:???
TypeScriptじゃね?
026712016/06/08(水) 23:03:42.92ID:???
そうです
TypeScriptです
0268nobodyさん2016/06/09(木) 10:31:19.78ID:???
なるほど
026912016/06/14(火) 18:41:33.80ID:???
ひろゆきが管理人に戻るらしい
JIMは5ch.netを立ち上げるとか
0270nobodyさん2016/06/14(火) 19:22:42.19ID:???
だから、>>197でチャンスっていったじゃん。
027112016/06/18(土) 18:37:15.33ID:pK47OYZ/
とりあえずクライアント頑張ろう
サーバーサイドは行数多いだけで単純だからjavaに書き直すのも思考停止ですぐ出来そうだけど、クライアントサイド作るのはかなり複雑だから大変
0272nobodyさん2016/06/19(日) 22:13:44.26ID:fGhYV3XN
.


■ 2ch認定 スピリチュアル詐欺一覧

 小泉義仁 知井道通
http://karma.2ch.net/test/read.cgi/spiritual/1441832249/
 不道徳連発!冨田佳音のキチガイ スピ活動
http://karma.2ch.net/test/read.cgi/spiritual/1464971384/
 【詐欺師】 スピ 梶岡あん子 【キチガイ】
http://karma.2ch.net/test/read.cgi/spiritual/1466206702/
 【詐欺師】 スピ ミカタカミ 【キチガイ】
http://karma.2ch.net/test/read.cgi/spiritual/1466207813/ 
 詐欺師 岩崎士郎 嘘八百
http://karma.2ch.net/test/read.cgi/spiritual/1451143434/
 ユニフォース・センター 金子浩一
http://karma.2ch.net/test/read.cgi/spiritual/1452973952/


.
027312016/06/20(月) 00:19:47.84ID:y9nVOQ79
jsにもc#のTask型みたいな物があればいいのに
0274nobodyさん2016/06/24(金) 07:48:43.14ID:???
tsでasync/await使ってbabelでさらにトランスパイルすれば
非同期処理を同期っぽくかけるらしいよ。
でも1の場合は素直にコールバック渡して書いたほうが楽なんじゃない
027512016/06/25(土) 00:37:03.13ID:???
>>274
何か難しそう
そういえばjsで非同期処理の排他処理って聞かないけど必要ないの?

webassemblyって言うので、c#が将来的に対応する予定らしい
やっとか
0276nobodyさん2016/06/25(土) 07:44:58.19ID:???
>>275
Promise
027712016/06/25(土) 09:16:41.62ID:BB8bE9je
jsの非同期処理ってマルチスレッドと思ってたけどシングルスレッドだったってマジかよ
027812016/06/25(土) 16:37:52.79ID:BB8bE9je
真面目なシステム作るならjavaの方がいいのだろうか?
0279nobodyさん2016/06/26(日) 08:40:38.25ID:???
1は結局サーバーサイドはphpつかってるんじゃなかったっけ?
それでなんでスレッド数気にするの?
028012016/06/26(日) 09:15:05.73ID:igs77RHp
>>279
jsはクライアントサイド
0281nobodyさん2016/06/26(日) 12:25:34.41ID:???
>>278
今更、JavaAppletに先祖帰りする必要もあるまい
あと、マルチスレッドが本当に必要なのかをよく考えるんだ
http://www.html5rocks.com/ja/tutorials/workers/basics/
028212016/06/26(日) 13:14:25.18ID:rhVzrhMb
>>281
appletは使えないブラウザあるから使わないよ
PHPの代わりにサーブレット使った方がいいのかなと思って
0283nobodyさん2016/06/26(日) 16:49:43.89ID:???
>>282
クライアントサイドJavaScriptがシングルスレッドだった事を懸念していたはずなのに、なぜサーバサイド言語の話になるんだ?
クライアントサイドならWorkerを使え、とアドバイスしてもスルーするし、意味が分からん
028412016/06/26(日) 16:55:28.58ID:rhVzrhMb
すみません
>>277はマルチスレッドにしたいという意味ではなく、jsの非同期処理がシングルスレッドだったことに驚いただけです
0285nobodyさん2016/06/26(日) 22:33:26.55ID:???
>>281
全然関係ないけど
勉強になった
ありがと
028612016/06/27(月) 00:10:56.51ID:UC1mYRg/
目指すのは2chというより匿名Twitterになりそう
人と人が繋がるTwitterとは違って、話題に人が集まるTwitterみたいな
0287nobodyさん2016/06/28(火) 17:15:03.66ID:???
Twitterとかいらないから。
0288nobodyさん2016/06/28(火) 17:15:47.54ID:???
ハッシュタグみたいなクソみたいな仕組みはやめよう。
028912016/06/28(火) 18:22:34.15ID:k2VEgnFH
そこまではしない
2chのシステムにTwitterのUIを組み合わせるみたいな
2chのUI(専ブラじゃないほう)は時代遅れ
029012016/06/29(水) 00:25:59.25ID:???
リポジトリクラス設計メモ
ここではUserクラスを例に使う
core/userパッケージを作って関連クラスを全部突っ込む
Userクラスはパッケージプライベート
Userリポジトリクラスは1スレッド1インスタンスでnew時にconインスタンスを渡す
UserインスタンスはUserリポジトリ経由でしか取得出来ない
0291nobodyさん2016/06/29(水) 00:34:11.12ID:???
DB的にテーブルなんて2,3個しかねぇんだから、UIを除くコアの部分というか
サーバー側なんて2,3週間でできるレベル。
0292nobodyさん2016/06/29(水) 08:46:54.92ID:???
慣れてりゃ2,3日だな
勉強兼ねてリファクタリングしてるんでしょ
029312016/06/29(水) 16:49:53.16ID:TQMsW2Bf
プロプログラマってそんなに早いのか
java使ってて思うんだけど検査例外が…
一回ザッと作った後に例外処理作っていく派なのにコンパイルエラーが
029412016/06/29(水) 16:59:30.59ID:TQMsW2Bf
名称変更
サブパスワード/メインパスワード
↓
サブパスワード/マスターパスワード
0295nobodyさん2016/06/29(水) 18:22:15.51ID:???
>>288
あれ理解しやすくて良いじゃん
029612016/06/29(水) 18:26:18.59ID:TQMsW2Bf
>>295
一つの話題に書き込むから、そもそもハッシュタグの必要性を感じない
2chでハッシュタグいるかって言われたらいらないのと同じ
029712016/06/29(水) 23:44:00.21ID:???
VIPでアイディア募集したり意見聞いたりしてみたら役に立ちそうな情報、意見が結構出た
http://vipper.2ch.net/test/read.cgi/news4vip/1467207439/
http://vipper.2ch.net/test/read.cgi/news4vip/1467114944/

お陰で沈みかけていたモチベも回復
029812016/07/30(土) 17:15:11.85ID:fbGk0XoS
生存報告(作業が進んでいるとは言っていない)
029912016/08/28(日) 17:06:50.32ID:lhHuMh7u
【仕様変更】
・コマンド機能は一般ユーザーには使いにくそうなので出来るだけ廃止
・PC/スマホ等で同期する為に、開いているタブを記憶するAPIを用意する予定でしたが、
それ以外にもNGを記憶したり、その他詳細設定を記憶するAPIも用意しなければいけなくなりそうなので、
WEBStorageのような感覚で使える永続化APIを用意します
030012016/08/28(日) 17:08:56.37ID:???
あとLinux鯖でも頑張ればC#使えるみたいなのでjavaではなく.NET Coreで作ります
030112016/08/28(日) 22:28:37.25ID:???
プロジェクト名を"Nch"に変更します(サービス名ではありません。サービス名はまだ未定)
Number、Next、New、.NETなどのNです
0302nobodyさん2016/08/28(日) 23:01:41.42ID:???
俺も最近PHPとJavaScript勉強し始めておお。一緒だと思ったらなんだよ。
C#にいくのかよ・・
■ このスレッドは過去ログ倉庫に格納されています