2009年3月3日火曜日

似たようなサイトが発見された

このエントリーをブックマークに追加 このエントリーを含むはてなブックマーク
http://image.backgammonbase.com/mobileを半年前くらいから運用しているが、http://www.backgammonaustralia.org/gabbi.phpが機能的にかなり近い。

Technical informationから抜粋。

Technical information

Under the hood of GABBI are 2250 lines of php code and 400 lines of conditional html combined with 170 graphical images totalling 1Mb of data. GABBI has been my first php project — I have learned php from a book and from net resources. These help pages are also my first attempt to use CSS as a replacement for the table and javascript driven web pages I have developed in the past. PHP is a server-side scripting language which is powerful, easy to learn and is especially suited to interactive web sites. It's also quite good at manipulating graphics although there are some areas that I still struggle with in this regard.

Over the coming months I will develop this section of the GABBI Help pages further, once I get feedback from this, the first official release.

December 2008 - version 1.01 includes

* Support for combined GNUBg Position ID and Match ID (now known as GNUBg ID) added.
* Tested with Safari and Konqueror browsers.
* Changed Crawford rule behaviour to only require one step instead of two.

似ているところ

  • 1枚の絵を返す。

  • 複数のデザインをサポートしている。


向こうが優れているところ。

  • ドキュメント

  • ボードのデザインが美しい(僕には無理だ)

  • 洗練されたUI


こちらが優れているところ。

  • URLだけでポジションが決まり、サーバで何も覚える必要が無い。



実装規模。もっとも向こうはこれだけを目的にしていて、こちらは汎用的にアプリを作れるように書いて単純な比較にならないし、向こうの行数にtestが含まれているか不明だ。

bglibで依存している部分。全体で7709行、test抜きで2705行。デザインの自由度が違うのでなんともいえないが(こちらがデザインの自由度を生かせていないのが痛い)

26 41 337 ./model/model.py
73 199 1340 ./model/util.py
87 150 2717 ./model/util_test.py
48 195 1134 ./model/constants.py
294 818 8977 ./model/board.py
9 18 137 ./model/__init__.py
287 707 12429 ./model/board_test.py
62 156 1864 ./image/draw_test.py
329 589 7913 ./image/base_test.py
284 808 10221 ./image/resource/safari/test.py
27 68 686 ./image/resource/minimal.py
27 68 689 ./image/resource/kotobuki.py
362 1132 14237 ./image/resource/kotobuki_test.py
26 68 682 ./image/resource/flower.py
27 68 683 ./image/resource/safari.py
362 1132 14231 ./image/resource/nature_test.py
28 68 684 ./image/resource/matrix.py
26 68 688 ./image/resource/deutsche.py
362 1132 14231 ./image/resource/safari_test.py
362 1132 14237 ./image/resource/deutsche_test.py
284 808 10221 ./image/resource/matrix/test.py
24 34 369 ./image/resource/convert.py
284 808 10224 ./image/resource/minimal/test.py
362 1132 14234 ./image/resource/minimal_test.py
26 68 676 ./image/resource/neon.py
362 1132 14231 ./image/resource/matrix_test.py
362 1132 14231 ./image/resource/flower_test.py
362 1132 14225 ./image/resource/neon_test.py
6 18 134 ./image/resource/__init__.py
26 68 682 ./image/resource/nature.py
11 24 214 ./image/theme.py
944 2597 30857 ./image/base.py
94 269 2546 ./image/draw.py
279 767 9791 ./image/testwriter.py
121 383 3227 ./image/PIL.py
223 582 5276 ./image/css.py
210 560 6682 ./image/wxpython.py
212 559 7151 ./image/css_test.py
6 18 134 ./image/__init__.py
127 378 3454 ./image/wx2.py
8 18 136 ./encoding/__init__.py
268 735 6771 ./encoding/gnubgid.py

web applicationの部分。

355 1134 11811 ./imageserver/gnubgvalidator.py
22 113 846 ./imageserver/tests/test_model.py
184 548 8229 ./imageserver/tests/test_controllers.py
0 0 0 ./imageserver/tests/__init__.py
87 239 2664 ./imageserver/model.py
53 173 1665 ./imageserver/commands.py
0 0 0 ./imageserver/config/__init__.py
10 42 311 ./imageserver/json.py
275 713 10816 ./imageserver/controllers.py
0 0 0 ./imageserver/templates/__init__.py
3 8 85 ./imageserver/pkg_revision.py
0 0 0 ./imageserver/__init__.py
18 65 475 ./imageserver/release.py


template関係、login, welcomeは使っていないので、実質100行。向こうは400 lines of conditional htmlだが、ajaxでpositionを変更できるようになっているのでなんとも。

35 80 1420 ./templates/master.kid
33 101 1323 ./templates/form.kid
32 93 1285 ./templates/mobile.kid
47 188 2609 ./templates/welcome.kid
114 191 3029 ./templates/login.kid
261 653 9666 total

0 件のコメント: