-
Notifications
You must be signed in to change notification settings - Fork 0
SourceCodeWithoutDocument
uupaa edited this page Jan 19, 2014
·
87 revisions
Help.js は、ソースコードとドキュメントを分離し、ドキュメントを Web 上に配置するスタイルです。
一方、従来のやり方である、JsDoc (JavaDoc) は、ソースコードにドキュメントをマークアップして埋め込むスタイルです。
個人的に「なんとかならないかな?」と思っている部分です。
ここは、各自の経験や使い方により個人差があると思います。
- JsDoc が認識しない構文があると、その部分のドキュメントを書く手段がなくなる(遅延評価や動的な変更など)
- 詳細なサンプルコードを埋め込もうとすると、ソースコードが長くなり見通しが悪化する
- 1関数が1画面に収まらないと辛い
- ドキュメントの修正でリビジョンが上がり、ノイズ(動作に無関係なログ)が増えるのは辛い
- よく出来たサンプルを考えるのはコードを書くよりも時間がかかるので、後からサンプルコードを追加したい
- API ドキュメントを自動生成しただけで「ドキュメントはある。ドキュメントを書いた」と主張する人がいて、胃が痛くなる
- テキストの他に、画像,動画で説明したい事があるが、それらの情報を利用し辛い
- ツールで自動生成する HTML と、外部に配置する HTML の二重管理になると面倒
- 場合によっては、最初から外部の HTML に一元化したほうが低コストなのでは? という疑問がある
- ツールで自動生成する HTML と、外部に配置する HTML の二重管理になると面倒
- 社内のサーバに API ドキュメントを設置されると、移動中や自宅から見れなくてやる気がでない
- ツールが生成する HTML が地味に大きく、ファイル数も多いため気軽に配布しづらい(テンプレート次第で5MBを越えるケースも)
- API ドキュメント自体に秘匿性はないはずなのに、社内じゃないと見れないのは、ちょっと意味が分からない
- Google で検索できないライブラリやフレームワークなんて誰が利用するんだろう
大別すると、
- ドキュメントの修正でリビジョンが上がるのは辛い。それを理由に修正しない事があるのも辛い
- 良いサンプルコードを誰かが書いてくれた場合に、そのコード(URL)に対してソースコード側からリンクを張れないのが辛い
- 認証がかかった場所にAPIドキュメントを設置されると辛い。どこでも見れたりググれないのは辛い
です。
- APIドキュメントを社内に隠すという考え方を根底から変えたい
- コードは守る価値がある(かもしれない)が、APIドキュメントには無い。最初から外に出すべき
- HTMLの自動生成をやめよう
- API ドキュメントやサンプルコードは、ソースコードと切り離そう
- コードにキーワードだけを埋め込んで、後から書けるもの,余計なもの,頻繁に追加/更新されるものはコードから切り離そう
- スピード感が欲しければ、ドキュメントは後から拡充しよう
- ドキュメントの見栄えの修正や、つまらないミスでリビジョンを上げるのはやめよう
- 自動生成で「とりあえず作りました」なドキュメントは要らない。最初から人の手で書いたほうが早い
- API ドキュメントやサンプルコードは、ソースコードと切り離そう
- DevTools のコンソールに URL を出力するとクリックできる特性を活かそう
- API ドキュメントは、もっと画像や動画を活用しよう。Webサービス を活用しよう
- GitHub と連携しよう。GitHub の Wiki を活用しよう。GitHub を中心にヘルプのエコシステムを構築しよう
- ネットに晒す事で人の目が増える。改善するチャンスも増える
- コードの使い方を説明するような、よくできたまとめサイトが生まれたら、Wikiからそちらにリンクを張ろう
- サンプルコードを書きやすい環境を整え、全体の質を高めよう
です。
Help.js では、
- ドキュメントをどこにホストするか
- どうやって配布するか
- 書式はどうするか
といった運用に関する部分を、github(markdown)に寄せることで、色々と解決できるのでは? と考えました。
今よりも気軽にサンプルコードを書けるような環境が整備されて行くことで、より良いドキュメントやサンプルコードが増えると良いですね。