PC・インターネット

最初のプログラミング言語の選択でIT貴族かIT土方かが決まるそうだ。勉強するにあたり何をすべきか?

1:名無しさん@2ろぐちゃんねる: 2015/11/21(土) 09:31:01.01 ID:2Q0lidS+0.net
あるプログラミング言語がその仕事に適したものであるかといった議論は論争に発展しがちだ。
時には宗教戦争の様相を呈することがあるものの、プログラミング言語がコーディングプロセスだけでなく完成した製品の特性にも影響することは多くの方が同意するところだろう。

これについてカリフォルニア大学デイビス校のコンピューターサイエンス研究者らが、プログラミング言語のソフトウェア品質に与える影響(PDF)に関する調査結果を発表した。

研究ではGitHubの729プロジェクト(17言語、29,000人が書いた8,000万行のソースコード、150万コミット)を分析。
大きなサンプルサイズを利して混合研究法のアプローチをとり、複数の回帰的モデリングやテキスト解析を組み合わせて静的型付けと動的型付け、型付けの強弱といったプログラミング言語の特徴がソフトウェアの品質に与える影響を調べた。

異なる手法による調査結果を組み合わせ、チームの大きさやプロジェクトの大きさ、プロジェクトの歴史といった影響を与える要素を調整することで、言語設計がソフトウェア品質に及ぼす影響は、大きくはないが有意なものであることが明らかになったとのこと。

論文によれば、
 最も明らかなのは、強い型付けは弱い型付けよりもそれなりに優れており、関数型言語では静的型付けが動的型付けよりも やや優れている点だ。また、関数型言語は手続き型言語よりもやや優れていることもわかった。
 言語設計による影響は、プロジェクトやチーム、コミットの大きさといった要素に大きく支配されている点も注目に値する。
 ただし、関数型で静的かつ強い型付けを持つ言語を好む性格、といった識別困難な要素が影響している可能性が高い点にも注意が必要だ。
とのことだ。

オブジェクト指向は愚かな考え。この世は計算式
http://peace.2ch.net/test/read.cgi/tech/1447990379/



元スレhttp://hayabusa3.2ch.sc/test/read.cgi/news/1448065861/

2:名無しさん@2ろぐちゃんねる: 2015/11/21(土) 09:32:09.10 ID:/xMIh22j0.net
プログラミングの学習でもっとも需要なのは「金を使う」こと。
多くの貧乏人はモチベーションの継続率が桁違いに上がる。


3:名無しさん@2ろぐちゃんねる: 2015/11/21(土) 09:32:09.22 ID:xk/lAH3o0.net
アセンビラにきまってるだろ!

4:名無しさん@2ろぐちゃんねる: 2015/11/21(土) 09:32:27.77 ID:lg95Wq640.net
まずは2進数ε三三三三(o^w^)o

5:名無しさん@2ろぐちゃんねる: 2015/11/21(土) 09:33:18.64 ID:HkwK5UiZ0.net
IT貴族なんているのか?

19:名無しさん@2ろぐちゃんねる: 2015/11/21(土) 09:39:35.26 ID:/xMIh22j0.net
>>5
1970~1980年代は高卒プログラマですら月給300万円だったんだぞ。
華やかしいバブル絶頂期ということもあり大学を出てプログラマになるやつもほとんどいなかった。
だから独学で学んだ奴が少数いるだけだった。


60:名無しさん@2ろぐちゃんねる: 2015/11/21(土) 09:57:21.48 ID:HkwK5UiZ0.net
>>19
いい時代だったよな。
今や介護と同じレベル。


6:名無しさん@2ろぐちゃんねる: 2015/11/21(土) 09:33:40.39 ID:kKdXvbor0.net
つまり、haskell最強ってことだな

20:名無しさん@2ろぐちゃんねる: 2015/11/21(土) 09:40:41.27 ID:/xMIh22j0.net
>>6
Haskellはライブラリが弱い。
Haskellの思想だけ学び昔ながらの言語でやるのが一番。


7:名無しさん@2ろぐちゃんねる: 2015/11/21(土) 09:33:42.23 ID:/xMIh22j0.net
あと純粋関数をググって大雑把に把握したあとにC言語を学べ。
オブジェクト指向はダメだ。


33:名無しさん@2ろぐちゃんねる: 2015/11/21(土) 09:46:13.87 ID:5lqPZTTP0.net
>>7
オブジェクト指向って、昔は関数構造化の事だったのになぁ


9:名無しさん@2ろぐちゃんねる: 2015/11/21(土) 09:34:51.16 ID:RIZlcMG70.net
いや高給取りにとって言語はタダのツールで
そのツールを使ってどのような付加価値のあるものを作るか、が重要だから

勉強する言語を限定してそれしか出来ないからこの範囲で仕事ください!
って受身の奴は永遠にITドカタ


30:名無しさん@2ろぐちゃんねる: 2015/11/21(土) 09:45:01.77 ID:PlUbmFJY0.net
>>9
日本語が書けるからといって芥川賞が取れるかって話だわな。


8:名無しさん@2ろぐちゃんねる: 2015/11/21(土) 09:34:09.56 ID:6Qp65aS40.net
IT神を目指すならプログラミング言語など学ばないことた

36:名無しさん@2ろぐちゃんねる: 2015/11/21(土) 09:48:17.14 ID:YXR4moNkO.net
>>8
正解。
で、日本語の勉強だ。


10:名無しさん@2ろぐちゃんねる: 2015/11/21(土) 09:35:05.45 ID:906cCDqD0.net
FORTRANとCOBOLできるよ

12:名無しさん@2ろぐちゃんねる: 2015/11/21(土) 09:35:12.07 ID:JNiUBF3t0.net
紙に書けないような奴は土方になるだろうな。

13:名無しさん@2ろぐちゃんねる: 2015/11/21(土) 09:35:27.94 ID:/xMIh22j0.net
C言語でグローバル変数は一切使わない縛りをして
純粋関数っぽく記述することを覚えるのが一番の近道だと思う。

C++やJavaでオブジェクト指向はダメだ。
あれはインスタンス変数がグローバル変数並みに危ないことをプロジェクトが小さいうちは気付かないようにしているだけ。


15:名無しさん@2ろぐちゃんねる: 2015/11/21(土) 09:36:30.97 ID:zQjhmVlA0.net
というかプログラミング言語1つ覚えるのにハードル感じるならプログラム組む仕事あきらめとけ

16:名無しさん@2ろぐちゃんねる: 2015/11/21(土) 09:36:52.89 ID:rtrUimrR0.net
何度でも言う。
日本語をちゃんと使えるようになれ。


17:名無しさん@2ろぐちゃんねる: 2015/11/21(土) 09:37:56.02 ID:UC5d7NSG0.net
COBOL最高です!

21:名無しさん@2ろぐちゃんねる: 2015/11/21(土) 09:40:59.78 ID:eRHptNh30.net
N88-basicから入った俺は最上位クラスてことか
ベーマガ実家に大量にあるわ


23:名無しさん@2ろぐちゃんねる: 2015/11/21(土) 09:41:50.52 ID:D2/WiN9E0.net
ファミリーベーシックでok

24:名無しさん@2ろぐちゃんねる: 2015/11/21(土) 09:41:52.55 ID:JrADQD/+0.net
日本ではIT貴族なんて居ない。
年収1000万ぐらいが限界で大半は500以下。

IT貴族なんてアメリカだけの話だよ。


26:名無しさん@2ろぐちゃんねる: 2015/11/21(土) 09:42:46.75 ID:mqZtcKNj0.net
マジレスすれば英語

29:名無しさん@2ろぐちゃんねる: 2015/11/21(土) 09:44:38.28 ID:iATfPQmZ0.net
>>26
英語覚えてシリコンバレーあたりから流行りそうなサービス盗んでくるとかな


27:名無しさん@2ろぐちゃんねる: 2015/11/21(土) 09:43:03.37 ID:Jr6z/jAz0.net
ぶっちゃけオブジェクト指向がダメなんじゃなくて、オブジェクト指向を理解できなかったテメェがダメなだけ


42:名無しさん@2ろぐちゃんねる: 2015/11/21(土) 09:51:16.60 ID:/xMIh22j0.net
>>27
オブジェクト指向はね、最初はすごい取っ付きやすいんだよ。

でもね、プロジェクトが肥大化するとプロパティ(インスタンス変数)の値で挙動の変化するメソッドが大量に生まれる。
これが絡み合うとC言語でグローバル変数を多用するよりも恐ろしいことになる。


48:名無しさん@2ろぐちゃんねる: 2015/11/21(土) 09:53:20.73 ID:lm9vuyQn0.net
>>42
これはあるな。
xUnitが流行ったのもこれのせいだろ。


28:名無しさん@2ろぐちゃんねる: 2015/11/21(土) 09:43:39.54 ID:TMAh31K90.net
VB.netとPL-SQLしかできない俺は負け組の最たるものだ

43:名無しさん@2ろぐちゃんねる: 2015/11/21(土) 09:52:18.18 ID:mdIdwoV20.net
>>28
ASP.NetでAzureのサイト作れるようになりなよ
そんでデスクトップアプリと連携すると良いです


114:名無しさん@2ろぐちゃんねる: 2015/11/21(土) 10:39:46.81 ID:wgoIzN5/0.net
>>28
VBAが主力の俺がいる、大丈夫だ問題ない


40:名無しさん@2ろぐちゃんねる: 2015/11/21(土) 09:49:47.20 ID:cajjjjZq0.net
事務系でVBAやっとけば神扱い。
C++やるようなところではVBAはおこちゃま扱い、長らくの不況で給料は大幅に変わらない。

悪い事は言わない。事務系でVBAやっとけ。


32:名無しさん@2ろぐちゃんねる: 2015/11/21(土) 09:45:53.56 ID:LDEcvZQx0.net
10 A=0
20 X=A+1
30 PRINT X
40 GOTO 20

確かこんな感じだった


37:名無しさん@2ろぐちゃんねる: 2015/11/21(土) 09:48:18.76 ID:TMAh31K90.net
>>32
無限ループじゃねぇかw


50:名無しさん@2ろぐちゃんねる: 2015/11/21(土) 09:54:08.94 ID:fJR2BFd+0.net
>>32
ずっと1を表示するが


78:名無しさん@2ろぐちゃんねる: 2015/11/21(土) 10:08:49.64 ID:LDEcvZQx0.net
>>50
ああそうか。

10 A=0
20 A=A+1
30 PRINT A
40 GOTO 20

これがしたかった。


91:名無しさん@2ろぐちゃんねる: 2015/11/21(土) 10:18:12.23 ID:G+S+6f5M0.net
>>78
それでも無限ダロw


94:名無しさん@2ろぐちゃんねる: 2015/11/21(土) 10:21:01.68 ID:TMAh31K90.net
>>78
全然解決になってなくてウケるww


98:名無しさん@2ろぐちゃんねる: 2015/11/21(土) 10:23:13.16 ID:FfCOR01+0.net
>>94
だから無限にインクリメントして表示させたいんだろ
意図汲み取れないやつって無能だよね


101:名無しさん@2ろぐちゃんねる: 2015/11/21(土) 10:26:14.35 ID:8wZVs9F10.net
>>98
オーバーフロー…


34:名無しさん@2ろぐちゃんねる: 2015/11/21(土) 09:47:39.20 ID:4UsCPE9S0.net
プログラミングだけで飯を喰おうなんて
おこがましい とは思わんかね (AAry

主業務遂行の為の片手間でやれ


45:名無しさん@2ろぐちゃんねる: 2015/11/21(土) 09:52:29.46 ID:t4JH0UjP0.net
趣味で遊んでるうちがいい
仕事になると嫌いになる
ふしぎ!?


51:名無しさん@2ろぐちゃんねる: 2015/11/21(土) 09:54:14.85 ID:9z0CcHXQ0.net
>>45
趣味は自分からやる、仕事は人からやらされる
この違いかと(´・ω・`)


46:名無しさん@2ろぐちゃんねる: 2015/11/21(土) 09:52:31.58 ID:xkPdYxzf0.net
客とコミュニケーションをうまく取れて、プログラマーをうまく使える奴が1番だろう

54:名無しさん@2ろぐちゃんねる: 2015/11/21(土) 09:55:56.04 ID:p0U9Wpsb0.net
アセンブラやっとけば間違いない

67:名無しさん@2ろぐちゃんねる: 2015/11/21(土) 10:01:14.53 ID:JNiUBF3t0.net
>>54
アセンブラ知らない人多いみたいだな。古いパソコンじゃ何も出来ないな。
至れり尽くせりか。オブジェクト指向なんて得体の知れない馬鹿でかい構造体を
渡されても何とも思わないんだろうな。


71:名無しさん@2ろぐちゃんねる: 2015/11/21(土) 10:03:47.17 ID:7imSp1UL0.net
>>67
おいジジイ
自分が判らないものを馬鹿にするんじゃねえよ。


56:名無しさん@2ろぐちゃんねる: 2015/11/21(土) 09:56:16.72 ID:g0XEyO5x0.net
今時c系言語とかJava使ってるって時点で古すぎだよね…
そんなのその辺の中学生ですらできるわけでまったく価値がない

貴族になるには常に最新の言語を選択すべきだよ
今流行りのGo言語やDart言語、Swift言語が使えれば間違いないね


105:名無しさん@2ろぐちゃんねる: 2015/11/21(土) 10:28:39.21 ID:wnMntqPh0.net
>>56
Dartなんか流行ってなくね?
時代はTypeScriptっしょ


57:名無しさん@2ろぐちゃんねる: 2015/11/21(土) 09:56:25.66 ID:vOODGvrR0.net
情報が多いからJavaでいいけど、関数型にも一度触れとけ。

62:名無しさん@2ろぐちゃんねる: 2015/11/21(土) 09:58:07.65 ID:JexxpxXR0.net
言語に固執してると寿命短いだろ

64:名無しさん@2ろぐちゃんねる: 2015/11/21(土) 09:59:43.27 ID:U0zYyI0y0.net
まだ学んでいるうちに関数型をやっておけ
とくに純粋関数型の思想


63:名無しさん@2ろぐちゃんねる: 2015/11/21(土) 09:58:56.98 ID:PT8Cz5BD0.net
英語ができないとスタート地点にさえ立てなくてつらい
英語で語らずコードで語れよ、と英語サイト見ながら思う毎日


65:名無しさん@2ろぐちゃんねる: 2015/11/21(土) 10:00:28.61 ID:8yqYO3Xw0.net
中小に入って技術身につけても転職しなければドカタ

25:名無しさん@2ろぐちゃんねる: 2015/11/21(土) 09:42:41.03 ID:iATfPQmZ0.net
正解は、自分で勉強せずに
使える人を雇う

なんだけどな


コメント一覧

  1. 名無しさん@2ろぐちゃんねる より:

    日本で義務教育受けたレベルならプログラム言語なんて誰でも習得できる誰でもできるような分野で高給は望めないプログラマーで高給取りたいのであれば+αがないと無理だろうよ

  2. 名無しさん@2ろぐちゃんねる より:

    プログラマーという土俵で較べるならプログラミング言語より、求められるプログラムの仕様で決まるだろうね言い換えればコードの寿命だなオブジェクト指向であることは必須ではない

  3. 名無しさん@2ろぐちゃんねる より:

    プログラミング言語自体を習得するのは難しい話ではないそのプログラミング言語を使って何が作れるかが問題Javaを使ってAndroidアプリ作るのとWebアプリ作るのとでは全く世界が違う

  4. 名無しさん@2ろぐちゃんねる より:

    プログラムは初心者だったが、物理シミュレーションする必要が出てきたんで一年前から取り組み始めた。pythonだったらたいてい作れるようになったわ。科学技術計算ならc++でもなんとかなりそう。

コメント

メールアドレスが公開されることはありません。 が付いている欄は必須項目です