Skype ビデオ会議のメモ

僕が付けていきます。

第三回

スピーチバルーンの配布

  • 配布方法を決めかねている ⇒ json テンプレートの形式を定めてから
    • engine の利点
      • 割と簡単に組み込める
      • 作るほうに負担 js, jsonテンプレート, 画像
    • zip で配布
      • 管理者が大変

スピーチバルーンテンプレートリストの取得

  • v05dev ではファイルツリーに反映まで実装、、、

スピーチバルーンテンプレートの削除や停止

  • 削除は考えていない
  • 噴出しの停止はあるかも でも先でよい

スピーチバルーンテンプレートのID とクラス名

  • ぺったんR の世界でユニーク

スピーチの x, y 座標

  • %指定
  • 今は css ⇒ x_ratio, y_ratio, width, height 不要?

スピーチのリッチテキスト

  • 中間言語 いろんな記法が将来的にでてくる。

  • 各スピーチバルーンテンプレートが独自に定義しそうなもの ギザギザの山の高さ、尻尾の折れ具合
  • svg ⇒ 透過png @ Imagemagic http://www.imagemagick.org/discourse-server/viewtopic.php?f=6&t=22631
  • ls_helper ライセンスデータ作りが大変、というはなし。
  • html と css のみで描画できる FF風矩形, DQ 風矩形 テキスト。DB 状。
    • DB 上は スピーチバルーンとは別になりそう。エディターでは同じ選択肢の仲間としてみせるのがよさそう。
    • 単一の div 要素でできるもの、複数の div になるもの。html 構造がさまざま。

いとっちの吹き出しまわり実装順

  • テキスト
  • 枠線のあるテキスト
  • 構造 speech_balloon > speech & balloon
  • テンプレートの書き方を yas さんに聞きながら
  • 画像を用意しておけば
  • エディターで必要なデータ

最後に

  • 次回は作業の乗り具合で
  • ネコ(ガー・♀)の紹介

第二回

  • 2 月 24 日 14:30
  • HDD 容量が足りなくなってミスって Ruby の環境を消したみたいで、実装が進まなかった、、、

開発の様子の紹介

js 言語の癖

  • JavaScriptは 1995 年生まれ。Netscape Navigator 2.0 で初めて実装され Internet Explorer 3.0 に搭載された。
  • プアな環境でも動くように設計されつつ、大規模開発にも耐える(わけないけど、実際ナントカ大規模開発されている)
  • prototype 拡張
  • 大きなライブラリではクラスを定義するコードから書き始める、地ならし StudyOfJsClass
    1. var FileClass = Class.create( /* 略 */, {
    2. getName : function(){
    3. return 'name-' + this.id;
    4. }
    5. } );
    6. var f1 = new FileClass();
    7. f1.id = 'A';
    8. var f2 = new FileClass();
    9. f2.id = 'B';
    10. if( f1.getName === f2.getName ) // 異なるインスタンス間でも公開メソッドが一致。
    11. f1.getName() // name-A でもなんだか意図した動作
    12. f2.getName() // name-B でもなんだか意図した動作

function を見てもどのインスタンスか?分からないので、this を特定できるようにする仕掛けが必要。こんな感じに。

  1. EventDispatcher.addEventListener( 'click', callback, thisObject );

ちなみに Ruby の場合

同じく動的言語。

  1. f1.getName == f2.getName // クラスが同じ場合、true
  2. f1.getName === f2.getName // 各インスタンスに振られたオブジェクトID があり、異なるインスタンスのメソッドは false。

js シングルトンパターン

* system.js 内のコードは機能毎に js シングルトンパターンで書かれている。 * 最速インターフェース研究会:JavaScriptのデザインパターン - Singleton, http://la.ma.la/blog/diary_200508141140.htm

  1. var PetaNantoka= ( function(){
  2. // 隠蔽された 値や関数 をここに書く。
  3. var hiddenVal = '秘密';
  4. function invisibleFunc(){};
  5. // PetaNantoka.welcome(); 等で同一階層(同一スコープ)からアクセス可能。
  6. return {
  7. welcome : function(){},
  8. createComic : function(){},
  9. createPanel : function(){},
  10. washoi : function(){}
  11. };
  12. })();

system.js の File の説明

myFile.name() の中身は、

  1. name : function( newName ){
  2. // 権限等の検証
  3. // サーバのデータ更新
  4. // サクセスでアイコンの再描画とか
  5. },

  • なぜサービス(サーバ)は止りデータを失うのか?
  • サーバがコアなサービスに専念し、クライアントが様々な Web API とマッシュアップして、サブなサービスを提供する。 (ことでサーバの負荷を下げサービスをつぶれにくくする)
  • 各 Web API に対して ドライバーを書き、ajax コンテンツはファイルとして蓄える。ファイルを見るためのシェルを提供する。
  • アプリケーションは、ドライバーが親となるアプリケーショングループに属し、基本的にアプリケーショングループ内でファイルを融通する。

yas さんの調査していること

  • 開発に入る前に考えること
  • 素材を取りやすく Flicker 等の API 調査。しっくりこない、使い方が難しい、ごっそりもってきても。
  • Pixiv ライセンスが統一されていない。作者がそれぞれ個別に設定しているみたい。連絡して が多い?
  • pettanR サーバ から自分の Blog へ。表示機能だけのプラグイン。js で動的に書き出す。

次回

  • Balloon まわりについて話せたらよい。

第一回

  • 2 月 11 日 14:00
  • ビデオ会議の操作確認(ビデオ、画面共有)
  • yas さんから wiki の読み方、開発の様子と開発モードの切り替え。
  • itozyun から年賀状送りました。
  • 次回打ち合わせ テクニカルな話の他に、今後は Web や マンガ文化 とかについても。