したらばTOP ■掲示板に戻る■ 全部 1-100 最新50 | |

【悩むが】bbs2chreader 開発スレッド【勝ち】

1謎★:2008/06/23(月) 01:49:15 ID:???0
議論とか質問とかはここで

2 ◆QTUpJKA4UM:2008/06/23(月) 02:10:58 ID:R7.k.jKg0
板看板ぼしう中

3 ◆vrSd0N5azM:2008/06/23(月) 02:29:46 ID:R7.k.jKg0
鳥変更

4名無しさん@貢献中。。。:2008/06/23(月) 03:05:25 ID:CqMW7EIc0
乙です

5名無しさん@貢献中。。。:2008/06/23(月) 14:20:14 ID:GmhJ/aAk0


6名無しさん@貢献中。。。:2008/06/25(水) 00:01:28 ID:re7B14iI0
乙であります

7名無しさん@貢献中。。。:2008/06/25(水) 14:21:02 ID:8R.GxN660
乙です!待つ事しか出来ませんが応援してます!

8 ◆vrSd0N5azM:2008/06/26(木) 21:57:42 ID:HPhh05vU0
構造的な問題について。現在以下の四つの構造の種類を持っています。これを一つ二つに減らしたいです。
-JS XPCOM (components/*.js)
-NSGetModuleを実装していないJS XPCOM (chrome/content/bbs2chreader/components/*.js)
-js module (components/server/*.jsm)
-js class? (その他)

これ、上二つはインターフェース的、下二つはduck typing的に扱う必要があります。また、下の二つはクラスのアクセス制御ありません。
さらに、javascript (下二つ)はプロトタイプチェーンがあり、呼び出されたプロパティが無い場合__proto__へ委譲します。a.xを呼ぶとしてa.xが無ければa.__proto__.xを、それが無ければa.__proto__.__proto__.xをという感じです。なおprototypeに設定したのがnew時に__proto__に移されます。
__proto__は本来readonlyなのですが、geckoでは書き換え可能であり、b2r内でその方法が使われています。
(JS) XPCOMはオーバーヘッドが大きい(はず)です。それとidlをxptにコンパイルしなければいけなかったりと面倒でもあります。あとまぁ型チェックが厳しいですが、欠点かどうかは (ただエラーが易しくない^^)、nsIVariantもあるし。しかし、observerやあるXPCOMのインターフェースを持ったクラスなんかはJS XPCOMで実装する必要がある…ということでも無くちゃんとduck typingできれば問題ないです。ただずっと起動する必要のあり複数ブラウザウィンドウにまたがるサービスなんかはXPCOMで実装しないといけないです…まぁラッパだけXPCOMで十分な気もしますが。それとXPCOM内で無いとシングルスレッドの制限あるかも? というかXPCOMにmutexやsemaphoreってあったっけか? あとXPCOMのAPIは意外と微妙です。
js moduleは外に公開する変数を制限できます…Objectをexportする場合privateな変数も外に出ざるおえませんが。コードからのインポートも容易です…js classもmozIJSSubScriptLoader使えば評価回数を除いてあまり変わらないけど。
js moduleとXPCOMはデバッグ面倒かもです。変更しても再起動するまで保持されます。
ええとつまりそのえーと。

9 ◆vrSd0N5azM:2008/06/26(木) 22:14:56 ID:HPhh05vU0
C++から呼び出すにはJS XPCOMでNSGetModuleを実装する必要があります。
将来(もしくは今から)C++やpythonでリプレースするならXPCOMで実装しとくのが良いです。JSは遅いので…。
js moduleは新しいのであまり使われてないです。
XPCOMの実装のラッパとしてXPCOMUtils.jsmがあります。
そんなとこかな。

10猫P(unyapi):2008/06/27(金) 10:49:17 ID:bm2..W360
えーと、なんか見てると煮詰まってる感じがバリバリするのでちょっとだけ。
構造的スパゲッティ問題や速度は現状無視すべきかと思います。
車輪の再発明をしている時間はないかと思いますので。
「Fx3で機能的問題なく動き、nightlyから脱却」が最優先かと。

2chのスレPart16で>>823が言ってるのが正解と思います。
Fx3対応と機能追加or構造変更を同時に考えちゃ出るものも出ませんよw
本来SQLite対応やnsIBbs2chServiceの廃止なんて、Fx3には直接関係ない。
ぶっちゃけ0.4.11がそのままFx3対応になるならそれでもいい。

JS-XPCOMやJS-modulesをC++化とかも現状必要ないでしょう。
共同開発体制を敷きたいのであれば敷居は低いほうがいいですから。

b2rでもmoz2chでもないものを作りたいならこの限りではありませんが。
一般ユーザが逃げるのは早いので、b2rとして使われていることがモチベーションであるなら、nightlyの枠を抜け出すのが最優先かと思います。
てか、自分がそうやってモチベーション維持してるものでw
できる人ほど「望ましい姿」を追求しすぎちゃうんですよねー。
自分はダメ人間なんでちょこちょこいじってとっとと出しちゃいますw

11 ◆vrSd0N5azM:2008/06/27(金) 20:14:15 ID:hLSTDLYc0
nightlyはnightlyなのです。整理しなきゃバグ修正もうまくいかんのです。
それでその整理にあたって将来(機能追加など)を考える必要があるのです。この辺はUMLの思想です。
それと3.0への対応急ぐならあなたの言うように0.4.11からbranch切ればおkですが、色々と厄介なのでそれをする気はありません。やりたい人はお願いしますということで。


新着レスの表示


名前: E-mail(省略可)

※書き込む際の注意事項はこちら

※画像アップローダーはこちら

(画像を表示できるのは「画像リンクのサムネイル表示」がオンの掲示板に限ります)

掲示板管理者へ連絡 無料レンタル掲示板