Ruby 初心者スレッド Part 63
■ このスレッドは過去ログ倉庫に格納されています
プログラミング言語Rubyについての、初心者向けスレです。質問・要望・雑談などどうぞ。
質問するときは、OSやRubyのバージョン、エラーメッセージを書いたほうがいいお
Ruby on RailsについてはWEBプログラミング板で
前スレ
Ruby 初心者スレッド Part 62
https://mevius.5ch.net/test/read.cgi/tech/1511451329/
るりまサーチ (リファレンス検索)
http://rurema.clear-code.com/
Rubyist Magazine - るびま
http://jp.rubyist.net/magazine/
逆引きRuby
http://www.namaraii.com/rubytips/ chunkメソッドなのですが、
hash = {}
(1..99).to_a.chunk{|a|a % 10}.each {|k,v| hash[k]=v}
これで期待した値は
{1=>[1,11,21,31,..91],2=>[2,12,22,32..93],3=>..}
だったのですが、
結果は
{1=>[91],2=>[92],3=>[93]...}
これは90台の値でhashの値が上書きされるということでいいんですよね。
hash = {}
(1..99).to_a.chunk{|a|a / 10}.each {|k,v|hash[k]=v}
p hash
こっちだけど綺麗に
{0=>[1,2,3,4,5,6,7,8,9],1=>[10,11,12,13,14,15,16,17,18,19],2=>...}
と纏めてくれるんだけど。 hash = {}
(0..9).each { |a| hash[a] = [] }
(1..99).to_a.chunk { |a| a % 10 }.each { |k, v| hash[k] = hash[k] + v }
p hash
これでいいのか。
でも、これだとchunkを使う意味がないんだろうな。 rubiniusってどうなん?
2018.5.28に3.105がリリースされて、まだ活動しているけれど、使っている人っているのかな? rubiniusはSqueak/Pharo(Smalltalk)やpypy(Python)ではできてるVMのセルフホスティングを断念して
その存在価値をほぼ失って久しいという印象
今のウリは何なの? >>229-230
a / 10 では、0〜9 が連続した同じグループだろ
a % 10 では、0〜9 は、すべて異なるグループじゃん。
0, 1, 2... と、グループが切り替わっていく
chunk は、グループが切り替わる所までが、一連の同じグループ プログラミング教育が話題になりはじめたけど、
Ruby噛ませて補助金や助成金をもっと出させたほうが良い 本当に日本の将来を思うのなら、Rubyは教育分野からは今後きっぱり身を引くべきだと思うけどね
日本のITはクソと言ってる人達が日本のITのガラパゴス化を増長させているという まだ?人気だったことあったっけ?
arduinoやmicro:bitは何でプログラミングしますか? mrubyは純粋に補助金稼ぎのためにやっているプロジェクトで、実際には誰も使ってないぞ
IoTとか地域の中小企業の活性化とか言って公共団体から金を引っ張ってきやすいんだよ
金の集めやすさでいえば今だとAI関連の方がいいだろうけど、役所のスネ齧ってるような連中の中にそんな高度な人材はいない 日本ってどれだけ税金にたかれるかで
組織が成功できるか決まるからな
仕様がないね なんかひろゆきの元に戻るらしいね
荒らしも処刑宣告されてたしこれでひとまず一件落着なのかな ということは過去のひろゆきの犯罪も罰せられるのかな? 調子に乗ってたこの板の荒らしもこれで席を下ろされるわけか Rubyで型を扱うライブラリ・・・いくつがあるようだが
本来このような言語の肝となる機能は言語側が用意すべきなのにな
だって統一しとかなきゃ厳しいでしょ
なのに教祖様が、絶対に型は書きたくないでござる!だから安心して見てられるわ
まぁ今のRubyの状態で型を導入したらそれこそ寿命を縮めるだけかもしらんし
その意味では正しい判断だが、周りからの要求もあるし、こういうライブラリ作る連中もいるし
止められない流れなんだろうな、グズグズになって腐る感じ
改めて初めから静的型にしておけばよかったのにな
型を書くのがそんなに面倒か?型推論もあるし
型関係のライブラリが乱立するよりよっぽどマシだろうよ
別に後出しジャンケンじゃないぞ
昔から宣言や型を書かない言語は糞って言ってる人たちはいっぱいいたからな >Ruby に型が欲しい理由
>https://qiita.com/euxn23/items/8a90480135f017271308
>RubyKaigi2018 の発表で型の導入の検討についての話がいくつかあったものの、
>Matz 自身は型アノテーションに否定的であるという発言をしているとのことを受けて、
>自分の意見の表明として書いている。 RubyやPythonはPerlの代替のお手軽スクリプト言語だから、変数宣言と型はない方が
都合が良いだろ。最もお手軽なコマンドラインに与えるワンライナーでもそんなものを
いちいち書かされるのは不便。スクリプト言語の守備範囲を超えた使い方をしようと
する人がいるから叩かれるだけ。本格的なプログラミングにはC系かPascal系を素直に
使えば良い。 OpenCVもTensorFlowも公式がガン無視の空気言語Rubyが!
OpenCVもTensorFlowも公式が第一級のサポートを提供しているPythonに申し上げる!!
RubyやPythonはPerlの代替のお手軽スクリプト言語だから、変数宣言と型はない方が
都合が良いだろ。最もお手軽なコマンドラインに与えるワンライナーでもそんなものを
いちいち書かされるのは不便。スクリプト言語の守備範囲を超えた使い方をしようと
する人がいるから叩かれるだけ。本格的なプログラミングにはC系かPascal系を素直に
使えば良い。 型が欲しかったらC#でもJavaでもScalaでも
静的型言語がたくさんあるんだから
それ使えばいいだろうに
Ruby3での文字列の不変化くらいであれだけ揉めてたのに
静的型にしたらRubyの良さがかなり死ぬと思う ニコニコ見たいなサイト作りたいならRubyも学ぶべき? >>253
動画配信サイトってこと?
インフラ技術の方が重要だからAWSを学ぶべき
RubyやPHPでフロントと簡単なCRUDサーバー作れるだけの技術者なんか掃いて捨てるほどいるから、あえて君がレッドオーシャンに乗り込む必要はない 掲示板+動画みたいなサイト作って一儲けしたい
構想はある Ruby は基本。そこから、Elixir。
Rust もやってる
C++ の標準化委員会の江添亮もいるし、HDL など、
ニコニコはすべての言語をやってる
「たのしいRuby 第5版、2016」を読めば、
ファイル操作・テキスト処理など、一通りできるようになる
無料のRails チュートリアルもやれば、MVC の基本がわかる >>253
>>255
動画サイトは通信料がものすごい負担だから
大企業じゃないとまず勝負にならないと思うよ
個人運営の動画配信サイトなんてあんま見たことないでしょ?
ユーチューブのまとめとかじゃなくて自前配信では 初期ニコ動みたいに、YouTubeをインフラにしてやれば?w >>261
残念ながら急速に減ってる
新規なら選択肢にすら挙がらなくなってる >>264
それRailsはまだ死んでないと言ってるだけで、Rubyの採用が減っている説に対する反証にはなってないよね
以前に比べて減っていないor増えている証拠を提示しないと >>265
ごめんな、それはただの詭弁なんだわ
減ってない根拠が出されてたんだから、次は減ってると主張する方が根拠出さなきゃ嘘がどんどん
明らかになっていくよ >>266
以前と比べて多いか少ないか変わってないかはその記事では特に触れられてないよ >>267
ごめんな、減ってると主張する側の論拠がないんだわ
そこがない以上、話がかみあわんと思うわけさ >>269
The more a language tutorial is searched, the more popular the language is assumed to be.
ちゃんと訳した上で言ってるのかな? 英語読めない人のために補足しとくと、
>>269の下ではRubyは驚くべき速度で人気を失っており避けるべき言語の筆頭とされている >>271
へぇ、ぜひその部分の英文を原文で引用してくださいよ まぁ、引用できるわけないんだけどね。一切そんなこと書かれてないから
ついに捏造までやるようになったんだねー
書かれてない英文を翻訳したかのように書き込むと smalltalkやlispやprolog、algol、cobolが死んでないようにrubyも死んでへんで!!! クックパッドは、Rails で最大のサイト。
RubyVM の作者・笹田耕一も入社した
大規模サイト以外では、やっぱり、Rails
Python Django 超入門、掌田津耶乃、2018
Rails の本は何十冊もあるけど、Django の本は、初めて出た。
Django は、ようやくスタート地点に立った所 Railsは下火かもしれんが
このフレームワークは最大のコミュニティを持っているので
困ったときに質問すれば他の誰かがだいたい答えを持っているのが大きい。
英語読み書きできるとこのアドバンテージはデカイ。 Rubyが下火という話であって誰もRails下火とは言ってない。
Rails以外のRubyの応用用途が減ってって既にRails専用のDSLに落ちぶれている。
Rails使いたいから仕方なくRails以外に使いようがないクソ言語を覚えなければならない状況。
そんな感じなので最近はむしろRubyのせいでRailsが忌避されてる。
Railsは被害者。 Web系のスタートアップ企業はRuby使ってるとこ多いからRubyは今後増えるよ あれだけ炎上騒ぎをおこしたrailsをまだ使うとかにわかには信じがたいな
Rubyびいき筋以外のフラットな立ち位置からの情報はないの? ruby(rails)は自分でもなんとか扱えるから、外注や人を雇う必要ない。
じゃないの? >>229
まだ観てるかしらんけど
(1..99).group_by{|e| e % 10}
=> {1=>[1, 11, 21, 31, 41, 51, 61, 71, 81, 91],
2=>[2, 12, 22, 32, 42, 52, 62, 72, 82, 92],
3=>[3, 13, 23, 33, 43, 53, 63, 73, 83, 93], なんか全部のスレをageて荒らしとる奴がいるらしいな 今後はウェブアプリでもPythonの方が良さそう?
どっち勉強するか迷う ウェブアプリならRuby
機械学習ならPython いつまで自演でネガキャンしとんねん
いい加減、板荒らすのやめろやボケ 作りたいウェブアプリの性質による
ページ遷移だけのクラシックな業務システムっぽいアプリならRailsは最強
クライアントに寄せてモダンな画面をグリグリ動かしたいんだったら最近はNode.jsとTypeScriptかな Pythonにしかできないことは結構あるけど
Rubyにしかできないことはまったくない Python Django 超入門、掌田津耶乃、2018
Django の本は、フレームワークの巨匠・掌田が初めて出したばかり。
一方、Rails の本は、何十冊も出ている
Ubuntu 18.04 で、snap というパッケージマネージャーができたので、
Rails の動く環境一式丸ごと、配布できるようになったので、
Redmine みたいなRailsアプリが、たくさん配布されるはず
snap は、依存も含めて、アプリの仮想環境丸ごと含む >>295
そんなことない
Rubyの方がDSLが作りやすいとかある > フレームワークの巨匠・掌田
笑わせんなw 掌田って初心者本しか書けないやつじゃねーかw いい加減わかってると思うが本人が宣伝しとるんやぞwww >>295
大方のプログラミング言語はチューリング完全なのでできる範囲に差はないよ 世界での圧倒的な人気の差を背景にクソ雑魚言語rubyを煽ること。 >>301
インデントでブロックを表現するとかじゃね?
言語標準仕様のままなら × インデントでブロックを表現するとかじゃね?
○ ブロックを表現するのにインデントを使うしかない Pythonも童的型付き言語なのになんで持ち上げてるんすか >>304
>>301
PythonにできてRubyにできないことだから
間違ってないだろ Selenium Webdriver・Nokogiri を使って、5ch のスレを読み込んでいますが、
5ch は、JavaScript(JS) で動的にHTML を作っているため、
同時に、Selenium Webdriverも使っています
driver.navigate.to "5ch のスレのURL"
doc = Nokogiri::HTML(driver.page_source)
elements = doc.css("div.post") # すべての投稿
これだけで、JS読み込み後のHTML を取得できていますが、
この書き方で、常に取得できるのでしょうか?
それとも、たまたま取得できただけですか? headless chromeをpuppeteerで操作すればchromeが解釈した通り完全に同じjs適用後DOMそのまんま取れるのにね。
それどころかそのページのjsのDOM操作進行途中に任意のタイミングのDOM状態のスナップショットすら取れる。
オワコン言語とオワコンライブラリ使ってる人たちはする必要のないムダな苦労をしてて笑えるw 今はやりの(需要急上昇中の)ブロックチェーンやAI、ディープラーニングを
扱いやすい言語はどれなのでしょう まずブロックチェーンはPythonですね。
それからAIはPythonです。
最後にディープラーニングはPythonでしょうね。
実際に本屋の棚ご覧になったら分かると思いますよ。
実用に重きを置いた言語なのでPython “で” 学ぶ○○というようなタイトルの本が山ほど出てます。
言語 “を” 学ぶどこかの楽しい()プログラミング言語とは違うんですね〜w >>310
Pythonの得意な分野はPythonですね、って言ってるだけな感じが…
AIとディープラーニングなんて隣り合わせの分野だし Rubyがサーバ取っちゃった事ってそこまで発狂するほどの事?
主流のレンタルサーバはRubyを常備してるけど
あ、これにかこつけて荒らしてるのか >>311
ディープラーニングは隣じゃなくて
AIに包含されるんじゃねーの? >>308
Ruby・Selenium Webdriver からも、JavaScript(JS) を実行できる。
以下では、Showroom のアバターなどを削除している
できれば、Ruby で書いて、JS で書く割合を減らしたい。
JS は面倒くさい。JS で書くぐらいなら、Haxe にするわ
# 要素の削除
jsCode = <<'EOT'
var elements = document.getElementsByClassName( 'footer-menu' ) ;
elements[0].parentNode.removeChild(elements[0]) ;
var elem = document.getElementById('js-avatar');
elem.parentNode.removeChild(elem);
EOT
# JavaScript を実行
driver.execute_script jsCode >>315
それはお前が面倒くさい書き方しか知らないからでは?
# 要素の削除
jsCode = <<'EOT'
$( '.footer-menu, #js-avatar' ).remove();
EOT
お前が書いたそれ、一行で終わるんだわ Javascriptよく知らんけど
>>317みたいなレスすこw じゃあネイティブapiのquerySelector使えばいいだけ
>>315みたいなゴミのような書き方はここ10年くらい見たことない 5ch を、Selenium Webdriver で、Chrome に読み込んで、
Nokogiri で、DOM を更新して、ページを改変しようとしても、エラーになる
スレの書き込みに、画像リンクがあると、
それをその投稿の次に、表示しようとしているのだが
ずっと、JavaScript が動き続けているからかな?
エラーになる。なんでだろ?
C:/Ruby24-x64/lib/ruby/2.4.0/net/protocol.rb:229:in `write': An existing connection was forcibly closed by the remote host. (Errno::ECONNRESET)
画像リンクだけを取り出して、新しいページを作った方が良いのか? コネクションをいったん切ればいいんじゃないの?
サーバー側が同一クライアントの同時複数のコネクションを受け入れないとか? >>315
みたいに、Selenium Webdriver から、JavaScript(JS) で、
Showroom のアバターなどを削除しても、動画はちゃんと見れる
Nokogiri で、DOM を更新すると、ダメなのかな?
DOM を追加するのが、ダメなのかな?
315 では、DOM を削除しているだけだから、エラーが起きないのかな?
5ch は、設計・プログラムも素人レベルで悪いから、ずっとDOMをループし続けているとか、
何かDOMを更新できない理由が、あるのかも知れない
しょせん、他人の書いたアプリは、どうにもならない。
時間を掛けて解析するのも、馬鹿らしい RubyでwinAPI呼んで直接ウィンドウを作ったりしてるけど、
良く考えれば便利だなこれ Win API自体が今となっては便利じゃないと思うが? Rubyしか知らないとそんなことすら便利に感じるのか
それはそれで幸せなのかもな ■ このスレッドは過去ログ倉庫に格納されています