ぶっちゃけ始めるのにいい言語て何 part7

■ このスレッドは過去ログ倉庫に格納されています
2021/09/12(日) 12:56:23.75ID:5CNhVmk1
前スレ

ぶっちゃけ始めるのにいい言語て何 part6
https://mevius.5ch.net/test/read.cgi/tech/1628771431/
2021/10/06(水) 15:19:46.80ID:YLz2RbwR
古いJavaしか知らない知識で語ると
delegateと演算子オーバーロードがないせいで文法が歪んでる気がする
逆にプリミティブ型の扱いは使いやすさ云々除くと本当はjavaのようにあるべきなのかなーとも少し思うが、結局stringぐらい参照型であることを忘れて値型のように扱いたいって願望は出てきちゃう
2021/10/06(水) 15:26:59.55ID:iYMIscab
JavaやるならKotlinのほうがマシだろ。

ヌルポの無いJavaがあればまだオススメしやすいけど。
2021/10/06(水) 15:55:18.82ID:ksYOXyia
何年か初心者向けにJavaを教えていたことがあるけど、
「始めるのにいい言語」としてはイマイチな印象
理由としては

・Hello world をするにも(初心者にとっての)おまじないが多すぎて覚えにくい
・オブジェクト指向の概念を早い段階で習得させる必要がある
・基本型と参照型の区別が邪魔

くらいかな (プログラミング言語としては悪くないと思ってるけど)
経験的にはPythonかRubyがベスト。Cからでも悪くはない
2021/10/06(水) 16:28:45.47ID:YLz2RbwR
正直おまじないヤダーとか言うなら、もうjavascriptでよくね?って思う
環境用意すらいらんのが最強でしょう
576Mb
垢版 |
2021/10/06(水) 16:49:50.68ID:ACaN1g4Y
あぁ、そうですか (-_-!)。
> 単純に俺が嫌い
それは仕方がない。
> ネイティブコードまで落としてくれないので重い
それ言うたら LISP はどうやねん。
ネイティブコンパイラだけがコンパイラじゃねぇだろうが。
何がなんでも .obj に落とさにゃいかんのか?
だったら OS から仮想化しろっちゅー話になるやんけ。
> やってる奴がいすぎ
知ったこっちゃねーよ。
> 演算子オーバーロードがない
あれは善し悪しだぞ?
> プリミティブ型の扱いは使いやすさ云々除くと本当は
> Javaのようにあるべきなのか
IEEE に配慮しただけだっつーの。もうちょい簡単な言語が
別にあっても悪くないと思う。
> ヌルポの無いJavaがあればまだオススメしやすいけど。
がっ
> Hello world をするにも(初心者にとっての)おまじないが多すぎて覚えにくい
それはつねづねそう思う。
> オブジェクト指向の概念を早い段階で習得させる必要がある
つーか、「メッセージング」という概念をちゃんと教えろよ、と
思う。
> 基本型と参照型の区別が邪魔
それを言いだすとオートボクシングとか面倒臭い話に
なるんだよなぁ。
プリミティブ型があるから入門しやすいというメリットも
あるんだが。
2021/10/06(水) 16:58:47.72ID:YLz2RbwR
プログラマー11年目ワイ、デザパタもdddもRxもpubsubもわかるが、メッセージングが何を指してるのかわからない
578デフォルトの名無しさん
垢版 |
2021/10/06(水) 17:08:35.67ID:CjSIWhaj
printfやMessageBoxだよ
2021/10/06(水) 17:22:12.45ID:YLz2RbwR
なん...だと...
2021/10/06(水) 17:38:11.30ID:ksYOXyia
>>575
JavaScriptは言語仕様がかなり難しい(オブジェクト指向と関数型のハイブリッド)し、
実用的に使おうと思うとすぐにライブラリ依存の話になるので、
これまた初心者には向いていないと思う
2021/10/06(水) 17:39:25.77ID:UJEWl3ey
>>578
これはセンスいい
2021/10/06(水) 18:18:52.38ID:HwdaWcdV
Cから初めていいんだぜ
Cで挫折するくらいならそもそもプログラミングの適性ないんだからさ
2021/10/06(水) 19:51:18.18ID:Iajq5fkt
一理ある
2021/10/06(水) 20:23:26.06ID:UveQN7Hm
ポインタはたしかに適性を見極める第一歩になるよな
585Mb
垢版 |
2021/10/06(水) 20:43:58.99ID:ACaN1g4Y
>>577
> プログラマー11年目ワイ
> メッセージングが何を指してるのかわからない
まぁ、二十世紀の世代はそうだろうな。
「オブジェクト志向」というのは、昔は「算体主導言語」といって、
「算体(オブジェクト)」が、狙ったオブジェクトに
メッセージを投げると打ち返してくる、というコンセプトから
始まったんだ。
そんなわけで、基本は静的なオブジェクト(現在だと、static な
オブジェクトと、シングルトン実装されたオブジェクト)どうしの
メッセージのやりとりが基本なんだと思う。
そこから派生したのが、クラス定義から new されたインスタンスで、
内部変数以外は、どっかしらで定義されたコードを参照しているだけなので、
不要になるまではメモリに置かれているだけ、という話ではある。
そのあたりのカラクリは、Java の実行系のコードを追わないと
見えてこないんだが、それがよくできているので、JVM をベースにした
言語がいくつも生まれているという経緯がある。
586Mb
垢版 |
2021/10/06(水) 20:47:51.32ID:ACaN1g4Y
書いてて思ったんだが、
C のコードを JVM に落とすコンパイラを書いて、
そのコンパイラのコードを晒したら、
「ぶっちゃけ始めるのにいい言語」に
なりそうに思うんだが。
2021/10/06(水) 23:55:22.85ID:t05nCb8P
>>551
最初にC言語をやるのに同じく賛成
シンプルでありながら基本を把握するのにC言語はベストだと思う
もしC言語ですら理解できないならプログラミング適性がないと早めに知ることもできる話も同意

しかしC言語の次にC++やJavaは反対
C++もJavaも歴史的積み重ねによりシンプルな言語ではなくなっていることがその理由
C言語の次はシンプルかつモダンなプログラミングが学習できるRustがベスト
2021/10/07(木) 00:20:19.93ID:UIzBEmv/
環境構築が難しいからCはないな
まずは、VisualStudioでC#か、AndroidStudioかInteliJでKotlinだな

ある程度のライブラリの概念も知った方が良いしsplitすらないC++には度肝を抜かされたぜ
2021/10/07(木) 00:58:09.00ID:jA+Zs0kE
Cはたしかに難しい部分があるけど、C# や python も底なしのような気がしてきた
まぁ欲張らずに、どこまで使うか決めたらいいのだけど、それがなかなか難しい
2021/10/07(木) 02:06:40.29ID:r1vaezvA
コンソールアプリから始めるとしたら何でも良さそうな気がするけど。
後の進路が判ってるなら、最初からそれを選べば良いんだし。

最初からVSでGUIは止めた方が良いと思う。
既に用意されてるプロジェクトファイルが把握しきれない。
2021/10/07(木) 02:10:36.89ID:zfZmG7eF
Cの環境構築ってGCC入れるだけだじゃないの?
2021/10/07(木) 03:12:25.23ID:rhyTsq3P
>>591
それが初心者にできるか、ってことじゃね?
2021/10/07(木) 04:24:56.37ID:L6y4SXkD
>>590
同意
何でか仕様を一通りというか全部なぞらせようとする人多いけど
目標がはっきりしてから適切な言語でやればいい
2021/10/07(木) 06:36:58.88ID:zARHXhX9
Kotolin推奨してるのって何なの?
andoroid開発する以外に何のメリットがあるの?
null許容なんてバリデーションかませればいいんだし
2021/10/07(木) 06:48:09.88ID:/NxLR4OT
>>588
Visual Studio入れるならC/C++でも環境構築難しいとかないだろ
2021/10/07(木) 07:58:04.70ID:Z7i7oTy9
>>594
将来的にJavaがやってることが全部Kotlinに置き換わるからJava並の需要が生まれる
2021/10/07(木) 08:18:37.42ID:5yquuu60
>>573
所詮はJavaありきだし、あの独特な書き方はObjectiveCみたいで気持ちが悪い
Javaやってる方が賢い
2021/10/07(木) 08:18:59.82ID:5yquuu60
>>596
それは無いわ
2021/10/07(木) 10:21:18.77ID:tSoyVx3Q
>>596
KotlinはOracle不安定なんですけど
600Mb
垢版 |
2021/10/07(木) 12:06:39.91ID:r04zjL6z
>>592
> それが初心者にできるか、ってことじゃね?
そこは若い人の感性なので否定はしない。
その昔、IBM の「OS/2 Warp」というOS があって、
TV CM に山口智子が出演していた。
OS/2 は IBM と マイクロソフトの確執があったらしく、
マイクロソフトが Windows を推すにあたって邪魔だというので
潰された。
OS/2 Warp は、「デスクトップという概念が、ない!」という
画期的な OS で、しかもプリエンティブなマルチタスク OS だった。
601Mb
垢版 |
2021/10/07(木) 12:18:11.38ID:r04zjL6z
その OS/2 Warp の開発環境が、IBM の「ActiveAge C/C++」という
IDE だった。これが Eclipse の前身だ。
ところが OS/2 Warp がマイクロソフトに潰されたので、
Java 用に「Eclipse」(Sun に対抗したという噂があった)を
開発したのだが、「『IBM 製』っていうと、フリーソフトウェア
系のプログラマに対しては印象悪いよねぇ?」という理由
(だと思う)ので別会社にしたという経緯があったりする。
Java と Eclipse の組合せは開発環境としては悪くないし、
バージョン 1.4 でほぼ安定しているので、まぁ 5 とか
使っときゃ最新版でもきっちり動くので、
それはそれで初心者向きだと思う。
2021/10/07(木) 12:46:51.99ID:qQDkxEJX
(何もかも関係ない話だな)
2021/10/07(木) 13:27:12.22ID:NQ92UcB1
モンタニエ博士はイベルメクチンを推奨
MS系ワクチンは打つなと言ってるよ
2021/10/07(木) 14:02:15.02ID:mXJGjQlH
Javaの開発環境って,まだEclipseが定番なんですか?
2021/10/07(木) 15:55:11.02ID:tSoyVx3Q
VSCODEでJava作ってるぜ
2021/10/07(木) 16:34:12.31ID:82wRVZeJ
いま公聴会で話題のFacebookですら基幹システムをJavaからRustへ置き換えたのでしょ
Javaが優れてる点は無いのだからRustでいいんじゃない
607Mb
垢版 |
2021/10/07(木) 16:45:35.23ID:r04zjL6z
>>604
そんなもん知らんよ。使いなれてるから使ってるだけだ。
宮大工さんに「いまどき墨壺とか槍鉋とか手斧(ちょうな)とか
使ってるんですか wwwwww」とか言うのと似たようなもんだろ。
うちの近所は町工場が多いんだが、光明丹とかキサゲとか
擦合わせ定盤(じょうばん)とかはフツーに現役で
使われてるぞ?
608Mb
垢版 |
2021/10/07(木) 16:52:34.95ID:r04zjL6z
>>606
> いま公聴会で話題のFacebookですら基幹システムを
> JavaからRustへ置き換えたのでしょ
あれは別に基幹システムの話とは関係ないだろ。
Java が使えるような古参兵が他の業務に引っ張られちゃったので
新兵に Rust を使わせているだけの話だ。
つーか、Java が使えるルーキーもそれなりにいるだろうが、
そういう奴を集められない時点で、企業としての FaceBook の勢いが
墜ちているというだけの話じゃないか?
609Mb
垢版 |
2021/10/07(木) 16:58:34.39ID:r04zjL6z
>>606
> Javaが優れてる点は無いのだからRustでいいんじゃない
そういうことは、Rust が Java より優れている点を
具体的に列挙してから言ってくれ。
「自民党が優れている点は無い」とか言っている
立件民主党とか共産党とかとどこが違うかという話だ。
だったら Rust が政権を担えるわけでもあるまい。
2021/10/07(木) 17:10:35.64ID:tSoyVx3Q
GoogleはKotlinに関してOracleから賠償請求されてるっけ?
2021/10/07(木) 17:17:59.39ID:sszEonW2
GoogleはLinuxとAndroidをRustへ移行進めてるな
Linusも了承したので来年からRustへの置き換え開始
2021/10/07(木) 17:36:50.38ID:ovEQBNKZ
C#じゃなくてRustにするんだ
それはそれで楽しみだな
Javaはくたばれ
2021/10/07(木) 17:40:33.13ID:I+6aGzyK
>>606
言いたいことは分かるが
Rustは新しすぎてまだ定着していない。
ぶっちゃけ始めての言語として勉強して
すぐに廃れてしまいましたでは
勉強した人が可哀想過ぎる
2021/10/07(木) 17:41:13.98ID:sszEonW2
>>612
C#はガベージコレクションのあるおもちゃ言語なので無理
2021/10/07(木) 18:09:06.84ID:82wRVZeJ
>>613
RustはIT業界が総支持しているメインストリーム言語
メモリ安全性を保証しGCも無いRustよりも良い言語が存在しないため

>大手IT企業たちの方針

>プログラミング言語「Rust」のための「Rust Foundation」設立 -- AWS(Amazon)、Microsoft、Google、Mozilla、Huaweiが創設
https://japan.zdnet.com/article/35166267/

>Facebookが「Rust Foundation」に参加
https://japan.zdnet.com/article/35170192/
616デフォルトの名無しさん
垢版 |
2021/10/07(木) 18:37:06.59ID:UPeZZJQA
>>615
Huaweiが入ってるかsらダメ。
2021/10/07(木) 19:37:18.49ID:1MYnoZGB
>>612
C#は現状、手っ取り早くGUIアプリ組んだり出来るから、まだまだ便利。
っていっても、Rustもそういうのが揃うかもしれないし、
それまでじっくり言語機能を身につけるのも良いかな。
618Mb
垢版 |
2021/10/07(木) 20:56:15.21ID:r04zjL6z
ところで、
「Rust はガベージコレクション(GC)」がない
という話のソースはどこなんだろう。
「静的な GC がない」のは分かるのだけど、
「動的な GC(別名を WC(ウェイスト・コレクション。
日本語では、通称「便所掃除(べんじょそうじ)」といって、
一九八十年代から LISP 業界では一般的な呼び名))」は、
少なくとも SmallTalk 80 の時代から一般的だったように
記憶しているが、それは認知症の老人の妄想だろうかね?
せめてエビデンスを確認してから往生したいと思う。
2021/10/07(木) 21:06:28.71ID:iL6kZNBg
>>616
どうせ影響小さいんじゃね
2021/10/07(木) 21:34:03.44ID:4ZUcinjQ
別にRustだっていいんだがプロとしては現状JavaでGAFA等入ってから使うものなので
まあ今んとこJavaだよ
フロントならJS
2021/10/07(木) 22:06:14.52ID:9GfeYqSI
>>618
C言語と同じで、いわゆるGCというものは実装していないそうな。
ただ、そのままではゾンビ領域(いわゆるメモリリーク)ができてしまうので、
確保された領域へのポインタの持ち主(となる変数)が1つだけになるようにした。

ポインタが代入されると、領域の所有権も代入された側に移る・・所有権を
失った側のポインタを使おうとするとエラーになる。

これで、変数の消滅とともに領域を自動的に開放できるので、プログラマが
わざわざメモリ解放したり、GCで管理させる必要がなくなった。

というカラクリみたいね。
622デフォルトの名無しさん
垢版 |
2021/10/08(金) 05:08:48.20ID:sqiV0pTr
>>565
F#
なんかシティポップって感じ
2021/10/08(金) 08:24:34.88ID:WnvCCDtE
>>621
c++だとshared_ptrとの連携無しにunique_ptr強制するようなもんだから、それって初心者向けじゃないよなぁ。
624デフォルトの名無しさん
垢版 |
2021/10/08(金) 08:37:44.51ID:9j3s+x6l
 
●入門に良い言語の条件(filter)

@あまり難しい概念を理解しなくても使える
Aある程度商用で使用されている
B環境を整えるのが容易で敷居が低い
C利用範囲が広い

@でlisp,ruby他が落ちる
Aでgo,rust,pasca,perll他が落ちる
Bでjava他が落ちる
Cでphpが落ちる

残るのはc,c#,pythonになるかな
2021/10/08(金) 08:56:23.70ID:jZe9uUym
>>624
EXCEL VBA 最強じゃん!
2021/10/08(金) 10:29:15.40ID:gY+WvjIx
入門言語でプログラミングの汎用知識を得られることが大切
また、その言語独特の制約が多い言語は
汎用仕様以外の知識の習得が求められるので非推奨

javaの環境設定はvscodeなら簡単
2021/10/08(金) 11:36:25.57ID:hnD52j+l
>>624
pythonなんてどこが利用範囲広いの?w
2021/10/08(金) 12:12:18.53ID:7BI2b9Ni
広いかどうか知らんけどスクリプト系は覚えてて損無し
そんでその中じゃあpythonはユーザ数の面で突出してる

などと言いつつ俺はpythonはノータッチだけどw
2021/10/08(金) 13:09:50.43ID:S71oPZ0y
pythonは環境そろえるのが一番の難どころだったりするしな
はじめにやるにはダルいかもな
2021/10/08(金) 13:13:33.61ID:jZe9uUym
確かに日経ソフトウェアなんかもPythonありきで書いてるし、環境構築もVisual Studioぶち込めば終わりだしね。
2021/10/08(金) 13:17:20.39ID:EgdGtVHT
サーバー用言語では、YouTube で有名な、雑食系エンジニア・KENTA が言うように、Ruby on Rails が圧倒的。
つまり、Railsはプロの転職用フレームワーク

例えば、Ruby/Go による今世紀最大の起業家、
ワシントン大学の学生・Ruby製のVagrant の作者・Mitchell Hashimoto(HashiCorp)も、
今は、Go製のTerraform を作って、会社の時価総額が5千億円とか。
Rubyist じゃなくて、Goプログラマーを募集している

他のサーバー用言語、Django, Node.js, Elixir とか、ほとんど使われていない。
Laravel は、そこそこ使われているけど、KENTAは、PHP を一生やらなくてよいと言ってる

米国では、Node.js の求人は、Rails の2倍あるけど、900万円ぐらい。
一方、Rails は、1,300万円

給料の差が大きいから、たぶんNode.jsを使う人は、フロントエンジニアなのだろう。
Linux, AWS, Docker, Terraform, Cloud Formation などの、バックエンドを知らない人だと思う。
だから、給料が低いのだろう

AWS Solution Architect で、1,400万円とか、
バックエンドは格段に難しいから、給料が高い

だから、KENTAが、Rails → Go へ進めと言ってる。
つまり、Rails/Goは、バックエンドのプロの転職用言語

KENTAのサロンだけでも、3千人入っているから、
単独のフレームワークでは、日本最大のコミュニティーじゃないか。
他にも、各学校で教えているし、合計するとかなり多い

Vue.js 日本ユーザーグループの Slack では、3千人だろ。
KENTAのサロン単独でも、同じ人数
2021/10/08(金) 13:25:57.82ID:bEpP7OL4
laravel始めるぐらいならrailsしてろってのには同意するし
phpのコミュニティや文化よりruby・railsのコミュニティや文化の方が圧倒的にいいのは認めるが、謎の宣伝はアホ
というかphpプログラマーは質が低いのがなぜか多すぎる
2021/10/08(金) 13:58:00.52ID:aeUv8lv3
時代はKotlinだよ
2021/10/08(金) 14:41:00.77ID:jZe9uUym
お前ら
始めるのにいい言語じゃなくて
自分のお気に入り言語言ってるだけと違う?
2021/10/08(金) 15:08:44.53ID:Q4k4Ultl
>>624
>@あまり難しい概念を理解しなくても使える
>@でlisp,ruby他が落ちる

rubyを使うのに理解しないといけない難しい概念て何?

lispも特に難しい概念は理解しなくても使えるような気がするんだが・・・
2021/10/08(金) 15:19:22.54ID:Atwx9dZV
>>629
最初はAnacondaをインストールして,
Jupyter Notebookで実行するということで良いと思う
2021/10/08(金) 15:40:47.28ID:S71oPZ0y
>>636
Anacondaがいがいとクセが強いんだよな
具体的にはスクレイピングとかしようとライブラリいれるのに手こずりまくった
まあ3年ぐらい前の話だし今はまた違うのかもな
638631
垢版 |
2021/10/08(金) 16:00:16.57ID:EgdGtVHT
Ruby on Rails は、プロの転職用フレームワークだから、
Linux, AWS, Docker, Terraform, Node.js, Webpack, Bootstrap、データベースも入ってくる

基本、Linuxサーバーで、バックエンド技術者用。
それが非常に難しい

米国年収では、Railsは、1,300万円で、Node.jsは、900万円の差が、
Linux・データベースなどのバックエンドの知識

Node.jsの人ならフロントエンド技術者で、Firebase だから、給料が安い。
その代わり、ウェブサービスのシステムを作れない

だから、KENTAは給料が高く・求人が多い、
つまり、企業が欲しい人材は、バックエンドと言うわけ

それが、Rails → Go へのキャリアパス
2021/10/08(金) 16:00:40.04ID:Atwx9dZV
>>637
いや,Pythonに慣れてきたらAnacondaは辞めた方が良いと思う
ただ,初心者のうちならアレで慣れた方が良いんじゃないかな
2021/10/08(金) 16:08:52.53ID:gY+WvjIx
>>632
マークアップに関連する言語は
みんなwebデザインから入るから
そういうやつが多くなる
2021/10/08(金) 16:10:15.14ID:IkBxSSRk
>>623
そうね。
初心者だと、C言語のポインタの概念だけでも手こずるのにね。
プログラムを作ることより、言語仕様を学ぶことが目的になってしまって、
「中途放り出し率」が上がる気がする。

その点、昔のBASICインタプリタは手頃だったんだよね。
とりあえず数値の計算もできるし、画面に図形を描いてみたり、音を鳴らしたリっていうのも
簡単にできたし。困ったらGOTOで飛ばしちゃえばいいという(笑)

まずはお行儀が悪くてもなんでもとにかく書け、書いて動かせ・・そのうち構造化とか
オブジェクト指向とかのありがたみが分かってくる。
2021/10/08(金) 16:13:50.56ID:t6RIUN1U
>>638
node.jsがフロント?
2021/10/08(金) 17:16:28.54ID:Q2G8EV85
>>641 >>623
そこでRustですよ
初心者の範囲内ではポインタの存在など含めて全く気にすることなく使えるのもメリットです
もちろんメモリの解放なども全自動で行われますからRustなら初心者でも安全安心でプログラミングすることが出来ます
C/C++をしたことある人ならこの決定的な違いを理解できると思います
2021/10/08(金) 17:25:24.16ID:jZe9uUym
>>643
ちなみにComの開放とかも自動でやってくれるの?
2021/10/08(金) 17:31:23.32ID:7BI2b9Ni
>>624
> @あまり難しい概念を理解しなくても使える

難しい概念っていうとrustの所有権とライフタイムが真っ先に浮かぶわけだがw
2021/10/08(金) 17:56:40.63ID:Q2G8EV85
>>644
一般的に参照カウンタを必要とするものもRustはそういう型を言語としてサポートしているためカウンタの存在もゼロ時の自動解放も気にすることなく使えます

>>645
もちろんライフタイムの管理が必要な複雑なデータ構造を扱うモジュール等を作るには適切なライフタイム指定管理なども必須ですが
初心者や初級者はそんなことせずにそれらを利用するだけですよね
647デフォルトの名無しさん
垢版 |
2021/10/08(金) 18:25:03.56ID:Xtw1V5gY
あわしろ氏の一番弟子、ケンタがお勧めするRuby。
648デフォルトの名無しさん
垢版 |
2021/10/08(金) 18:26:28.16ID:Xtw1V5gY
RustはC++0xをパクっただけで目新しいものは無いのでは?
2021/10/08(金) 18:54:16.41ID:8/NjFzc1
>>643
「メソッドをコピーしたらなんかエラーが出て実行できないんだけど、なにこれ?」
という未来が見える。
650デフォルトの名無しさん
垢版 |
2021/10/08(金) 19:05:19.55ID:Xtw1V5gY
未来が見える邪眼持ちか。
恐ろしい。
2021/10/08(金) 19:21:46.04ID:Q2G8EV85
>>648
C++と異なりRustは他の言語の様にもっと抽象的に記述できる点が良いですね
それでいてC/C++と同等のパフォーマンスを得られます
さらに加えてメモリ安全性を保証することもRustの特徴です

>>649
どんなエラーですか?
エラーの意味と改善すべきアドバイスがコンパイラによって提示されていると思います
2021/10/08(金) 19:33:42.60ID:DgebbAei
RustはC/C++と同等の速度が出るというのはよく言われているけど、厳密に比べたらどうなの?
得意不得意はあれどトータルで見れば同等とみなせるのか、あるいはほぼ遜色ないけれども全般的にはC++に一歩譲るのか。
2021/10/08(金) 19:45:35.75ID:owwsg6GQ
>>652
C/C++/Rustはトータル同等
件により互いに逆転ありの数%の誤差
他のプログラミング言語が数倍遅いのと比べてC/C++/Rustは最速トップ集団
654デフォルトの名無しさん
垢版 |
2021/10/08(金) 19:47:19.45ID:Xtw1V5gY
ってことは、FORTRANのほうが速いってことだね。
2021/10/08(金) 20:06:55.00ID:ARqzMx28
C>C++>>Rust
こんな感じ
2021/10/08(金) 20:23:08.86ID:7BI2b9Ni
rust vs c
https://benchmarksgame-team.pages.debian.net/benchmarksgame/fastest/rust.html

rust vs c++
https://benchmarksgame-team.pages.debian.net/benchmarksgame/fastest/rust-gpp.html

reverse-complement
source secs mem gz busy cpu load
Rust 0.45 498,964 3040 0.77 25% 23% 100% 25%
C++ 0.52 1,788 1853 0.52 0% 98% 0% 2%
C 0.86 712,208 820 1.27 99% 28% 1% 19%

mandelbrot
source secs mem gz busy cpu load
C++ 0.84 34,780 3542 3.27 99% 98% 98% 96%
Rust 0.93 32,676 763 3.70 100% 99% 100% 100%
C 1.27 31,792 1135 5.08 100% 100% 99% 100%
2021/10/08(金) 20:25:00.84ID:owwsg6GQ
誤差だよ
一方で例えばPythonはC/C++/Rustと比べて10倍遅いといったように歴然たる差がある
658Mb
垢版 |
2021/10/08(金) 21:46:19.21ID:DoIXsJjh
うーん …… 今はGUI善政だから、
「ちょっと書いてみて動かせる」っていう言語は
ないんだよね。
昔のCUIの時代だと、BASIC とか Rexx とか。
いろいろあったんだけどね。
なにかしら簡単なIDEっぽいものがあって、
そこでチョコチョコっと使える言語ってないのかなぁ。
みんな、HTML とか CSS とかのファイルって、
どんなエディタ使って編集してんの?
2021/10/08(金) 22:36:41.84ID:YFzygr5T
C言語も、本当に独りで学ぶのでなく、質問に応えてくれる人がそばにいればまったく違うかもしれませんね

もし、的確な指導があっても理解できなければ(ポインタなど)、向かなかったといあまでだし、大概は越えられると思うんだよね
2021/10/08(金) 23:33:06.69ID:owwsg6GQ
>>658
今は超例外を除いて手動ではなくデータ→HTML生成はプログラムがするとご存知のはず
昔はそのデータ→HTML生成をサーバーサイドでしてきたが
今はブラウザが差分データだけサーバーからもらってブラウザ内でHTML(DOM)生成する
これでトラフィック減少・サーバー負荷減少・ページ表示速度高速と良いことずくめ

しかしサイトが初めてアクセスされた時にこのブラウザがHTML(DOM)生成する方式だと表示されるまでが非常に遅い
これはブラウザへの生成プログラムのダウンロード+各種必要データのダウンロード後に初めてHTML(DOM)生成開始となるため
そこでサーバーでもデータ→HTML生成すればこの問題を回避して普通に遅くなくページを表示できる

結果的にサーバーでもブラウザでもデータ→HTML(DOM)生成をしている
もちろん同じページ生成のために同じデータを使いほぼ同じプログラムだ
同じプログラムなら複数のプログラミング言語で書くのは無駄なのでサーバーサイドでもブラウザで動いているJavaScriptコードを動かしてデータ→HTML生成するようになったのが現在
661デフォルトの名無しさん
垢版 |
2021/10/09(土) 05:27:38.31ID:gzYYdcqw
Haskellの教科書買ったけど途中から急に難しくなった
型クラスとか意味分かんない
2021/10/09(土) 06:56:29.01ID:R2pk9+pc
>>658
みんなだいたいVisualStudioCodeじゃないのかね。
HTML+CSS+Javascript書いたときも、結構便利だったよ。
663デフォルトの名無しさん
垢版 |
2021/10/09(土) 11:06:39.96ID:61XmRVCq
魏志偉人伝。
2021/10/09(土) 12:13:11.12ID:aE+I1ePy
>>662
VSCodeは多少の設定いるけど、変態C++でも割としっかり目にコード解釈してくれるから、
他の言語の対応も良さそうなイメージがある。
VSCodeとRustとか入れて、デバッグまで出来るようになったて多少かけるようになったら、
気になる言語いくつか入れて遊ぶのもが良いかもね。
2021/10/09(土) 15:00:58.93ID:wqgLuFMm
>>621
だったら素直にそう言ってくれよ ……
日本語処理とかだと、可変長データが山ほど出てくるので、
言語に制約がかけられると非常にコードが書きづらい。
制御畑の人間は固定長のエリアと固定長のバッファでいいかもしれんが、
それ以外の世界もあるんだよ。
666デフォルトの名無しさん
垢版 |
2021/10/09(土) 16:26:15.09ID:/xiMgjvY
ここだけ時空が20年遅れてるスレ
667デフォルトの名無しさん
垢版 |
2021/10/09(土) 16:30:41.28ID:61XmRVCq
あわしろ氏がお勧めする数学志向言語Haskell。
668デフォルトの名無しさん
垢版 |
2021/10/09(土) 18:00:06.57ID:gzYYdcqw
あわしろに騙された!!
2021/10/09(土) 18:46:56.38ID:2U5J/F5Q
>>665
それならRustを使えば可変長データも全自動でGCもなく安全かつ速いよ
2021/10/09(土) 21:33:43.61ID:wqgLuFMm
>>666
二十年前からプログラマをやっていて、
ここ二十年ほどプログラミング言語が進歩していないという
現実から目を背けている奴が何を自慢したいのか、
だれか教えてくれんかな。
2021/10/09(土) 21:38:37.04ID:wqgLuFMm
つーか平山尚さんなんかは自分で Sunaba を実装したわけで、
「始めるのにいい言語」が欲しかったら自分で
実装すりゃあいいだけの話だろ?
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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