プログラミング言語にこだわると、なぜか「できる人」になったと錯覚できる
コメント
注目のコメント
こだわり持って極めるのは大事。
いろんな言語に浮気してるといつまで経ってもプロフェッショナルを誇れなくなる。俺みたいにw
言語によって向き不向きもあるから仕方ない。
少ないコードでも動かせる言語、それなりにコード量は必要だけど、なんでもできる言語。
色々ありますよね。今は言語としてphpやjsやSQLにshellコマンドがメインな私ですが、最初はjavaの技術者として始めました。(java1.2〜1.42の頃)
当時はオブジェクト指向とは何ぞや?オブジェクトを実現する為にはどうあるべきか?その為に言語はこうあるべきだ、みたいな設計思想がとても盛んに議論されていて、その辺りフォーラムや学習から影響を受けた、「〇〇の設計思想であるからこうあるべき」みたいな考え方は、今でも個人的に役に立っていると思っています。※特にjavaの人はそういうの拘るタイプ多いですが。
勿論、jsにはjsの、phpにはphpの、c系にはc系の、それぞれが発展してきた歴史と背景があり、何を実現する為にそうなっているのか、という部分は、どの言語にもそれその言語設計思想として存在します。
javaに何故GOTO文が無いのか、何故増長なgetterやsetterを書くのか。C♯は何故省略表記があるのか、jsがオブジェクト指向を取り入れたのは何故か。何故明示的に型宣言が必要であったり、そうでなかったりする言語があるのか。jsの関数の引数に何でも突っ込めるのは何故か。等々。
どれもその時のそれぞれの言語の理由があるわけです。むしろ理由がなく実装されている言語仕様はあり得ない。
そういった言語のそれぞれの特徴を紐解きながら言語に触れる事が、これ、案外楽しいのです。
それぞれの言語の持つ設計思想や設計方針は、そのままコーディング方式や実装のポリシーに直結します。
そういうロジックを書く人をみると、この人その道のプロだな、と。尊敬します。
好き嫌いはあっても、どの言語が優れている劣っているではなく、それぞれの言語仕様の設計の背景。
これが大切。
そしてそこを理解する事がプログラム言語の面白さでもあると思います。
プログラム言語は実行環境と、その言語の歴史と設計の背景も含めて味わい深い。
蛇足ですが、経験もあり言語への造詣も深い方が書いている筈の参考書籍のソースコードが、いまいち美しくなかったり、ある程度大雑把なコードになっていたり、言語仕様に反していたりする事が多々あるのは、あれ、紙面のスペースの都合です。そういう事は多々あるようです。