次世代言語27 TypeScript Swift Go Kotlin Rust Nim

■ このスレッドは過去ログ倉庫に格納されています
2022/08/05(金) 08:26:38.87ID:TpiqaUBm
スレタイ以外の言語もok

前スレ
https://mevius.5ch.net/test/read.cgi/tech/1655771266/
116デフォルトの名無しさん
垢版 |
2022/08/08(月) 18:48:36.68ID:sf8DoyKQ
>>115
ISUCONが何か知らないけど、キミの情報だけ見ると、アプリ用言語とウェブ用言語で使われる使われないが分かれてるように見えるよ。
2022/08/08(月) 18:51:02.17ID:Ztz4OmA/
勉強会と称して会社でセミナー開いて社員から参加料徴収してそう
2022/08/08(月) 18:57:37.93ID:YeAhfKJe
>>116
その分類だとGoやRustはどっちなの?
ウェブ用言語?
119デフォルトの名無しさん
垢版 |
2022/08/08(月) 18:59:58.38ID:sf8DoyKQ
>>118
HTMLの次に手を出すのがJavascriptやRustじゃないかな?
2022/08/08(月) 19:06:15.39ID:xzpYaZGN
Goももう終わりそうな感じがするのだが
webでもAPI用途で使う分にはアリかも知れないがそこまで高速化がアプリで必要無いんだよね
ボトルネックは大体RDBとかだしPHPで十分なんだよね
2022/08/08(月) 19:06:45.72ID:GdyVfCQX
>>115
運営が実装を提供してる言語に限定されるからだよ
122デフォルトの名無しさん
垢版 |
2022/08/08(月) 19:14:13.82ID:sf8DoyKQ
ウェブの人たちって信仰に篤いでしょ。
このスレのRust民の書き込み見る感じ、ウェブの人たちじゃないかなあと思うよ。
2022/08/08(月) 19:25:42.83ID:U++CWrZh
>>121
ISUCONでの使用言語は自由で制限なし
運営が需要から判断していくつかの言語で参考実装を提供するけど
それは無視して自分で自由にコードを書いてもよい
例えば以前はRustの参考実装は提供されなかったけどその時からRust利用での参加者はいた
ISUCONで使用する言語は任意であり各参加者が自由に選べる
2022/08/08(月) 19:29:52.39ID:vqcSUYjk
>>120
PHPはないわ
Typescriptならともかく

今時型推論のある静的言語以外ありえないわけだよ
PHPなんてゴミは早く撲滅しないといけない
125デフォルトの名無しさん
垢版 |
2022/08/08(月) 19:35:28.21ID:sf8DoyKQ
でも、ウェブで一番使われてるのがPHPでは?
2022/08/08(月) 19:38:38.94ID:Ztz4OmA/
ワープレな?
2022/08/08(月) 19:42:30.46ID:xzpYaZGN
>>124みたいな型を連呼する奴ってロクにプログラム組めないんだろうなぁ
現実的な話サーバーサイドにjsも無いけどTSとか余計に無いw
こんなトランスパイル前提の言語なんて確実に消えるから
PHPすら扱えないならこの板来るなよw
2022/08/08(月) 19:47:48.61ID:vqcSUYjk
>>127
C10k問題知ってる?Nodeが流行った理由が非同期プログラミングに強いことだけど
何でトランスパイラ前提だと消えるんだ?

そんなことより動的型でPHPだとまともに保守ができないゴミプログラムが生産されるだけ
まさにゴミそのもの
2022/08/08(月) 19:54:31.05ID:vqcSUYjk
そもそもRubyやPHPみたいな動的型付け言語が流行った理由ってのは
C++やJavaだと変数の宣言ですら型定義が必要で面倒臭いところ
それに対して最近では静的型付けも進化して型推論装備が当たり前となった
これに伴い簡単に扱えるため動的言語をあえて使うメリットも無くなった
Pythonとか型ヒント機能を追加して静的型付けの特徴も取り入れてることから
今時動的型付けなんて時代遅れだということがわかる

型ヒント追加したなんちゃってPHPよりTypescriptやGoやRustの方が生産性は高い
新規プロジェクトでPHPなんてどこも採用してないわ
2022/08/08(月) 20:20:36.46ID:xzpYaZGN
うわコイツ絶対仕事してないわw
普通にサーバーサイドはPHPが一番多いし
お前どこの世界にいるの?w
型連呼する奴は仕事していない事が良く分かるw
2022/08/08(月) 20:38:48.95ID:vqcSUYjk
時代の流れについていけないPHPおじさんw
2022/08/08(月) 20:46:44.42ID:xj88ZuYt
昔ながらのLAMP環境ならそりゃPHPしかないよね
2022/08/08(月) 21:28:14.57ID:DIxb8BnQ
>>94
isuconみたいに瞬発力重視のコンテストでRustで参戦するとか狂気な気はするんだよな。
納期の縛りなくベストを尽くすならいい言語だよ。
2022/08/08(月) 23:43:42.79ID:bVB3HabO
自社サービスなら比較的コードと密になるNoSQLの判断も可能やけど
SI案件だと無責任すぎてキャッシュ以外には導入躊躇するよ
2022/08/09(火) 00:24:19.37ID:Plwa9BCw
当然だけどRDBMSの上位互換なNoSQLなんて存在しないしケースバイケースだよ
用途にジャストフィットするなら採用を検討すればいいけど、
ノウハウがないなら耐久試験や障害復旧のシナリオテストなんかもしたいし、かなり時間がかかるね

そもそもRDBでは実現困難なものがあるからそういうのでは使うべき
Redisにあるデータ構造が必要ならRedisを使うし、全文検索が必要なら検索エンジンを使う
RDBで十分なのに無理やりNoSQLをなんでもかんでも使おうとすると、正規化やトランザクション処理が得意なRDBと違って、データが冗長になったりロック処理でわけわからんくなる
あとコストについても、速度がウリなmemcachedやRedisなんかは全部メモリに載せないといけないから大量データを処理するとメモリバカ食いになってメモリたくさん積んだマシンが必要になる
そこも結局はトレードオフだ
2022/08/09(火) 01:32:01.59ID:gtiGofbP
>>89
トヨタとかいう地方にある会社で募集してたらしいぞ
137デフォルトの名無しさん
垢版 |
2022/08/09(火) 07:45:51.86ID:rWBkFnPj
既存システムは過去資産からPHPが多いね。
でもまぁ過去に安易に書いちゃってたから、うちの他部署もバージョンアップするのに苦労してるわ。動的言語はダメだなと思った。
2022/08/09(火) 09:09:16.70ID:xpcAQEM+
アップデートってバージョン0からバージョン100に飛んだ方が安上がりだよな
1ずつ増やしてたらコスト100倍
2022/08/09(火) 11:13:57.93ID:IRkfDrb4
rust案件、なくはないがこれ明らかに前任者が逃げ出したなって案件ばっか。
2022/08/09(火) 11:16:03.77ID:HlyJMO/P
新規はいいが保守案件なんて誰がやりたがるんだろう
お前らやりたいか?
2022/08/09(火) 11:33:50.25ID:MRbKMm0e
>>139
そんな嘘を付いてまで逆恨みしている理由を知りたい
2022/08/09(火) 11:39:41.66ID:IRkfDrb4
>>141
現実を見ましょう。
ttps://jp.indeed.com/Rust%E8%A8%80%E8%AA%9E%E9%96%A2%E9%80%A3%E3%81%AE%E6%B1%82%E4%BA%BA?vjk=31e817738ecb93b4
2022/08/09(火) 11:48:22.42ID:oe9CXP3N
Rustの引継案件はやりたくないな
今では誰も使ってない変なライブラリだらけになってそう
Goなんかはその点では古くなりにくいよね
2022/08/09(火) 11:50:05.69ID:8voMgtSF
>>142
Rustの求人多いんだな
高給でいいな
2022/08/09(火) 11:52:09.51ID:tyWaLZiX
型付けって、静的動的よりも強いか弱いの方が重要じゃないの?
2022/08/09(火) 11:54:00.44ID:tyWaLZiX
>>144
かなり高待遇だけど、こんな高待遇じゃないと、人来ないって事?
2022/08/09(火) 12:08:34.66ID:oe9CXP3N
業務委託だからこんなもんでしょ
2022/08/09(火) 12:09:53.05ID:yNLec7bJ
>>146
Rustは高速かつ安全で保守性もよいためその認識と需要が広まりつつある
リソースコスト削減となる点と需給バランスにより今後も高給の傾向が続くだろう
2022/08/09(火) 12:13:30.83ID:OiwkcGrC
フリーランスで業務委託って責任負わせるって事か?w
準委任しかやってられんよw
150デフォルトの名無しさん
垢版 |
2022/08/09(火) 13:28:04.16ID:SUUVydRq
PHP使ってもいいけど型明示しとけ。
2022/08/09(火) 13:54:44.47ID:xpcAQEM+
整数は整数と明示したいが32ビットとか64ビットとか明示したくない
そこで型名をTとする
2022/08/09(火) 14:00:22.05ID:/NVuMDrB
>>149
おまえ業務委託も知らんのかw
そんくらいは勉強しとけ
2022/08/09(火) 14:24:45.63ID:tyWaLZiX
>>147
こんなフワッとした内容で業務委託とか、振る方も受ける方も怖くない?

>>148
大手以外、メリット出すの難しそうだね。スタートアップとか大手とか、開発得意にいているところ向けなんかね?
2022/08/09(火) 14:29:29.55ID:rviNpZ1q
>>153
小規模なところはcrypt関係みたいに速度が最重要でもなければ技術力があってもメリットでにくい

今なら技術力アピールになるというメリットはある
155デフォルトの名無しさん
垢版 |
2022/08/09(火) 18:40:37.50ID:oM0lzHLp
それ以前に、Rustの案件ではない。
2022/08/09(火) 19:34:23.64ID:lYYrXFKS
>>120
単語カウントのベンチで実はPHPがめちゃくちゃ速いことがわかったけどWeb系の人はそこには何も言わないのな
あれはマジで予想外だった
スクリプト言語最速と言われるV8と五分だった
157デフォルトの名無しさん
垢版 |
2022/08/09(火) 19:38:57.62ID:oM0lzHLp
Rustより速かった。
2022/08/09(火) 21:03:55.36ID:xpcAQEM+
シェルスクリプトでは、Cと同じ速さのコマンドがあるのは常識で分かる
だがそれを他のスクリプト言語で真似したら多くの人が認知的不協和に陥る
2022/08/09(火) 21:05:46.33ID:tnSRgX+g
>>156
速くても生産性の観点で論外
静的型付け以外うんこ
2022/08/09(火) 21:06:10.39ID:tnSRgX+g
あと非同期プログラミングがまともにできないのでゴミ
2022/08/09(火) 21:10:47.11ID:EZ4MxSsh
大手で素のPHPが選ばれないのはメンテナンス性が低いから
PHPが7以降速いのはある程度やってる人なら知ってるよ
2022/08/09(火) 21:21:08.54ID:qPgdF1zn
>>159
じゃあお前はシェルスクリプトも使わないのかよ
2022/08/09(火) 22:06:42.97ID:tnSRgX+g
>>162
使うわゴミ
ただしシェルスクリプトはちょっとしたものしか使わない

PHPはちょっとしたものも大規模なソフトウェアでもどちらでも話にならない
2022/08/09(火) 22:59:20.68ID:H83BYiRN
正直、Cに型は無いようなもんだしな。

PHP良いぞ。単ファイル単機能で作ったら保守性もそこまで下がらん。
あれはHTML返すから地獄になる。

そもそも本当にPHPやってる会社は静的解析ぐらい内製してるでしょ。
165デフォルトの名無しさん
垢版 |
2022/08/09(火) 23:16:15.02ID:oM0lzHLp
これからはキャストの時代ですしね。
2022/08/10(水) 01:05:45.94ID:EEq1efXU
>>164
metaくらいしかPHPやってないってこと?
2022/08/10(水) 01:38:00.37ID:BY9mJTpO
facebookは型付きの独自PHPを実装してそれ使ってるらしいからね
過去の資産が多すぎてそうするしかなかったのだろうけど
2022/08/10(水) 01:48:08.23ID:uIeHvMMb
PHPを開発に使ってる会社って事業初期に大量のPHP資産が作られてメンテせざるを得ない会社、っていうイメージしかない
169デフォルトの名無しさん
垢版 |
2022/08/10(水) 02:23:41.34ID:nT9pe/lB
ウェブって、当たるも八卦当たらぬも八卦だから。
PHPで始めるのは合理的。
PHPは速いので、当たった場合もリファインまでの時間を稼いでくれるし。
2022/08/10(水) 03:05:15.44ID:3IeIylSZ
YouTube で有名な雑食系エンジニア・KENTA が、PHP, Scala をオワコン認定した。
これにより、優秀なプロが使わなくなるので、
ZOZO はLaravel だけど今後、良い開発者を集められなくなる

TIOBE の5つの絶滅する言語が、Ruby, Haskell, Objective-C, R, Perl

PHP, Scalaは、これに入っていなかったのに、KENTAに認定された

KENTAの天敵・SES のモローも、Rubyはオワコン、
これからは、Java, PHPの時代と言っていたが、
下の動画では、Railsのキャリア相談まで始めたw

【2022年版】Ruby on Railsの将来性
www.youtube.com/watch?v=YWKxh3KoNsY

日本では益々、Rails 1強へ進んだ。
でも外人でも、試作品をJavaScript で8週間掛かったのが、
Railsで2週間で作れたという香具師もいる。
サーバーをJSで作るのは馬鹿らしい

上場して時価総額1兆円のGitlab も、Railsを使い続ける宣言をしている
171デフォルトの名無しさん
垢版 |
2022/08/10(水) 03:08:04.53ID:nT9pe/lB
HaskellはRustと同じコンセプトだから廃れないだろ。
172デフォルトの名無しさん
垢版 |
2022/08/10(水) 03:43:44.42ID:nT9pe/lB
HaskellとRustは紙一重。
2022/08/10(水) 05:49:31.44ID:i8JPdX8W
>>161
>>169
PHPは遅いだろ
この前の単語カウントのベンチでもC++より5倍以上も遅かった

> 0.27 C++
> 1.40 PHP
174デフォルトの名無しさん
垢版 |
2022/08/10(水) 07:15:25.76ID:nT9pe/lB
商用はZend Server使うので、滅茶苦茶速いっすよ。
2022/08/10(水) 07:54:12.37ID:i8JPdX8W
>>174
ベンチでも使われた普及しているphpはZend Serverと同じZend Engineが使われている
2022/08/10(水) 08:22:36.36ID:rcQfSgy+
待望の新言語

オブジェクト崇拝は罪! 古ヘブライ文字で記述する創世的プログラミング言語が降臨
そこはかとなく神聖な感じのするソースコードがやんごとない
https://forest.watch.impress.co.jp/docs/serial/yajiuma/1431426.html
177デフォルトの名無しさん
垢版 |
2022/08/10(水) 08:26:31.40ID:LYpt5XQN
>>176
オブジェクト指向ではない理由が
「偶像崇拝は禁止されている」
ってのがいいね、徹底してるわw
2022/08/10(水) 09:35:03.01ID:bxuLoLIR
>>168
そういうのはわりと仕様がシンプルだから全リニューアル難しくないし
余りに酷い作りだったら全リニューアルすればいいんじゃないかと思う
2022/08/10(水) 10:02:39.54ID:bLf0UnoD
確かに、ペチパーって難しいシステム構成をやりたがらないから、意外とPHP資産って扱いやすいんだよね
過去にSIerが入って無茶苦茶になったシステムに比べたら遥かにマシ
2022/08/10(水) 10:10:18.14ID:bxuLoLIR
その点で言うとJavaとかRubyで組まれたものがわりと厄介
2022/08/10(水) 10:21:20.47ID:bLf0UnoD
そうそう、それなりに頭使って真面目に作られた、しかし複雑さを制御できるだけのスキルが開発者にないシステムが一番厄介なんだよねえ
難しいものを難しいまま実装して変なデータ連携が大量に生じ、そのくせ目的は正しいことが多いから業務と切り離せなくなる
2022/08/10(水) 10:40:05.09ID:bxuLoLIR
Javaの場合標準ライブラリの設計が汚いからそれに習って作られてるシステム自体も設計が汚くてどうしようもないんだよなあ
オブジェクト指向が主流じゃない時代にようわからんヤツが指揮を執って無理やりクラス書いてたってのもあるだろうけど
2022/08/10(水) 12:42:08.99ID:wdsDlMgu
Rustをやり始めてわかったんだけど
一般的に設計が下手だとデータの依存関係がぐちゃぐちゃになりGC言語はそれでも通っちゃうのに対して
Rustで通すにはデータの依存関係を整理するのが一番の近道となるため良い設計にさせられしまう
結果的にRustで書いたコードはメンテナンス性も良くなるという良い副作用が
2022/08/10(水) 12:52:13.96ID:ibGL2wT8
それのどこがいい設計というの?
185デフォルトの名無しさん
垢版 |
2022/08/10(水) 12:57:14.26ID:h5nM35rr
文盲か?
データの依存関係が整理されてるなら、そうでないやつよりいい設計と言えるだろ。
俺はRust使ったことないけどね。
2022/08/10(水) 13:01:14.16ID:OAjuzVE6
COBOLおすすめ
2022/08/10(水) 13:24:29.70ID:v2DFTKIi
依存関係がぐちゃぐちゃだとRustでは通らないというのはAがBに依存していてBがAに依存しているというような循環参照があるとRustでは通らないってこと?
循環がある複雑な設計ができないというのはメリットかもしれないけど、どうしても循環が必要な場合はRustは使えないってこと?
2022/08/10(水) 13:29:04.51ID:bxuLoLIR
>>187
共通部分Cを別に括りだしてAとB両方がCを参照するようにすれば大半の場合循環参照は回避できるはずだけど
2022/08/10(水) 13:46:25.86ID:sNqQ8ycT
GCは関係なさそう
無理矢理こじつけるならvirtualデストラクタに関係あるが
重要なのはvirtualの方だ
2022/08/10(水) 13:47:44.80ID:cEafvHu4
相当本人の設計レベルが低いんじゃ。。
2022/08/10(水) 13:51:24.78ID:w+A7Q7I0
>>187
Rustでもそういう互いに依存しあう形も可能だがその分だけ少しだけ複雑な型となる
つまりRustではそんな形を取るよりもスッキリと依存関係が整理された良いデータ設計をした方が書きやすい
そのためRustで書くと自然に良い設計のプログラムになるよう誘導される
2022/08/10(水) 13:56:50.60ID:eN3aIK3B
つまり、rustはenterprises向けではない
2022/08/10(水) 13:58:59.52ID:uIeHvMMb
RefCellとか使うと、実行時に借用チェックしてパニックが起きうるんでしょ?
そうするとRust使う意味がなくなっちゃうしな
2022/08/10(水) 14:00:14.32ID:bxuLoLIR
>>192
いうてもGoogleやMSやFBなんかは積極的にRust導入していくって言ってるしな
2022/08/10(水) 14:02:45.42ID:sNqQ8ycT
gotoはスパゲッティだがcomefromは良い設計という説がある
これを拡大解釈すると
traitとかinterfaceとかの実装側だけが依存関係を宣言するのはスパゲッティである

逆にエンドユーザー側から依存関係を列挙したい

つまり、追放されていたCの共用体の汚名返上をした方がいいのでは
2022/08/10(水) 14:06:25.83ID:bxuLoLIR
>>195
共用体はC++じゃなくCじゃなきゃダメな組込みやカーネルなんかの分野だといつでも現役だけどね
197デフォルトの名無しさん
垢版 |
2022/08/10(水) 15:00:30.99ID:B0kpAn2f
>>195
Cの共用体は時代遅れの遺物。
例えばRustでは、排他データ共用であるタグ付き共用体=ボディ付きenumと、同一データ共用であるtransmuteの、
役割の異なる二つの機能に分化され利便性も安全性も向上している。
2022/08/10(水) 16:04:48.53ID:AhsVHkEa
>>187
Weakとか使えば良いがこれまでみたいな雑な処理はまず無理
全てのデータの参照を完全に頭の中で再現できる設計にしなきゃダメ
2022/08/10(水) 16:38:38.42ID:v2DFTKIi
Rust使うかどうかに関係なく互いに依存しあうコードとかぐちゃぐちゃな設計は書かないでってみんなに呼びかければいいじゃん。
2022/08/10(水) 17:06:24.53ID:ZFTliHm/
プロトタイピングレベルだと設計なんて気にしてられない。
Rustはそういうのには使えんな。
201デフォルトの名無しさん
垢版 |
2022/08/10(水) 17:57:07.65ID:h5nM35rr
いやいや設計のためにプロトタイピングするんだろ。
本来プロトタイプは捨てるのが前提だから。
捨てる前提だからRust使うまでもないのは同意で、それこそ動的型言語でさくっと作るのでもよい。
202デフォルトの名無しさん
垢版 |
2022/08/10(水) 18:30:28.73ID:F9/ptNap
Rustで実用的なソフトウェアを作るにはC/C++の10倍の労力と注意深さが必要。
2022/08/10(水) 18:35:36.42ID:JllE9vuQ
>>201
違うよ。設計のためじゃなくて問題領域の情報収集のためにやるんだよ。
プロトタイピングの段階で設計を考えるのは「早すぎる最適化」の典型。
2022/08/10(水) 18:42:49.97ID:tg6K1NO5
>>202
むしろ静的型付け言語の中でRustはそのあたりについてかなり楽な言語やろ
注意深さなんて無くてもコンパイラが教えてくれる
コンパイル時点で問題を取り除いてくれるから労力も少なくて済む
205デフォルトの名無しさん
垢版 |
2022/08/10(水) 18:45:06.71ID:F9/ptNap
実用的でメジャーなソフトウェアが皆無。
2022/08/10(水) 19:12:56.65ID:jrkTB4/i
linux
2022/08/10(水) 19:41:01.41ID:sk3AyQrK
>>204
「プロトタイピング」て知ってる?
「問題領域」て分かる?
2022/08/10(水) 19:54:14.10ID:bxuLoLIR
>>205
Firefoxめっちゃ使ってるんだけど
HTML、JSのデバッガとしてはChromeよりも遥かに優秀なんだがな
2022/08/10(水) 20:20:53.11ID:ELagABQ4
皆一体何と戦っているんだ
2022/08/10(水) 20:36:32.94ID:1/irOBHJ
>>205
Rustは実用的になったのがようやくここ数年だからまだ少ないと思うけど
逆にここ数年に出てきたものの中だとDenoとかTauriとかRust製が目立ってるかな
2022/08/10(水) 21:12:32.20ID:NmnQYtNj
Firefoxって、そんなにRustで置き換えられてる?
元が大きいのもあって、大して置き換わってなかったような。
2022/08/10(水) 21:15:46.69ID:Kdr/lhnJ
How much Rust in Firefox?
https://4e6.github.io/firefox-lang-stats/
2022/08/10(水) 21:47:08.63ID:sNqQ8ycT
>>209
むしろ個人と個人の戦いを回避したいから集団を作らせようとしている印象だが
214デフォルトの名無しさん
垢版 |
2022/08/10(水) 21:56:02.90ID:y2CjdAWq
>>203
お前の言う設計は範囲が狭いな。逆に俺の言う設計は広くておおざっぱ過ぎるか?
2022/08/10(水) 23:16:30.22ID:OAjuzVE6
>>212
なんで安全のために全部Rsutに置き換えないの?
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。