どんなソースコードを見た時プログラミングセンスを感じる?

1: 仕様書無しさん 2014/08/29(金) 11:06:04.82 .net
プログラムセンスがある人とない人の違いを
感じたことがありますか?それはどんな時でしょうか?

 

 

5: 仕様書無しさん 2014/08/29(金) 17:03:05.52 .net
再帰をうまく使える人はセンスを感じる

 

 

9: 仕様書無しさん 2014/08/30(土) 18:56:39.72 .net
構造がシンプルなこと
アホは複雑怪奇にしてメンテナンスと運用が死ぬ

 

 

11: 仕様書無しさん 2014/08/30(土) 22:37:05.73 .net
やっぱりメンテナンスしやすいかどうかだろうな手抜きで実装するにしてもセンスがある人は
今後のことを考えて手抜きする。
手抜きされたコードもメンテナンスしやすくなってる。

逆にセンスが無い人はいきあたりばったりなコードを書く
単に動けばいいだけ。動かなかったら無理やりちょっと修正して終わり。
視野が狭いから、問題点しか見えてない。
全体の設計を考えてコードをかけない。

 

 

12: 仕様書無しさん 2014/08/30(土) 23:26:42.46 .net
>>11
作った人とメンテする人の
やり方や考えがあってるか?が大きそう
そのためのコーディング規約やルールかな

 

 

13: 仕様書無しさん 2014/08/30(土) 23:36:23.61 .net
>>12
コーディング規約やルールがなくても
設計思想を読み取れるのが、プログラムセンスがある人だろう。俺は読み取れるよ。

コードだけを見て、これ二人の人が作ったんじゃないか?って
思ったら、とあるオープンソースのコードをパクって
劣化改造していやがった。

通りでこういう設計に見えるのに、
それをぶち壊すコードになってるわけだよ。

 

 

15: 仕様書無しさん 2014/08/30(土) 23:43:12.42 .net
論理構造がシンプルなコードを生む人
データ構造がシンプルなコードを生む人
流れるように脳内でデバッグ可能なコードを生む人
複雑なことを簡単な単位(最小粒度)に落とし込んでいて、とにかく読みやすいコードを生む人
糞コードは捨ててでも書き直すくらいの人
コードを見ただけでバグの原因を特定する人*** コードに色や匂いが付いて見える人 ****
*** コードに色や匂いが付いて見える人 ****

 

 

17: 仕様書無しさん 2014/08/31(日) 00:13:08.51 .net
メンテで、毎回全部のコードを読まないといけない作りはセンスないなと思う。
一度読めばいい部分と、何回も読むことになりそうな部分は、わけてほしいです。。

 

 

54: 仕様書無しさん 2014/08/31(日) 13:16:33.73 .net
保守性はみんなが目指すことだろう。だがセンスがある人が書いたコードの保守性は他と違う。
ドキュメントがなくてもわかりやすいんだ。

 

 

63: 仕様書無しさん 2014/08/31(日) 16:16:27.27 .net
シンプルが一番というのは、プログラミングに従事しているものなら分かる。
ソースコードの読みやすさをあげているわけ。プログラミングに従事しているものなら分かる。
さて、コードを読むというのは、構造を理解する作業なわけ
で、センスというのはそこを配慮しているかだ。プログラムのセンスというのは、そういうところに集約される
ネストが深くない、関数が一画面に収まっている、クラスが1000行にまとめられている、
階層を浅くしている。
というやうに作ってあるかだ。コードを読む人を疲れさせない工夫だ。
ネストを深くしているコードは、素人コード。サンプルコードにいっぱいあるよね

 

 

69: 仕様書無しさん 2014/08/31(日) 21:26:01.37 .net
昔はスペック低いからいかに速き処理できるかっていうのが重視されたらしいが
最近は普通に書けば速度はあんまり変わらないから
他人にも見易いのが求められてるらしい。
>>63みたいなのは経験でカバーできる。
自分がセンスあるなぁと感じるのは
Javaのデザインパターンみたいなやつ。
ああいうのは可読性の為にあるのではなくオブジェクト指向の実現の為にある。

 

 

64: 仕様書無しさん 2014/08/31(日) 16:41:11.95 .net
百姓プログラマに聞くんだけど、一回のルーチンの処理速度計ったことある?
センスもなにも、そのルーチンの処理で遅延するようではそれは腐っている
プログラマの感覚とはそういうもの。

 

 

73: 仕様書無しさん 2014/08/31(日) 22:59:37.98 .net
スキル高いやつのソース見る機会があったんだけど
パッと見普通の実装してるようにしか見えないのな
今まで色々工夫してきたのと対照的にきれいな普通のソースで一見遅くなってそうなのに計ると速い
某CPU屋さんのアセンブラをCで上回ってるの目の当りにするまで信じられなかった本気で最適化すればもっと出せるらしいが読めなくなるとか言ってたけど

 

 

79: 仕様書無しさん 2014/09/01(月) 12:16:53.09 .net
>>73
最近のコンパイラの最適化、優秀なんだな

 

 

83: 仕様書無しさん 2014/09/01(月) 19:42:46.86 .net
>>73それは元のアセンブラがダメダメだっただけでしょ。
VCもGCCも無駄なコード多いよ。
バカ正直なコードしか吐かないから。

 

 

87: 仕様書無しさん 2014/09/01(月) 22:13:05.78 .net
おまえら、この三つのなかでどれが一番早くルーチンを抜け出せるものは?①
int x = 0;
for( int i = 0; i < 10000; i++){//一万回ループ
x++;
}


double x = 1.1;
for( int i = 0; i < 100; i++){
double calc = 1/(x+i);
}


CTextDoc* pDoc = GetDocument();
for( int i = 0; i < 5; i++){
pDC->TextOut(0,0,”Textを表示しよう”);
}

 

 

98: 仕様書無しさん 2014/09/02(火) 00:10:32.59 .net
>>87
③だな。
①は10000回もループしてる時点で論外。
②は100回のループで一見早そうだけど、中でdoubleの計算をやってるから、実は一番遅い。
③はループも5回だし、計算もしてないから一番速い。

 

 

99: 仕様書無しさん 2014/09/02(火) 00:23:29.93 .net
>>98
コンパイルすると①も②もループしなくなるんだがな>>87はセンスないと感じるね
「一万回ループ」なんてコメント不要、見ればわかる

 

 

106: 仕様書無しさん 2014/09/02(火) 13:44:24.94 .net
いまどきは、キャッシュとかの関係で小さなループならそっちのが早かったりするんじゃね?

 

 

109: 仕様書無しさん 2014/09/03(水) 05:17:01.12 .net
>>106コードキャッシュとデータキャッシュが分かれてないのもあるからね。
ケースバイケース。

 

 

122: 仕様書無しさん 2014/09/04(木) 02:34:12.72 .net
敢えて言えば①②は何も表示せずに処理を行っている。
つまり表示させる必要はないということだ。
その必要ない表示を行っている③は無駄な処理を行っているわけで
それだけで選択する勝ちのないロジックと言うしかない。無駄を見分けるのもセンスのうちじゃないのか?
どれが早いかはしらんが、無駄は無駄だろ。

 

 

141: 仕様書無しさん 2014/09/06(土) 10:37:20.34 .net
「データ構造とアルゴリズム」とか言う本があったよな。プログラムの実装において、データ構造と処理部分は
トレードオフの関係にあるよ。 データ構造を工夫すると
処理ステップがよりシンプルでステップ数が少なくて済むとかが
それにあたる。

いわゆるテーブル駆動型のプログラムとかな。 使用するテーブルの
データ構造とセットされるデータ自体が、やるべき処理を物語るという
形態になっている。 宣言的なプログラムになる。

このデータ構造の設計能力が、プログラムセンスと云われるものの
1つだと思うよ。

クラス設計やDB設計が難しいのも、その良し悪しがプログラムの
実装の容易さ(シンプル)/保守性/実行性能に大きく関わるからだ。

 

 

142: 仕様書無しさん 2014/09/06(土) 15:50:07.93 .net
そういう感じで思い出したが、普通データ構造から設計しないとプログラム組めないよな?

 

 

152: 仕様書無しさん 2014/09/11(木) 01:23:51.78 .net
その場しのぎのゴミコードの場合

 

 

153: 仕様書無しさん 2014/09/13(土) 12:10:13.84 .net
その場しのぎでもうまくやってのける
次のことを予測して構造に組み込んである同じことを何度もしない

これだけだろ

 

 

154: 仕様書無しさん 2014/09/13(土) 13:36:35.76 .net
>>153の反対はその場しのぎでクソコードを書く。
将来のことを考えない
同じことを何度もする。

ですよ。

”その場しのぎ” という単語は
クソコードにこそふさわしい言葉だと思いますがね。

 

 

155: 仕様書無しさん 2014/09/13(土) 18:11:23.46 .net
そもそもセンスがある人がやってれば
その場しのぎということ自体がないクソコードの上にその場しのぎをしても
センスのある人がやればクソが積み上がらない
センスがなければさらなるクソが積み上がる

ただそれだけ。

 

 

156: 仕様書無しさん 2014/09/14(日) 01:19:22.28 .net
そしてくそコード山盛り解読困難なコードに素敵コードをのせても人月計算でくそ製造機と同じ値段。
一方、くそ製造機は別の現場で素敵コードにくそ乗ってて自己満足。

 

 

164: 仕様書無しさん 2014/12/15(月) 21:42:58.54 .net
気分が良いとおしゃれなコード書いて
センスの無い仕様を押し付けられると
ふてくされて糞コード書いてしまう
そんな私はこの仕事は向いてないのだと思う。

 

 

169: 仕様書無しさん 2014/12/28(日) 20:12:41.25 .net
>>164
が、なぜプログラマーに向いてないかということをもっと詳しく書いておこう。より出来るプログラマーといいうのは、貴兄のいうところの
>センスの無い仕様
を見せられても、それを実装する方法の様々な選択肢の中で、
一番自分が知的興奮を感じながら楽しんでコードを書く道筋が、
一瞬でひらめくものだからだ。

どんな仕事でもそうじゃないか?

どんなつまらないことを依頼されても、それを実行するのが
楽しくなるようなものに一度自分の中で変換できるやつに、

>気分が良いとおしゃれなコード書いて
>センスの無い仕様を押し付けられると
>ふてくされて糞コード書いてしまう

ようなヘタレは絶対かなわないですよ。

世の中には、こういった、どんな仕事も自分の愉しみにしてしまう
センスのあるヤツが、レベルの高いところではうじゃうじゃいて、
しかもさらにその上に勤勉だったりする。
そういうヤツらからすると、やっぱり貴兄は、厳しいかもしれないが、

お呼びでない

ということになってしまうだろうね。

 

スポンサーリンク

167: 仕様書無しさん 2014/12/28(日) 20:00:57.47 .net
あと、このスレを読んで思うのは、あるプログラマーがいて、
その人の仕事のアウトプットについて、センス[有る|無い]よね

という評価を、職場だといろいろな立場の人がすると思うけど、
プログラマーにとって大事なのは、コードを書かない人(企画だったり、営業
だったり)たちからの評価のほうが、重要だと思う。

プログラマー集団の中での「仕事ができる人」と、
企画、営業も含めたチームの中で「仕事ができる人」とは、やはり微妙に
違ってくるけど、後者により自分のアウトプットの照準を合わせたほうが、
社内で仕事がしやすくなり、プログラマーとしても快適に過ごせると思う。

まあ、こんなことを言うと
「そんな処世術みたいな話をしているんじゃない!」とお怒りの諸兄も
いらっしゃるだろうが。

 

 

168: 仕様書無しさん 2014/12/28(日) 20:11:26.62 .net
>>167
何処を縦読みとか言いたくなったが、要は
「客に好かれるプログラマーたれ」
って事だろ?

当たり前の事だと思うんだが、わかってない奴大杉っからな
この業界

 

 

174: 仕様書無しさん 2014/12/29(月) 11:49:55.19 .net
>>168
・バグだらけのコードを書いて後から一生懸命直してるやつ
・最初からバグの少ないコードを書くやつ
客から好まれるのは前者だったりする。

 

 

178: 仕様書無しさん 2015/01/01(木) 08:58:56.58 .net
>>174
そりゃそうだ、客からすりゃ、
瑕疵責任で直させるのはタダだからな。

 

 

171: 仕様書無しさん 2014/12/29(月) 00:47:34.34 .net
センスのある人がダダーっと一気に作り上げたモノは、それなりにちゃんと読めて動く
無い人がじっくり作り上げたモノは意外と汚く、動かないこともしばしば前者は「頭の中で考えて即コードにしている」からなのか
後者は「コピペをつなぎ合わせるのに悩んだ」からなのか

 

 

198: 仕様書無しさん 2015/01/11(日) 14:44:51.39 .net
一番いいのは自動化。
自分の仕事をシステム化する。自分の仕事のシステム化ができないやつが
他人の仕事のシステム化ができるわけがないのだ。

で、プログラムセンスというか技術がないやつは
自分の仕事をシステム化することも出来ない。
コピペとかエクセルで仕様書作ってる奴とかが当てはまるね。

 

 

200: 仕様書無しさん 2015/01/11(日) 14:53:27.85 .net
自分の仕事をシステム化するのに必須な能力っていうのは
仕事を効率化するシステムをサーバーに導入したり、
システムを作ったりできる能力なんだよね。
そもそもそれを客に提供しているわけで。自分個人の仕事のシステム化を、代わりにやってくれる部署が
内部にあればそれを使ってもいいがまあ普通はない。
自分の仕事の効率化は自分でやるもの。

その時に、こんな機能が欲しいって、仕様をまとめるだけじゃ
成り立たないんだよ。実際のその機能を作り上げられなきゃね。
自分一人でそれが出来ますか?

 

 

201: 仕様書無しさん 2015/01/11(日) 15:16:24.84 .net
出来ない人とかいるの?

 

 

202: 仕様書無しさん 2015/01/11(日) 15:19:04.40 .net
いる。プログラムできない。
サーバーの設定できない。
技術的なことは何もできない人がいるんだよ。

 

 

206: 仕様書無しさん 2015/01/12(月) 00:25:03.45 .net
自動化できるところとできないところを
切り分けできない人ってセンスがないって感じるかな?そういう人っていっくら知識や経験を積んでも
自動化できるものとできないものが存在するってところからして
受け入れることができないみたいでいっつもバカな成果しか上げられない

 

 

207: 仕様書無しさん 2015/01/12(月) 00:53:13.75 .net
>>206
そういう人は自動化以前に関連性のないものを分割するってことが出来ない人
なんだと思うよ。

 

 

211: 仕様書無しさん 2015/01/14(水) 19:34:36.92 .net
楽をするために努力するとか言っちゃってる人はセンスないなあって思う
本当にプログラミングセンスがある人は楽をするために何もしない

 

 

212: 仕様書無しさん 2015/01/15(木) 00:52:55.85 .net
>>211
え?

 

 

213: 仕様書無しさん 2015/01/15(木) 05:30:03.16 .net
>>211
さすがに意味がわからん

 

 

215: 仕様書無しさん 2015/01/15(木) 12:45:17.69 .net
>>213
いや分かるたろw何もしない方が楽に決まってるじゃんw

 

 

217: 仕様書無しさん 2015/01/15(木) 17:28:41.05 .net
有能「本当にプログラミングセンスがある人は楽をするために何もしない」

 

 

218: 仕様書無しさん 2015/01/15(木) 21:46:59.55 .net
有能「何もしない」

 

 

220: 仕様書無しさん 2015/01/16(金) 00:16:34.05 .net
結論 なにもできない奴は有能

 

 

253: 仕様書無しさん 2015/01/17(土) 23:33:16.28 .net
俺はセンスないんだが、開発スキルについて反省点とか整理して
どう修正していくか、また何を学べば対応出来るか全然分からないだよな
皆はどうやって問題点を修正していってるんだ?他人のフリ見て我がフリ直せって感じ?
それとも本や転がってるソースコードを読みまくっていい所を盗んで実践してる?
もはや監督、コーチがついてもらわないと何やっていいか分からないレベルに陥ってる

 

 

254: KAC 2015/01/17(土) 23:54:37.51 .net
>>253
とにかく経験が一番。巨大プロジェクトのように1サイクル数年とかじゃなければ
反省点を改善していくことはできるだろ。
プログラミングだけに限って言えば、個人で色々作りまくるべし。
経験積まないと他人のソース見てもいいところを吸収できないよ。

 

 

257: 仕様書無しさん 2015/01/18(日) 00:17:44.90 .net
>>254
職場での実践以前に出来ること他にないかな?
個人趣味ではAndroidアプリ作ってるけど何かが改善してるとか向上してる感じがない

 

 

258: KAC 2015/01/18(日) 02:58:51.51 .net
>>257
昔作ったプログラムをもとにして新しい機能拡張するとかは有効。
読みやすさとか部品化対策とか色々な観点から反省点が見えてくるはず。あと、RFCとか探してちょっと大きめの仕様を実装してみるといい。
楽に作るための工夫とか、いろいろ身につけられるだろう。

 

 

321: KAC 2015/01/26(月) 08:14:11.72 .net
そもそも「美しいコード」を誤解してる奴が多すぎるんだろう。
“無駄が無く、機能を満たす”という最低条件に捕らわれ過ぎて
いつの間にか”短いのが美しい”と誤解されているように思う。その結果、必要な保守性や拡張性を削ったり、
酷い時にはもとの処理と動作の違うものになってたりする。

美しいコードを正しく理解できていないから、
周りの賛同を得られていないってことに気づくべきだろうな。

 

 

348: 仕様書無しさん 2015/01/26(月) 23:37:32.00 .net
コードの可読性が悪いときに、
コードの可読性を上げずに
コメントでどうにかしようって考えが
プログラムセンスが無い人なんだよなw

 

 

365: 仕様書無しさん 2015/01/27(火) 12:30:15.88 .net
結果が同じなら何でもいいわ

 

 

引用元URL:http://viper.2ch.sc/test/read.cgi/news4vip/1418956924/

関連記事

https---www.pakutaso.com-assets_c-2014-10-YOU85_PCsousasuru20131019130818500-thumb-1000xauto-5430

webデザイナーの私が質問に答えるよー

1: 名無しさん 2014/12/14(日) 00:04:16.45 ID:eNSRUbr50.n

記事を読む

xup6dubkjwr

スマホゲー業界が悲惨過ぎてワロエナイ・・・・→開発費700万円かけて売上14万円

1: 風吹けば名無し@\(^o^)/ 2015/10/06(火) 09:15:07.92 ID:M

記事を読む

wpid-Wi86FBt.jpg

【悲報】HIKAKIN、ネタがつまらなさすぎて奇行が目立つ

1: 以下、\(^o^)/でVIPがお送りします 2015/06/23(火) 01:09:35.2

記事を読む

スクリーンショット 2014-04-21 18.43.45

デブなのにMac使ってるやつ出てこい!

1: 名称未設定 2013/11/24(日) 14:09:01.24 ID:p/iSKIER0.n

記事を読む

https---www.pakutaso.com-assets_c-2013-10-PAK75_hutokorokaramanken500-thumb-autox1000-3690

業者のホームページの年間維持費15万円とか高すぎない?

1: 以下、\(^o^)/でVIPがお送りします 2015/05/20(水) 15:23:55.4

記事を読む

7ed9e724

SNKプレイモア、中国企業に買収される

1: 風吹けば名無し@\(^o^)/ 2015/08/07(金) 15:39:00.57 ID:z

記事を読む

20151011-00050006-yom-000-3-view

【かつてのウォークマンのように】ソニー平井社長直轄!4Kプロジェクターやスピーカー付き照明を開発しました!!!

1: 張り手(北海道)@\(^o^)/ 2015/10/11(日) 11:23:52.43 ID

記事を読む

スクリーンショット 2014-04-17 18.01.56

経済産業省「次のアップル、グーグル、フェイスブックは日本から出す!」 ベンチャー有識者会議総括

1: ◆LVPw8vYKWwjL 2014/04/16(水)11:56:16 ID:uBXQeAB

記事を読む

1-TLx9pgnmdC5gaJljYaxrrA

【朗報】パスワード不要のブログサービス『Medium』登場

1: フライングニールキック(東京都)@\(^o^)/ 2015/07/01(水) 13:12:

記事を読む

CAS-1_005

【悲報】ソニー、自社製品のオーディオシステムの宣伝にVAIOを使わずにMacを使用する

1: 番組の途中ですがアフィサイトへの\(^o^)/です (ワッチョイ b037-keR1) 20

記事を読む

Huawei-Mate-8-benchmark-post-launch_1
Androidのベンチマーク、10万点を突破 インフレが止まらない

1: 番組の途中ですがアフィサイトへの\(^o^)/です (ニククエ

hGJvbfh
せっかくの休みだ。原付で>>5に行く。

1: 名無しさん@おーぷん 2015/11/29(日)06:13:2

9xHNnte
XperiaZ5からdocomoのロゴだけ消せるシートが発売開始

1: 番組の途中ですがアフィサイトへの\(^o^)/です (アウアウ

bsLISA78_MBAsawaru20141018102912
子供にプログラミング教えることになりそうなんだが、どうやって教えたら良いんだ?

1: 以下、\(^o^)/でVIPがお送りします 2015/11/2

top
国内で最大容量の8THDDが2万円台に値下がり

1: 海江田三郎 ★ 2015/11/29(日) 14:43:35.

→もっと見る

PAGE TOP ↑