プログラミング言語Rubyについての、初心者向けスレです。質問・要望・雑談などどうぞ。
質問するときは、OSやRubyのバージョン、エラーメッセージを書いたほうがいいお
Ruby on RailsについてはWEBプログラミング板で
前スレ
Ruby 初心者スレッド Part 59
http://echo.2ch.net/test/read.cgi/tech/1475394638/
るりまサーチ (リファレンス検索)
http://rurema.clear-code.com/
Rubyist Magazine - るびま
http://jp.rubyist.net/magazine/
逆引きRuby
http://www.namaraii.com/rubytips/
探検
Ruby 初心者スレッド Part 60 [無断転載禁止]©2ch.net
レス数が1000を超えています。これ以上書き込みはできません。
2017/04/29(土) 02:01:58.34ID:urVXnFrH
966デフォルトの名無しさん
2017/08/24(木) 21:51:04.51ID:tqCPVr7b しかも俺は
>気づける可能性が高いよね
とも書いてるわけで
現実的にはどこかの段階でコンパイルエラーになる可能性が高い、と
>気づける可能性が高いよね
とも書いてるわけで
現実的にはどこかの段階でコンパイルエラーになる可能性が高い、と
967デフォルトの名無しさん
2017/08/24(木) 21:55:21.82ID:Z79NM4TL スレッドの進行を妨害するのは止めてください
みんなが迷惑を被っています
みんなが迷惑を被っています
968デフォルトの名無しさん
2017/08/24(木) 21:56:03.09ID:yIhxd10m コンパイルが通ってもその後テストを走らせることになるけどな
969デフォルトの名無しさん
2017/08/24(木) 22:02:02.88ID:gfjynZsV >>965
オーバーライドしたメソッド呼び出してもコンパイルエラーにならないだろ
静的型でも同じこと十分起こりえるよ
運良くコンパイルエラーで拾えるケースだけ上げて
静的型使うべきなんていう主張はナンセンス
力量が低いやつは静的型選んだほうがいいよっていうアドバイスなら
まだ理解できるけどね
オーバーライドしたメソッド呼び出してもコンパイルエラーにならないだろ
静的型でも同じこと十分起こりえるよ
運良くコンパイルエラーで拾えるケースだけ上げて
静的型使うべきなんていう主張はナンセンス
力量が低いやつは静的型選んだほうがいいよっていうアドバイスなら
まだ理解できるけどね
970デフォルトの名無しさん
2017/08/24(木) 22:05:10.57ID:Z79NM4TL 再三にわたり伝えましたが、もう一度
スレッドの進行を妨害するのは止めてください
みんなが迷惑を被っています
スレッドの進行を妨害するのは止めてください
みんなが迷惑を被っています
971デフォルトの名無しさん
2017/08/24(木) 22:10:19.62ID:tqCPVr7b 起こりえるが、可能性は低いわけだ
運良くコンパイルエラーで拾える、というより
運悪くコンパイルエラーで拾えないケースもありうる、ということ
運が良くないとコンパイルエラーで拾えないんなら
静的型言語はこんなに普及してないし、もてはやされてもない
現実が全く見えていないんだね
運良くコンパイルエラーで拾える、というより
運悪くコンパイルエラーで拾えないケースもありうる、ということ
運が良くないとコンパイルエラーで拾えないんなら
静的型言語はこんなに普及してないし、もてはやされてもない
現実が全く見えていないんだね
972デフォルトの名無しさん
2017/08/24(木) 22:10:38.73ID:kEm5qs8H973デフォルトの名無しさん
2017/08/24(木) 22:13:45.33ID:gfjynZsV974デフォルトの名無しさん
2017/08/24(木) 22:18:05.33ID:lIOBscyk975デフォルトの名無しさん
2017/08/24(木) 22:19:22.21ID:gfjynZsV >>971
型推論禁止すれば運悪くコンパイルエラーで拾えないケースも潰せるね
型推論禁止すれば運悪くコンパイルエラーで拾えないケースも潰せるね
976デフォルトの名無しさん
2017/08/24(木) 22:20:59.16ID:gfjynZsV >>974
なんでお前が勝手に決めてんの?
なんでお前が勝手に決めてんの?
977デフォルトの名無しさん
2017/08/24(木) 22:23:28.89ID:lIOBscyk >>976
あなたにはもうそれを判断できるだけの客観的知性が残っていないからです
あなたにはもうそれを判断できるだけの客観的知性が残っていないからです
978デフォルトの名無しさん
2017/08/24(木) 22:26:09.58ID:yIhxd10m979デフォルトの名無しさん
2017/08/24(木) 22:39:55.72ID:tqCPVr7b 俺が言うのもなんだけど
ID:Z79NM4TLやID:lIOBscykのが正解だと思うよ
「そんなことは初めから分かってて承知の上で使っているのだから
放っておいてくれ」
って所でしょ
欠点を認められずに使ってる方が異常
ID:Z79NM4TLやID:lIOBscykのが正解だと思うよ
「そんなことは初めから分かってて承知の上で使っているのだから
放っておいてくれ」
って所でしょ
欠点を認められずに使ってる方が異常
980デフォルトの名無しさん
2017/08/24(木) 23:09:32.94ID:Z79NM4TL スレッドの進行を妨害するのは止めてください
みんなが迷惑を被っています
スレッドの趣旨が分からないなら1を読んで下さい
これ以上妨害を続ける場合は、過去の妨害行為時のログを元に弁護士との相談の上、
措置を取ります
みんなが迷惑を被っています
スレッドの趣旨が分からないなら1を読んで下さい
これ以上妨害を続ける場合は、過去の妨害行為時のログを元に弁護士との相談の上、
措置を取ります
981デフォルトの名無しさん
2017/08/24(木) 23:11:07.39ID:h4EzWrOx 自分が何をしてるか全く理解できないんだろうな
レスがつくことそのものに興奮してここがどこかも判断できていない
貴方達そのものを我々は必要としていない
貴方達が書き込んだそのものを私たちは歓迎しない
我々私たちの望みはひとつだけ、二度とここに来るな
レスがつくことそのものに興奮してここがどこかも判断できていない
貴方達そのものを我々は必要としていない
貴方達が書き込んだそのものを私たちは歓迎しない
我々私たちの望みはひとつだけ、二度とここに来るな
982デフォルトの名無しさん
2017/08/24(木) 23:27:57.47ID:tqCPVr7b 何か映画とかで、スラム街とか田舎町の住人に言われそうなセリフ
983デフォルトの名無しさん
2017/08/24(木) 23:38:06.01ID:Z79NM4TL スレッドの進行を妨害するのは止めてください
みんなが迷惑を被っています
スレッドの趣旨が分からないなら1を読んで下さい
これ以上妨害を続ける場合は、過去の妨害行為時のログを元に弁護士との相談の上、
措置を取ります
みんなが迷惑を被っています
スレッドの趣旨が分からないなら1を読んで下さい
これ以上妨害を続ける場合は、過去の妨害行為時のログを元に弁護士との相談の上、
措置を取ります
984デフォルトの名無しさん
2017/08/24(木) 23:39:36.79ID:c/yv4qcw 過去のgem配布サイト復活しないかな
985デフォルトの名無しさん
2017/08/25(金) 05:58:03.30ID:ZShOFEd5 「Effective Ruby」項目21にも書いてある
コアクラスを継承するな。委譲・包含(Forwardable)を使え。
is-a よりも、has-a を使え
たいていの言語では、String型なども継承できない。
final 指定されてる
初心者は、コレクションを継承したがるが、アンチパターン。
継承すれば、バグるだけ
たいていの「Effective 何々」とか、デザインパターンの本にも、書いてある
コアクラスを継承するな。委譲・包含(Forwardable)を使え。
is-a よりも、has-a を使え
たいていの言語では、String型なども継承できない。
final 指定されてる
初心者は、コレクションを継承したがるが、アンチパターン。
継承すれば、バグるだけ
たいていの「Effective 何々」とか、デザインパターンの本にも、書いてある
986デフォルトの名無しさん
2017/08/25(金) 06:40:42.06ID:aRYPlL4U987デフォルトの名無しさん
2017/08/25(金) 07:08:25.93ID:w/d6Mddl Arrayのような多くの人が慣れ親しんだインタフェースを提供したいと考えてるんだが、
それ自体が慣れで運用してしまうから問題、ということなのか?
極端な話myaddとかにした方がいいのか
それ自体が慣れで運用してしまうから問題、ということなのか?
極端な話myaddとかにした方がいいのか
988デフォルトの名無しさん
2017/08/25(金) 07:24:38.55ID:w/d6Mddl >>985
アンチパターン名は?
アンチパターン名は?
989デフォルトの名無しさん
2017/08/25(金) 10:40:58.89ID:ZShOFEd5 JavaScript の、prototype.js なども、コアクラスを上書きして、挙動が変わるから、
皆から、うっとうしがられてる
とにかく、バグるから、個人で、コアクラスを修正してはいけない
やってもいいのは、Date クラスに、便利な関数を追加したり、
Rails とか、使用説明書・メンテナンスもしっかりしている、
有名なフレームワークだけ
皆から、うっとうしがられてる
とにかく、バグるから、個人で、コアクラスを修正してはいけない
やってもいいのは、Date クラスに、便利な関数を追加したり、
Rails とか、使用説明書・メンテナンスもしっかりしている、
有名なフレームワークだけ
990デフォルトの名無しさん
2017/08/25(金) 11:07:17.19ID:8cxOpMBd ↑こいつはRuby畑の人間じゃないな
991デフォルトの名無しさん
2017/08/25(金) 11:27:54.95ID:BwHFndLq >>985
項目21の根拠はなんでしょう?
1. 継承を使うとなるとSuper Classの詳細を知る必要がある。
2. 移譲なら使いたい機能をつまみ食いすれば良いので楽。
こう言う事でしょうかねぇ?
項目21の根拠はなんでしょう?
1. 継承を使うとなるとSuper Classの詳細を知る必要がある。
2. 移譲なら使いたい機能をつまみ食いすれば良いので楽。
こう言う事でしょうかねぇ?
992985
2017/08/25(金) 12:26:40.27ID:ZShOFEd5 例えば、親のArray から、子のDerivedArray を派生させて、
reverse を呼んでも、子クラスを返さず、親クラスを返してしまう
全メソッドを、派生クラスに対応させるのが、無理だから
委譲で、Forwardable モジュールの、def_delegators で、
使うメソッドだけ、宣言する方が簡単
漏れも、10言語以上、数十冊の本を読んでるけど、
配列など、コアクラスを継承した、ソースコードは見た事がないし、
たいていの言語で、継承よりも委譲を使うように書いてある
そういう論文も多い
reverse を呼んでも、子クラスを返さず、親クラスを返してしまう
全メソッドを、派生クラスに対応させるのが、無理だから
委譲で、Forwardable モジュールの、def_delegators で、
使うメソッドだけ、宣言する方が簡単
漏れも、10言語以上、数十冊の本を読んでるけど、
配列など、コアクラスを継承した、ソースコードは見た事がないし、
たいていの言語で、継承よりも委譲を使うように書いてある
そういう論文も多い
993デフォルトの名無しさん
2017/08/25(金) 12:36:03.24ID:BwHFndLq >>992
ところで、論文はどのJournalから?
ところで、論文はどのJournalから?
994985
2017/08/25(金) 13:01:27.87ID:ZShOFEd5 「c++ 継承 委譲」で検索!
ほとんどの論文が、継承よりも委譲
ほとんどの論文が、継承よりも委譲
995デフォルトの名無しさん
2017/08/25(金) 15:26:58.12ID:W3qddKKH クロージャーつかおう
996デフォルトの名無しさん
2017/08/25(金) 15:28:23.63ID:sLUvaIRs a=[[1,2],3,4,5,[6,7],8,[9,10],[11,12],[13,14]]
b=[[1,3,4,5,6,8,9,11,13],[2,3,4,5,7,8,10,12,14]]
aの配列からbの配列を作り出すにはどの様にしたらいいでしょう?
b=[[1,3,4,5,6,8,9,11,13],[2,3,4,5,7,8,10,12,14]]
aの配列からbの配列を作り出すにはどの様にしたらいいでしょう?
997デフォルトの名無しさん
2017/08/25(金) 15:32:56.84ID:BwHFndLq >>996
>a=[[1,2],3,4,5,[6,7],8,[9,10],[11,12],[13,14]]
まずは、
a=[[1,2],[3, 3],[4,4],[5,5],[6,7],8,[9,10],[11,12],[13,14]]
を作る。
>a=[[1,2],3,4,5,[6,7],8,[9,10],[11,12],[13,14]]
まずは、
a=[[1,2],[3, 3],[4,4],[5,5],[6,7],8,[9,10],[11,12],[13,14]]
を作る。
998デフォルトの名無しさん
2017/08/25(金) 15:36:12.98ID:BwHFndLq ar = []
a.each do |e|
if !e.instance_of?(Array) then
ar << [e, e]
else
ar << e
end
まずはこんな感じ!
a.each do |e|
if !e.instance_of?(Array) then
ar << [e, e]
else
ar << e
end
まずはこんな感じ!
999デフォルトの名無しさん
2017/08/25(金) 15:50:59.00ID:4MOWRfGQ >>996
b = a.each_with_object([[],[]]) {|(x, y), acc| acc[0] << x; acc[1] << (y || x) }
b = a.each_with_object([[],[]]) {|(x, y), acc| acc[0] << x; acc[1] << (y || x) }
1000デフォルトの名無しさん
2017/08/25(金) 16:00:09.35ID:HsL9LVKJ10011001
Over 1000Thread このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。
life time: 118日 13時間 58分 11秒
もう書けないので、新しいスレッドを立ててくださいです。。。
life time: 118日 13時間 58分 11秒
レス数が1000を超えています。これ以上書き込みはできません。
ニュース
- 高市首相、トランプ米大統領に「早期に会いたい」 日中関係悪化受け… ★3 [BFU★]
- 【コメ】卸売業者「簡単に安売りできない」「大暴落起きれば大赤字に」 JA「新米の販売進度が近年になく遅い。コメの回転が悪い」 ★5 [Hitzeschleier★]
- 「これいいじゃん!!!」 セブン-イレブンの1620円で買える“1人用クリスマスケーキ”🎂に注目殺到「天才すぎる」 [パンナ・コッタ★]
- 【コメ】卸売業者「簡単に安売りできない」「大暴落起きれば大赤字に」 JA「新米の販売進度が近年になく遅い。コメの回転が悪い」 ★4 [Hitzeschleier★]
- 小島瑠璃子さん、代表取締役を務める会社を破産申請 [牛丼★]
- 高市早苗首相が天理教系企業に“巨額発注” 総額5000万円 本人は「政治団体の活動に必要な支出」と回答 [Hitzeschleier★]
- なんかさっきからフェイロンのステージ曲が頭から離れないんだが
- 【実況】博衣こよりのえちえちスーパーダンガンロンパ3🧪
- 【安倍晋三】中国船4隻が領海侵入 [828897501]
- えちえち女だけど
- 【画像】小泉防衛大臣、とんでもない写真が発掘される [834922174]
- お
