結局C++とRustってどっちが良いの? 4traits

■ このスレッドは過去ログ倉庫に格納されています
2023/06/06(火) 19:13:06.15ID:ZuKzBsFa
「C++の色々配慮してめんどくさい感じは好きだけど、実務になったらメモリ安全性とか考えて今後Rustに変わっていくんかな」
「うだうだ言ってないで仕事で必要なのをやればいいんだよ、趣味なら好きなのやればいい」

っていう雑談スレ。

前スレ: 結局C++とRustってどっちが良いの? 3traits
https://mevius.5ch.net/test/read.cgi/tech/1683154196/

関連スレ(マ板): Google&MS「バグの70%はC/C++。Rustにする」
https://medaka.5ch.net/test/read.cgi/prog/1619943288/
428デフォルトの名無しさん
垢版 |
2023/06/18(日) 20:25:16.45ID:CGxTfS6L
>>369
と池沼が申しております
429デフォルトの名無しさん
垢版 |
2023/06/18(日) 20:29:05.69ID:CGxTfS6L
>>419
うんうん、ここなら話聞いてもらえるから嬉しいよねw
2023/06/18(日) 20:32:06.32ID:V6vsXhHr
でもオープンソースにこんな問題があるだなんて考えたことなかったなあ
2023/06/18(日) 20:53:18.84ID:rH7T/agD
空気中の酸素とか無料だけど文句言わないのかな
酸素企業が潰されてるだろ
2023/06/18(日) 21:43:34.71ID:V6vsXhHr
酸素には別に問題ないだろw
433デフォルトの名無しさん
垢版 |
2023/06/18(日) 22:07:22.87ID:6p1I/dm4
>>387
そうなのか。まあ、でもGoogleやMicrosoftの規模ではないよね。だってこの二社はかなり多分野でオープンソース化目指してるじゃん。AppleのはMacとios用のC++コンパイラのためかな。でも、Appleはそんなに多くのことをオープンソース化目指してないと思うんだけど。結構、秘密主義の企業じゃないの?
2023/06/18(日) 22:11:57.15ID:Kh0krmy9
秘密主義だが、投資もするってことでは それなら整合する
2023/06/18(日) 23:09:17.68ID:smRFYZs8
秘密主義者を2人雇ったらどっちが有能でどっちが無能か全然分からない
分からないなら終身雇用するしかない
436デフォルトの名無しさん
垢版 |
2023/06/19(月) 01:00:01.18ID:s0haGW1/
とりあえずオープンソース反対で書き込みまくってる人がいるけど、オープンソースの使えなかったら殆どプログラミングとかできなくね?
2023/06/19(月) 01:31:13.06ID:AAfwSKV1
>>436
プログラムを作る道具が有っても、肝心の「水源」が壊されて
しまったので、作っても売ることができないので意味が無い。
2023/06/19(月) 01:36:17.98ID:AAfwSKV1
オープンソースにより、道具が無料になると同時に、道具で作った
ものを売る先が無くなった。これを
 「オープンソース化による水源の枯渇」
という。
2023/06/19(月) 01:37:44.44ID:pewHg6Ha
別にソフトを作って売るだけが商売じゃないし
2023/06/19(月) 01:54:01.65ID:AAfwSKV1
>>439
それは批判を誤魔化すための常套句。
実際には不可能。
2023/06/19(月) 03:21:25.27ID:w1LQYEut
立場を隠して一方的に吠えてるだけなのに批判できてると思ってるのが笑える
2023/06/19(月) 07:42:50.30ID:PpJy5R23
水源なくなるとか言ってるけどさ、その道具や標準ライブラリそのもを売るわけじゃ無いのにね
2023/06/19(月) 08:36:18.72ID:LQkOburK
形而上学的リソースが枯渇したと主張しても信用されなくなってきてる
だから炭素の収支をニュートラルにするほうが現実的になった
2023/06/19(月) 09:28:39.22ID:Q4g6N6uX
>>440
それはお前が適応出来ていないだけ
2023/06/19(月) 12:34:00.62ID:w1LQYEut
俺も「光源」が枯渇してるからプロプライエタリは悪だと思うぜ
446デフォルトの名無しさん
垢版 |
2023/06/19(月) 13:38:06.57ID:QVE4W81K
Rustは機械学習関連のRust純正クレートがpython並みに充実してくれば、十分に覇権をとれるポテンシャルがあるきはする。
2023/06/19(月) 13:46:48.01ID:Q4g6N6uX
>>446
それどの言語にも言えね?
2023/06/19(月) 14:09:37.93ID:v7vhWfXi
今から学ぶならrustな気がしてます
2023/06/19(月) 14:34:32.67ID:YrqvQ+iA
何を作りたいかで考えた方がいいと思う
2023/06/20(火) 00:56:12.42ID:E4eGDa3W
Linux MintでFirefoxを使っている
FirefoxはRustで書かれているというけどGoogleMapのストリートビューを使っていると
メモリの空きが目に見えて減っていき最後にはハングする

Rustだから良いというわけではない
2023/06/20(火) 01:37:03.32ID:VutPP0gw
>>450
DOMとかJS周りの話でRust関係なさそう
2023/06/20(火) 01:39:13.90ID:5PZwyWwz
>>450
Firefoxの一部のライブラリがRust製なだけだったような
あれだけ巨大でモノリシックなもの全体をRustにするには長い時間がかかる
一方でモノリシックでないマイクロサービスなど個別に独立しているものは移行が速い
あとは移行ではなく新規案件のプロジェクトはもちろん強い
2023/06/20(火) 05:12:44.56ID:MOVwkLQ/
Google Map っていかにもメモリー開放をしなさそう
循環参照もしやるそう
他のブラウザに比べメモリを食いつくすのが早いのだとすると
他の言語と条件は一緒だから Rust での書き方が下手という
結論になるけど
ハッシュの初期値の設定が大きすぎるとかいう可能性もあるけど
2023/06/20(火) 05:52:17.96ID:3+Ulp7UK
>>453
Rustは関係ない
Google MapはC++やRustを実行しない
Google Mapが実行するのはJavaScript
FirefoxのJavaScriptエンジンは大昔からSpiderMonkeyでC/C++製
だからRustは関係ない
2023/06/20(火) 08:53:31.92ID:kHT6BzKp
まあそのうちトランスパイラ書く人が出るだろうし
2023/06/20(火) 09:42:47.48ID:ql8hBBAW
Rustでwebブラウザぐらい作ってみせたらいいのにね
2023/06/20(火) 09:58:52.14ID:3+Ulp7UK
どの分野でも巨大なものをすぐに別の言語に置き換えるのは時間もコストも掛かり全く無駄だ
一方で様々なシステムを新たなものにしたり新たに作るならば開発効率の良いRustが採用されていってる
そうやって社会全体でみれば時間をかけてRustへ置き換わっていくのだろう
2023/06/20(火) 10:26:54.05ID:vGfe0Eju
そんな調子では書ける人が一向に増えないので普及とは程遠い状態だろう
知る人ぞ知るマニアの言語の一つになるような気がする
459デフォルトの名無しさん
垢版 |
2023/06/20(火) 10:59:29.19ID:2T4Y6uqL
>>456
Rustユーザーの裾野を広げるにはゲーム開発用のクレートを充実させる方が有効な気がする。そうすればゲーム開発を始めるプログラマーがC,C++,C#ではなく、Rustを最初の言語に選ぶ確率が上がるし。
2023/06/20(火) 11:25:17.05ID:kHT6BzKp
>>457
どのくらい迅速に置き換わるかは、C++に留まるかどうかに関係するぞ
どう考えたって、C++にも来るほかないトレンドだし > unsafe

C++にunsafe来る -> そんじゃ勉強するしかない -> できるようになったしC++でいいやもう になる
461デフォルトの名無しさん
垢版 |
2023/06/20(火) 13:19:55.14ID:8A36Uzhp
>>450
Firefoxoはほんとにxo
2023/06/20(火) 13:23:52.08ID:8A36Uzhp
>>460
しっしっ
あっちいけ
463デフォルトの名無しさん
垢版 |
2023/06/20(火) 13:41:27.35ID:XGNnSiGk
C++にラストの機能がきたところでライブラリが全て追従するわけじゃないでしょう
2023/06/20(火) 15:22:31.87ID:kHT6BzKp
人気の高いものは漸次追従するっしょ
やってた人はそれなりにうんざりきてるだろうし

>>462
うっせえはげええ
2023/06/20(火) 15:29:26.80ID:TqfMpqvU
まぁ勢いはあるやろな
以降の圧力がある程度以上で業界でRust移行がトレンドになって新規案件でRust採用事例が増えてくればそれが呼水になってさらに移行圧が高まって‥も考えられるけど一方で
安全性何それ美味しいので知らんふり、様子見が大半でどこも移行しようとせず、一向にRust採用事例が増えないなら、仕事もないのに勉強なんぞするかボケになる
そしてこの手の空気というかトレンドというかは全く読めんからどうなるかさっぱりやな
2023/06/20(火) 15:46:02.31ID:kHT6BzKp
安全性何それ美味しいの、はないとおもうけど
Rust(Dart,Swiftも同様)何それ美味しいの、は言う人いるかもね
モバイルやってなければなおのこと
2023/06/20(火) 16:15:55.01ID:YtQ3bilC
この動画のタイトルと出だし見てMS teamsがtauriになったと勘違いするオッチョコチョイがいるかもしれない
https://www.youtube.com/watch?v=BjQv8-18MW4

実際にMS teamsはパフォーマンス不足を理由にelectron辞めた訳だけど
結果はtauriを選ばずC++WinUI

採用事例をひけらかすのなら、非採用事例、不適格理由も枚挙しないとね
この辺り考察ある?
2023/06/20(火) 17:16:36.13ID:ql8hBBAW
Rustはなんだったらできるの?
何が得意なの?
2023/06/20(火) 17:20:28.70ID:hxrQMph/
まぁアナウンスされてる通りコンパイル時点で検出できる脆弱性が増えるとかじゃないの
知らんけど
2023/06/20(火) 18:17:15.14ID:80SjVrab
>>468
得意ってなんだよw
気色の悪い
2023/06/20(火) 18:25:56.89ID:06Fb/Gz+
非採用事例
C++はLinuxカーネルに採用されないからLinuxデスクトップ系
C++はCPythonに採用されないからJavaScript系
2023/06/20(火) 19:23:18.83ID:oVysXVOG
>>471=Qiitaから来た偽物か本物の手抜きだな
本物の複オジはRustに見切り付けてJavaScriptフロントエンドを煽り初めてるぞ
2023/06/20(火) 19:37:03.81ID:FDgZeyem
「『C++を経験した人』がRustを好きになる」説があるが、
C++を長年経験して大規模プログラムを作ってもも頭が良すぎると
メモリ関連バグに全く遭遇しないのでRustの良さが感じられない。
2023/06/20(火) 19:46:11.03ID:hFVGfJKF
>>473
何これ?これが複オジの現在形なのか?<ズコー
2023/06/20(火) 19:50:31.33ID:FDgZeyem
メモリ関連バグの遭遇率や困りさ加減は当然ながら個人差があるもの。
うっかりミスが多い人や、バグが出たときの原因特定や対処が
下手な人にとっては困るが、それが当てはまらない人も存在する。
そして、今まで優秀とされた人は、それらが上手く行っていた人。
上手く行かなかった人は高速なアプリが作れなかったから、良いソフトは
作れなかった。
だからRust信者は、良いソフトを作ったことが無い人が多いはずだ。
2023/06/20(火) 19:56:44.38ID:hFVGfJKF
マジだった<ズコー解散
2023/06/20(火) 20:11:23.59ID:hFVGfJKF
勘違いかも知れないからしばらく様子見にする
2023/06/20(火) 20:16:50.04ID:VutPP0gw
頭が良ければミスしないから無視して良いという考え方は
プログラミングに限らずエンジニアリング一般として
排除されるべきものなんだけどね
2023/06/20(火) 20:18:31.24ID:4GGWBlC0
そいつはC++派の数学天才大先生だよ
2023/06/20(火) 20:50:54.50ID:kHT6BzKp
ミスするバカだからRustありき、と言われて、ウンって言えないわな
俺はそんなミスしねーよとしか返しようがないw

C++だって、とうの昔から、型チェックだの、assertだのとチェックの恩恵は受けてるんだけどね
Rustが正しいと業界が認めたんなら、C++にもとっとと所有権関係きてほしい
2023/06/20(火) 21:03:21.76ID:SQUZYpcX
>>467
その件はRustとC++の話とは関係ない
ElectronもTauriもWeb技術つまりHTML/CSS/JavaScriptでGUI部分が記述されWebブラウザと同じ
つまりWebブラウザと同じフレームワーク含めたコードとデータを使ってデスクトップアプリを作れることが利点
Visual Studio CodeがElectronで作られているようにほとんどの利用ではパフォーマンスに問題はなくマルチプラットフォームの恩恵もある
しかしそれらWeb技術ベースではなく直接GUIライブラリを呼び出したほうが少し速いし更にOS固有のライブラリを呼び出した方が少し速いのも当然だ
そこは何を重視するかで変わる
その例だとWinUIを直接呼び出す選択をしたという話だろう
2023/06/20(火) 21:04:54.13ID:OJ/rnI9Q
>>479だね、このタイミングで同時出現した理由は不明だけど
http://hissi.org/read.php/tech/20230620/RkRnWmV5ZW0.html

別スレみたら 複おじ=はちみつ はhissiで確定してるっぽい
仮に>>472が本当ならトリップ付きで表明しないと偽物が濡れ衣きせ放題だよね

でも今後も自演なりすまし、Rustでマウント嘘大げさばら撒く気満々だと思われ
2023/06/20(火) 21:15:52.12ID:OJ/rnI9Q
ほら、これこれ>>481
なんの情報もない前置き、プロンプトエンジニアリングで消したいわ
最後の一文もRustからWinUI直呼び出来るのに、なんでRust却下だったのかは話逸らし

マイクロソフトが評価してGUIに向ていないと結論出したのが大きいよ
2023/06/20(火) 21:30:35.90ID:SQUZYpcX
>>483
ちゃんと理解できているか?
元々C++で本体を書いていてGUI部分がElectronだったのをWinUIへ切り替えた話だぞ
当然C++による本体部分はそのままなのだからWinUI呼び出しにRustを使うわけがない
もし仮に元々Rustで本体を書いていてGUI部分がTauriだったのをWinUIへ切り替えるならばそこだけC++を使うわけないのと同じだ
2023/06/20(火) 21:50:52.83ID:yTQuVHz5
え?>>484はelectornアプリ書いたこと無いんかwww

旧Teamsのnative部分なんてほんのわずかだったと思うぞ

その僅かな部分さえRustに置き換えるメリットがないと
マイクロソフトが評価した
という事から目を逸らすなよ
2023/06/20(火) 21:59:22.19ID:06Fb/Gz+
本体のソースが僅かでもビルドツールを変えるのが超面倒くさそう
2023/06/20(火) 22:05:38.07ID:yTQuVHz5
マイクロソフトが評価した:
ビルドツールを変えるメリットもなし
2023/06/20(火) 22:15:37.37ID:yTQuVHz5
>>471は大丈夫か?ちょっと心配になるレベル
2023/06/20(火) 22:43:42.63ID:Z2DS3pTa
>>485
GUIがメインのおもちゃなプログラムだとネイティブ部分がごく僅かもあるかもしれないけど
普通のプログラムならネイティブ部分が主要部だよ
もしGUI部分にはGUI以外も記述しているなら酷いよ
2023/06/20(火) 22:54:00.81ID:yTQuVHz5
>>489
一言だけ言うけどvscode最適化のblog見た方が良いよ
2023/06/21(水) 00:54:28.81ID:yg4jaQpK
>>473
遭遇しなかったらrustは生まれてないだろw
必要ないのだから
2023/06/21(水) 01:34:53.97ID:9X2c1iiY
デストラクタが呼ばれないバグまたは仕様が大量にありそう
2回呼ぶより0回の方がマシだから呼ばない
0回を1回に改善する度胸はC++には無さそうだ
2023/06/21(水) 01:40:34.87ID:CWKUsltc
>>491
頭は別に良くないけど俺は必要性を感じないな
newを直接書かないだけ
494デフォルトの名無しさん
垢版 |
2023/06/21(水) 01:41:22.60ID:CWKUsltc
>>492
???
2023/06/21(水) 01:44:16.17ID:yg4jaQpK
>>493
その程度なら何も問題を理解できてないからrust使った方がいいよ
まあmainのみのコードなら別にC++でいいと思うけど
2023/06/21(水) 01:48:00.26ID:hIXW3K+V
>>495
その程度なら何も問題を理解できてないからrust使わなくていいよ
まあmain.rsのみのコードなら別にRustでいいと思うけど
497デフォルトの名無しさん
垢版 |
2023/06/21(水) 01:57:47.17ID:CWKUsltc
>>495
具体的に書きなよ
それでは議論できんだろ?
2023/06/21(水) 01:58:43.32ID:CWKUsltc
>>492
ひょっとしてC++のデストラクタは手動で呼んでると思ってる?
2023/06/21(水) 02:07:24.26ID:9X2c1iiY
>>498
古いコードの互換性を切り捨てていないならそうなると思ってる
2023/06/21(水) 02:09:24.33ID:CWKUsltc
>>499
もしやC++のデストラクタって手動で呼んでた時代があった?www
うそやろw
2023/06/21(水) 02:10:15.27ID:yg4jaQpK
>>497
どうせお前反応しないから書くわけないだろ
2023/06/21(水) 02:10:48.86ID:CWKUsltc
>>501
反応するよ
2023/06/21(水) 02:14:26.08ID:yg4jaQpK
わかったから
何も理解してないのだから大人しくしとけ
2023/06/21(水) 02:16:55.88ID:hIXW3K+V
理解と信頼を得るために、Rustを使う。いい判断だ

俺はC++でたくさんだ
2023/06/21(水) 02:24:38.85ID:CWKUsltc
>>503
議論にならんだろ? 具体的に書けよ
2023/06/21(水) 02:26:49.12ID:yg4jaQpK
別にC++がダメとは思わない
最近の機能を駆使すれば相当安全なプログラムは書けると思う
ただあまりにもバッドパーツが多いのよ
2023/06/21(水) 02:27:24.03ID:yg4jaQpK
>>505
ヒント:オブジェクトのコピー時に起きることは?
2023/06/21(水) 02:33:04.46ID:hIXW3K+V
>>493 は釣り。C++使いなら当然理解してる。
そこを踏み込んで殴ってみた>>495 は先手。不利は覚悟の上だよな?

>>506
取り繕っても無駄
2023/06/21(水) 02:34:56.87ID:hIXW3K+V
>>507
ヒント:オブジェクトのコピー時に実装者の脳内に起きることは?
2023/06/21(水) 02:35:56.67ID:CWKUsltc
>>507
議論するならちゃんと書け
2023/06/21(水) 02:38:30.13ID:yg4jaQpK
ほら反応しないw
予想通りすぎてワラケテクル
2023/06/21(水) 02:39:26.43ID:yg4jaQpK
>>510
お前こそちゃんとかけ
ほらヒントは出したぞ
何が起こるか
その時考えられる不具合は?
C++使いならこの不具合はすぐピンとくるんよ
2023/06/21(水) 02:41:29.54ID:yg4jaQpK
結局発狂で終わるいつもの彼だった
2023/06/21(水) 02:41:57.81ID:yg4jaQpK
寝る前におちょくれたから満足
おやすみー
2023/06/21(水) 02:44:23.21ID:hIXW3K+V
ちな俺も言い返せて満足したので寝る またな
516デフォルトの名無しさん
垢版 |
2023/06/21(水) 02:45:00.13ID:CWKUsltc
>>511,512
以下がお前の最初の書き込みだ
>>495>その程度なら何も問題を理解できてないからrust使った方がいいよ
「問題」を書け
2023/06/21(水) 07:51:59.20ID:BoU8Mg0d
初めて書き込む者ですが
結局メモリ管理をプログラム言語に任せるか自分でやるかって差だと思うのですよ
メモリ管理でバグは出ると言う人はじゃあ言語にメモリ管理を任せてもバグは出るって事になるじゃないですか
最終的にメモリ管理をきっちできるかどうかできっちりできる人は自分で管理できるんですよ
2023/06/21(水) 08:16:06.70ID:SwjUevsl
>>517
GoogleやMicrosoftやAmazonなどライバル同士のIT大手が手を取り合ってRust Foundationを設立しRustへ移行しつつある理由はメモリ管理だけでなくあらゆる点でRustが優れているためです
まずはRustも使いこなせるようになってみましょう
他のプログラミング言語と比べて優れていることを誰でも理解できるでしょう
食わず嫌いの人はこのスレに参加する権利がありません
2023/06/21(水) 08:42:12.23ID:uufs1S4J
メモリ管理の事を言っただけで好き嫌いがあるという事にされて書く権利とか何故か自分に権利があるか如く言う人がいるのがrustなんですね
2023/06/21(水) 08:46:53.83ID:PH1LdoZ4
まぁしかしこれが流行るかどうかのキモでもある
要は正解はひとつじゃないのに何でお前の見つけた正解だけでオレの流儀の正解は正解にしてもらえないの?オレの流儀でもうまく行ってるんだからほっといてくれや、小難しい言葉ばっかり使いやがって、ほっとけや‥となる
「コンパイラが間違いを見つけるチャンスを増やす」=「今までどうでも好きにできたものを“こっちにしろ”と強要される」わけでしかもそれで何か「今まで出来なかった事が何か新しくできるようになる」感じはほとんどないからな
使わない人は永遠に使わない気もする
2023/06/21(水) 08:55:22.51ID:/+I3kGvO
> 食わず嫌いの人はこのスレに参加する権利がありません

ダウトw 食わず嫌いで愚痴ってる俺も混じってるぜw

>>1 のとおり、マなら、やれといわれたらやるんだが
自分用はねえ

あ、Rustのメモリ管理がC++にも来るのが前提な あれはいいものだ
2023/06/21(水) 09:06:03.20ID:tOHaDLj+
メモリ管理もいいけどそれはオマケだな
Rustは各言語で育った最新のプログラミングパラダイムが有機的に洗練されて採り入れられていて書きやすい
C++にもそのうち一部はあるが継ぎ接ぎ増築のせいで使いにくく普及していない機能が多い
快適さが天と地ほど異なりC++には戻りたくない
2023/06/21(水) 09:37:22.69ID:0qOyuZMD
そうね
今からキメラCやるよりRustの方が合理的
2023/06/21(水) 10:22:22.83ID:3v7xwtLO
Rustの独習本でたら買おうと待ってるんだが出ないな
需要がないのかな?
525デフォルトの名無しさん
垢版 |
2023/06/21(水) 10:43:34.18ID:aGqo09sZ
そう言えばRustメインでWebアプリを製作してるって日本の企業があった気がする。
2023/06/21(水) 10:48:44.70ID:tOHaDLj+
このネット時代にどのプログラミング言語を学習するにしても書籍は不要だろう
どうしても書籍がいいなら本屋に何種類もRust本が並んでいるから好みのを買えばよい
おすすめはオライリーの『プログラミングRust 第2版』だがもっと入門に徹したものが欲しいなら立ち読みで探せ
2023/06/21(水) 10:56:40.50ID:0qOyuZMD
TRPLを日本語以外で読む
2023/06/21(水) 11:09:23.56ID:LnEQtJHf
>>520
Effective C++ってのを購入しないとC++の正解には到達できないんだろ?
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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