質問

そこで、使用の 説明/lp モジュールを書く最初の読み書きを使用してプログラムplt-scheme:

#lang scribble/lp
(require scribble/lp)

<<lp_scheme.ss>>

@chunk[<squarefunction>
        (define (f x)
         (* x x))]

なります。そして今、私のようなぜいただけ使用しない無地のコメントではなく、読み書きプを構築します.他の意見も歓迎いたします。あ、私も全クリアできただ一人あたりの露光/exp.とがより直感的な説明の違いを認コードとコードの記述を読み書きプを構築します.

役に立ちましたか?

解決

(私としましょうDonald Knuthの定義の識プログラミング)

の重要な違いの一つで 配列.

書面で通常の申請には制限があり、す表現となる。

例:

  • すべてのコードは、特定のクラスに対してそれを実現する一つの場所
    (または非常に少数の場所などC#の一部の授業は休講)
  • すべてのコードのための一つの方法が与えられるきではないというのが正しい順序で実行
  • 依存関係の前に宣言される必要があるものに依存してい
    (宣言した変数の使用前に多くの言語不明な点やお気づきの機能を宣言して使用する前にPascal;図書館アセンブリ作成前にできたのです。純)

恐グ だから解放されたこの制限およびページに表現できる概念のいずれか注意味をなす場合に使用するを説明するプログラムを他のサインです。

その他の結果には何らかの形で表現コンセプトは一度もなり、"全ての物件火災のPropertyChangedイベントが、その 織布 全体でお申し込みが多数。

のための非常に簡単なプログラムは、教育と識字プログラムとともに作り出して初めて実現できるものとして、複雑なシステムが、この二つが開始されます。

他のヒント

主な動機は、私のためとして、そこに彼はスキームは、図は、その上でいくつかの数学を試してみて、書き込み、「設計」アーキテクチャへのすべてのプログラマの使用用紙/ノートブックは、アイデアを開発することです。プログラムの終了後、これらのノートブック/用紙のすべてが失われ、そのプログラムのサポート性がダウンしてきています。 私は私のLPツールNanoLPのウィキでこれについて書きました: http://code.google .COM / P /ナノLP /ウィキ/ AboutLPするます。

第二の動機は、ありませんので、明示的に、小さい方のバグです。しかし、これは「理論的」なものではありません、それは(私のために)経験の事実です - あなたが紙の上に「考える」しているとき、図を描く、スキームのアルゴリズム - あなたのプログラムは、より少ないバグを持っています。 LPは、他に何もこのような '紙' ではありません。

何かを描くことはありません多くの開発者、、コメントはまだありませんが、でもあります(!)、彼らは唯一のプログラムを書く...ひどい!

そしてLPは良いドキュメントを作成するのに役立ちます(ない正式な方法で - 機能の説明を、それが引数、そして何が返すだし、必ずこの関数シグネチャを持つ既知の良いですが、なぜ、そのような文書が必要な??)が、それが本当のアクションの記述で、写真で、セマンティックとREAL ACTUALドキュメントを書くのに役立ちます...

多くの動機:)と確認時には、(例えば、Doxygenの)LPを逆にのみ使用することをお勧めします - 。本当のLPを、多くの要因に依存します。

読み書きプログラミングに基づく簡易計算書:

  1. プログラマのように書きコードは、コンピュータが理解できる
  2. プログラマーを書文書を、人が理解できる
  3. 作成されている場合は別途書類られていることは言うまでもありました-同期

実際、私の経験#2を取得し、短shrift.失くしてしまった数多くのQAはん"のdocフレーバはこのコードになること;コードまたは不正確の為のdocフレーバのでしょうか?" 私が見つからない私の職場れにしても【それにしても、その尊重する。また、私の初期のプロジェクトでは、わたしたという意見のドキュメントの最新のやり取りのステークホルダーの結果、変化する条件です。この目的は十分に時間がかかると思ったが、経営の停止ゴのドキュメントでのプロジェクトです。いも未面倒な書類のプロセス、その後(ござい天!).

してコードレビューにツール、また変更コードを複数人での変化を、明確にすることにより、コメントすることができ、質問は説明できるものの、改善する。場合のコードを書いたと読み書きプログラミング技術、なかなかこの質問に答えするsuperflousでの説明が含まれます。

多くのマインドの現代のプログラミングをコードすることです。多くの評論家が、ご自身で必要説明コードを見るべきウ、コードを変更したい変数/関数名等) そのコメントが不要になった.だが、こうした大きな理論的、実践的に実現しました。だって、私が使っている図書館作成-維持されるから、その選択方法/関数名だけではない直感的です。例えば:

Set<String> statesWeCareABout = new HashSet<String>(Arrays.asList(new String[] { "one", "two", "three" }));
Set<String> statesWeFound = <some function>;
statesWeFound.retainAll(statesWeCareAbout);

まな設定<>またはHashSet<>お知らない。retainAll()との差の二つの結果、修正されたセット<>.

最後に、読み書き番通常のを可能にすえできるように説明この作品のコミュニケーションをインラインでこの曲のコードです。これによりインライン方の人間が読んで理解す。説明することができなかったたこの作品は、その構築に関する理解の説明をする。コンピュータな味;に書き込み単一の機能を1,000行のコードで問題を把握することになります。神になれば、マーケットがあることを示していを維持する。

がんの背後にある読み書きクラスです。コードの継続が必要であるとにかかわらず、バグに固定または機能を追加していきます。やればできませんの把握により、他人のその後、効率的なファッション、良品と交換いたします。がありうるか"だけ書"コード......。読み書きプログラムで読みやすくなり、理解できず使用されており、長期にわたります。

といっていいを再発明するのかないのか。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top