プログラミングのうまい下手は
■ このスレッドは過去ログ倉庫に格納されています
0001VB好きの初心者
NGNGどんな言語を使うかではなく、
1アイデア
2操作性
3アルゴリズム
だと思いますが実際のところどうでしょう。
0002名無しさんi486
NGNG0003バッカーです
NGNG0004名無しさん@お腹いっぱい。
NGNG「VB好き」に言われてもナァ…
0005名無しさん@お腹いっぱい。
NGNG>3アルゴリズム
そのアルゴリズムを詰めていくと言語の選択も
重要になってくるんだよね。
0006名無しさん@お腹いっぱい。
NGNGプログラムのうまい下手というのは、言語やOSや開発環境を含めた
使いこなしのことではないだろうか?
0007名無しさん@お腹いっぱい。
NGNGしろ、新しいものを生み出すのには、分析あるのみ、と。
知らないアルゴリズムなら調べればいいけど、どにもないアルゴリズムは
自分で生み出すしかないし。
0008名無しさん@お腹いっぱい。
NGNG「メンテナンスのしやすいコードを書けるかどうか」
だと思うなあ。
0009名無しさん@お腹いっぱい。
NGNG「よいプログラマになるものは、最初の2、3年でよいプログラマになる」
つまり才能。
具体的にはたぶん、バランス感覚とか。あと、物事の裏に回りこむ
能力みたいなもの。正面突破するパワーは鍛えられるけど、こういう
ものは鍛えられない。
0010名無しさん@お腹いっぱい。
NGNGなかなかよいことをいう。。さすがに苦労してますな。
ちなみにゲイツがどこで述べたのだろうか
0011名無しさん@お腹いっぱい。
NGNGそれって、いいプログラムとは何かで、
プログラミングが上手い下手じゃないんじゃない?
ついでに言うとプログラムを見てプログラミングが上手いかどうかなんてわからん。
たぶんVBが否定されっぱなしで悲しいいんだろうけど、
VB製のアプリはWIN標準のインターフェイスを知らないのがほとんど、
MFCを覚えればいろいろ解かると思う。
0012名無しさん@お腹いっぱい。
NGNG分析、だけじゃなくて整理し、構成し、そして
応用ができるようになるんだと思う。
アイディア・センス・技術はその結果後から付いて来る
ものかもね。プログラム以外の予備知識も重要だなー。
#「VBではせっかくのアイデアが活かせない」っての、あると思うよ。
0013名無しさん@お腹いっぱい。
NGNG良いプログラムの基準が解らないなぁ。
パフォーマンス?
コストパフォーマンス?
メンテのしやすさ?
自己満足?
0014名無しさん@お腹いっぱい。
NGNGVBでできないことなんかそうはないよ。
VBが悪いんじゃない。VBでそういうアプリを作るやつが悪いのだ。
#VB製でなくてもひどいのあるけどな‥
0015名無しさん@お腹いっぱい。
NGNG0016名無しさん@お腹いっぱい。
NGNGそうやって会話して、みんな厨房を卒業するんだから
大人はおとなしく見守ってヤレ
0017名無しさん@お腹いっぱい。
NGNGやっぱり、細かい設計はプログラミングに入るんでしょうか?
0018名無しさん@お腹いっぱい。
NGNG0019。>
NGNGバグの発生率と関係がありそうな。
汚いけどバグフリーなコードと
綺麗だけどばぐだらけなコードとか・・・
うーん、眠たくなってきた。
0020エロリ・ザ・男爵
NGNG現場の状況によっても変わるよね。
俺は後者だとは思うけど。
0021ねこま
NGNGプログラミングがうまい人にしか理解できないと思います.
0022。>20
NGNGでも、これって、バグが未発見であったり、症状として現れないだけで"無い"わけじゃない。
そうすると、汚いコードだと、いざバグを発見した時点で、原因追及が難しかったり、
バグをつぶせなかったり、最悪無関係な処理をよりおかしくしてしまったりし兼ねないよね。
保守性のよいきれいなプログラムが上手なプログラムなんだろうな。
しかし、それでバグだらけだと、うーん、デバッグが足りないんだろうなぁ。
0023名無しさん@お腹いっぱい。
NGNGのほうに大きく依存してそうなので反対。
へたくそでもいつも同じ事しか書かなくてバグが出ない人もいる。
(ある意味自分を知ってて有能とも言える)
全く新規な(といっても今時もう無いかも)ロジックを
書いてもらって比較したいね。
もしくは、仕様変更にたいする耐性かな。
メンテしてるときに書き換えるところが少ないほど
「うまいなあ」と思う。
0024名無しさん@お腹いっぱい。
NGNG要は品質高いソースを短時間で作れる人がうまい。
あと、汚いコードを、なぜかいとも簡単に保守出来る人はえらい。
0025名無しさん@お腹いっぱい。
NGNG0026名無しさん@お腹いっぱい。
NGNGだめなんだよね...
0027名無しさん@お腹いっぱい。
NGNG0028名無しさん@お腹いっぱい。
NGNG2操作性・・・画面を何枚か開くとメモリエラー、インタープリタ&ActiveX劇遅VB
3アルゴリズム・・・ポインタも派生も出来ない、エラー処理古いVB
0029名無しさん@お腹いっぱい。
NGNG・みんなが見やすい
・保守性がある
コードを書く、ということは、大事だと思います。
しかし、私、プログラミング能力という意味では、
いきなりエディタに向かって書き始め、どんどんコードが巨大になっても、
ちっとも破綻しない。
という人が、才能のある人(凡人が「方法」を勉強しても辿り着けない境地に居る人)
ではないかと思います。こうゆうひと、たまに居るよね。
0030名無しさん@お腹いっぱい。
NGNG実は、時々ひそかに大幅に書き直してたりして。(これは凡人?)
0031名無しさん@お腹いっぱい。
NGNGへたくそでもいつも同じ事しか書かなくてバグが出ない人もいる。
(ある意味自分を知ってて有能とも言える)
おお、枯れてない方法は絶対に使わない、という、揺るぎ無い意志!!
私は、これを実践できる人こそプロだ、と思っとります。
やったことないことはやらない、という考えの人を馬鹿にしているのではなく、
本気でそう思っています。
23氏の発言は、私の良心に、深く深く響くお言葉でごさいます。
私は、お客様のための大切なプロジェクトなのに、いつも実験君になってしまい、バグを出してしまいます。
これでは、プロではありませんね(プロとかゆう以前に性質の問題ですね)。
でも、この癖は絶対に直らないと思います。
鬱だ氏のう...
0032名無しさん@お腹いっぱい。
NGNG>・保守性がある
これって言語に依存だよね。例えば、アセンブラやVBでは×。
0033名無しさん@お腹いっぱい。
NGNGやっぱ、クラスにしといて差分コーディングするしかないね。派生が出来ないVBは×。
0034名無しさん@お腹いっぱい。
NGNG0035厨房自覚あり
NGNG基底クラスの変更で上に影響があるような変更だとしたら、
誰かがお馬鹿をやってるはずってことじゃないですか?
インタフェイスの変更しないですむようにそのクラスを作って
ないってことでしょ?いや、現実には難しいのかな?
0036名無しさん@お腹いっぱい。
NGNGそうなんよ…なんでかね…
0037名無しさん@お腹いっぱい。
NGNG派生ができるVB7だったらOKなんか?
http://www.microsoft.com/japan/developer/vstudio/nextgen/technology/language.asp
0038名無しさん@お腹いっぱい。
NGNGVBは、派生云々以前に環境汚すの何とかして欲しい。
0040名無しさん@お腹いっぱい。
NGNGそれってVBじゃなくてMS全般に言えることじゃ、、、
0041>40
NGNG0042>41
NGNGランタイムのSP違いとかそんなのはユーザ側の問題だと思うよ。
0043名無しさん@お腹いっぱい。
NGNGそれは英語。
英語も出来ないやつの書いたプログラムなんて
見る気もしませんって感じ。
変数、関数名のスペル間違いの多い奴は間違いなくヘボ。
0044名無しさん@お腹いっぱい。
NGNG話の流れからいくと、基底クラスは枯れてるんじゃないのか?
仮に大幅な変更があったとしても、いっそのこと既に派生したクラスは不問とした上で、
基底クラスから新たなクラスを導出し、その上で新規のクラスはそこから導出するように
するってのはどうよ?
ま、それができない状況なんていくらでもあるだろうけどさ。
0045名無しさん@お腹いっぱい。
NGNG1、>汚いけどバグフリーなコードと
2、>綺麗だけどばぐだらけなコードとか・・・
追加で
3、綺麗でバグの少ないコード。
プログラムの品質の話になるとよくこの両者が比較されるけど、
1は、下手糞が作った完成品で
2は、未完成なプログラムでしょ。
バグだらけで綺麗なコードって事は、まだなんにも出来ていなから
これからデバックして行けば、1になるか3になるか解からないじゃない。
もしプログラマーが、綺麗に書けたけどバグバグしてる。って主張するなら
デバックさせれば良いと思う。あっという間に1になるから。
完成した段階で、綺麗でバグの少ないコードを早く作れるのがプログラミングが
上手いといえるんじゃないかな?
そーゆうプログラムってチューニングもしやすいし。
0046名無しさん@お腹いっぱい。
NGNGAの部分は非常にうまくかけた。Bの部分はまだきれいにまとまらない
のでもう少し手直しします。というパターンによく出会う。
で、一生懸命Bをいじくり回して四苦八苦しているのだが、この場合えてして
Bの部分がうまくまとまらないのはAに原因があることが多い。
さらにAとBの担当者が別だと別の問題が絡んできて…
日常に埋没している中、ふと全体設計が大事だなっと思うのはこんなとき。
0047名無しさん@お腹いっぱい。
NGNG004846
NGNGうまいプログラマだと思う。(もちろんA+Bを書き直すのが常に正しいわけではない)
0049名無しさん@お腹いっぱい。
NGNG005046
NGNG0051名無しさん@電波君
NGNGそこらの初心者用のプログラミング参考書見れば腐るほど載ってるよ。
プロの腕の見せ所はそれを(宇宙に存在する原子の数)倍ほど複雑なプログラムでも実現してみせるとこでしょう。
ぼくにとってうまいプログラミングってのはインターフェース部分がしっかり作成されていて、オブジェクト単位で独立してるようなコードがかけるということ。
バグが多い少ないなんて議論は不毛。将来バグが多くなるか少なくなっていくかはこの一点によると個が多いと思う今日この頃。
005246
NGNG0053名無しさん@お腹いっぱい。
NGNGもっと名に恥じないことを言うように。
0054名無しさん@お腹いっぱい。
NGNGそれが難しいんだよね。段階的に詳細なインタフェースを
手間かけずに楽にかつ安全に定義できる、インタフェース言語が
あればいいのに。
0055名無しさん@お腹いっぱい。
NGNG0056名無しさん@お腹いっぱい。
NGNGint main(int argv@`char* argc)
{
/* 旅に出ます。
ごめんなさい。
ごめんなさい。
ごめんなさい。
*/
return 0;
}
0057名無しさん@お腹いっぱい。
NGNG天然っぽくてステキ(はあと
0058名無しさん@お腹いっぱい。
NGNGう〜む。せいぜい、10〜100倍と思うんだが。
0059日産ファン
NGNG特殊なテクニックを使わずに、
短いコードをかけるやつですね。
言語が、OSが なんて言っている連中にかぎって
まともなコードがかけないものですよ
0060名無しさん@お腹いっぱい。
NGNG上手なコードをかけるやつですね。
0061名無しさん@お腹いっぱい。
NGNG複雑さの数え方によるんじゃないか。2^(コードのバイト数)とか。
0062名無しさん
NGNGさくらんぼの枝を舌で結べるかどうかで分かります。
0063>
NGNG>短いコードをかけるやつですね。
だから、派生が出来ないVBは×。
006463
NGNG毎度→ ttp://www5.airnet.ne.jp/init/vb/level1/level1001.html
0065日産ファン
NGNG喧嘩を売られたのかな?(笑)
派生が使えないとまともなプログラムが組めないのなら
プログラマーを辞めた方がいいんじゃない?
って 思うぐらいのレスですね
プログラムの上手いやつはそんなものを使わなくても
上手いコードを書くものですよ。
0066名無しさん@お腹いっぱい。
NGNGごめん本当に天然だった。
こんな僕は上手いプログラマーになれるでしょうか?
0067名無しさん@お腹いっぱい。
NGNG派生を否定する方がプログラマ辞めるべきだ。
0068日産ファン
NGNG別に否定したつもりはないんですけど
ただ 使えない環境ってのも存在するんですよ
使えないから プログラムできませんでは、
駄目だと思うのですが、どうでしょうか?
そのなかでも ベストのコードを書ける人は
いるって言いたかったのです。
0069名無しさん@お腹いっぱい。
NGNG0070>68
NGNG開発環境が無いなら、それさえも作るのがシステム開発。
それを知らないならプログラマ辞めるべき。
後、Cですらオブジェクト指向言語になって、実用化されて相当経つ。
0071よこ
NGNG本末顛倒じゃないか?
なんで「オブジェクト指向言語」にするかとゆーと
保守性とか開発コストを下げるためでしょ
Cで足りてる実装に、無理してC++にする必要はない
と思うぞ
0072名無しさん@お腹いっぱい。
NGNG足りてないから言語が開発されている。
例えば、SUNが「C++の簡易インタープリタ言語 for 組み込みシステム」として開発したのがJava。
(現在のJavaは嫌い)
現状に甘んじてしまうのは、「腐った言語ユーザ」に多い。(根拠は無い。経験則)
0073日産ファン
NGNG>それを知らないならプログラマ辞めるべき。
う〜ん プログラムを上手に書くかってのが
お題だったのに、なんで こんな方向に行くのだろうか?
俺の方が頭おかしいのかな?
悩んできます (笑)
別に否定したわけでもないのに 否定したかのように受け止められて
う〜ん
0074>73
NGNG0075名無しさん@お腹いっぱい。
NGNGいや、足りてると思ったらC使っていればよいだけで、
足りない人がC++を使えばよい、て話じゃないのか?>>71
そんなに無下に否定しなくても。
あと「開発コスト」というの政治的問題も絡んでしまうので
開発効率としておくのが良いかと存じます。
0076名無しさん@お腹いっぱい。
NGNGゲームとか研究的な所以外は、アイデアはほとんどいらない。
ソフト開発は本人達が思ってるほど「クリエイティブ」では無かったりする。
実は。
0077>76
NGNG0078>69
NGNG0079名無しさん@お腹いっぱい。
NGNGそれに、いまどきソフト開発が「クリエイティブ」だって思ってる
やつって、そんなにいるのか?
0080名無しさん@お腹いっぱい。
NGNG0081名無しさん@お腹いっぱい。
NGNG0082名無しさん@お腹いっぱい。
NGNG0083名無しさん@お腹いっぱい。
NGNG2行動力
3センス
0084名無しさん@お腹いっぱい。
NGNG力技より多少マシな考え。
0085名無しさん@お腹いっぱい。
NGNG発見的な手法(アイデア)に頼ったプログラム大半は、
力技のプログラムにかないませんでしたとさ。
おしまい。
0086>85
NGNG0087名無しさん@お腹いっぱい。
NGNG「大半」ってのが微妙だな。
くだらねーアイデアより力技、それより良く練ったアイデア、っていうようにも思えるし、
めったに出ない良いアイデアより、確実に結果を出せる力技、っていうふうにも…
0088名無しさん@お腹いっぱい。
NGNG>>中途半端な力技
かな?
0089名無しさん@お腹いっぱい。
NGNG某プログラム系?コンテスト?
プログラムっぽい何かが
琵琶湖の上でも飛んだの?
0090>89
NGNGあ〜腹いて〜
0092>85
NGNG0093名無しさん@お腹いっぱい。
NGNGアメリカの昔のチェスプログラムのコンテスト(大会)の話しです。
0094名無しさん@お腹いっぱい。
NGNGアイデアがどうしたこうしたなんて学生レベルだぜ?
0097名無しさん || die
NGNGコピー&ペーストでプログラミングですか?
0098名無しさん@お腹いっぱい。
NGNGもちろん!
プログラミングかどうかについてだけ考え
質についてはここでは言及しない。
0099名無しさん@お腹いっぱい。
NGNG0100名無しさん@お腹いっぱい。
NGNGプログラムは現実を抽象化してる訳だから
そういう所の視点とかでセンスが問われるって事はない?
0101名無しさん@お腹いっぱい。
NGNG0102名無しさん@お腹いっぱい。
NGNGあんたは今後プログラムするな。
ソースコピペはOOPでは犯罪扱い。
0103名無しさん@お腹いっぱい。
NGNG考えるかで変わってくると思うが。
「汎用性」やら「ポータビリティ」やらを求めるとは、その場限りの話で言えば
余分な工数を必要とする訳で。
例えばそのプログラムが「どの程度使い捨てでいいか」を判断するのも、一つの
「センス」だろう。
0104>102
NGNG俺のまわりでOOPとか言ってるやつって、まともな
クラスひとつ書けないやつばかりなんだわ。まあ
利用するのは、上手なんだけど。。。逆に、すば
らしいクラス書け、何でも出来る人は、OOPなんて
気にしてないよ。OOP、OOPってうるさいやつは、
他人の作ったものを利用することには長けているよ
うな気がするけど、一流のやつは見たことないもの。
口だけのやつが多すぎる。。。あんたもそうなの(笑)
0105>104
NGNG分ける率は(2:8)くらいかな。
その、クラス設計してるとか言ってる人のさらに(2:8)は 参考書コピペ型ね。
だから君の言う事も一面正しいと思うよ。 でも残る4%くらいは俺ら下々には
想像出来ないような発想力と行動力を持ってるみたいね。
ただ、人間として一流かどうかは別かもね。それはさらに(2:8)だと思うよ。
という事で、とりあえず尊大なひとは素直に尊敬する所から入る事にしてるけどね
そういう付き合い方の方が楽だからさ。
でも、正直、あたりは少ないけどさ。
まあ平凡な才能者の世渡りの知恵って奴かな
0106名無しさん || die
NGNGちょっと多く見積もりすぎじゃないかな(笑
0107名無しさん@お腹いっぱい。
NGNGクラスツリー構造の変更も許してもらえないけど。
同じクラスの別関数からコピペするくらいなら
privateの関数に切り出して共有してくれ。
機能の似通ったクラスいっぱい作るのなら、インタフェイスだけ
切り出して抽象基底クラス作って、それ継承していとこクラス
にしてくれ。共通の関数は抽象クラスにprotected(クラス外から
よびだすんならpublic)関数と言うことにして移動させといてくれ。
それで大抵のコピペはなくなるっしょ。
■ このスレッドは過去ログ倉庫に格納されています