プログラム言語にせよ、自然言語にせよ、言語の目的は「伝える」ことであろう。ただ言葉を投げるだけではなく、受け取り手が居て、それを受容/共感/無視/拒絶を経て関係が始まる。
この辺の社会学的?なところは余談。
日本語は細やかな表現ができる一方、論理性に欠けるといわれる。一方、英語などは論理的な表現に向くといわれる。これは日本語は句読点はあるものの文字を切れ目なく綴ることに対し、英語は単語単位で連ねていくため、切れ目が分かりやすいということもあるのだろう。IT関連では英語の文献にあたることもときどきあるが、論理的であるがためにずいぶんとラクに解釈させてもらっている気がする。
これも余談。
さて。
昨今、日本語が乱れていると指摘されている。確かに外国人からすれば「?」と思える表現は至る所に見受けられる。ただ、気になっているのは「日本語の表現の細やかさが失われつつある」ように思える。
例えば、「やばい」という言葉。仕事場の若い子が食事の際に使っていたが意味が分からなかった。「産地偽装されている食材では」という疑いなのか、「放射性物質大丈夫か?」という懸念なのか、「皿が欠けてて危ない」という意味なのか。結局は「おいしい」という意味だったらしいが、まったく通じない。言葉でのコミュニケーションではなく、その場の雰囲気、いわゆる「場の空気」がなければ伝わらないレベルの言葉になってしまっている。
コンピュータ言語も「コンピュータに指示する」ための言語であるが、最近のプログラマのプログラムが読みにくいケースが多い。トラブル時にチェックすることがあるのだが、理解に苦しむケースが多い。
論理表現も多いので数学的センスもある程度は必要ではあるが、その基礎すらできていないために冗長表現になっているケース。業務上の知識が不足しているがために陥っている奇妙なロジックがあるケース。それ以前に、後々読みやすくしておこうという工夫が一切されていないケースが結構ある。
例えばVBAの場合でも、Cell("A1") という表現と Cell(1,1) という表現を混在させるケースや、セルの場所を取得するのに絶対位置と相対位置を使っていても、絶対位置用の変数と相対位置用の変数とでどちらがどちら用の変数かわかりにくいケースがあり、その変数の取り回しによってバグを潜在していているケースもあった。
プログラムの記述も
・わかりやすく
・シンプルに
・読みやすく
というような基本的なところが意外と実践されていない。VBAではこれは致命的なのではないかと考えている。
裏を返せばVBAでも他の言語でも、ちゃんとした情報がないのではないか?そういえばJavaはそのあたりしっかりしていたように思う。が、他のオブジェクト指向言語ではダメダメなのか?と考えていたが、要は「Javaで学んでからその言語に移行したわけではないから」だろうと思う。VBAならなおさらだ。こちらで整備が必要な部分かもしれない。
この辺の社会学的?なところは余談。
日本語は細やかな表現ができる一方、論理性に欠けるといわれる。一方、英語などは論理的な表現に向くといわれる。これは日本語は句読点はあるものの文字を切れ目なく綴ることに対し、英語は単語単位で連ねていくため、切れ目が分かりやすいということもあるのだろう。IT関連では英語の文献にあたることもときどきあるが、論理的であるがためにずいぶんとラクに解釈させてもらっている気がする。
これも余談。
さて。
昨今、日本語が乱れていると指摘されている。確かに外国人からすれば「?」と思える表現は至る所に見受けられる。ただ、気になっているのは「日本語の表現の細やかさが失われつつある」ように思える。
例えば、「やばい」という言葉。仕事場の若い子が食事の際に使っていたが意味が分からなかった。「産地偽装されている食材では」という疑いなのか、「放射性物質大丈夫か?」という懸念なのか、「皿が欠けてて危ない」という意味なのか。結局は「おいしい」という意味だったらしいが、まったく通じない。言葉でのコミュニケーションではなく、その場の雰囲気、いわゆる「場の空気」がなければ伝わらないレベルの言葉になってしまっている。
コンピュータ言語も「コンピュータに指示する」ための言語であるが、最近のプログラマのプログラムが読みにくいケースが多い。トラブル時にチェックすることがあるのだが、理解に苦しむケースが多い。
論理表現も多いので数学的センスもある程度は必要ではあるが、その基礎すらできていないために冗長表現になっているケース。業務上の知識が不足しているがために陥っている奇妙なロジックがあるケース。それ以前に、後々読みやすくしておこうという工夫が一切されていないケースが結構ある。
例えばVBAの場合でも、Cell("A1") という表現と Cell(1,1) という表現を混在させるケースや、セルの場所を取得するのに絶対位置と相対位置を使っていても、絶対位置用の変数と相対位置用の変数とでどちらがどちら用の変数かわかりにくいケースがあり、その変数の取り回しによってバグを潜在していているケースもあった。
プログラムの記述も
・わかりやすく
・シンプルに
・読みやすく
というような基本的なところが意外と実践されていない。VBAではこれは致命的なのではないかと考えている。
裏を返せばVBAでも他の言語でも、ちゃんとした情報がないのではないか?そういえばJavaはそのあたりしっかりしていたように思う。が、他のオブジェクト指向言語ではダメダメなのか?と考えていたが、要は「Javaで学んでからその言語に移行したわけではないから」だろうと思う。VBAならなおさらだ。こちらで整備が必要な部分かもしれない。