X



プログラミング言語の難易度ランク作りました ご覧ください [無断転載禁止]©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん垢版2017/02/17(金) 12:15:24.04ID:gObbCwHn
-------S(唯一神)-------

機械語

-------A(ハッカー)-------

アセンブラ C++ C

-------B(一般プログラマ 凡人)-------

java C♯

-------C(日曜プログラマ)-------

ruby python swift

-------D(一般事務員でも使える)-------

VBA PowerShell

-------E(手段が目的になっているただのカス)-------

その他のマイナー言語厨(特にHaskell)
0102デフォルトの名無しさん垢版2019/09/12(木) 01:44:36.45ID:s3ehzYuz
俺の経験から難易度を点数化した
異論は認めない

点数 言語
---------
16.0 Coq
11.0 Haskell
10.0 OCaml
9.5 C++
5.0 アセンブラ
4.0 C
3.5 Swift
3.5 C#
3.0 Java
3.0 Scheme
2.5 Smalltalk
2.5 JavaScript
2.0 Python
2.0 Ruby
2.0 PHP
2.0 Perl
1.5 BASIC
0103デフォルトの名無しさん垢版2019/09/13(金) 20:10:26.51ID:65eTAicb
よかったC#高めで
0104デフォルトの名無しさん垢版2019/09/13(金) 20:31:53.22ID:D8Ya1/lr
cそんなむずいか?
一定水準以上の脳みそを所有してたら他の言語より相対的に下がりそうだが
0105デフォルトの名無しさん垢版2019/09/13(金) 23:06:02.37ID:65eTAicb
アマゾンとかの評価で適当にあたりを付ける

大きい本屋に行く

あたりを付けた順にざっくり読んでみる

わかりそうな本を買って読む

実際にちょっとやってみる

これでなんでも理解できるようになるかな
0106デフォルトの名無しさん垢版2019/09/14(土) 00:22:35.39ID:SszqHRRm
難易度というより>>102の個人的な上げ下げでしかないな。
難易度ならPythonよりRubyやPerlがそんなに下のわけないし逆にSwiftは高すぎる。
0107デフォルトの名無しさん垢版2019/09/14(土) 01:19:05.74ID:abY1cBsm
Julia ←凡百にはわからないのでランク対象外

この立ち位置いいよね
0108デフォルトの名無しさん垢版2019/09/14(土) 09:03:35.89ID:XDqZ+X/5
>>102
>9.5 C++
>5.0 アセンブラ

気持ち分かる。

アセンブラより難しい高級言語っていったいどういう立ち位置なんだろうかと
思ってしまう。
0111デフォルトの名無しさん垢版2019/09/14(土) 11:33:12.95ID:3A0uyiN1
まあ切れれば同じだろの精神でカッターナイフといった似て非なるものに化けてるような言語はあるけどな
0112デフォルトの名無しさん垢版2019/09/14(土) 12:40:37.48ID:ZlPDNhhS
>>103
async/await、linq、.net、ジェネリクス、リフレクション、jit、スクリプト実行、il、マルチスレッド、…
使うだけなら簡単かもしれないけど、一通り学ぶのはスクリプト言語とかよりは重いかなと思った

>>104
構造体や共用体、配列やポインタ、プリプロセスやリンケージ、修飾子や指定子、手軽なLLより難しいと思う
理解したとしてもメモリ管理やエラー処理や設計等は面倒臭くなりがち
標準ライブラリにある多数の使うべきではない関数、期待通りに動いてしまう言語仕様にはない環境依存のプログラム、他言語よりダントツに多い脆弱性等、落とし穴も多い

>>106
順序はデタラメ
点数で見て
python、ruby、perlは同列
swiftも圧倒的に高いわけではない
0113デフォルトの名無しさん垢版2020/01/26(日) 02:38:52.53ID:HPdacZve
rubyXLでエクセルいじってるが

印刷範囲を設定したいときは、どのようにすればよいのでしょうか?
いろいろ探しても見当たらず・・
0114デフォルトの名無しさん垢版2020/01/26(日) 08:51:55.23ID:2jcz6vHU
5ch では、マルチポストは禁止です!
同じ質問を、複数のスレで聞いてはいけません!

Ruby のスレの方で、聞いてください!
0116デフォルトの名無しさん垢版2020/02/01(土) 10:25:30.11ID:czMw2pLn
難易度なんていくらでも上げられる
問題は生産性に見合っているか
0117デフォルトの名無しさん垢版2020/02/01(土) 10:30:55.40ID:/4nAXpt3
最近触った言語の中でケタ外れに難しかったのはrust
ちいさいプログラムを書く分にはそうでもないけど
ある程度実践的な部分に踏み込んでいくと途端にうまくいかない
理解不足が露呈する
気難しい言語、でも好き
0119デフォルトの名無しさん垢版2020/02/01(土) 16:56:59.46ID:3ShxR3z3
だいたい合ってんじゃん
このランキングに載らないようなのはゴミってことで
0121デフォルトの名無しさん垢版2020/02/01(土) 18:41:43.75ID:YFAnTUnh
そう思ってた時期が私にもありました

今は命令数が数千もあって
理解が難しい命令も色々とある
簡単では無いよ
0122デフォルトの名無しさん垢版2020/02/02(日) 10:39:58.88ID:jJ+UgXCi
>>118
そういうネタ言語はゴマンとあるけど
難易度ランクに入れても無意味っしょ
0124デフォルトの名無しさん垢版2020/02/02(日) 11:11:45.88ID:jJ+UgXCi
じゃあ難易度も生産性も無視した
メジャーな言語教えてよ
0127デフォルトの名無しさん垢版2020/02/02(日) 14:01:59.52ID:B8tXf04A
関数型言語は解ってる奴が使えば副作用が起きづらいからデバッグや保守が簡単になるんでしょ?
そういった生産性が故に注目されてるんじゃないの?
将来的なものも含めて全く生産性に寄与しない言語なんて注目されようがないと思うんだけど。
ネタとして以外に
0130デフォルトの名無しさん垢版2020/02/02(日) 18:59:44.05ID:hA9+zviL
まぁ研究まで含めるならいくらでも難しい言語はあるんだろうけど
その難しさがwとWだけで書くからとか
そういう難しさじゃランクに並べる意味が無いと思うのよ
個人的な意見だけど
0133デフォルトの名無しさん垢版2020/02/12(水) 02:12:58.10ID:mzw7eug2
Perlは、
・引数に参照やポインタの様なものを渡す関数を作りたいと思ったら上手く行かなくて
 難しい。そもそも、関数がちゃんと書けないという説がある。
・文字列を1文字ずつ処理したいときに勝手にさまざまな変換が行われてしまいがちなので難しい。
・ASCIIコードと文字そのものの区別が複雑で、その変数が果たしてどっちなのかなかなか分からなかった。
0135デフォルトの名無しさん垢版2020/02/23(日) 09:34:00.69ID:DWh+LsOr
>>131
わりと下らんだろ。
不動点コンビネータとか発見(どやっ)とかやっちゃってるの馬鹿らしいなと思うわ。
0137デフォルトの名無しさん垢版2020/02/29(土) 01:35:00.39ID:D7K7eRQt
めんどくさいと難しいは違う。
アセンブラやC言語は簡単。
だけどめんどくさいだけ。
0138デフォルトの名無しさん垢版2020/03/01(日) 03:32:37.15ID:/Cy8SoqN
>>1
機械語ってアセンブラだぞw
0141デフォルトの名無しさん垢版2020/03/04(水) 03:58:59.92ID:LiuOm7Wf
機械語
バイナリイメージを指すこともあるし
それを16進数表記した物を指すこともある
0142デフォルトの名無しさん垢版2020/03/08(日) 15:40:06.34ID:nGQiIF3A
>>137
それでも、
・ケアレスミスなどが起き易い。
・C言語で言う所の生ポインタを型も付けずに使うことで間違いが起き易い。
 ポインタは型を導入することでアセンブラよりは劇的に間違いが少なくなっている。
 C言語のポインタに厳密な型があるのはそのために導入された。
・命令数やコードの量が多くなる。
・ローカル変数からグローバル変数に直すような事も、C言語の様に宣言の場所を変えれば
済むようなことはなく、その都度丁寧にソースを見直して影響を受ける場所を加筆・修正しなくてはならない。
その際、沢山の命令の追加・削除・変更や、使うレジスタの変更も伴う。
・C言語のように「変数名を検索」すれば必ずしも関連場所が見つかるようなことは無い。
 レジスタで処理されている場合が多いため。
・BYTEからintに変更したいような場合も、命令やレジスタの大幅変更を伴うことが結構多い。
・関数に引数を渡すのも複雑な手作業のようになるので、作業量が多い。
・コンピュータの深い理解が必要。

などがあって実際のプログラミングは難しい。
0143デフォルトの名無しさん垢版2020/03/08(日) 15:45:51.69ID:nGQiIF3A
>>142
「C言語の生ポインタは、それを書いた場所とは全く別の場所で原因不明のバグを生み出すので
避けたほうがいい」
などという人がいる。
アセンブラでは生のアドレスによる間接参照を使うがそれはポインタをさらに危険にしたようなものなので、
とても書いた場所とはまったく別の場所でバグを生み出すことがある。
そうなると原因を探し出すのにとても時間がかかる。
そういうことがあって、アセンブラで大きなプログラムを書くことが出来た人は、
バグが非常に少ないプログラミングが出来る人か、または、バグが入っても
上手く原因を見つけ出すことが出来る人に限られた。
それが出来る人が非常に少数派だったので、できる人は天才、などと呼ばれた。
0144デフォルトの名無しさん垢版2020/03/08(日) 17:17:24.54ID:nGQiIF3A
>>143
さらに言えば、当時のパソコンは、現在の様な「保護モード」では動いていないために、アセンブラで書いたプログラムに間違いがあると「暴走」や「ハングアップ」「再起動」などの現象が起きた。
そうなると、パソコンをリセットしてOSを再起動して、またやり直す必要があった。
それに時間が掛かるのでバグが少なく書ける人で無いとアセンブラでプログラムするのはとても難しかった。
当時、BASICで書いていると間違いがあってもこのような現象がほぼ全く起きなかったので、それと比してもアセンブラは難しい印象を与えた。
なお、その後にパソコンでも使えるようになったC言語でも同様の現象は起きた。
が、アセンブラに比べれば間違いが起きにくかったのでアセンブラよりはだいぶ易しい印象を与えた。
0146デフォルトの名無しさん垢版2020/03/09(月) 12:44:30.49ID:Ojyuxyhi
バイナリっていうくらいだから元は2進数って意味だけど
今はビルド後のファイルやROMイメージという意味で使われる

2進数で表示すれば2進数だし
16進数で表示すれば16進数
256進数とも言えるし
base64形式なら64進数とも言える
0150デフォルトの名無しさん垢版2020/04/09(木) 07:50:24.19ID:jjLWwUCO
>>149
cと同じくらい。
ルールは少ないように感じるけど、実際作るとめちゃくちゃ不安定なものが出来上がるところとか。
0151デフォルトの名無しさん垢版2020/06/02(火) 02:09:50.37ID:DYRdhOXw
ぶっちゃけ、どの側も言語もそれぞれ難しさがあると思うけど、Haskellは抽象性が高いから、抽象的思考に慣れていないと、アプリのコード組めないと思う。

てことで、個人的偏見ありで、
Haskell >> C++ > C > Java, JavaScript > Python
■ このスレッドは過去ログ倉庫に格納されています

ニューススポーツなんでも実況