コピペが悪なのではない!
考えないでコピペする事が悪なのである!
IT業界では「コピペでソースを書くな!」と言われますが、僕はむしろフル活用を推奨。
フルスクラッチで書かされていた僕の中ではフレームワーク自体コピペって考えがあります。
コピペエンジニアリングの発見
僕がコピペエンジニアリングをするようになったのは「OJT」という名の現場直行のためでした。
新卒新人時代の僕はOJTと言われて入りましたが、求められるのは他のエンジニアと同等レベル。
そのため、一から学んだのでは遅いので現場の設計、コードを見て学習することにしたのです。
現場で使われているコードなので、組み合わせ次第で既存の処理は可能、またコーディングルールもコピペ元と同様にコーディングすればクリアしてしまいます。
コピペすることで実質コーディング量も減るので仕事量も増えて、工数も短縮できました。
コピペエンジニアリング3か条
僕の中のコピペする中でのルール
- コピペは無闇にするな
Web上やプロジェクト上のソースを無闇にコピペして必ず動くとは言えません。
コードの意味を理解するようにしてください。
そのままコピペはするとバグの原因になりやすいです。
- コピペは効率化のためにある
コピペは模倣であるため、一から作る必要もなく同様の処理なら一部の変更を行うだけで正常可動するプログラムソースを作成することが出来ます。
自分が作る際もコピペ
またフレームワークなどはファイルのコピーを行っていますのでこれもよく考えるとコピペです。
- コピペはコードだけではない、設計・思想・思考も含めてコピペするべし
コピペってコンピュータ上のコピー&ペーストって考え方だけではありません。
自分の頭の中に思想、思考、設計などコピペしてください。
学習とはコピペである
学習内容をコピーして自分の中にペーストする訳なのですからコピペとは学習なのです。
考えないでコピペすることは、それは漢字の書き取りはしたけど意味は覚えてませんって言うのと同様です。
本を見て、一から入力する人も居ますが結局本と同様の処理を行いたいだけならコピペする方が早いです。
というか全く同じものを作ろうとしているだけなのに何故コピペをしないのか!?
更にコピペエンジニアリングを会得していくと、他者が書いたコードが宝の山に見えてきます。
密かなるコピペ
「コピペは悪!」って叫んでる人達は本当はコピペだらけです。
- フレームワーク
- オートコンプリート機能
フレームワークってローカルにファイルをコピペしますよね?
オートコンプリート機能なんて途中まで打つと自動でペーストされますよね?
これってコピペではないんですか?
今のエンジニアでどちらも全く使ったことないし、現在使って居ないって方はおそらく居ないと思います。
最近はフレームワークに全てを任してセキュリティ対策なんてしたことない、オートコンプリート機能使っているから関数名などもちゃんと覚えていないという方も多いです…
滅すべきコピペ野郎
僕が今まで出会った滅すべきコピペ野郎達!
- サンプルと全く同じコピペ
仕事で使うなら最低限、変数名は考慮してください。
サンプルそのままにhogeとか使わないで…
- 確認しない
「コピペだから動く!」って確認しない人は滅してください。
- 意味を理解しないでコピペ
コピペして確認して動かすって確かに動作もして問題ないこともありますが、スキルアップに繋がらないので滅してください。
コードの意味、設計、思想を一緒に学ばせてあげてください。
コピペエンジニアリングの弱点
コピペエンジニアリングを会得していくと他者のコードの理解、改修などのスキルが付きやすいですが、大きな問題点として「体系的に学んでいないので初めから何かをすること」が弱点になりやすいです。
なので業務でのみコピペエンジニアリングを行っていると「業務で使用される言語やツール、設計」には強くなれますが業務外でのこと、本当に「基本的なことには弱くなりやすいので自ら学習して補填する」ようにしてください。
まとめ
業界10年超えていますが未だにコピペしますけど、コピペについてはお叱りを受けません。
コピペエンジニアリングが悪ではないのです。
コピペエンジニアリングの本質がわからないものが悪なのです。
これからもコピペを活用して益々のご発展をお祈り申し上げます。
0 件のコメント :
コメントを投稿