言語
いろいろとありますね。
業務でよく使うのだとC#とかJavaとかVB辺りですかね。
どれもこれもwindowsだからだろと思わなくもない。
そういう意味では地雷すぎるVB系と一応優秀な部類のJavaの違いはなんなのかと。
多分ifで見比べれば一目瞭然な気もする。
■VB---------------------
if boolean then
// 何か処理
else
// 何か処理
end if
■Javaってか一般的な言語全般---------------------
if (boolean) {
// 何か処理
}
else {
// 何か処理
}
うん、こう見比べるとthenってなんだよと思う。
で、よくよく考えるとコレSQLに似た冗長さがあるんだなぁと今更ながら思ってみたり。
簡単なことを面倒に書かなくてもいいじゃないと。
それこそコンパイラか何かでやればいいじゃないか、と。
ぶっちゃけVBは全体的にアレすぎて気持ち悪くて嫌いなんでそこまで調べようという気力すらわきませんが、コレってスコープとかどうなってるのかなというのは気になるといえば気になる。
暗示的なスコープはあるべきといえばあるべきなんだけど……ってかVBって全体的に気持ち悪くて『動くものは作れるものの言語を勉強する気になれない』言語筆頭というかなんというか。
それ言い出すとスクリプト言語が全体的にアレですけど。
まあ、良いや。
次、言語的には嫌いじゃないけど技術者的に嫌いだったりするのがC#とJava。
ちなみにVBしかできない人種をエンジニアと認めてないとかいうのはどうでも良い話ですね。
ちなみに技術者的に嫌いだとか言ってるのは、別言語のコーディングを始める前に仕様を勉強しようとする人が比較的少ない、もしくは少なく見えるところ。
Java辺りは日本のプログラマ人口で一番多い部類だろうから誤解と偏見もあるんでしょうけどね。
ただ、今の私の主戦場はObjective-Cだったりするんですが、明らかに別言語から来たなーってソースで一目で前の言語がわかるのがその上で挙げた二つだったり。
言語上使ったらダメなステートメント普通に濫用しまくってるのもマイナスポイントですね。
一言で言うと、Objective-Cでtry catchが必要な瞬間って基本的に存在しない上にそこでcatchされることがあった場合結構な確率でメモリリークするからね、と。
MRCならまだfinallyで帳尻合わせられるから良いけどARCだとアウトだからねと。
その中でもOSX(Mac向け)ならまだ良いけどiOS(iPhone/iPad)にはガベージコレクションもないしアプリがterminateされるまでリークし続けるからね、と。
あとObjective-CでNULL比較とかしても普通に想定外の動作することがあるからやめとけだとか、そもそもNULLじゃなくてnilだとか、trueじゃなくてYESでfalseじゃなくてNOだからだとか、まあいろいろと言いたいことはある。
Objective-Cのコーディング始める前にappleの開発者向け公式ドキュメント熟読してくれませんかと思うことは多々ある。
わりと特殊な言語だから本気で最低限それだけはしておいて、NYTimesの規約読んでからコーディングしてくれ本気で、と。
付け加えて言うなら先に挙げた二つが出身の人って別言語と比べるとコードが汚い人が多いんですよねという偏見。
え? VB? コードじゃなくて落書きでしょ?
なんて、散々ディスりつつもC#とJavaは結構な割合で私も使うことがあるという……あ、VBは頼まれても極力回避しますけどね。
普通に動く程度なら作れるけど金もらって仕事するクオリティで作れって言われたら遠慮したい、全力で。
まだVBScript(Legacy ASP)の方がマシ。