■編集元:プログラマー板より「プログラミングの能力上げるにはどうすればいいの?

1 仕様書無しさん :2011/08/03(水) 16:51:35.02
教えてください

3 仕様書無しさん :2011/08/03(水) 18:57:45.83

いっぱい読んでいっぱい書くことだね。

4 仕様書無しさん :2011/08/03(水) 19:01:39.85

正論だな
他に術はない

5 仕様書無しさん :2011/08/03(水) 19:42:58.22

能力上げる必要があるのかよく考えろ
職場によってはプログラミング能力があると30過ぎに肩叩かれるぞ

7 仕様書無しさん :2011/08/03(水) 21:14:07.36

絵と同じでどれだけこなしたかが重要
分厚いアルゴリズムの本とかお勧め
真面目にやれば全てを網羅する頃には凡人の域は軽く越えられてる

8 仕様書無しさん :2011/08/03(水) 21:16:59.32

プログラムだけなら、並に三倍速行けるやつはいるからな
給料三倍にはならんがw

9 仕様書無しさん :2011/08/03(水) 21:53:24.13

プログラマなら終電まえに並盛り三倍速で食えるよなw

10 仕様書無しさん :2011/08/03(水) 22:36:23.19

lv20まであげてダーマ神殿に行く

11 仕様書無しさん :2011/08/03(水) 23:57:19.46
優秀なプログラマーになるには
まず会社の女の子の前で
奇声を上げて全裸になります

12 仕様書無しさん :2011/08/04(木) 00:28:34.42
>>11
伝説のバリバリマシーンwww

13 仕様書無しさん :2011/08/05(金) 09:27:57.91
Lispやったら筋が良くなるって聞いたんでGauche触ってたら
確かになんぼかマシなコード書けるようになったわ

21 仕様書無しさん :2011/08/08(月) 19:40:02.51
>>13
なにがどう変わったの?
具体的な技術のことでも、感覚的なことでもいいから聞かせてくれ

22 仕様書無しさん :2011/08/09(火) 14:14:51.24
>>21
Lisp触る前までは、処理の目的ごとに分類したプログラム構造で、やたらと手続きの抽象化に腐心してたけど
今はデータの作成処理ごとに分類されてる感じ
変数の中身を弄ることも少なくなって、無駄に状態を増やさなくなったよ

14 仕様書無しさん :2011/08/05(金) 11:01:39.26

クロージャが使えるとなにがうれしいの?

15 仕様書無しさん :2011/08/05(金) 11:10:02.27

プログラムがなんだかとってもダイナミックな感じになるよ
というかダイナミックな感じに作ろうとしたら自然と外側の変数が内側に入り込んでくる
あとしょうもないグローバル変数を作らなくてすむ

16 仕様書無しさん :2011/08/07(日) 07:12:38.78

俺の場合、先の事を深く考えずにコードをガリガリ書いてる時はクロージャ大活躍なのに
後々整理していくと、いつの間にやらクロージャいらねーじゃんって形に落ち着く

17 仕様書無しさん :2011/08/07(日) 09:06:04.08

そのメソッド内でしかいらない処理を書く時に有効
非同期処理を書く時に有効

31 仕様書無しさん :2011/08/10(水) 20:55:55.18
クラスの責務がどうのと悩んでる奴は
関数がファーストクラスオブジェクトの言語やったほうがいい
今まであーだこーだやってたのがあほらしくなる

33 仕様書無しさん :2011/08/14(日) 06:29:33.86
>>31
プロトタイプベースの言語でMixin風の継承をした時、
初めてオブジェクト指向素敵って思った。

何でもかんでもオブジェクトにすりゃいいってもんじゃないわ。

35 仕様書無しさん :2011/08/20(土) 02:58:39.92
今高校生なんですけど、まじめに学校の勉強をするべきですか?
プログラミングとかの勉強をしていると学校の勉強がおろそかになるので

36 仕様書無しさん :2011/08/20(土) 03:34:35.47
>>35
プログラミングに命をかけるだったら学校の勉強はそこそこでいいんじぁないかな!あと、友達が大切だよ~

37 仕様書無しさん :2011/08/20(土) 10:11:24.47
習ったほうがいいと思う
良い師に逢えるかどうかは運だなあ

38 仕様書無しさん :2011/08/20(土) 10:39:06.87
良い大学に行く為の勉強とリア充になるための努力の方が大事かな。
プログラミングの勉強なんかその次で良い。本当にそう思うよ。真剣にそう思うよ。

39 仕様書無しさん :2011/08/21(日) 06:00:52.47
C言語難しくてわかりません。

40 仕様書無しさん :2011/08/22(月) 03:26:05.28
>>39
あれが難しいなんてどうかしてる

42 仕様書無しさん :2011/08/23(火) 03:04:32.52
>>40
いや普通に難しいから

41 仕様書無しさん :2011/08/22(月) 08:27:23.22
Cは学ぶのは簡単だけど使うのは難しいと思う

44 仕様書無しさん :2011/08/23(火) 07:59:52.25

言語的な難しさなどたかがしれてるよな
でも、初学者の頃は確かに難しく感じたな

45 仕様書無しさん :2011/08/23(火) 19:29:25.19

C言語はポインタを駆使するのでもなければ簡単。
プログラムで難しいのは、構造を考えるところ。

46 忍法帖【Lv=40,xxxPT】 【東電 75.1 %】 :2011/08/23(火) 20:19:41.32

よく壁と言われるポインタと構造体は最初つまづいたけど
Perl でリファレンス使って戻ってきたら簡単に思えた。

47 仕様書無しさん :2011/08/23(火) 23:53:48.14

最初はアセンブラから始めろよ。

48 仕様書無しさん :2011/08/25(木) 00:20:05.36

アセンブラから始めたらCは優しく見えるだろうな。
ただ、アセンブラは使い所がほぼ無いから、苦行にしかならないww

49 仕様書無しさん :2011/08/25(木) 23:20:00.08

たった9行のアセンブラごときで何が出来ると言うんだ!?

54 仕様書無しさん :2011/09/06(火) 16:51:40.54
ここだけの話、数学

できなくてもいいという奴は、
単に自分ができないから言い聞かせてるだけ

57 仕様書無しさん :2011/09/06(火) 19:50:16.18
>>54
数学の知識が必要なら勉強しなくちゃしょうがないけど、論理的思考能力を鍛えるため、とかいう
馬鹿な理由だったら、お前のこと指差して笑っちゃうw

お前馬鹿そうだから、理由は言わないでおいてあげる

59 仕様書無しさん :2011/09/07(水) 02:17:49.18
>>57
馬鹿そうなんて言われるとは思わなかった。
自分の経験として書いただけなんだけどな。

55 仕様書無しさん :2011/09/06(火) 17:57:23.23

論理的思考、これに尽きる

56 仕様書無しさん :2011/09/06(火) 19:12:13.90

機能設計の説明を聞いて適切な実装がすぐに浮かばない奴はマとしては無能

58 仕様書無しさん :2011/09/06(火) 23:37:47.48

数学が必要なのは式とかパターンを見つけるのが、あるとなしとじゃ大違いだから
だと思うな。

だいたい、コンピュータは行間も空気も読まないから、人間の持っている論理性
だけじゃどうしようもない部分が多い。 思ったとおりに動くわけじゃなく、書いた
とおりにしか動かないわけだし。

どちらかと言えば柔軟的な思考や、想像力が大事だと思う。

60 仕様書無しさん :2011/09/07(水) 21:36:34.39

数学力とプログラミング能力が相関関係にあることは明らかだろ

61 仕様書無しさん :2011/09/07(水) 22:44:34.68

離散数学だけはやっとけ、必須

62 仕様書無しさん :2011/09/07(水) 23:35:31.65

学問の中で最も論理的な思考能力が要求されるのが数学
一つでも論理が間違っていれば動かなくなるのがコンピュータ

63 仕様書無しさん :2011/09/07(水) 23:36:33.47

一番必要なのは国語じゃねーかな

64 仕様書無しさん :2011/09/07(水) 23:45:37.47

論理を重視するなら法律の勉強でもやった方がマシじゃね。

65 仕様書無しさん :2011/09/08(木) 00:59:43.28

プログラミングに限定するのであれば数学は暗記すべきことが少ないから
好きという面倒臭がりな奴に向いてる
逆に暗記系の科目が得意な奴は信用できない

職業プログラマにはどっちのタイプが向いてるかは考えたくない

66 仕様書無しさん :2011/09/08(木) 01:17:06.68

プログラミングの能力上げたいなら回りくどいことしないで素直にプログラミングの勉強しようぜ。

68 仕様書無しさん :2011/09/08(木) 08:23:43.82
CでOOPを書いていると能力上がるよ。
実装の継承を一杯作るとか、多段継承を一杯作るとかすると、オブジェクトにアクセスするのにポインター多用するので、
何が心労になるか理解できるようになる。 「何をやっていけないか」を理解するのが重要。
Cでデザパタ各種を一杯書くともっと能力あがるよ。
OOPの内部動作を含めた理解には、Cが一番。 ただし、DelphiとかC#で多少のOOP経験が必要だけど w

72 uy :2011/09/12(月) 15:23:32.40
>>68
君がそれを誰かからの受け売りではなく自分でたどり着いたのなら 君は中級者と名乗っていいよ

C++のように「はじめから」多彩な機能のある言語だとどれを使ったらいいのかわからなくなるが
Cのように最初は何もなく、必要な機能を時にはマクロを駆使して作っていくことで
OOPに本当に必要な機能がわかってきて、C++を触ったときに余計なゴミ機能を使わずにコード書くことが出来るようになってる

ゴミグラマには、早い話なんですけど

74 uy :2011/09/12(月) 15:59:08.15

switch文をfor、if文に変換、 2重ループを1重ループに変換 3重ループを1重ループに変換

これをやってみろ
あとは、最低、3重配列以上を使ったソースコードくらいは躓かずにかけるようになれ

あとは、ループ文を再帰文に変換、2重ループを2重再帰文に変換までは一瞬で出来るようになれ

あとは、「最初からリファクタリング完了したソースコード」をかけるように心がけろ
これは、かなり慣れていないと不可能なんだけどな、 ソースをかいて徐々に良くしていくのではなく
最初から最適解をかく それが出来るとコーディング速度は何倍にもなる

76 仕様書無しさん :2011/09/12(月) 16:04:22.64
>>1
そんな能力上げちゃったら一生IT土方だよ

77 uy :2011/09/12(月) 19:37:44.18
>>76
お前の勉強しない言い訳はいいからさ

142 仕様書無しさん :2011/09/13(火) 23:12:21.19

仕様を読んでから
他人のソース読んで
自分でソース書いてが一番勉強になるよ

143 仕様書無しさん :2011/09/13(火) 23:16:59.88

大事なことはがんばることです。

144 仕様書無しさん :2011/09/13(火) 23:20:22.84
気分が落ち込んでやる気がなくなったときは?

147 仕様書無しさん :2011/09/14(水) 01:58:07.12
>>144
そうなんだよね。
心折れそうになるのが一番の敵。

149 仕様書無しさん :2011/09/15(木) 03:35:25.99
質問させてください
建築の仕事してる27歳です。努力しだいで、これからプログラマーを目指す事は出来ますか?

151 仕様書無しさん :2011/09/15(木) 04:04:36.46
>>149
目指す事は誰でも出来る。
寝る間も惜しんで何年かやれば、才能次第では人並みか人並み以上にはなれる。
ただ、個人的にはおすすめはしない。

152 仕様書無しさん :2011/09/15(木) 13:08:43.35
>>149
十分いけると思うよ
ただし、熱中したら徹夜でプログラム書けるとか、数学的感覚が他人より優れてるとか、
PGとして役立つ能力と
必要なものを片っ端から解析するくらいのやる気は必要。

とりあえずビールみたいな感覚で転職したいとかいってるなら、不幸にしかならない
それと、派遣とか大手とかトップが非技術者の会社は、
入るだけ無駄。

逆にトップから社員まで技術者集団見たいな会社(ネット系のベンチャーあたり)に入れたら、
ここらへんでだべってるやつらより,上には行けるだろうし

153 仕様書無しさん :2011/09/15(木) 15:52:35.52
>>149
もう一流にはなれないけど、頑張れば二流になれるよ
この業界は三流ばかりだから大丈夫

194 仕様書無しさん :2011/09/27(火) 22:12:27.55

読みやすいコードが大事とか言っておきながら、クラスや関数にまともな名前をつけられない馬鹿が多すぎて

一応それっぽい名前をつけようとはしてるみたいだけど、結局いい加減な英語にしかならないなら
開き直ってローマ字で書いてくれたほうがまだマシだわww

195 仕様書無しさん :2011/09/27(火) 22:19:46.43

クラス・オブジェクトは名詞、関数は動詞という基本さえ守ってればそんなに変なものにはならないけどな。
とはいえ、それさえ守れてないプロジェクトも多いんだが。

196 仕様書無しさん :2011/09/28(水) 02:23:22.96

名詞とどうしがわからない!

メール

送信
みたいな感じ?

197 仕様書無しさん :2011/09/28(水) 02:33:27.36

英語が出来ない人はどうやって適切な名前をつけてるの?

198 仕様書無しさん :2011/09/28(水) 02:38:47.64

高卒だとしても、6年間は英語勉強してるんだから十分だろ。
英語以外の外国語選択してたら知らんが。

199 仕様書無しさん :2011/09/28(水) 02:40:19.09

中学生以下なら、まぁがんばれ。

200 仕様書無しさん :2011/09/28(水) 03:08:23.17

わかんなきゃ関数はdoから始めるとかでいいんじゃね

201 仕様書無しさん :2011/09/28(水) 03:19:18.53

この際使用する英単語のチョイスはさておき
トンチンカンな綴りの英単語を使うぐらいなら
気持ち悪いけどローマ字でも許すから読みやすく書いてくれ
英単語もまともに綴れないひとには無理な要求なんだろうけど

この板には伝説になった『 UwaRite [上書き]』があるしな
『 kard [カード]』のニートさんも住み着いてるし
そんなに難しいことなのかねえ…

202 仕様書無しさん :2011/09/28(水) 03:44:22.50
迷ったときはgoogle code searchでつけようと思ってる名前が
他にもよく使われてるかどうかを調べたりしてるな

204 仕様書無しさん :2011/10/16(日) 20:12:15.84
>>202
あと3ヶ月、悔いのないように使い倒せ

205 仕様書無しさん :2011/10/20(木) 16:29:07.22
まさかコード検索が終わるとは思わんかった
代わりにはならないがmilcodeとかってやつでも入れとくかな