回答:
私の理解では、冗長言語は読みやすく、理解しやすく、簡潔な言語は簡潔で簡潔ですが、読むのはより困難です。
これは誤りです。詳細とは、多くの記号を意味します。簡潔は、シンボルが少ないことを意味します。
これは読みやすさや理解のしやすさとは関係ありません。
冗長なCOBOLが読みやすいと感じる人もいれば、非常に多くのシンボルがほとんど必要ないために混乱を招く人もいます。
一部の人々は、プログラムが非常に短いため、簡潔なI / J / KおよびAPLが読みやすいと感じています。他の人は、記号があいまいなので読みにくいと感じます。
Terse / Verboseは、読みやすい、または理解しやすいとは関係ありません。
定義で考慮すべき他のものがありますか?
いいえ。簡潔で詳細な定義は問題ありません。
重要なのは、これらの定義が「読みやすく、理解しやすい」とは何の関係もないことです
今日の一般的なプログラミング言語の多くは冗長であるようです。
本当に?
プログラミング言語が他の言語よりも冗長/簡潔であるかどうかをどのように判断しますか?
トークンを数えて何かを成し遂げてください。
Add 2 TO A GIVING B.
7トークン
b = a + 2;
6トークン
プログラミング言語が他の言語よりも冗長/簡潔であるかどうかをどのように判断しますか?
同等または類似の言語構成を比較することにより、特に同じまたは同等のタスクを1つの言語と他の言語でどのように解決できるか。
C#はJavaより冗長ですか?
Javaは一般にC#より冗長です。最も明白な違いにはデリゲートとラムダ式が含まれます。Javaでは、C#で1つのラムダ式を使用して実行できることを実現するために、個別のインターフェイスを定義、サブクラス化、およびインスタンス化する必要があります。
p.getAge()
ステートメントが含まれています。C#では、プロパティを作成しますAge
。これは、メンバー関数と同じ程度のカプセル化をもたらしますが、代わりgetAge
に記述することができp.Age
ます。
この尺度は、言語の表現力と呼ばれます。この典型的な測定基準は、同じ機能を実装するために必要なコードまたはステートメントの標準化された行を測定することです。
Wikiの一部の値-1つのステートメント/行の1つの機能を以下に実装するために必要なCコードのステートメント/行の数: