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

■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
垢版 |
2021/08/12(木) 21:30:31.00ID:IpKRzNiB
前スレ

ぶっちゃけ始めるのにいい言語て何 part5
https://mevius.5ch.net/test/read.cgi/tech/1622766330/
2021/08/13(金) 00:17:38.12ID:m/X855Un
おつ
3デフォルトの名無しさん
垢版 |
2021/08/13(金) 14:39:21.94ID:UG8FRdqC
py
2021/08/13(金) 15:18:27.48ID:lQ/991K5
TTSneo
5デフォルトの名無しさん
垢版 |
2021/08/13(金) 17:09:25.73ID:J2at1RKQ
大手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/
6デフォルトの名無しさん
垢版 |
2021/08/13(金) 22:13:52.07ID:ee2a2HuU
IT業界的には全会一致でRustだね
2021/08/13(金) 22:42:33.13ID:m/X855Un
C以来のでかい一発だな。
2021/08/13(金) 22:53:13.94ID:QAwtLRlY
様々なベンダーが一斉に支持した言語と言えばJavaもあるからそれに次いで、ってところだな。
実際のところJavaがOracleの手に落ちてからサーバーサイドの移行先を模索する動きが加速して
それも後押ししたような気も。
9デフォルトの名無しさん
垢版 |
2021/08/13(金) 23:08:33.69ID:jR4MRFI8
RustとJavaを比べると
@いずれのベンチマークでもRustがC/C++並に速くJavaは遅い。
AJavaはJVMなだけでなくGCランタイムがある点でも重くて不利。
BRustは新しい言語名だけあってモダンな機能が洗練かつ強力でJavaよりプログラミングしやすい。
Javaは競合するRustに対して完敗なので今後は非常に厳しい状況になりそうですね。
2021/08/13(金) 23:51:33.89ID:cDrO+Awf
最新のJavaはJVM抜きでいきなりexeファイルを作ったり、
GCのタイミングを選べるようになっているが
それでもだめか?
11デフォルトの名無しさん
垢版 |
2021/08/14(土) 00:58:23.90ID:MdzN24yT
>>10
それでもRustの方が速い上にGC自体が存在しないRustが有利
さらにRustは並行並列プログラミング時のメモリ安全性などでも有利
Javaが勝てる点が見当たらない
2021/08/14(土) 01:27:36.22ID:5cje9KlX
Rustの欠点って現段階では国内で流行るかどうかわからないのとそれに付随して学習コストが高いぐらいしかないな
2021/08/14(土) 01:29:12.67ID:5cje9KlX
Rustは組込みにも使えるのが強いな
2021/08/14(土) 10:24:01.35ID:CLyFHztI
Rustの安全性高いといっても
ファーウェイやサムソンが協賛してるのが気になる
2021/08/14(土) 10:31:53.86ID:gPb1x7tb
まぁまだまだ時間掛かるやろな
メリットがコストを上回ってると判断されるか
エンジニアの数、実績
課題は山積みだからな
Java自体もOpenJDKの流れができてからは企業もJavaから置き換えなきゃとかいう意識は減ったしな
メモリアクセスなんかもForeign-Memory-Access-APIとか開発されてるしコミュニティも危機感を認識していろいろやってるしどうだろうね
16デフォルトの名無しさん
垢版 |
2021/08/14(土) 13:07:56.06ID:Kjr+S4As
>>11
昨今のマシンはギガ単位のメモリを積んでいるので
GC をしなくてもプロセスの終了まではけっこう動くし、
(オブジェクト志向じゃないけど)Ada なんかは
航空用の組込みシステム用に作られていたので
可変長データのアロケーションと解放(フリー)とかは
静的に領域を確保されていたので問題がなかった。
いわゆる「組合せ論的な爆発」とか喰らったら、
Rust は脆弱なんじゃないかと思うと心配だ。
組込み用に使うんならまだしも、
大規模システムで有限のリソースに依存してるなら、
実績のある Java のほうが信頼できそうだ。
システムがダウンしたときに、「リソースが足りなかったのが
原因です。もっとパワーのあるマシンにリプレースしてください」
とか言われても、そういうユーザはいるかもしれないが貧乏な
開発者は困るぞ?
17デフォルトの名無しさん
垢版 |
2021/08/14(土) 14:13:39.02ID:ss/u5K/v
>>16
それならばJavaを使わずにリソースの使用を少なくて済むRustを使うと良いでしょう
18デフォルトの名無しさん
垢版 |
2021/08/14(土) 16:38:04.46ID:Kjr+S4As
>>17
皺と皺を合わせて、しわよせぇ〜。
南ぁ無ぅ〜。
けっきょく開発者に皺寄せが来るんじゃねぇか?
まぁ、マクロアセンブラに一皮被せただけの C 言語とか、
制禦用に開発された目的依存の第四世代言語 FORTH
(「FOURTH」にしようと思ったら語長で引っかかったとか)
とか、その流れの延長に Rust があるっちゅーコトなのかね?
コーディングする上での Rust の利点について
述べてくれたまえよ。
2021/08/14(土) 16:39:41.44ID:5cje9KlX
Rustはシープラプラを葬送することができます
20デフォルトの名無しさん
垢版 |
2021/08/14(土) 16:51:08.97ID:Kjr+S4As
>>10
昨今はコマンドラインでキーボードを叩くより、
ダブルクリックで GUI のほうが楽だという人も
多いんだよな。
そんなわけで、main() のところで引数(argument)で引っ掛けて、
GUI と CUI でいろいろと対処しないといけない。
CUI の unix のフィルタだと、わざわざ
「java xxyze」とか打たなくていいという利点はあるが、
そのあたりはシェルでなんとか処理してもらったほうが
ありがたい気がする。
21デフォルトの名無しさん
垢版 |
2021/08/14(土) 16:53:40.73ID:Kjr+S4As
>>19
ついでに C# も埋葬しれくれ。
2021/08/14(土) 16:58:49.57ID:ytQVlFU9
perl楽しい!
23デフォルトの名無しさん
垢版 |
2021/08/14(土) 17:09:20.83ID:DudcLmKi
>>18
君はプログラミング言語の知識が低すぎて理解することが難しいだろう
最近のモダンな言語や既存言語への新たな機能導入の流れと同様にRustは関数型言語から高度な機能を多く輸入している
つまりコーティング面では高機能で抽象度も高く洗練されているがその上で低レベルな記述も可能でC言語の領域をカバーできる
そしてメモリ安全性を並行並列プログラミングまでカバーしつつガベージコレクションの負担も無い
以上全てを両立しているのがRustの凄さだろう
2021/08/14(土) 17:17:59.81ID:GREro0ld
Rust礼賛しすぎるのもアレだが、逆張りで叩くのはもっとアレなんよな
普通にベターな選択肢の一つ
2021/08/14(土) 17:54:05.44ID:aiChFsUR
RustはABI stableじゃないからRust to Rustの場合でもバージョンが変われば
依存ライブラリ含めて基本的に全ソースコンパイル + スタティックリンク
CのFFIで頑張る方法もあるけど呼ぶ側も呼ばれる側も急激に面倒になる上にunsafeになる

クライアントアプリの領域では主要言語になっていくのは間違いないだろうが
stable ABIを提供できないうちは支配的な言語にはなれない

それにみんな知ってると思うけど
初心者が最初にはじめる言語には全く向かないよ
2021/08/14(土) 19:15:53.49ID:CLyFHztI
Rustに手を付ける要件に他言語のマスターがあるって
ハードル高すぎよな

モチベ保てるかなw
27デフォルトの名無しさん
垢版 |
2021/08/14(土) 22:48:04.45ID:Kjr+S4As
>>26
漏れは 初心者向きの言語としては Java は悪くないとは思っているのだが、
Java は「おまじない」が多い(何を継承してるとか、どんな例外を投げるとか)
ので、プロ向きではある。
文字列の扱いも、C 文字列(ヌル・ターミネイト)や BASIC 文字列
(ポインタで指したところの先頭に文字列長がある)や Pascal 文字列
(ポインタで直接指しているんじゃなくて、ハンドル(ポインタへの
ポインタ)で指しているのでシステムからでないと触れないとか)とか、
若干分かりにくいところがある。
「内容が同じ文字列(String)は、メモリを節約するために Hash 関数で
管理しているので、.equals() メソッドで判定しなくても == で
棲んじゃう」みたいなトコロが判りにくいかもしれない。
LISP 出身者だと、「eq と equa」の違いlで分かるんだけどね。
そういう意味では、「C から Java」は楽なんだけど、
プログラミングあるいはコンピュータ初心者にとって、
理解しやすい言語とはいえないと思う。
28デフォルトの名無しさん
垢版 |
2021/08/14(土) 22:53:15.63ID:XqGBm/kS
>>27
Javaだけはやめとけ
今となっては何もかも時代遅れの言語
Java土方を多数集める古いやり方をしばらく続けるところもあるだろうがいずれ消える
29デフォルトの名無しさん
垢版 |
2021/08/14(土) 23:43:17.65ID:0AEpqYcN
みずほ銀行は不可能と思われる統合を成し遂げた。
Javaの力。
2021/08/15(日) 00:08:02.77ID:XorQKxg5
みずほか...
一時参画したけどフロントはc#だったな
2021/08/15(日) 00:08:17.38ID:XorQKxg5
一時期
2021/08/15(日) 00:10:01.16ID:Ed11B072
Rustって楽なの?
2021/08/15(日) 00:21:01.69ID:UGpz/Cnc
C++のmoveよりかは相当楽(なはず)
2021/08/15(日) 00:47:56.36ID:vfndcqs3
最初からRustでいいじゃん(いいじゃん)
2021/08/15(日) 01:22:16.20ID:q1E7WW8m
Rustもないな
2021/08/15(日) 01:24:06.81ID:nydLuKew
んじゃ何よ
2021/08/15(日) 08:06:48.18ID:YtfOTCgR
RustってWEB系でも使えるの?例えばPHPのかわりに
38デフォルトの名無しさん
垢版 |
2021/08/15(日) 09:34:33.06ID:njtPncoU
>>37
PHPの代わりとは漠然としすぎるけど
HTMLテンプレートエンジンもあるし
HTTPサーバーにもクライアントにもなれるし
HTML⇔DOM相互変換すなわちパーサーにスクレイピングにDOM操作にジェネレーターもあるし
もちろんWASM (WebAssembly) もRustで書くことが出来ますよ
少なくともPHPよりはWeb系に対して幅広く対応していると思います
2021/08/15(日) 11:28:30.41ID:I+EfNV4X
趣味で格安レンタルサーバーで動的サイトを作る場合
まだPerl、PHPの代わりにRustを使わせてくれるような権限設定のところは出てきてなさそう
2021/08/15(日) 11:52:18.33ID:0cUY2YQE
まあGAEに乗せたりはすぐ出来るようになるんじゃ無いかな。

ただ、個人的にはGC言語はGC言語でアリだと思ってる。
エスケープ解析とかはGoなんかだとありきで設計されてて、C#なんかも頑張る方向みたいだし。
メモリ解放自体のスループットは一気に解放するGCの方が早いしな。
41デフォルトの名無しさん
垢版 |
2021/08/15(日) 13:56:34.36ID:zJKAHAbR
>>40
GCの方が重くて遅いです
まずどのメモリを解放すべきなのか大調査するところから始まります
2021/08/15(日) 15:37:52.64ID:0cUY2YQE
>>41
絶対値としては重いというのはわかるが、遅くは無いぞ。
mallocとfreeの実装によっては解放をかなり遅らせるものもある。
何より、それが許容できるか否かが問題だと思うが。

コンビニ行くのにF1乗る奴おらんでしょ。
43デフォルトの名無しさん
垢版 |
2021/08/15(日) 20:50:54.99ID:n76oFfyT
>>42
激しく同意するが、
> コンビニ行くのにF1乗る奴おらんでしょ。
には「そもそも F1 は公道走れんだろ(笑)」と
ツッコミを入れておこう。
街乗りだったら Java で充分だと思うので、
シェルでいちいち「java」を指定しなくても
フツーに起動できてくれればありがたいと
思う。
つーか、もうありそうな気はするんだが、
知らない漏れが時代に遅れているだけなのか?
44デフォルトの名無しさん
垢版 |
2021/08/16(月) 01:50:38.89ID:Zs0P82Xz
JavaがF1だって!?
45デフォルトの名無しさん
垢版 |
2021/08/16(月) 09:38:25.37ID:OX/mBtRg
>>44
F1 に近いのは C のネイティブコンパイラかな。
C が吐くのはマクロアセンブラのソースで、
この時点でチューニングができる。
マクロ展開したアセンブラもチューニングできるし、
なんならバイナリにパッチを当てることもできる。
そういう意味では C は高級言語というより
高級アセンブラだというのが一般的な評価だ。
Java はオートマの大衆車というところか。
2021/08/16(月) 13:00:14.24ID:xNSfBGUV
時代はオートマから自動運転へだからな
コーディングもどんどん高級になっていくさ
47デフォルトの名無しさん
垢版 |
2021/08/16(月) 13:23:37.70ID:/7gwQMxS
Indeed 求人件数 2021/8/16

Java 66,179
PHP 53,215
JavaScript 38,706
Python 32,620
Ruby 23,512
C++ 23,499
Go 17,787
swift 17,318
Rust 242

ほんとにRustくるんだろうか?不安しかない
2021/08/16(月) 13:28:00.64ID:eMHwwfPq
土方仕事では使わないよ
49デフォルトの名無しさん
垢版 |
2021/08/16(月) 16:50:21.94ID:HOiVv+ii
何事も一瞬で状況が変わるわけではなく徐々に変わっていく
今回のケースでいえば新規プロジェクトかつ人材がいるところから置き換わっていく

C++分野でもJava分野でもRust に置き換えた方が有利なのは明らかだけど
既存のものを潰してすぐ置き換えはコスト高すぎだから新規案件からとなるし
人材がリーダー含めて揃ったところからではないと起きていかないから
先進的な採用するところや幅広く人材を抱えられる大手などが先行する形で少しずつ置き換わっていく
2021/08/16(月) 17:05:00.45ID:sHR6WpI8
C# 39122
Scala 1953
Erlang 1041
Haskell 95
F# 7
Ocaml 4

関数型ではScalaが一番多いかな
2021/08/16(月) 18:00:13.59ID:Hd4A9Fj3
Scalaは十中八九Javaプロジェクトの置き換えに失敗した案件の保守
関わりたくない

Erlang 1041
F# 7
Ocaml 4
ここはたのしそう
2021/08/16(月) 18:44:34.47ID:VuhRmQGN
うるせえ最初はShellScriptやってろ
2021/08/16(月) 20:17:25.89ID:LTMrTmrD
YouTube で有名な、雑食系エンジニア・KENTA が言ってるけど、
普及のキャズムを越えたのは、Go だけ

Rust, Elixir は越えなかった
54デフォルトの名無しさん
垢版 |
2021/08/16(月) 21:01:18.77ID:N/+VBZ1T
そりゃ時差あるよ
Rustは現2018版が出たのがまだ3年前
そこに現状最後の重要な非同期の言語サポートが2年前と歴史が浅い
それでもRustの強力な言語の能力をほぼ全ての大手IT企業が公式に認めていて>>5の状況
2021/08/16(月) 23:19:33.87ID:hT4oVHzR
始めるのにいい言語って、初心者にとって、でいいんだよね
それで Rust勧めるって本気なのかネタなのかわからんなと思ってたがここまで長々と引っ張るからにはどうやら本気でそう思ってる人が多いのかな・・・
56デフォルトの名無しさん
垢版 |
2021/08/16(月) 23:49:00.13ID:uan9j0Cs
>>55
初心者限定版ではないよ。
例えば昔プログラミングしてたけど久しぶりに再開するので最近の言語でオススメはどれ?でも良いし、
現役プログラマーだけど腕を広げるために最適なプログラミング言語は何?でもOK。
2021/08/17(火) 00:05:40.36ID:qIKNigsp
昔はC言語から始めてたんだから全然Rustもいけるだろ
2021/08/17(火) 00:09:18.82ID:BWnifmGO
「ぶっちゃけ、始める」ではなくて
「ぶっちゃけ始める」だからな
2021/08/17(火) 00:10:21.45ID:+k8g2Bag
もうやめればいいのに
2021/08/17(火) 00:13:36.71ID:MI1bU/MD
糞言語を勧めて脳内汚染するより良いじゃん
2021/08/17(火) 00:15:40.17ID:Xl5Ivo1j
某氏の自演雑談スレなのでスルー推奨
2021/08/17(火) 00:27:36.19ID:MX/VSMnO
>>57
Cより洗練されていて便利だから最初にRustでもいいかも
2021/08/17(火) 09:19:30.43ID:hdGwgJNz
予約語はフルスペル、記号は数学と共通。
そんな判りやすい言語が良いかも。
64デフォルトの名無しさん
垢版 |
2021/08/17(火) 12:45:18.84ID:8em90QsV
やらざるを得ない言語以外はやっちゃダメ
65デフォルトの名無しさん
垢版 |
2021/08/17(火) 13:08:31.06ID:phcnfjEw
>>64
あぁ、不本意ながらそれ同意。
なんかしら、新しい言語とか新しいフレームワークとか
新しいツールとかが絡んだプロジェクトって、
「クソでなかった例を知らない」(「クソだった例を晒せ」と
言われたら詳細に晒したいところだ)ので、
「ある程度実運用で叩かれた言語と環境」があって、
そこの案件にアサインされるんなら、
まだしも安全だ。
66デフォルトの名無しさん
垢版 |
2021/08/17(火) 13:42:15.90ID:Q6ss2SIB
クソだった例を晒せ
2021/08/17(火) 14:09:33.43ID:2FvDdhH6
自分にとって新しいのか世間的にかどっちやねん
68デフォルトの名無しさん
垢版 |
2021/08/17(火) 14:49:14.60ID:phcnfjEw
>>66
>>67
ほんの数例だが、
某製薬会社の案件とか、
某医学系学会の案件とか。
「新しいフレームワークを使ってみたかったんや!!」
つーのは理解できるし、元請が張り切っちゃったのもわかるが、
製薬会社の案件は合併の話があり(特に名を秘す星製薬(仮名))、
医学系学会では総会に間に合わせる事情があり、
Web 系のフレームワーク(ツール。ス〇ラッツ)を使うより、
JSP かなんかで かっちり書いておいて(医療従事者は
忙しいんだから、「必要な項目が入力されていません」とかじゃなくて、
「ここが入力されてませんよ」と CSS で表示したほうが
親切だ)部分的に使うところから始めたほうがよかった
(つーか、大規模なプロジェクトで、開発者が使ったことのない
ツールをいきなり使うなよ、と言いたい)と思う。
某携帯電話会社だと、下請けが「コーディングは100%済んでます!」
と言ってたのに、かなりの数のプログラムが、フレームワークが動いて
いないので「一本も動いていない」という例(アイ×ナレッジ。仮名であって
実在の企業とは関係ありません)があった。
しょうがないので SygWin を導入して SubVirsion のサーバーを立てて
ドライバ(駆動側)とスタブ(ダミーの下位ルーチン)作って
動作をチェックしてたら馘首になった。
69デフォルトの名無しさん
垢版 |
2021/08/17(火) 14:52:17.84ID:phcnfjEw
>>67
そういえば Struts の 3 って出てるのか?
おれが使ってたのが 2 だったが。
70デフォルトの名無しさん
垢版 |
2021/08/17(火) 14:55:45.31ID:phcnfjEw
そういえば Dreamweaver も Adobe のお荷物に
なってそうだが。
71デフォルトの名無しさん
垢版 |
2021/08/17(火) 15:12:02.34ID:phcnfjEw
連投になってスマンが、言語だの環境だのは、
「規格化される」(ANSI Cとか)か
「三つくらいバージョンがあって、枯れた古いバージョンを
使う」(Java 1.4 とか)のが安全だ。
Apache とか Tomcat とか MySQL とか Oracre 9i とか、
「うまく動かなかったら、ひとつ前のバージョンに戻す」で
オッケーだろ?(Oracle 9i の CONNECT BY で、
SQL で再帰を書いたときは、本当に肝が冷えた)
そんなわけで、あんまり初心者向きとは言えないが、
ANSI-C とか Java 1.4 とかが、将来プロになろうという
人にはお勧めだと思う。
2021/08/17(火) 16:24:25.21ID:86udu8t2
土方のプロ
2021/08/17(火) 17:07:51.49ID:1q99IGhS
パーフェクト Ruby on Rails、2020/7 では、

Docker, Github Actions で、CI で毎週システムを更新してテストしましょうとかの時代に、
IT 土方は、何をやってるのか?w

YouTube で有名な、雑食系エンジニア・KENTA は、
Railsを使っているような会社はモダンですから、そこへ転職しましょうと言ってる

逆に、Java を使うような会社は、レガシーw
2021/08/17(火) 17:48:51.77ID:M+7pTdQW
ヒマーー(-。-)y-゜゜゜
75デフォルトの名無しさん
垢版 |
2021/08/17(火) 22:24:47.80ID:3KfgLONy
必要は発明の母って言うし
2021/08/18(水) 07:18:13.42ID:xTIIqk3j
>>68
無能なJava土方クンは結局クビになったのかw
2021/08/18(水) 10:42:21.46ID:n8Ccry6l
RustってC++を置き換えられるとか言ってるけど
ゲーム業界とかは置き換わる気がしないよな
2021/08/18(水) 10:50:54.40ID:kXiitRhK
>>77
実際使い始めてるところもあるみたいだし、置き換わることは普通にあるんじゃない?
でもゲーム開発でC++をバリバリ書くのなんて業務系ITなんかに比べたらごく少数の職人芸の世界なんで、
置き換わったところでプログラミング言語界の大勢にはほとんど影響がない
2021/08/18(水) 10:55:12.89ID:n8Ccry6l
>>78
いあアンリアルとかが置き換わらないと無理ちゃう?
ゲームなんてエンジン有りきやん
アンリアルやユニティよりも素晴らしいエンジンがRustで作られて普及したらあれだが
そうそうできることじゃなさそう
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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