プログラミング言語と2進数

こんにちは、初めて投稿する元プログラマーのチートイです。
まあ、プログラマーといってもブランクが10年以上・・
軽く自己紹介すると大学卒業後、5年ほど社会人をしてから30歳でIT系の専門学校に入り、32歳で新卒としてシステム開発の会社に入社しました。
C言語から始め、JAVAやってましたが、ほとんど忘れています。

で、前の会社の上司や先輩がよく言ってた言葉
「言語じゃないよ。ロジックだよ。ロジック!」

これ、半分は間違っています!
言語によってできないこと、不得意なことがあるんです。

例えば、エクセルで表を作るのは簡単だがワードだと面倒くさい・・みたいな。

コンピュータは2進数で計算してますよね。JAVAもそうです。
先輩方が少数の計算が合わないとよく嘆いていたのを思い出します。

JAVAは整数の計算は問題ないのですが、0.1が2進数だと循環小数になってしまい、10回足しても1になりません。10倍して整数に直して計算するとか工夫が必要です。

自分は「あれっ、そんなことも知らないのかな?」と思いつつも、ひたすらバグチェックしてました。あんまり、出しゃばると自分の仕事が増えると教えられていたからです。

COBOLが事務処理に向いているのは10進の演算回路持っているからです。あと昔の表計算ソフト「三四郎」も10進で計算しています。

事務処理のアルゴリズムなんてだいたい決まってます。
まず、一般のプログラマーが円周率を何億桁求めるとか、そんなプログラム書く必要ありません。

はい、私は正直心の中で「何がロジックだ。言語で決まるんだよ・・オブジェクト指向とか・・云々」と思っていました。

今も私はJAVAをメインに学習しています。他の言語もやりますが、オブジェクト指向を理解するにはJAVAを知れって感じです。
と、その前にプログラマーだったら2進数を知れ!
はい、上から目線になりましたが、2進数の計算知らないプログラマーは2進数の計算で躓きますよ。
はい、もう1回「プログラムの勉強は2進数から!」

チートイでした。

タイトルとURLをコピーしました