- ベストアンサー
プログラミングでロジックを調べるのは悪い事?
先日プログラミングがなかなか上達しないと言うことに関してアドバイスをいただいたものです。アドバイス、また説教をしてくださった皆様、本当にありがとうございました。 皆さんのアドバイスのお陰でなんとか頑張れています。 しかし、最近またふと思うことがあるので、お邪魔させてい ただきます。 わからないもの、自分がやりたいことをネットなどで調べたして、それを真似する ことは悪いことですか? 回りの人たちは皆自分で考えて書いているような気がして、なんだか申し訳ない気持ちになり、 自分は調べることしか出来ないのかと考えてしまいます。 皆さんの率直な意見をお聞かせください。
- みんなの回答 (13)
- 専門家の回答
質問者が選んだベストアンサー
こんなことで悩んでいる人がいることに驚きです。 人の長所は先人の知恵を活かせることです。 まあ、猿だって鳥だって先人の真似をして文化を持っていますが。 一から全て考え出そうなんて効率の悪いことは仕事では無駄です。 趣味で、自力で理論の発見とかが好きなら話は別でしょう。 人の知恵を活かしながら、自分の知恵が生まれた時に共有したらいい話です。 もっともセンスの悪い人は調べても分からんですが。 将棋界では弟子が師匠に世話になりっぱなしですが、師匠には恩返ししません。 自分が弟子をとって弟子の面倒を見るわけです。 師匠に恩返しというと、将棋で師匠に勝つことです。 文化・文明、その中で生きていくなら、それらを継承・発展・拡大することこそ重要でしょう。
その他の回答 (12)
- zwi
- ベストアンサー率56% (730/1282)
>そうですね、やはり、読むだけでなく理解しなければいけませんよね。 >恐らく、こういうことかと理解はできてるとおもいます。 そのコピペしたコードの中核を書き換えて応用したコードが出来ているならある程度は理解できていると思います。出来ていないなら分かっているつもりかもしれません。 まんまのコピペで溢れているなら危険な兆候です。 簡単なアルゴリズムのコードなら理解した部分は、次は見ずに同じ動作するものが書けるはずです。 こういう部分を自己チェックポイントにしてみてください。 どうしても自己チェック出来ないなら、ここで実際にコードを見せてネットからの引用に問題が有るレベルなのかみなさんに確認して貰いましょう。 あとWindowsAPIの呼び出し部分とか書き換え様がないコードの部分もありますが、APIや関数リファレンスにも目を通しているなら大丈夫かなと思います。
お礼
二度も回答してくださり、ありがとうございます。 書き換えている部分は関数であれば引数の数、種類を変えたりしているのですが、これだけでは危ないですか? 申し訳ありませんが、教えていただい。
- wormhole
- ベストアンサー率28% (1626/5665)
#11の方へ >オープンソースという考え方で作成されているソフトウェアのプログラムは、基本的にコピペしてもアイデアを拝借しても基本問題ないという考え方があります。 いくらなんでも大雑把すぎです。 オープンソースとして公開されているものでも使用条件はあります。 利用できるのはその使用条件に従っている場合のみです(「使用条件はありません」というのも一種の条件ですが)。 GNU GPL BSDライセンス MITライセンス などいろいろありますので調べてみるのもいいかもしれません。
お礼
わかりました。色々調べてみます。 少し注意します。 本当にありがとうございました。
- techhouse
- ベストアンサー率39% (16/41)
プログラム見まくったり、教えてもらいまくったり、いろいろと拝借・・・ そんな私なんですが、 オープンソースという考え方で作成されているソフトウェアのプログラムは、基本的にコピペしてもアイデアを拝借しても基本問題ないという考え方があります。(ただ、その場合そのソフトウェアを販売したり公開したりする場合は、ソフトウェアの名前の頭に”GNU”という3文字をつけなければならない・・・ そんなことをリチャードストールマンが言っていたような・・・) ちょっと思い出したので、書かせて下さい。 オープンソースという考えがなぜ普及したのかなどを解説した書籍で”伽藍とバザール”というのをちょっと読んだことがあるのですが、プログラムの盗用などをほとんど許しているようなオープンソースという考えがなぜ支持されているのかという説明に、昔から大学などでプログラミングを作ったり、勉強している人間同士でのプログラムの知識の交換はあたりまえで、また、プログラミングという作業はとても膨大な仕事量があり、それを緩和するためにプログラムを書いてその作業を楽にするような共有財産みたいなもので、いちいちそれらに対価を求めるのはプログラマ的には難しいという考え方あった というようなことが書いてあった気がしますw 実際私も仕事をするようになって事務のめんどくさい入力作業をフリーソフトなどを使って処理したり、自分で作る場合もありますし、いろんな人に勧めたり、頼まれたりと、情報処理作業とかはとてもめんどくさいことが多いし、それが簡単になったりしたら私もうれしいですし、同僚の人も楽になるしうれしいことです。
- Raio77
- ベストアンサー率66% (2/3)
お邪魔します。 コンピュータ業界歴20年、元SE歴10年です(なんちゃってSEでしたけどね) 申し訳ない気持ちになる必要はありません。 じゃんじゃん真似して下さい。ただし、そこから学び取って下さい。 「どうしてこういうコードなのか」「このコマンドの意味は?」「他に違ったコードはないかもっと探そう」など 人は真似して学ぶところから成長します。 ただ、No.1さんも仰っている通り、ネットで出ているお手本はほとんど例外処理がしてありません。例外処理についてもネットに出ているでしょうから(なければ書籍で)調べてちゃんと例外処理を入れて下さい。 プログラミングは例外処理が一番大事だと言われるくらいです。 では、頑張ってください。
お礼
ご回答ありがとうございます。 そして、返信遅れてしまい、申し訳ありませんでした。 そう言っていただいたお陰で少し気が楽になった気がします。 これからももっと上手くなるために、人から学んだり、参考にしていきます。本当にありがとうございました。
- zwi
- ベストアンサー率56% (730/1282)
みなさんも書いているようにタダのコピペではなく理解して応用しているのなら可。まぁ、暗号などのコピペするしか無いコードもありますが、ライセンスには注意しましょう。 調べれるだけでもだいぶ良い方なんですけどね。 このokwave系でも丸投げ質問が後を絶たない・・・。
お礼
ご回答ありがとうございます。 そして、返信遅れてしまい、大変申し訳ありませんでした。 そうですね、やはり、読むだけでなく理解しなければいけませんよね。 恐らく、こういうことかと理解はできてるとおもいます。 もっとプログラムが書けるように頑張って行こうとおもいます。 ありがとうございました。
- AsarKingChang
- ベストアンサー率46% (3467/7474)
いい質問だ~ まず、私のスタンスとしてですが。 時として、他人がやっていることを真似するのも一つのスキルアップだと思ってます。 じゃ、何がいけないか? 「それを所有権を語るな」だけですね~ ソースに「どこどこを参考にしました」とかコメントをよく残していますよ。 業務だったりすると、それが最終的に全オーナーがやりたかったことが それ自体でわかることもあり。(サイトがまだあればですが) 場合によっては、プロテクトをはずしてみる? ってのも、スキルですね。ただし、はずすことが違法なこともあるので、 公開なんて絶対してはだめですが。 他人の、やっていることが理解できないときは、 まず似たようなことをやってみると、相手の人の、苦労したポイントが わかり、自分自信のスキルアップになると、 私は考えてますよ。 ただし、パクるのではなく、参考にするだけ!! そこが重要ですね。 今回は私の意見でした!。
お礼
ご回答ありがとうございます。 返信大変遅れました。申し訳ございません。 真似することも重要なスキルアップの一つと聞いてとてもほっとしています。 参考とパクりの境界線はなかなか難しいですが、やり過ぎない程度にしています。 本当にありがとうございました。
- IDii24
- ベストアンサー率24% (1597/6506)
素直な感想を言うと、こんなに素直な人はITでは上達しないのでは?ってことです。ITやってる人は少なからず、ずるくて、悪賢い人たちですから。
お礼
ご回答ありがとうございます。 返信遅れて申し訳ありません。 素直すぎるとかはたまに言われたりしますが、私はそうは思ったことないです。 いざとなったらかなりずるいこともする(世間で声を大にして言うことも出来ないほど)のですが、それとは別のことなのでしょうか?
- drmoreau
- ベストアンサー率41% (33/79)
天の下新しきもの無し もし私が他の人よりも遠くを見ているとしたら、それは巨人の肩の上に立っているからだ by アイザック・ニュートン 日本語も親や周りの者の真似をして覚え、小学校、中学校、高校と日本語を語学として学んできたはず 言語を覚えるときは最初はみんなそんなもの 皆が普通にやっていること ただどこかに公開するときは引用元を明示することを忘れると今話題のSTAP論文のようなことになる コピペは何の問題もない コピペソースの作成者に対するリスペクトが大事 ソースや実行プログラムを公開するときは著作権を放棄していないソースもあるので気を付けよう
お礼
ご回答ありがとうございます。 返信遅れて申し訳ありません。 この文を読んで真似することは悪くないとわかり、安心しました。 しかし、引用元を明示することを忘れないように気をつけていきます。 本当にありがとうございました。
>わからないもの、自分がやりたいことをネットなどで調べたして、それを真似することは悪いことですか? むしろ良いことです。既にあるものを利用するのは、とても良いことです。 理由は以下です。 1.効率的であること。(生産性が向上します) 2.自分の知らなかった知識を得られて、今後のプログラミングにも役立つこと ただし、注意点があります。内容をすべて理解した上で真似ることです。 理由は以下です。 1.今回のプログラミングに適用するには、変更や追加しなければいけない部分があることもあります。そのまま真似れば良いだけか、変えなければいけない部分があるかは必ず自分で考えなければいけません。 2.理解できていないと、今後のプログラミングに応用できません。自分の知識になりません。 どんな技術でも取得するには、真似から始まります。むしろ、真似が悪いことではないかという考えが上達を妨げているのではないですか。 「真似→理解→知識→応用」と考えれば良いのでは。
お礼
ご回答ありがとうございます。 そして、返信遅れてしまい、大変申し訳ありません。 むしろ良いことと言っていただけて嬉しくなり、自分は間違っていなかったのだと思いました。 一応「だからこうなるのか」と思えるので、少しは理解できてるとおもいます。 >>変更しなければならないところは自分でやる ここがよく詰むところです。もっと頑張らなくては。 本当にありがとうございました。
- wormhole
- ベストアンサー率28% (1626/5665)
悪いという事はないです。 ただ将来的に自分自身で同様な処理やより高機能な処理を作れるようになりたいといった場合には、ネットで(探してるだけの)調べるや(コピーするだけの)真似るではいつまでたっても作れるようにはならないでしょうけど。
お礼
ご回答ありがとうございます。 返信遅れてしまい、申し訳ありません。 やはり、まずは自分で考えなければ力になりませんよね。 調べるのはあくまで最終手段としていこうと思います。 ありがとうございました。
- 1
- 2
お礼
ご回答ありがとうございます。 返信遅れてしまい、申し訳ありません。 そして、前の質問では、お世話になりました。 やはり、少し考えすぎていたのでしょうか? 真似も大切な訓練の一つなのですね。 これからも頑張ります。 ありがとうございました。
補足
ご回答してくださった皆様、本当にありがとうございました。 色々な意見が聞けてとても嬉しかったです。 本当はもっと聞いてみたいところなのですが、大学生たるもの、 この先は自分で切り開いていこうと思います。 ありがとうございました。 BAは先の質問でもアドバイスしてくださり、今回もとても親身になってくださったこの方にさせていただきます。 しかし、皆様のアドバイス、またはお説教も一つの自分の糧として、 これからも精進して参ります。 本当にありがとうございました。 この質問は本日をもって締め切ります。