ぶっちゃけ始めるのにいい言語て何 part6at TECH
ぶっちゃけ始めるのにいい言語て何 part6 - 暇つぶし2ch898:デフォルトの名無しさん
21/09/05 22:00:36.84 UFxCuC9Y.net
C/C++ は、ポインターがある言語なので、
かなりの時間がポインターの追跡・バグに取られる
C/C++ を10年やったとしても、7~8年は無駄になる。
Ruby を1~2年やった人に勝てない
YouTube では、自社開発系のRuby vs Java土方。
雑食系エンジニア・KENTA vs SES のモロー
5大SIer によるJava土方は、建設業の5大大手と同じ、階層ピラミッド
1人月100万円でも、間に数社の系列会社が入るから、
結局、給料は抜かれて、20万円ぐらいになってしまう
だからKENTA は、Ruby on Rails しか勧めない。
Java, PHP には、関わってはならないと言う
要するに給料が低くて、Linux, AWS のシステム構築運用を学べないから。
特に、Javaは歯車
下流工程では、テスターか関数内を書くだけだから、
システム構築運用のことは全く分からない
給料の高いシステム構築運用の部分は、
上流工程・高学歴の5大SIer が取っていき、そこでかなりの金額を抜かれる
KENTAがフロントエンドを嫌うのも、
上流工程・システム構築運用で抜かれた後の話で、価格交渉力が弱いから
だから、KENTAは上流工程のRuby, Go のバックエンドしか勧めない。
先に金額を抜けるから

899:デフォルトの名無しさん
21/09/05 22:17:34.58 gdiG54pG.net
>>875
〉C/C++ は、ポインターがある言語なので、
〉かなりの時間がポインターの追跡・バグに取られる。
そこでRustですよ
RustはC/C++と同じく高速にネイティブ実行のプログラミング言語てすか
Rustはそれらのバグを起さないようメモリ安全性を保証する言語でもあります
そのためC/C++からRustへの置き換えが少しずつ進んでいます

900:デフォルトの名無しさん
21/09/06 11:18:42.20 lIQevPYX.net
このすれの先輩は、Rustを習得することには
特に否定的な意見があったりはするのでしょうか?

901:デフォルトの名無しさん
21/09/06 11:27:47.52 8ecLni48.net
>>877
習得すること自体に否定的な意見はないと思うよ
最初に手をつける言語としては賛否あるだろうけど

902:デフォルトの名無しさん
21/09/06 11:34:37.09 fsHJbGHj.net
>>877
この先一般的に使われるのかどうか、もっというと求人があるようになるかどうかが何とも言えない
消えてなくなる可能性もある

903:デフォルトの名無しさん
21/09/06 12:53:18.81 lIQevPYX.net
消えてなくなる可能性があるのなら
pythonやkotlinのほうがいいんでしょうか?
javaに将来性があるのなら
javaの学習は楽しいし本も豊富なのでjavaがいいんですけど

904:Mb
21/09/06 13:00:33.69 O3QTJXwo.net
>>875
> 1人月100万円でも、間に数社の系列会社が入るから、
> 結局、給料は抜かれて、20万円ぐらいになってしまう
客先は「一人月百五十万円も払っているのに」と思っているのに、
エンジニアは「三十万円も貰ってないのに」と感じていたりする。
差額の百二十万円を抜いている奴がいるので、客先とエンジニアが
仲良くなると、文字通り「消される」。

905:デフォルトの名無しさん
21/09/06 13:02:17.55 kwGfB57d.net
>>880
逆に言えば、Javaが楽しいと感じるなら何でも楽しいだろうから敢えてJavaに拘ることはないと思うよ

906:Mb
21/09/06 13:06:02.15 O3QTJXwo.net
>>877
べつに Rust に否定的ではないのだけれど、
可変長データの確保と解放のタイミングに関する
理解がないと、Rust の文法はわかりづらいと思う。
だから私は FORTH と C は、Rust と一緒に勉強したほうが
いいと思う。

907:デフォルトの名無しさん
21/09/06 13:57:26.60 0VlySUWI.net
>>879
これまでのプログラミング言語は一部の勢力にしか支持されないために広がらなかったものが確かにあります
しかしRustは以下のように大手IT企業たちがこぞって支持するという極めて稀な状況になっています
プログラミング言語「Rust」のための「Rust Foundation」設立 -- AWS(Amazon)、Microsoft、Google、Mozilla、Huaweiが創設
URLリンク(japan.zdnet.com)
Facebookが「Rust Foundation」に参加 -- 「Rust」言語をいかに活用してきたか
URLリンク(japan.zdnet.com)
なぜIT業界をあげてRustが支持されているかは明白な理由があります
(1) C/C++と同じくネイティブにコンパイルされて最高速級かつ低水準の記述もカバーするため組み込みやOSから基本ライブラリにアプリまで使用可能
(2) 論文などに基づきコンパイルが通った時点でメモリ安全性の保証を実現 (ここがC/C++との違い)
(3) モダンなプログラミング言語の様々な良い点を最初から洗練して取り入れており便利かつ強力にプログラミングしやすい
つまりメモリ安全性を保証しながら最高速級に様々な環境で動作し便利で高度なプログラミングもできるのがRustなのです

908:デフォルトの名無しさん
21/09/06 14:05:08.24 foX749mr.net
でも学習コストが高い
だからコミュニティが続けられるのか、が今後の見所

909:デフォルトの名無しさん
21/09/06 14:07:36.92 fRFbGcCb.net
>>880
Rustは既に大手IT企業では標準言語の一つとして採用されているから、Rustが消えてなくなることはないよ。
もちろん昔Javaが出てきたときは感動したし学習も楽しかったけど、今となってはJavaは何もかも古すぎる。
純粋にプログラミング言語と見た場合、JavaがRustに勝てる点は全くなくて、Rustが負ける点は後発言語であること一点のみ。

910:デフォルトの名無しさん
21/09/06 14:46:36.15 IvXOEJ0G.net
>>883
確かにC言語ではメモリの解放を自分でする必要がありメモリ安全性の確保が難しかった
しかしRustは他言語と同様に自動的に解放してくれてさらに論理的にメモリ安全性の保証まである
例えば伸長可能な文字列の場合
文字列の長さが増えてそのままでは収納できなくなれば自動的に新たなメモリを確保して置き換えてくれるし使用後は自動的に解放してくれる
もちろんガベージコレクションがあるプログラミング言語ならこれらは同様に自動的に行われる
Rustはガベージコレクション無しでこれらをメモリ安全性保証付きで実現したところにその凄さがある

911:デフォルトの名無しさん
21/09/06 15:00:22.20 kbXTqR9W.net
>>886
Rustが大手IT企業での標準言語って……
Rust使いは夢の世界で生きてるから凄いよな

912:デフォルトの名無しさん
21/09/06 15:13:36.44 AQdbHlJL.net
大手IT企業といえばGAFAM
そのうち独自路線のAppleを除くGoogle, Amazon, Facebook, MicrosoftはRust言語採用を明確にしていますね

913:デフォルトの名無しさん
21/09/06 15:46:38.67 MHaouS30.net
採用を明確にしているだけで、実際の成果物はまだなんでしょ?
25年前のJavaと同じ状況

914:デフォルトの名無しさん
21/09/06 15:52:23.07 lIQevPYX.net
皆様ありがとうございます
次はRustやってみます
趣味ですし、将来性もそんな考えなくてもいいと結論にします

915:デフォルトの名無しさん
21/09/06 16:00:17.51 FLHnfT/B.net
Google、Amazon、Facebookはプロダクトで使っているよ
DropboxやDiscordなんかもね

916:Mb
21/09/06 16:42:39.76 O3QTJXwo.net
何度も言うけれども、Rust って FORTH の焼き直しのように
思うんだけど気のせいかな?
変数スコープの話を文法に押しつけただけなんじゃありませんか?
それがあるので、「Rust 推し」の人がなぜこのスレに
拘泥する理由がわかりません。
そこのところを知りたいと思います。

917:Mb
21/09/06 16:52:36.16 O3QTJXwo.net
>>884
> なぜIT業界をあげてRustが支持されているかは明白な理由があります
> (1) C/C++と同じくネイティブにコンパイルされて
> 最高速級かつ低水準の記述もカバーするため
> 組み込みやOSから基本ライブラリにアプリまで使用可能
それは C 言語とおんなじ。
> (2) 論文などに基づきコンパイルが通った時点で
> メモリ安全性の保証を実現 (ここがC/C++との違い)
それは Java とおんなじ。alloc-free の問題を、文法で制限して
防止してるだけ。
> (3) モダンなプログラミング言語の様々な良い点を最初から
> 洗練して取り入れており便利かつ強力にプログラミングしやすい
ガベージコレクションという裏方の�


918:�業を無視しているだけ。 > つまりメモリ安全性を保証しながら最高速級に様々な環境で動作し > 便利で高度なプログラミングもできるのがRustなのです コンピュータサイエンスの基礎から勉強してきてほしいと思います。



919:デフォルトの名無しさん
21/09/06 17:05:17.83 fRFbGcCb.net
>>894
それは君が不勉強。
例えばC++もガベージコレクションは無い。
一方でJavaはガベージコレクションがあるが、ある程度のメモリ安全性がある。
このようにC++とJavaは対照的な存在。
Rustは論文などで論理的に示された強力な型システムと変数用法で、ガベージコレクション無しでメモリ安全性の保証を実現した。
だからこそ、既存のC++とJavaが使われていた両分野を、実際に大手IT企業たちがRustへ置き換えつつある。

920:デフォルトの名無しさん
21/09/06 17:07:17.83 h531morm.net
そして日本には大手IT企業はない

921:デフォルトの名無しさん
21/09/06 17:16:24.38 7r7RF488.net
>>893
そんなことはないですよ
例えば>>295のRubyとJavaScriptとPythonのプログラム例がある「数字のリストをソートして逆順にして文字列にしてハイフンで繋ぐ」プログラム
これをRustで同じ方法で書いてみるとほぼ同じように書けます
use itertools::Itertools;
fn main() {
 let a = [4, 9, 3, 7, 1, 8, 5];
 let s = a.iter().sorted().rev().map(|n| n.to_string()).join("-");
 println!("{}", s);
}
実行結果
9-8-7-5-4-3-1
このようにRustでもスクリプト言語並の平易さでプログラミングすることができます

922:デフォルトの名無しさん
21/09/06 18:16:26.78 JuTqTMEy.net
Goにしとけ
日本のIT企業でRust使ってるとこなんてマウンターしか居ないぞ

923:デフォルトの名無しさん
21/09/06 18:25:22.79 fRFbGcCb.net
>>898
日本でもRust採用されつつあるよ。
Ruby採用で有名なクックパッドも、バックエンドでRubyの遅さがボトルネックになっているとして、Rubyのように記述できつつ高速でメモリ安全性のあるRustへ書き換えた。

924:Mb
21/09/06 19:25:30.56 O3QTJXwo.net
>>987
なんか変だなぁ。っていうか気持悪い。
join() メソッドの中に LOOP-UNTIL-DO-REPEAT 構造が
隠蔽されているのはともかくとして、
> println!("{}", s);
の括弧("{}")はどこへ行っちゃったの?
正直な話、Java の構文は若干ダサいところはあるけども、
「Rust の構文って、こんなコードが通っちゃうんだ …」と
思うと減滅だなぁ。

925:デフォルトの名無しさん
21/09/06 19:28:57.79 IWxO7u+j.net
Rustは
android,Ios,windowsアプリを作れますか?
作れるとしたら
Kotlin,swift,c#と比べて
アプリ制作面で劣るところはありますか?

926:デフォルトの名無しさん
21/09/06 19:45:57.12 lYrcshdQ.net
Rustのゼロコスト抽象化は
逆に言えば少しでもコストのかかる抽象化はする気がないということで
いくらモダンだろうが
プログラミングしやすい、はありえない

927:デフォルトの名無しさん
21/09/06 20:15:54.87 fRFbGcCb.net
>>900
C言語でのprintf("%s¥n", s);が
Rustでのprintln!("{}", s);
これくらいの差異は、複数のプログラミング言語をしているなら誤差範囲とわかるはず。
正確にはDisplayトレイトを実装している型ならば全て"{}"で表示できる。

928:デフォルトの名無しさん
21/09/06 20:27:51.93 q4rO2J8T.net
>>900
イテレータ構文を気持ち悪いと感じるのはあなたが時代遅れのプログラマーだから
以前に>>295でJavaScriptやRubyの例が示されているようにRustに限らず様々な現代的なプログラミング言語でほぼ同じイテレータ構文となる

929:デフォルトの名無しさん
21/09/06 20:34:05.04 q4rO2J8T.net
>>902
それはあなたの理解がおかしい
言語としてゼロコスト抽象化をしているということはその上に自由に様々な形でコストありの抽象化を実装できるということ
例としては今出ているイテレータ
イテレータはゼロコストの抽象化ではないので言語のコアではなくそのすぐ外側のstd標準ライブラリで実装されている

930:デフォルトの名無しさん
21/09/06 20:53:30.08 H/42z0MA.net
>>900
さすがにjoinは最近のプログラミング言語ではほとんど標準で用意されてるよ
Javaにすら

931:デフォルトの名無しさん
21/09/06 20:54:43.54 H/42z0MA.net
>>897
>let s = a.iter().sorted().rev().map(|n| n.to_string()).join("-");
これが不自然に見えるならさすがに不勉強すぎる

932:デフォルトの名無しさん
21/09/06 21:02:47.84 3OGE1cne.net
この業界の常として
いいものが流行るとは限らないからな

933:デフォルトの名無しさん
21/09/06 21:13:21.05 PNIpC8+G.net
>>890
暗に「めっちゃ成長株」って言ってる?

934:デフォルトの名無しさん
21/09/06 21:17:54.84 fRFbGcCb.net
名前欄Mb氏は何年間もプログラミングをしていないか、あるいは、非常に古い特殊な環境の仕事しかしていないと推測される。
だから現代のプログラミングでは中心の一つとなったイテレータすら知らなかったのだと思われる。
その知識経験不足な状況でこのプログラミング言語スレに来ているため、何かを教える側ではなく、教わる側になってしまっている。

935:デフォルトの名無しさん
21/09/06 22:01:38.70 a3pkK5Bj.net
何歳からぶっちゃけ始めたって良いんですよ

936:デフォルトの名無しさん
21/09/06 22:03:34.10 7FNGaSMf.net
ちょうどitmediaの記事が来た
クラウド方面でもRustが大人気らしい
「Rust」はなぜクラウドネイティブ開発者の間で大人気なのか?
URLリンク(techtarget.itmedia.co.jp)
2021年9月6日

937:デフォルトの名無しさん
21/09/06 22:05:29.40 orh/Cn4P.net
YouTube で有名な、雑食系エンジニア・KENTA は、
未経験者のバックエンドの道筋を、Ruby → Go としてる
Rust, Elixir は、普及のキャズムを越えなかった。
スクエニはElixirも使っているけど
唯一越えたのは、Go だけ
Rust は、GC じゃないから、面倒くさい事、この上ない

938:デフォルトの名無しさん
21/09/06 22:12:41.69 7FNGaSMf.net
>>913
しかしcookpadはバックエンドの高速化でRuby→Rustへ置き換えたそうだ
あとGCがなくても全自動で即座に解放されるから面倒臭くはない
実際のRustのプログラム例>>897もRubyとほとんど同じ

939:875
21/09/06 22:17:23.19 orh/Cn4P.net
C/C++ は、ポインターがある言語なので、
かなりの時間がポインターの追跡・バグに取られる
同様に、初心者がRust をやると、
メモリの解放に、多くの時間を取られる
C/C++, Rust を10年やったとしても、7~8年は無駄になる。
Ruby を1~2年やった人に勝てない
だから、GC のあるGo が流行った。
メモリの解放に費やす時間を、
Linux, AWS, Docker, データベースなど、サーバー構築運用の勉強に当てられるから
食べチョクなどの募集を見ても、明らか。
Ruby on Rails で、サーバー構築運用に詳しい人を募集している
メモリの解放に、時間を費やしている人ではない!
だから、YouTube で有名な、雑食系エンジニア・KENTA のカリキュラムでは、
Rails, Linux, AWS, Heroku, Docker, CircleCI, データベースなどが必須なわけ
10年間、メモリの解放をやってましたと言う人を、どこも雇わない。
サーバー構築運用に詳しくないと、雇われない

940:デフォルトの名無しさん
21/09/06 22:25:39.89 wypx0xl1.net
将来性のある言語は十分わかったから、
今すぐ戦力になれる言語を教えてくれ

941:デフォルトの名無しさん
21/09/06 22:26:14.47 x646ABuV.net
鎖につながれ 歩き出す君を 飲み込むくらい 多忙な都会は流れてる
投げ捨てられた夢が 転がってる足元が見えたら 地図にない町へ旅立とう たとえそれが無茶だとしても
錆びついたマシンガンで 今を撃ち抜こう

942:デフォルトの名無しさん
21/09/06 22:27:24.41 s2zFhzt5.net
>>910
Mb氏は不勉強だかバカにされても逃げずに堂々と名乗ってる
コテハン複数持ってるのにいつもコソコソしてる誰かさんに比べると評価できるぞ

943:デフォルトの名無しさん
21/09/06 22:30:03.12 7FNGaSMf.net
>>915 ちょっと無知すぎて呆れる メモリの解放が自動的に行われるRustに対して『初心者がRust をやると、メモリの解放に、多くの時間を取られる』 Rustのアンチな人はあまりにも無知で的外れ



945:875
21/09/06 22:30:13.27 orh/Cn4P.net
結局、バックエンドのほとんどは、サーバー構築運用
言語の文法だけを勉強しているような香具師は、雇われない。
10年間、メモリの解放をやってましたとか言う人も
サーバー構築運用においては、こういうものは比重が少ない
皆、サーバーの勉強が嫌だから、言語の文法の勉強に逃げる。
本1冊読めば、そこそこ出来るから
でも、サーバー関係だと、20~30冊読まないと出来ないから、
皆、言語に逃げる
皆、サーバーの勉強が嫌だから、Windows 用言語に逃げるだろ。
それと同じ
だから、どこの会社も、サーバー構築運用ができる香具師を募集している。
Ruby on Rails, Linux, AWS, Heroku, Docker, CircleCI, データベースなど
実際に米国年収では、1,300万円のRails を抜いて、
AWS Solution Architect が、1,400万円とかになってる
会社は、言語ができる香具師よりも、サーバー技術者が欲しい

946:875
21/09/06 22:42:49.81 orh/Cn4P.net
C/C++, Rust を、10年やってたけど、サーバーの事はあまり知らない香具師と、
Ruby on Rails, Linux, AWS, Heroku, Docker, CircleCI, データベースなどを、
2年やってた香具師では、
後者の方が、採用される
だから、YouTube で有名な、雑食系エンジニア・KENTA のサロンでは、
Rails を採用している
つまり、最も効率的に、早くサーバー技術を学べるのが、Rails。
これで2年やってから、Go へ進む。
これが必須の王道
Rust, Elixir は、補助的なもの。
必須でもないし、初心者がやるものでもない
Rust, Elixirは、大企業しか使わないし、転職で困るので、
ベンチャー・中小企業でも使う、Railsは必須

947:デフォルトの名無しさん
21/09/06 23:01:16.10 fRFbGcCb.net
>>915
> かなりの時間がポインターの追跡・バグに取られる
> 同様に、初心者がRust をやると、
> メモリの解放に、多くの時間を取られる
それは全く逆です。
Rustはそれらポインタの追跡バグ取りをしなくてもいいように設計され、言語としてメモリ安全性を保証します。
もちろんメモリの解放は安全に自動的にされるので、プログラマーがする必要はありません。
>>921
> C/C++, Rust を、10年やってたけど、
Rustの最初の公開バージョン0.1は2012年ですから、Rustを10年やってたらMozillaの中の人だけですねw
もちろんプログラミング言語は単なる手段の一つにすぎないので、その他の知識経験が必須なのは同意です。
しかしそれにしては、おっしゃる分野が特定の狭い範囲に限定されすぎです。
10年間良い環境でやっていれば、もっと広い意味でのフルスタックエンジニアになれます。

948:デフォルトの名無しさん
21/09/06 23:32:09.63 wvQa5L/J.net
>>916
主戦場がどこか?によるだろう?
Excel業務ならマクロ
Linuxで定形処理ならPython
WebならJavaScript
プログラムなんて何度も繰り返すめんどくせー作業を自動化するのが目的のひとつなんだから

949:デフォルトの名無しさん
21/09/07 00:25:16.69 lcFKmhWK.net
>>923
そのLinuxで定形処理ならPythonの部分はダウト
もちろんPythonもPerlもRubyもJavaScriptもそこで用いたりするがPythonが何か突出してることは絶対にない
Linuxで強いて挙げるならばシェルスクリプトだろう

950:デフォルトの名無しさん
21/09/07 01:01:21.11 vmeNyMhz.net
あえてソコは本格的なプログラミングを行うには適さない
簡易的コマンドシェルスクリプトって始めるのにいい言語か?と自問自答でPythonにした
シェルスクはキーボードのショートカットのようなパソコン操作の部分程度だと思っていたのでマウス片手に戦場に行く人には勧められない

951:デフォルトの名無しさん
21/09/07 01:29:30.69 lcFKmhWK.net
>>925
本格的なプログラミングと言い出したらスクリプト言語である必要性すらなくなってしまう
大幅に譲歩してスクリプト言語限定(シェルスクリプトは除く)の話としても
他のスクリプト言語も現実に使われているわけだから「Linuxで定形処理ならPython」と言うのはかなり無理がある
そこはRuby好きな人たちなら確実にRubyであろうしWeb屋でサーバーサイドまでJavaScriptで統一してるならばそこもJavaScriptで全く問題なく処理できる
そして昔はPerl派が最大勢力だった分野でもあるため今も残存勢力がいるようだ

952:デフォルトの名無しさん
21/09/07 05:18:46.73 yB3Yphwa.net
まあぶっちゃけJavaかJSかC#だよ
ちゃんとしたプログラマなら言語なんかすぐ覚えるんだからあとは必要な時に必要なものをやればいい

953:デフォルトの名無しさん
21/09/07 07:06:12.90 XNsuGhsJ.net
>>926
それは、オフィス雑務なのか、機械学習させたいのか、インタラクティブを求めてるのか、千差万別
一例に過ぎないのに何と戦ってるのかわからないから、追記しとく
ぶっちゃけ始めるのにいい>今すぐ戦力になれる言語<て何?
既存品の組合せでトライアンドエラーするならスクリプト言語系
例えば
Excel業務ならマクロ とか
Linuxで定形処理ならPython とか
WebならJavaScript とか
...etc.

954:デフォルトの名無しさん
21/09/07 07:18:51.67 X4ha4H+D.net
>>928
Linuxのところがおかしい
LinuxでPythonである必要性は全くない

955:デフォルトの名無しさん
21/09/07 07:20:31.47 jxlC+sGH.net
日本人がプログラミングの勉強をするには
・ スクール
・ webサイト
・ 本
という感じになるんだと思うけど
この中でプログラミングレベル(作法やデザインパターンやなんやら)を
初級~上級と目指すには
どの言語が適しているか?という問いなら
どんな言語がいいのかな?
Rustはネットや書物だけでも
ネット決済のプログラムを0から構築できる程度に
学習情報は整っていますか?

956:デフォルトの名無しさん
21/09/07 07:34:01.58 lcFKmhWK.net
>>930
唐突にネット決済という特殊な特定の話が出てきて
さらに特定の言語Rustを指定して質問してる時点で言動が異常
それはともかく
スクールに頼らないといけない人はプログラミングに向いていないとは思う
向いている人ならば必ず自力で学習できる

957:デフォルトの名無しさん
21/09/07 07:40:50.99 jxlC+sGH.net
>>931
Rustが話題になっていて学ぶ環境は整備されているのかという個人的な興味と
ネット決済は整数の取り扱いやサーバーとの連携
セキュリティやバリデーションなど色々ハードルが高く
ライブラリもしっかりしていないと、という意味合いで例示しただけです

958:デフォルトの名無しさん
21/09/07 07:43:42.31 jxlC+sGH.net
あと金融決済のサイトは
変数の取り扱いや様々な処理
拡張性や保守性、その他もろもろ
硬派でないとという意見を散見してきたので
金融決済サイトに適した言語なら
手堅いのかなと思いまして

959:デフォルトの名無しさん
21/09/07 07:58:09.14 2A/XDTjQ.net
>>933
そう思ってしまうのは理解できる。
しかし現実には関係ない。
ほとんどのプログラミング言語は、そういう観点ではほとんど差がない。
むしろ言語とは別のファクターが大きい。
例えば、Pythonが他の言語と比べて特に何か機械学習に向いているわけではないが、
たまたまその方面のライブラリなどが整備されたという理由で、機械学習ならPythonという状況。
しかもそのライブラリの実体はC++で書かれていたりするので、その皮を被せるのはPythonでなくとも他の言語で可能。

960:デフォルトの名無しさん
21/09/07 08:41:50.41 lzLCCeKd.net
>>933
それ基本的に言語関係ないよ

961:デフォルトの名無しさん
21/09/07 08:46:47.97 VlHQ7RbH.net
ここでRust Rust言ってるやつも
つい先日、Rustスレでイテレータ理解してなくて恥晒してたぞ

962:デフォルトの名無しさん
21/09/07 09:28:32.67 1fBu03+J.net
イテレーターとかファサードとか
古来からのプログラミングパターンなんだし
自分で簡単に実装できるから
あんまり意識してないとかじゃない?

963:デフォルトの名無しさん
21/09/07 09:34:40.79 i4aq2SNT.net
もう黙っとけば?

964:デフォルトの名無しさん
21/09/07 09:36:23.70 1fBu03+J.net
>>935
動的型付だと保守修繕するときに
変な変数や


965:配列の使い方をされてめちゃくちゃになるから 静的型付け言語を採用するとか聞いたことあるけどガセだったんでしょうか? java勉強してて楽しいなと思った箇所で クラスを秘匿にしてinterfaceで多様性を実装することで バグの伝搬を防ぐっていうのがあったんですけど pythonやjavascript、Rustとかでも java同様に多様性を利用したプログラムはできるんですか?



966:デフォルトの名無しさん
21/09/07 09:56:16.49 X4ha4H+D.net
>>939
それが楽しいならばRustがさらに向いてる
Rustはパラメータ多相だけでなくサブタイプ多相も強い静的型付けで可能

967:デフォルトの名無しさん
21/09/07 10:42:23.36 JkFSolwy.net
>>936
いつもの人だからルビさん同様そっとしといてやれ

968:デフォルトの名無しさん
21/09/07 10:55:51.98 2A/XDTjQ.net
>>936
あのスレものぞいてるが、そんな話あったか?
イテレータでは書けないケースをforなどループで回す、という話はあったが。

969:Mb
21/09/07 13:56:25.62 cqWA1B7j.net
>>910
イテレータは普通に知ってるんだが、
いわゆるループ関係の構文(for、while、do)と、
ちょっと相性が悪いように思う。
「コンテナクラスに放り込んで、どれから取りだすか」というときに、
sort 一発で優先度が決まるわけでもないだろう?

970:Mb
21/09/07 14:05:48.13 cqWA1B7j.net
次スレの話だが、
【性別・年齢・経験】今から始めるのにいい言語って何【不問】
とかどうだろう。

971:デフォルトの名無しさん
21/09/07 14:10:42.42 70Q3ivE4.net
それよりもテンプレでプログラミングでできることリストを作れ

972:デフォルトの名無しさん
21/09/07 14:30:33.98 YFGrUn6n.net
【女・19・経験人数3人】
で~すw何か良い言語教えて~w

973:デフォルトの名無しさん
21/09/07 14:44:24.28 yB3Yphwa.net
>>939
動的は書きやすいけど読みにくい
Interfaceなんか最近の言語はどれでもある
まあぶっちゃけ現状バックエンドでかたいのはJavaだよ

974:デフォルトの名無しさん
21/09/07 14:59:01.30 2A/XDTjQ.net
>>943
コンテナは必ずしも順序があるわけではないが、イテレータは常に順序がある。
どれから取り出すかは各イテレータに依存だが入力に対して常に一意に定まる。
開始イテレータは、同じ入力に対しては必ず同じ対応するシーケンスを出す。
中間イテレータは、同じシーケンス入力に対しては必ず同じ対応するシーケンスを出す。
終端イテレータは、同じシーケンス入力に対しては必ず同じ出力を出す。
つまり開始イテレータ及び中間イテレータは、常に入力に応じた安定したシーケンスを出すので、むしろループ構文と相性が良い。

975:Mb
21/09/07 16:29:16.97 cqWA1B7j.net
それは理解できるのだが、
スタックとキューとデキューの話になると思う。
チャート法のアジェンダの中から、どういうふうに
取り出すか、というのは評価関数とかの話を含めて、
けっこう難しい問題だと思う。

976:デフォルトの名無しさん
21/09/07 16:50:09.82 2A/XDTjQ.net
>>949
あなたは何も理解できていない。
いや理解する気がないと言うべきか。
ならば匙を投げる。

977:デフォルトの名無しさん
21/09/07 16:52:50.07 jxlC+sGH.net
スマホアプリを作れるようになりたいとしたら
Kotlin、C#、Swiftでしょうか?
Rustについて調べたんですけど
CやC++の後継という表現はありましたが
スマホアプリを作るには重たそうな感じですね
(作れるのかさえ分かりませんでしたが)

978:Mb
21/09/07 16:54:43.78 cqWA1B7j.net
>>950
あなたは何も説明できていない。
いや説明する気がないと言うべきか。
語れ。でなければ匙を投げる。

979:デフォルトの名無しさん
21/09/07 16:57:34.49 C5/+Efkq.net
>>950
みーんな放置してるから
放置でおk
このスレに来てる人の中で最底辺だからソイツ
知能と経験という意味において

980:デフォルトの名無しさん
21/09/07 17:15:46.63 GqRblLtF.net
次スレは誰が建てるの? >>980?

981:デフォルトの名無しさん
21/09/07 18:23:29.62 Pr0NAbvm.net
あわしろ氏は、見どころのある少年だと言ってるぞ。
意見が割れてるな。

982:デフォルトの名無しさん
21/09/07 19:21:42.59 tV6oj3NW.net
もう立てなくていいです

983:Mb
21/09/07 19:56:18.96 cqWA1B7j.net
>>945
あたしもそう思うんだけど、気に入らない人っているみたいなんだよね。
ハードウェア寄りの基礎だったら、アセンブラ系の言語か
C でいいと思うんだけど、C++ は応用寄りなので初心者向けとは
言いにくいんですよ。
VB とかは言われるほど悪くないとは思うんだけど、N-BASIC とか
Real BASIC とかの確執もあって、MS 嫌いの人には評判が悪い。
Java と C♯は、業務用には悪くないと思う。
Haskell は最近勉強しはじめただけだけど、遅延評価とかそのあたりを
解ってもらえるかどうかはいろいろあると思います。

984:Mb
21/09/07 20:05:44.64 cqWA1B7j.net
>>945
新スレ立てるなら、これ入れといて。
前スレ
ぶっちゃけ始めるのにいい言語て何?
スレリンク(tech板)
ぶっちゃけ始めるのにいい言語て何 part2
スレリンク(tech板)
ぶっちゃけ始めるのにいい言語て何 part3
スレリンク(tech板)
ぶっちゃけ始めるのにいい言語て何 part4
スレリンク(tech板)
ぶっちゃけ始めるのにいい言語て何 part5
スレリンク(tech板)

985:875
21/09/07 21:01:05.52 YcIWO4/P.net
>>930
YouTube で有名な、雑食系エンジニア・KENTA のサロンでは、
Ruby on Rails, Linux, Docker Compose, Node.js(Webpack, Babel), Bootstrap
VSCode(Remote Container, WSL2 ならRemote WSL), Heroku, CircleCI、データベース
今までは、Docker Compose までが初心者用コースだったが、
最近は誰でも、Docker出来るから、
AWS Fargate, Terraform, React, Vue.js, TypeScript も入る
だから、AWSのくろかわこうへいのサロンにも、入る必要がある。
今では、1年の未経験者が、10年以上のプロよりも技術力が上になってる!
他には、Udemy の山浦清透のサロンにも、KENTAと同様、3千人が入っている。
くろかわこうへいのサロンには、数百人とか
KENTA, 2021/3
女性エンジニア&個人開発者のだむはさんにインタビュー
www.youtube.com/watch?v=ieljaqRC98A
Heroku, S3, 決済はStripe, Docker

他には、Shopify アプリなどもある
学習環境では、どこの学校・サロンでも、圧倒的にRails。
Railsガイド・Railsチュートリアル、黒田努の本など
Rails 6 の本だけでも、数冊は出てる。
Railsチュートリアルも毎年、売上が増える。
どうして、Ruby はオワコンと言われるのか、全く分からないと言ってる

986:デフォルトの名無しさん
21/09/07 21:06:13.96 On1cIQoS.net
大学のプログラミング教育ではRubyは下火かな
いまはCとPythonが多いのでは

987:875
21/09/07 21:23:58.73 YcIWO4/P.net
基本、食べチョクみたいに、若い娘が1人で起業するような場合は、
Ruby on Rails, Heroku, Bootstrap
ただし、食べチョクはAWS だけど
食べチョクでは、Railsで、サーバーに詳しい人を募集している。
言語よりも、ほぼサーバー構築運用の技術。
Linux, Docker, Kubernetes, AWS Fargate, Terraform とか
つまり、言語は副次的なもの。
サーバー技術を学ぶのに、最も簡単なフレームワークが、Railsと言うだけ
これを、Node.js, Laravel, Django で学ぶと、転職に不利。
誰も、Rails以外のポートフォリオを見ないから、無視されるだけ
それで、多くの学校・サロンは、Railsを採用している
自分が採用する側になれば分かる。
Rails以外を提出しても、面倒くせー奴だな。
こいつは不採用だ、となる
Ruby以外の言語は可読性が低いし、素人が書いたコードを読む、プロなんていない。
時間の無駄

988:デフォルトの名無しさん
21/09/07 21:37:29.06 jxlC+sGH.net
Rustはスマホアプリ開発には適してないんでしょうか・・・?

989:デフォルトの名無しさん
21/09/07 21:45:05.68 MPjmEySK.net
言語とかどうでもいい
やる気があるやつならAndroidStudioとJavaを使ってこの一日だけである程度動くアプリ作れてるぞ

990:デフォルトの名無しさん
21/09/07 21:45:12.90 C5/+Efkq.net
>>961
> Ruby以外の言語は可読性が低いし
逆にrubyは実は可読性が低いと思うけどね
書きやすい反面書き散らしてしまうというか
他の言語のときにくらべてあとから見たとき唖然とする
自分の書き方が悪いんだといえば完全に言い訳できないけど

991:デフォルトの名無しさん
21/09/07 21:45:39.25 31g6215L.net
現実離れしたものしか思いつかない

992:875
21/09/07 22:18:24.77 YcIWO4/P.net
要するに、Rails が教えるものは、ウェブアプリのデザインパターン
例えば、秘密情報は、Credentials を使うとか、
どのようにファイルを分割するとか、
ほとんど決まっているから、他人のコードでも読める
例えば、伊藤淳一のコードレビューでも、
そのやり方はRails Way じゃないとか、レールに乗っていないとか、
書き直しを指示される
独自のやり方で書けないようにしているから、共有性が高い。
個人の書き方に依存しない
初心者でも、クソコード・クソ設計にならないようにしている

993:デフォルトの名無しさん
21/09/07 22:56:40.36 2A/XDTjQ.net
Ruby on Railsは既に古いと思います。
例えば今やWebサーバーでは必須となったサーバーサイドレンダリング(SSR)。
これは、Vue.jsやReact.jsなどをブラウザサイドで使う場合に、最初のアクセスで閲覧者にページ表示を待たさないためには、SSRが不可欠な技術となっています。
ところがRuby on Railsはこの時にSSRをすることができません。
もし無理矢理にRuby on RailsにSSRをさせようとするならば、Vue.jsやReact.jsで記述したロジックを、Rubyでも記述しなければいけなくなります。
当然そんな二重に無駄なことはしていられません。
そこでサーバーサイドでもVue.jsやReact.jsのコードを動かすために、それぞれVue.js/Nuxt.jsやReact.js/Next.jsという形で、
サーバーサイドではNode.jsを用いてJavaScriptを動かしているのが現状です。
ではこの時Ruby on Railsは何をしているのか??実はNode.jsに丸投げしているだけです。
つまりRubyは不要でRailsも不要で、最初からNode.jsの各種Webフレームワークを使えばよかったのです。
こうすることで全てを効率よく、しかもプログラミング言語はJavaScriptだけでサーバーサイドもブラウザサイドも記述できます。

994:Mb
21/09/07 22:57:46.16 cqWA1B7j.net
アセンブラや C は、本当に「言ったことしかやってくれない」
かわりに、「言わなかったことは決してやらない」(つーても
オプティマイザがチョッカイを出してきたりするわけだが)
という特性がある。
最近の言語は、「バックグラウンドで何をやっているか」が
わかりにくいのが欠点といえば欠点だし、「そういうのを
意識しなくていい」というのが長所といえば長所。

995:875
21/09/07 23:27:41.40 YcIWO4/P.net
Ruby on Rails は、Heroku, AWS で、React, Bootstrap が多い。
最近は、Vue.js もある
Railsの作者・DHH の会社・Basecamp 社製のStimulusReflex もある。
これは、WebSocket 通信
他には、API モードもある。
GraphQL とか

996:デフォルトの名無しさん
21/09/07 23:31:20.36 2A/XDTjQ.net
>>969
せっかくですから、こちらの>>967に対して反論してみて下さい。

997:デフォルトの名無しさん
21/09/08 00:45:32.82 dZyroowl.net
この人は会話のキャッチボールというものが出来ない人だからなあ

998:デフォルトの名無しさん
21/09/08 03:01:25.91 YcAq3kNQ.net
Ruby君は特定の単語に反応して同じ主張を繰り返すだけのできの悪いbotみたいなモノだから、議論しようとするだけ無駄
さわらずスルーするのがスレを汚さず皆のためかと思うよ

999:875
21/09/08 03:04:47.47 dK8gXF1C.net
Ruby on Rails では、Node.js は開発環境で使っているだけ。
webpack, babel, npm/yarn などのツールを使うから
React, Vue.js も、最終的にはトランスパイルされる。
HTML のscript タグに、React, Vue.jsのCDN のURL を書いても動く
実行環境では、Node.jsは動いていない。
サーバー側はRails で、ブラウザ側は、HTML, CSS, JavaScript
サーバー・ブラウザのやり取りは、HTMLか、
Rails のAPI モードでは、JSON とか
だから、Railsの基本は、Heroku, AWS で、React, Bootstrap が多い

1000:875
21/09/08 03:19:09.31 dK8gXF1C.net
伊藤淳一、2017
Rails 5.1で作るVue.jsアプリケーション ~Herokuデプロイからシステムテストまで~
www.youtube.com/watch?v=ycOeM2umXkY
Deanin, 2020/12
Axios呼び出しを使用したRubyOn Rails 6 RESTAPIバックエンドを備えた
Vue3およびVuexフロントエンド| 20in20 –第15週 (翻訳済み)
www.youtube.com/watch?v=gnymlh4Ljvw
今日は、Vuexとすばやく簡単なRailsAPIバックエンドを使用して、独自のVue3SPAを作成します
2人とも、有名なRubyist

1001:デフォルトの名無しさん
21/09/08 04:36:46.97 wRK4TQzB.net
雑食系エンジニアNG入れたわ

1002:デフォルトの名無しさん
21/09/08 19:10:02.23 MKoM4CNU.net
いちいち宣言する必要ないだろ。
何なのコイツ。
荒らしてんの。

1003:デフォルトの名無しさん
21/09/08 19:16:38.78 MKoM4CNU.net
初心者のためにRubyが良いですよと教えてくれてるのに。
感謝するべきだろ。

1004:デフォルトの名無しさん
21/09/08 19:22:33.76 dZyroowl.net
頑として他人の意見を聞き入れない奴の指南に価値などない

1005:デフォルトの名無しさん
21/09/08 19:24:20.15 wkgfp7fU.net
真珠の方がいいです

1006:デフォルトの名無しさん
21/09/08 19:50:39.84 cP5vntap.net
Perlって真珠のスペルと違うじゃないかと思ったけど、
調べたらpearlが既にあったんだね。へー。

1007:デフォルトの名無しさん
21/09/08 21:18:58.04 T+5XeuM8.net
ダイヤ、サファイア、エメラルド
みたいな言語作って流行らせようぜ

1008:デフォルトの名無しさん
21/09/08 22:32:57.28 7bpv8b2r.net
>>960
そこでCに戻るってのもなんだか感慨深いものがあるな

1009:デフォルトの名無しさん
21/09/08 22:41:15.04 bql1CtjZ.net
Cで入門→Rustへ進む、で全て解決な気がしてきた
メモリ安全性が保証されてGCも無くモダンな書き方で便利にプログラミングできるC言語の超越進化版が出現してしまったわけだから

1010:デフォルトの名無しさん
21/09/08 23:38:15.86 cP5vntap.net
RustはMicrosoftとGoogleが推してるのが大きいよね。
ユーザーが多ければ磨かれるし、優秀でもマイナーだと心細い。

1011:デフォルトの名無しさん
21/09/08 23:51:55.20 tR72XlKG.net
>>984
あとクラウド最大手のアマゾンも
AWS(Amazon Web Services)、プログラミング言語「Rust」を重視する理由示す--エンジニア採用中
URLリンク(japan.zdnet.com)

1012:デフォルトの名無しさん
21/09/09 00:27:38.16 du2BnvwR.net
磨いても宝石になるとは限りませんがね

1013:デフォルトの名無しさん
21/09/09 04:11:04.50 2bah4YWI.net
>>983
それなら最初からRustでいいんじゃね?

1014:デフォルトの名無しさん
21/09/09 06:44:44.42 34pZkkAD.net
GCなんて大容量高速処理時代に必要なの?

1015:デフォルトの名無しさん
21/09/09 06:45:19.59 34pZkkAD.net
というか、従来のGCあり言語で十分なのでは

1016:デフォルトの名無しさん
21/09/09 08:37:56.58 lknGlWAU.net
>>988
容量無制限時代がくれば必要ないが
大容量とはいえ限界があるなら必要だろ

1017:デフォルトの名無しさん
21/09/09 13:18:08.68 hvR+3cwr.net
メモリが大きくなると
さらにメモリをたくさん使うようになるから
いずれにしてもGCは必要だな

1018:Mb
21/09/09 14:07:45.20 yI7BAQ6X.net
>>982
そういう意味では ANSI 標準になってからお砂場みたいになって
つまらなくなった。
C 言語って、もっとヤクザな言語じゃなかったっけか?
>>986
玉磨かざれば光なし
以て他山の石となす
>>988
どんな環境にも 必ず終わりはくる
読み筋は野坂昭如「終末のタンゴ」
仮想記憶が絡んでくると、どっと遅くなる。
Rust はそのあたりに配慮してああいう言語仕様になったのだと思う。
新人はそのあたりを意識できるように、
お砂場言語と仮想マシンときっちりしていない言語から
始めるのも悪くないと思う。

1019:Mb
21/09/09 15:35:22.20 yI7BAQ6X.net
誰か次スレを立ててくれないか?

1020:デフォルトの名無しさん
21/09/09 16:24:34.45 vNkr9nur.net
次スレいらないでしょ
少なくともこのスレタイでは

1021:Mb
21/09/09 16:53:03.44 yI7BAQ6X.net
>>994
> 少なくともこのスレタイでは
【C?】最初の言語に何を選んだらいい?【Haskell?】
とかかなぁ。

1022:デフォルトの名無しさん
21/09/09 17:01:37.63 MwoieJA5.net
C…まだ分かる
Haskell…これは無いだろ

1023:Mb
21/09/09 17:05:35.36 yI7BAQ6X.net
ぶっちゃけ始めるのにいい言語て何?
スレリンク(tech板)
ぶっちゃけ始めるのにいい言語て何 part2
スレリンク(tech板)
ぶっちゃけ始めるのにいい言語て何 part3
スレリンク(tech板)
ぶっちゃけ始めるのにいい言語て何 part4
スレリンク(tech板)
ぶっちゃけ始めるのにいい言語て何 part5
スレリンク(tech板)
とかかなぁ。

1024:Mb
21/09/09 17:22:35.58 yI7BAQ6X.net
次スレ
【C?】最初の言語に何を選ぶか【Haskell?】
URLリンク(mevius.2ch.sc)
Haskell に賛否両論があるのは承知している。
とはいえ遅延評価は組合せ論的な問題には強い。
そこは議論の余地があると思う。

1025:Mb
21/09/09 17:37:55.83 yI7BAQ6X.net
C は「超高級アセンブラ」と呼ばれていた経緯があるような
ハードウェアべったりの言語であり、
Haskell は LISP 1.5 の後継として、
SmallTalk 80 を継承している。
とりあえず対極に置いても、さほど違和感はないように思う。

1026:デフォルトの名無しさん
21/09/09 18:41:37.72 wE7qph1K.net
ぶっちゃけ始めるのにいい言語って言ってんのに、CだのRustだのHaskellだのってバッカじゃねぇのおっさんども
お前らの好みなんか聞いてない。
こんなクソスレはもういらん
初学者はPython、Javascript、Ruby、PHPの中から選べばいい。

1027:1001
Over 1000 Thread.net
このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 27日 21時間 11分 7秒

1028:過去ログ ★
[過去ログ]
■ このスレッドは過去ログ倉庫に格納されています


最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch