トップページ⇒tech
41コメント12KB

COBOLからVBに移ったんだけど

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさんNGNG
最近移ったんだけど、何か注意することある?
同じような境遇だった人の話募集。
0002デフォルトの名無しさんNGNG
ハア?ウイルスバスター?
氏ね
0003デフォルトの名無しさんNGNG
VBに移ったのが間違いだよ。ノータリン野郎。
0004デフォルトの名無しさんNGNG
マジレスっす。

えーと、取りあえずバグ出さない事。
ローカル変数理解する事。イベントドリブン理解する事。
ディレクトリ(ってゆーかWinのファイルシステム)理解
する事。COBOL&オフコンの事は忘れる事。この先ずっと
VB一本でいけるとは夢にも思わない事。
0005やる気なしNGNG
4さんに追加です。(^^;

・変数の「型」を理解すること。
・実務計算(金額等)に間違っても浮動小数点数なんか使わないこと。
 (コボラーさんはマジでやりそうだからコワイ・・・(-_-;)
0006やる気なしNGNG
更に・・・。

・コードのステップ数で仕事を評価しないこと。
0007デフォルトの名無しさんNGNG
>>5
>・実務計算(金額等)に間違っても浮動小数点数なんか使わないこと。

VBには通貨型があるから、それを使えばOKと思ってる人多いみたいだけど、
VBの場合、除算の結果は常に浮動集点数で返るので、いくら通貨型を使って
も割り算したら意味ないんだよなぁ。
0008デフォルトの名無しさんNGNG
>>7
浮動集点数 → 浮動小数点数だな。
すまんす。
0009デフォルトの名無しさんNGNG
マジレス>>1

早く業界から引退してください。
まわりの迷惑です。
0010デフォルトの名無しさんNGNG
>>7
いくらなんでも割り算したらまずい事ぐらいコボラーでもわかってる
だろー。(っていうかCOBOLでも内部演算は浮動小数点数だろうし。)
二進化十進演算ルーチンでも作れば完璧だろうけど。

勘定系では加減算しか使わないから固定小数点である通貨型
でも十分だと思ふ。

>>9
恐らくビジネス系の大半は1と同じ境遇だと思うよ。会社がVB以外の
ツールを認めてなかったり。
0011デフォルトの名無しさんNGNG
>>10
確かに割り算する機会は少ないけど、まったくないという訳では
ないので結構困る。重量計算とか容量計算とか製造業関係だと、わり
と割り算でてこないか?

あと、COBOLの場合は二進化十進演算するんじゃなかったか?
ZONE形式とかPACK形式の場合は。
0012デフォルトの名無しさんNGNG
VBに限らず、どの言語つかっても一緒のような気がするが・・・
そう言えば昔、ツールクラフトって会社がC言語向けに
BCD演算パッケージ販売してたなあ。今でもあるんだろうか?
0013デフォルトの名無しさんNGNG
>>12
ただ、C/C++とか普通の言語だと同一の型同士の割り算の場合、
結果も同一の型で返すのが普通だと思うのだが、VBの場合、
Long値同士の割り算でも結果は浮動小数点数になるという点が
ミソで、ついCなんかののりでコーディングしていると忘れてし
まうんだなぁ。
0014デフォルトの名無しさんNGNG
半分マジレスだけど、人生というものを考えるべき。
それが一番大事。
0015デフォルトの名無しさんNGNG
そうだな......。
0016やっぱり、NGNG
>>12
 消費税、源泉徴収税の計算にご用心。
001712NGNG
>>13
ああ、Cじゃどっちか一方をキャストしてやんないと
思ったとおりの結果が出てこなかったんだよね。

#include <stdio.h>
int main(void) {
int i, n, m;
double f;
n = 1;
m = 3;
f = (double)n / m;
i = (double)n / m;
printf("%d %lf", i, f);
return 0;
}

上の(double)を外すと0.33が0.00になっちゃうんだね。
Pascal(Delphi)じゃ逆に受け皿に合わされるから
div演算子を使うかRoundやTruncで切り捨てないと代入すら
出来ない。

program test;
var
i, n, m:Integer;
f: Extended;
begin
n := 1;
m := 3;
f := n / m;
i := n div m; // またはRound(n / m)
writeln(f:10:4, i:10);
end.

Cも結構暗黙的なのが多いなあ、結局その言語の特性を
十分理解した上で使えって事だなー。
0018マジレス君NGNG
SubとFunctionの使い方を覚える。
大域変数は使わないようにする。
がむばれ。
0019デフォルトの名無しさんNGNG
Option Explicit
これ書いとけ。
0020デフォルトの名無しさんNGNG
DOSコマンド覚えろ。なんでもGUIで提供されてると思うな。
0021やる気なしNGNG
>>19

> Option Explicit
> これ書いとけ。

ウチの害虫で意味わかってない奴がいましたよ。(唖然)
コーヒーでもぶっかけたろかと思ったが、机の上に日本茶しか
出てなかった・・・。(鬱
0022デフォルトの名無しさんNGNG
そんなの単に知識の問題だろ。
それを知ってるか知らないかで切れる厨房とは
一緒に仕事したくねー。

VBなんて知らない開発者だって世の中にはいるんだよ。
0023デフォルトの名無しさんNGNG
>>21
日本茶ぶっかけろ!
0024デフォルトの名無しさんNGNG
>>22
VBできますというふれこみで来てる外注が知らないのは
まずかろ。
しかし最近は促成栽培で派遣する業者多いからなー。
派遣先での再教育分は料金から差し引くのはどうよ?
002522NGNG
>>24
じゃあ日本茶を沸騰させてからぶっかけろ!
0026ネタNGNG
>>1
日経ソフトウェアと
VisualBasicマガジンは毎号購読して下さい。
それからVB-MLとPCDNに入って下さい。
0027やる気なしNGNG
>>26

禿しく同意!
それだけでも、糞プログラマから脱皮できます。

それにしても、ものを知らない、勉強が必要な人ほど勉強しないのは
なぜだろー?(鬱・・・
0028COBOL一筋18年NGNG
C++をはじめようと思うのですが
どうしたらいいですか?
0029デフォルトの名無しさんNGNG
>>28
コンパイラと入門書買ってきなさい。
00301NGNG
初心者向けの本、一通り読んでみました。
変数の型やイベントの種類が多いなーって思たです。
あとカタカナ用語。クラスとかオブジェクトとか。
変数の型なんかは、どれ使って良いのか迷います。
FunctionってのはExcelで言う関数みたいな使い方も出来るって事ですかね?

今はAccessのDB使って、色々試しています。
谷尻かおりって人の本が解りやすいので重宝。

VBの話をすると、よく荒れるみたいだけど、
汎用やオフコンにドップリ浸かってる人からすれば、現状から脱却への第一歩
としても十分魅力ある言語だと思いますが。
家でも出来るし。
0031デフォルトの名無しさんNGNG
>>30
家で出来るって
出来ない言語なんてあるか?
0032デフォルトの名無しさんNGNG
>>31
COBOLがまさにそうでしょ。フリーのがあるといっても
方言がきついので細部までオフコンと同じってわけじゃないし。
0033デフォルトの名無しさんNGNG
>>32
あまり詳しく知らないけど
http://www.thefreecountry.com/developercity/cobol.html
こんだけあればそれなりのもあると思うんだけどなぁ。
0034デフォルトの名無しさんNGNG
age
00351NGNG
なぜ、
sub 〜 end sub で
if 〜 end if  なのに
for 〜 next  で
do 〜 loop  なの?

全部 end xxx で統一したほうが分かり易いのに
0036デフォルトの名無しさんNGNG
for .. nextはブロック構文以前からあったもので
変えられないし、do .. loopはpascalを中途半端に真似たから。
それ以前はwhile .. wendを使っていた.
0037名無しおやぢNGNG
>>35

形式的なことより、アルゴリズムに関心を持つべし。
0038デフォルトの名無しさんNGNG
全部統一したければlispにしなさい>35
0039デフォルトの名無しさんNGNG
いまさらVBかよ…
0040デフォルトの名無しさんNGNG
>>39
そう、いまこそCOBOLだよな。
0041デフォルトの名無しさんNGNG
今ならVBよりASPがお勧めかも
イベントドリブンじゃないから。

用語で、覚えなきゃなのは
クラス、インスタンス、プロパティ、メソッド、イベント
New、Delete、Set

後回しでいいのは、
コレクション、インスタンシング、スレッドモデル

コードはBASモジュールには書かずに
CLSに書くようにしといたほうが良いかも。
■ このスレッドは過去ログ倉庫に格納されています