プログラミング言語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
■ このスレッドは過去ログ倉庫に格納されています
2017/04/29(土) 02:01:58.34ID:urVXnFrH
388デフォルトの名無しさん
2017/06/20(火) 13:51:30.44ID:DOO3yEYl >>387
zsh もデフォの振る舞いは bash とおなじ。
設定で setopt nohup すれば、hup 送らなくなる。
bash でも huponexit オプション外せば送らなくなる。
ソフトウェアのマニュアルも読まずに糞とか言うのは、
自分は所詮そのレベルの人間ですと言ってるようにしか聞こえないよ。
zsh もデフォの振る舞いは bash とおなじ。
設定で setopt nohup すれば、hup 送らなくなる。
bash でも huponexit オプション外せば送らなくなる。
ソフトウェアのマニュアルも読まずに糞とか言うのは、
自分は所詮そのレベルの人間ですと言ってるようにしか聞こえないよ。
389デフォルトの名無しさん
2017/06/20(火) 13:59:24.54ID:rapwcYHc390デフォルトの名無しさん
2017/06/20(火) 14:18:05.45ID:rapwcYHc >>388
うぅーん。
macOS Sierraのbashにもshopt huponexitってのがあるが、
どうも、最初からoffになってるにも関わらず、signhupを送ってる。
ためしにonにしてみたが、bash終了時にbackground実行しているプロセスが死んでしまう事に、変わりなし。
nohupコマンドを付けないと、background実行できないみたいだ。
うぅーん。
macOS Sierraのbashにもshopt huponexitってのがあるが、
どうも、最初からoffになってるにも関わらず、signhupを送ってる。
ためしにonにしてみたが、bash終了時にbackground実行しているプロセスが死んでしまう事に、変わりなし。
nohupコマンドを付けないと、background実行できないみたいだ。
391デフォルトの名無しさん
2017/06/20(火) 15:04:00.33ID:DOO3yEYl >>390
bash の終了を exit じゃなくてウィンドウ閉じるでやってない?
明示してないのにバックグラウンドで動きっぱなしになっていて欲しいユースケースってどんな時なの?
nohup/disown の方が好きな自分からは想像できないわ。
bash の終了を exit じゃなくてウィンドウ閉じるでやってない?
明示してないのにバックグラウンドで動きっぱなしになっていて欲しいユースケースってどんな時なの?
nohup/disown の方が好きな自分からは想像できないわ。
392デフォルトの名無しさん
2017/06/20(火) 15:20:19.60ID:rapwcYHc >>391
Scrapingスクリプトをproxy経由で動かす場合、proxyのレスポンスが悪いので、数時間掛かります。proxyは10箇所を順に変えながらScrapingします。
ruby someScript.rb &で即backgroundで動いて欲しいです。
まあ、慣れればいいだけかもしれんけど、nohupっていうprefixが必要なのは、ちょいとなぁ。
Scrapingスクリプトをproxy経由で動かす場合、proxyのレスポンスが悪いので、数時間掛かります。proxyは10箇所を順に変えながらScrapingします。
ruby someScript.rb &で即backgroundで動いて欲しいです。
まあ、慣れればいいだけかもしれんけど、nohupっていうprefixが必要なのは、ちょいとなぁ。
393デフォルトの名無しさん
2017/06/20(火) 15:22:05.91ID:rapwcYHc >>391
Terminal.appは動かしッパでも構わないのですが、
Vim7.4, Vim8.0が時々落ちます。その際、Terminal.appも巻き添いなんです。
すると、Scrapingも落ちちゃって困ってたのです。
Terminal.appは動かしッパでも構わないのですが、
Vim7.4, Vim8.0が時々落ちます。その際、Terminal.appも巻き添いなんです。
すると、Scrapingも落ちちゃって困ってたのです。
394デフォルトの名無しさん
2017/06/20(火) 15:23:21.50ID:rapwcYHc Vimが落ちるのはterminal typeがxterm-256colorが悪さをしていて、ansiへ変更がwork aroundだと聞いて、今様子を見ているところです。
395デフォルトの名無しさん
2017/06/20(火) 15:29:54.49ID:DOO3yEYl396デフォルトの名無しさん
2017/06/20(火) 15:36:38.36ID:rapwcYHc397デフォルトの名無しさん
2017/06/20(火) 16:02:58.26ID:HkCB1WW9 rubyスレ?
398デフォルトの名無しさん
2017/06/20(火) 16:14:40.13ID:+dHGS6wU tmux使う方が早い
399デフォルトの名無しさん
2017/06/21(水) 00:25:07.92ID:39OgiOwj >>392
> 即backgroundで動いて欲しいです。
冷静になったら、そうでないほうがたしかによい、と思うはず。
誤ってbgにしたり、bgにしたまま忘れたりした状態でログアウトした場合のリスクを考えれば。
> 即backgroundで動いて欲しいです。
冷静になったら、そうでないほうがたしかによい、と思うはず。
誤ってbgにしたり、bgにしたまま忘れたりした状態でログアウトした場合のリスクを考えれば。
400デフォルトの名無しさん
2017/06/21(水) 13:07:38.08ID:L1LFWazB むしろ、WSH で、Excel など外部アプリを起動すると、Excel のプロセスが残り続けるから、
どんどん、Excel のプロセスが増えていき、
これらをどうやって終了するのか、皆苦しんでいるんだが
どんどん、Excel のプロセスが増えていき、
これらをどうやって終了するのか、皆苦しんでいるんだが
401デフォルトの名無しさん
2017/06/21(水) 18:38:55.26ID:xJXAtiMS 残らないが?
402デフォルトの名無しさん
2017/06/23(金) 10:35:54.52ID:0OdP20aK >>399
bgの何が問題?
bgの何が問題?
403デフォルトの名無しさん
2017/06/23(金) 10:36:22.71ID:0OdP20aK >>400
馬鹿だな
馬鹿だな
404デフォルトの名無しさん
2017/06/23(金) 13:24:40.77ID:AzvmtT2M 初心者です、自作の汎用関数を定義したのですが、いちいちスクリプト内にコピペするのが面倒なので
外部ファイルにして冒頭でrequireすることにしました。
ですが、ここに具体的なファイルパスを書くと、ファイルの設置場所を変えたい場合に問題があるのでパスは書きたくないです。
require 'myfunc'
と簡便に書ければいいのですが、どこに置けばいいでしょうか?
外部ファイルにして冒頭でrequireすることにしました。
ですが、ここに具体的なファイルパスを書くと、ファイルの設置場所を変えたい場合に問題があるのでパスは書きたくないです。
require 'myfunc'
と簡便に書ければいいのですが、どこに置けばいいでしょうか?
405デフォルトの名無しさん
2017/06/23(金) 13:37:52.68ID:9PTuVR6v 現実の開発ではきちんとバージョン管理するのでフォルダの構成変更なんかそんなに頻繁にやることではない
だからリポジトリを分けるほどでもないなら気にせずパス決め打ちでいい
独立性と再利用性が高いものであればリポジトリを分けてgemにする
だからリポジトリを分けるほどでもないなら気にせずパス決め打ちでいい
独立性と再利用性が高いものであればリポジトリを分けてgemにする
406デフォルトの名無しさん
2017/06/23(金) 14:21:13.96ID:AzvmtT2M ありがとうございました
407デフォルトの名無しさん
2017/06/23(金) 14:40:20.24ID:tdHTYauf rails で、自作ライブラリの、autoload なら、
lib/モジュール名/クラス名.rb
lib/foo/bar.rb
module Foo
class Bar
ファイル名は小文字で、単語の区切りは'_'に変える
class FooBar
lib/foo_bar.rb
lib/モジュール名/クラス名.rb
lib/foo/bar.rb
module Foo
class Bar
ファイル名は小文字で、単語の区切りは'_'に変える
class FooBar
lib/foo_bar.rb
408デフォルトの名無しさん
2017/06/23(金) 14:43:58.67ID:qsHmY7yg >>404
場合によっては環境変数 RUBYLIBにmyfunc等のパスを淹れるのもあり
https://docs.ruby-lang.org/ja/latest/doc/spec=2fenvvars.html
場合によっては環境変数 RUBYLIBにmyfunc等のパスを淹れるのもあり
https://docs.ruby-lang.org/ja/latest/doc/spec=2fenvvars.html
409デフォルトの名無しさん
2017/06/23(金) 18:29:59.15ID:+um/cK3a >>400
“終了しない excel application”でググったら出てきたけどこの仕様は罠だろ・・・
“終了しない excel application”でググったら出てきたけどこの仕様は罠だろ・・・
410デフォルトの名無しさん
2017/06/23(金) 18:31:41.63ID:PAAniHx4 馬鹿には無理
411デフォルトの名無しさん
2017/06/23(金) 19:09:21.56ID:F2nCEsS4 >>409
COM経由で起動させてるんなら自動で終了する方がきもちわるい
COM経由で起動させてるんなら自動で終了する方がきもちわるい
412デフォルトの名無しさん
2017/06/23(金) 19:49:53.85ID:+um/cK3a >>411
自動化処理に使ったプロセスが不要になっても残りっぱなしの方が気持ち悪い
自動化処理に使ったプロセスが不要になっても残りっぱなしの方が気持ち悪い
413デフォルトの名無しさん
2017/06/24(土) 18:05:14.46ID:M5zFSS9+414デフォルトの名無しさん
2017/06/24(土) 18:06:46.13ID:M5zFSS9+ >>412
プロセス自身にはわからんじゃろ。。。
プロセス自身にはわからんじゃろ。。。
415デフォルトの名無しさん
2017/06/28(水) 09:33:18.25ID:+O8L6XqQ 瑕疵担保責任(かしたんぽせきにん)
瑕疵担保責任のポイント
民法改正で事実上期限が「無制限」になった
バグや設計のミスなどは、瑕疵担保責任
納品物に不具合があれば損害賠償を請求される可能性もある
不具合を指摘されたらすぐに行動をとるべし
軽微なミスでも先延ばししない
http://www.atmarkit.co.jp/ait/articles/1706/26/news014.html
http://itpro.nikkeibp.co.jp/atcl/news/17/052601508/?rt=nocnt
改正法では欠陥に気付いてから1年以内にITベンダーに通知すれば、
通知後5年以内は修正や報酬の減額などを求められるとしている
全ベンダーが泣いた民法改正案を解説しよう その1
http://www.atmarkit.co.jp/ait/articles/1609/14/news009.html
http://www.atmarkit.co.jp/ait/articles/1609/14/news009_2.html
http://www.atmarkit.co.jp/ait/articles/1609/14/news009_3.html
ポイント1:修補や損害賠償、契約解除の期限がなくなる
従来あった「瑕疵担保期間は引き渡しから1年」という考えはなくなる。
条文にある通り、注文者は成果物が契約の目的に適合しないことを発見したら、
その「発見したときから1年以内」ならさまざまな請求ができる。発見が10年後なら、
11年後まで請求可能なのだ。
もっとも、現実のユーザーとベンダーの関係でも、たとえ契約書に「瑕疵担保責任期間は納品から1年と」明記されていても、
「2年目以降は不具合の修正に対応しない」と主張するベンダーはまれだ。多くの場合は、納品から何年たっても、
バグが見つかればユーザーのところに飛んで行き、無償で改修するだろう。
瑕疵担保責任のポイント
民法改正で事実上期限が「無制限」になった
バグや設計のミスなどは、瑕疵担保責任
納品物に不具合があれば損害賠償を請求される可能性もある
不具合を指摘されたらすぐに行動をとるべし
軽微なミスでも先延ばししない
http://www.atmarkit.co.jp/ait/articles/1706/26/news014.html
http://itpro.nikkeibp.co.jp/atcl/news/17/052601508/?rt=nocnt
改正法では欠陥に気付いてから1年以内にITベンダーに通知すれば、
通知後5年以内は修正や報酬の減額などを求められるとしている
全ベンダーが泣いた民法改正案を解説しよう その1
http://www.atmarkit.co.jp/ait/articles/1609/14/news009.html
http://www.atmarkit.co.jp/ait/articles/1609/14/news009_2.html
http://www.atmarkit.co.jp/ait/articles/1609/14/news009_3.html
ポイント1:修補や損害賠償、契約解除の期限がなくなる
従来あった「瑕疵担保期間は引き渡しから1年」という考えはなくなる。
条文にある通り、注文者は成果物が契約の目的に適合しないことを発見したら、
その「発見したときから1年以内」ならさまざまな請求ができる。発見が10年後なら、
11年後まで請求可能なのだ。
もっとも、現実のユーザーとベンダーの関係でも、たとえ契約書に「瑕疵担保責任期間は納品から1年と」明記されていても、
「2年目以降は不具合の修正に対応しない」と主張するベンダーはまれだ。多くの場合は、納品から何年たっても、
バグが見つかればユーザーのところに飛んで行き、無償で改修するだろう。
416デフォルトの名無しさん
2017/06/28(水) 10:47:59.83ID:+O8L6XqQ 366 :nobodyさん 2017/05/29(月) 16:07:39.16 ID:6v4UcGhE
今回の民法改正、ソフトウェア受託開発の場合、(検収後ではなく)バグ発見後1年瑕疵担保責任があるということで、地獄かよ、と思ったが、
元々問題が起きがちな受託案件がビジネス的に成立しなくなることで強制的に業界再編につながるなら良いことかもと思うようになった。
一部で地獄を見ても。
https://twitter.com/yukihiro_matz/status/869061879389343744
367 :nobodyさん 2017/05/29(月) 16:28:06.55 ID:6v4UcGhE
ニュース - 改正民法が成立、「瑕疵担保責任」などシステム開発契約に影響大:ITpro
http://b.hatena.ne.jp/entry/itpro.nikkeibp.co.jp/atcl/news/17/052601508/
372 :nobodyさん2017/05/29(月) 19:10:37.12 ID:???
Railsでシステム作って納品する
↓
Railsはマイナー、メジャーのアップデートが半年以内に必ずある
↓
客がアップデートする。アップデートによるエラーやバグ、動作の不具合に気づく
↓
気づいてから1年以内に通知すれば、5年間無料保証ゲット
↓
つまりRailsがアップデートするたびに、無償の修正作業を発生するということかな
376 :nobodyさん2017/05/30(火) 09:20:20.09 ID:L5po86sS
>>378>>379>>375
客が瑕疵担保責任法の法改正を知ってくると思うから、今後5年無償保証をお願いされるだろう
営業がそれでも仕事を取ってこれるか?たぶん無理だろう。無限の直していたら赤字になる。
こういう保守に弱い言語、ころころ仕様が変わる言語は仕事として発生しなくなってくる。
これは変わり目だ。お前らも早く逃げたほうがいいぞ。RubyやPHPなど動的言語は確実に廃れる。
保守に強い言語のみ生き残れる。
今回の民法改正、ソフトウェア受託開発の場合、(検収後ではなく)バグ発見後1年瑕疵担保責任があるということで、地獄かよ、と思ったが、
元々問題が起きがちな受託案件がビジネス的に成立しなくなることで強制的に業界再編につながるなら良いことかもと思うようになった。
一部で地獄を見ても。
https://twitter.com/yukihiro_matz/status/869061879389343744
367 :nobodyさん 2017/05/29(月) 16:28:06.55 ID:6v4UcGhE
ニュース - 改正民法が成立、「瑕疵担保責任」などシステム開発契約に影響大:ITpro
http://b.hatena.ne.jp/entry/itpro.nikkeibp.co.jp/atcl/news/17/052601508/
372 :nobodyさん2017/05/29(月) 19:10:37.12 ID:???
Railsでシステム作って納品する
↓
Railsはマイナー、メジャーのアップデートが半年以内に必ずある
↓
客がアップデートする。アップデートによるエラーやバグ、動作の不具合に気づく
↓
気づいてから1年以内に通知すれば、5年間無料保証ゲット
↓
つまりRailsがアップデートするたびに、無償の修正作業を発生するということかな
376 :nobodyさん2017/05/30(火) 09:20:20.09 ID:L5po86sS
>>378>>379>>375
客が瑕疵担保責任法の法改正を知ってくると思うから、今後5年無償保証をお願いされるだろう
営業がそれでも仕事を取ってこれるか?たぶん無理だろう。無限の直していたら赤字になる。
こういう保守に弱い言語、ころころ仕様が変わる言語は仕事として発生しなくなってくる。
これは変わり目だ。お前らも早く逃げたほうがいいぞ。RubyやPHPなど動的言語は確実に廃れる。
保守に強い言語のみ生き残れる。
417デフォルトの名無しさん
2017/06/28(水) 19:56:54.80ID:ZzpJpley > RubyやPHPなど動的言語は確実に廃れる。
軽々しくこういう断言する人間の言葉は話半分どころか1/4以下にして聞け、ってばっちゃが言ってた
軽々しくこういう断言する人間の言葉は話半分どころか1/4以下にして聞け、ってばっちゃが言ってた
418デフォルトの名無しさん
2017/06/28(水) 20:15:29.47ID:kl/WEkBu Rubyが現在進行形で廃れていってるのは確かな事実だけどね
419デフォルトの名無しさん
2017/06/28(水) 21:48:23.90ID:WbQwz649 ぶっちゃけて言えば、意味論的には普通なのに文法がぐちゃぐちゃすぎて使いづらい。
Perl のあまりの一貫性のなさに Ruby を試したりしたこともあるが、
多少はマシって程度でうんざりするような無茶苦茶さを指向していることにかわりない。
parse.y が黒魔術の塊だというのは聞いていたが、実際に見てみると常軌を逸している。
せっかく yacc を使ってるのに純粋な LALR として解釈できないようなわけわかんないクソが埋め込まれてて、
もはや統制が取れてない。
mruby をベースにして拡充していった方がいい気がする。
Perl のあまりの一貫性のなさに Ruby を試したりしたこともあるが、
多少はマシって程度でうんざりするような無茶苦茶さを指向していることにかわりない。
parse.y が黒魔術の塊だというのは聞いていたが、実際に見てみると常軌を逸している。
せっかく yacc を使ってるのに純粋な LALR として解釈できないようなわけわかんないクソが埋め込まれてて、
もはや統制が取れてない。
mruby をベースにして拡充していった方がいい気がする。
420デフォルトの名無しさん
2017/06/30(金) 00:38:26.19ID:UcGpMueB 使いづらいなら他の言語使えばいいじゃん
わざわざRubyスレ覗いてRubyの悪口書いてる暇があるなら他の言語でコード書こうぜ
わざわざRubyスレ覗いてRubyの悪口書いてる暇があるなら他の言語でコード書こうぜ
421デフォルトの名無しさん
2017/06/30(金) 01:21:01.84ID:svEzz20W >>420
だからもう十年以上使ってない。
事実として文法規則のごちゃごちゃしたところはあるという話だよ。
そして事実として私はそれを気に入らなかったという話だよ。
よくある場面を短く書けるとか人間の一般的な感覚に合わせたりもした結果だというのはわかっているし、
Ruby に向いた用途があるのは知ってるよ。
ただ、それの行く先には実装上の行き詰まりが生じそうだという懸念だ。
だからもう十年以上使ってない。
事実として文法規則のごちゃごちゃしたところはあるという話だよ。
そして事実として私はそれを気に入らなかったという話だよ。
よくある場面を短く書けるとか人間の一般的な感覚に合わせたりもした結果だというのはわかっているし、
Ruby に向いた用途があるのは知ってるよ。
ただ、それの行く先には実装上の行き詰まりが生じそうだという懸念だ。
422デフォルトの名無しさん
2017/06/30(金) 01:37:54.59ID:UcGpMueB423デフォルトの名無しさん
2017/06/30(金) 02:32:52.47ID:7V8Jdo2I Rubyは読み書きしやすいから使ってる
規則が統一された文法が良ければLispを使えよ
規則が統一された文法が良ければLispを使えよ
424デフォルトの名無しさん
2017/06/30(金) 09:41:10.74ID:jqp1y4Nc 何で使ってない言語を見に来ているの?
暇なの?
暇なの?
425デフォルトの名無しさん
2017/06/30(金) 09:50:34.06ID:flSVgAwO rubyは上級者には不満があるのかもしれんが、俺の様な素人が使うには使いやすい。
メソッドチェインも「.」でつなげていくだけだし、
正規表現使うのにimportとかしなくていいし。
でも複数行のコメントアウトは面倒。
メソッドチェインも「.」でつなげていくだけだし、
正規表現使うのにimportとかしなくていいし。
でも複数行のコメントアウトは面倒。
426デフォルトの名無しさん
2017/06/30(金) 09:51:37.98ID:BBkM2EA1 >>422
Rubyスレに来て悪態さらすヤツってのは、喩えて言えばこんな感じだ。
最初は、良い会社だと思って就職した。
けど、外から見るのと、入って見るのとでは大違いで、内部は火の車だった。
(例:最近の東芝、タカタ)
転職活動も、うまくいかず、悪態をつかざるを得なくなる。
Rubyスレに来て悪態さらすヤツってのは、喩えて言えばこんな感じだ。
最初は、良い会社だと思って就職した。
けど、外から見るのと、入って見るのとでは大違いで、内部は火の車だった。
(例:最近の東芝、タカタ)
転職活動も、うまくいかず、悪態をつかざるを得なくなる。
427デフォルトの名無しさん
2017/06/30(金) 10:15:14.59ID:pDIkSJMf 2ちゃんも昔は良かった
428デフォルトの名無しさん
2017/06/30(金) 11:25:06.46ID:BBkM2EA1429デフォルトの名無しさん
2017/06/30(金) 11:30:06.98ID:hBaGJvUf430デフォルトの名無しさん
2017/06/30(金) 11:33:27.81ID:BBkM2EA1431デフォルトの名無しさん
2017/06/30(金) 11:38:01.54ID:625dciv9 >>429
こんな糞みたいなの教えたって誰も使わない
こんな糞みたいなの教えたって誰も使わない
432デフォルトの名無しさん
2017/06/30(金) 11:45:54.89ID:flSVgAwO433デフォルトの名無しさん
2017/06/30(金) 12:42:16.16ID:UcGpMueB >>432
メモ帳使ってるわけじゃないんだろうからそれぐらいショートカット使えば差はない
メモ帳使ってるわけじゃないんだろうからそれぐらいショートカット使えば差はない
434デフォルトの名無しさん
2017/06/30(金) 12:50:26.31ID:hBaGJvUf タイピングの文字数に拘るあたりが初心者だよな
(↑それが悪いことだとは言っていないし、一切の悪意は無い)
プログラミングを指の労働と捕らえてるんだよな
(↑それが悪いことだとは言っていないし、一切の悪意は無い)
プログラミングを指の労働と捕らえてるんだよな
435デフォルトの名無しさん
2017/06/30(金) 13:04:45.36ID:mtvSOUWH436デフォルトの名無しさん
2017/06/30(金) 13:09:33.76ID:UcGpMueB >>435
=begin, =end は一時的なコメントアウトにはよく使うよ
=begin, =end は一時的なコメントアウトにはよく使うよ
437デフォルトの名無しさん
2017/06/30(金) 13:35:43.48ID:2Da2vksV438デフォルトの名無しさん
2017/06/30(金) 13:40:13.66ID:625dciv9 そんなperlのパクリ機能なんかもう使ってる人いないよ
普通は#で複数行コメントアウトするようなエディタ使ってるでしょ
普通は#で複数行コメントアウトするようなエディタ使ってるでしょ
439デフォルトの名無しさん
2017/06/30(金) 14:08:18.32ID:W0OUnv8/ 黙らせるならexit!やな
440デフォルトの名無しさん
2017/06/30(金) 16:49:14.50ID:tesV9X+3 一時的に処理から外したいときは「そういやRubyにも複数行コメントの記述法があったななんだったかな」と思いながら
#と方向キーを交互に連打してるかコメントリージョン機能を使ってるかどっちかだな
#と方向キーを交互に連打してるかコメントリージョン機能を使ってるかどっちかだな
441デフォルトの名無しさん
2017/06/30(金) 18:29:44.40ID:4uO/IbWe atomやvscodeだったら Ctrl + / で行コメントの挿入削除
442デフォルトの名無しさん
2017/07/01(土) 04:05:27.85ID:J52nGMUC 俺は if false 〜〜〜 else 〜〜〜 end を使ってる
あるいは後置 if false
元の処理を走らせる場合は否定演算子を付けて if !false みたいにしてるなあ
あるいは後置 if false
元の処理を走らせる場合は否定演算子を付けて if !false みたいにしてるなあ
443デフォルトの名無しさん
2017/07/01(土) 04:30:56.70ID:yR6MEKU9444デフォルトの名無しさん
2017/07/01(土) 05:26:51.20ID:PPsHHHSM445デフォルトの名無しさん
2017/07/01(土) 11:17:02.68ID:N+ZXroXE >>414
爺なの?
爺なの?
446デフォルトの名無しさん
2017/07/01(土) 14:26:38.71ID:R60vnDrO 同じ処理をさせようとしても
初心者が書くのと慣れてる奴が書くのとですでに差が出てる
a = ['a', 'b', 'c']
b = []
i = 0
a.each {|c| b << (i.to_s + c); i += 1}
p b
↑こーいう書き方する人ほどタイプ数に拘り
↓こーいう人はもはやそこでは騒がない
c = %w(a b c).each_with_index.map {|c, i| i.to_s + c}
p c
初心者が書くのと慣れてる奴が書くのとですでに差が出てる
a = ['a', 'b', 'c']
b = []
i = 0
a.each {|c| b << (i.to_s + c); i += 1}
p b
↑こーいう書き方する人ほどタイプ数に拘り
↓こーいう人はもはやそこでは騒がない
c = %w(a b c).each_with_index.map {|c, i| i.to_s + c}
p c
447デフォルトの名無しさん
2017/07/01(土) 14:59:17.39ID:yR6MEKU9 いい加減壁に向かって物言うのやめたら
誰もそれを話題にしてはいないよ
誰もそれを話題にしてはいないよ
448デフォルトの名無しさん
2017/07/01(土) 15:48:19.58ID:qX8eRJNR449デフォルトの名無しさん
2017/07/01(土) 16:44:27.93ID:R60vnDrO450デフォルトの名無しさん
2017/07/01(土) 19:39:10.28ID:QATpSz/4451デフォルトの名無しさん
2017/07/01(土) 20:41:44.60ID:M8KylmXN b = []
b << 要素
1つずつ、配列に追加していく処理だけど、
エラー処理などがいらないなら、簡潔に書くべき
b << 要素
1つずつ、配列に追加していく処理だけど、
エラー処理などがいらないなら、簡潔に書くべき
452デフォルトの名無しさん
2017/07/01(土) 21:37:44.67ID:sOThA7TG >>446
> 初心者が書くのと慣れてる奴が書くのとですでに差が出てる
せやね
お前が書くと
c = %w(a b c).each_with_index.map {|c, i| i.to_s + c}
俺が書くと
c = %w(a b c).map.with_index {|c, i| i.to_s + c}
これはタイプ数の問題じゃねーよ?
配列から配列に変換して入れる処理で
eachって単語がでてくることキモいって話
> 初心者が書くのと慣れてる奴が書くのとですでに差が出てる
せやね
お前が書くと
c = %w(a b c).each_with_index.map {|c, i| i.to_s + c}
俺が書くと
c = %w(a b c).map.with_index {|c, i| i.to_s + c}
これはタイプ数の問題じゃねーよ?
配列から配列に変換して入れる処理で
eachって単語がでてくることキモいって話
453デフォルトの名無しさん
2017/07/01(土) 22:38:49.78ID:M8KylmXN 関数厨は、Ruby・JS のスレにやって来て、
何でもかんでも、map を使って、1行で書いてしまうからなw
何でもかんでも、map を使って、1行で書いてしまうからなw
454デフォルトの名無しさん
2017/07/01(土) 22:44:59.49ID:Tp0p2tiJ >>452のようなことに特に興味がなくて
正直どっちでもよくね?
って考える普通の人はRubyを使わなくてもよいってことなんだよ
まさにこれがRuby
「タイプ数にこだわるのは初心者」
「そうそうそうなんだよね〜」
とか言いながら動的型言語を使うのって最高でしょ
正直どっちでもよくね?
って考える普通の人はRubyを使わなくてもよいってことなんだよ
まさにこれがRuby
「タイプ数にこだわるのは初心者」
「そうそうそうなんだよね〜」
とか言いながら動的型言語を使うのって最高でしょ
455デフォルトの名無しさん
2017/07/01(土) 23:45:31.46ID:N+ZXroXE mapperかな
456デフォルトの名無しさん
2017/07/01(土) 23:49:19.16ID:cxvWbv+r いくらRubyのコード効率が良いと言っても可読性を犠牲にするつもりはないな
無用に行数を減らしたりオブジェクト名の長さを減らしたりはしない
そういう書き方をすると後で苦労するのは自分だし
無用に行数を減らしたりオブジェクト名の長さを減らしたりはしない
そういう書き方をすると後で苦労するのは自分だし
457デフォルトの名無しさん
2017/07/01(土) 23:54:52.06ID:sOThA7TG >>456
可読性というのは読むべき「単語」を減らすものであって
行数を減らすことやオブジェクト名を減らすことは
単語を減らすことにはつながらない。
例えば行数を減らしたとしても、それが 空行や { などの
カッコだけの行を減らした所で単語数は変わらない。
むしろ空行がある方が読みやすい文章となることもある
名前も、短い名前にしても単語数は変わらない
単語数を減らすと結果的に行数が減ることはあるが、
行数を減らすことは可読性を上げる行為ではない。
可読性というのは読むべき「単語」を減らすものであって
行数を減らすことやオブジェクト名を減らすことは
単語を減らすことにはつながらない。
例えば行数を減らしたとしても、それが 空行や { などの
カッコだけの行を減らした所で単語数は変わらない。
むしろ空行がある方が読みやすい文章となることもある
名前も、短い名前にしても単語数は変わらない
単語数を減らすと結果的に行数が減ることはあるが、
行数を減らすことは可読性を上げる行為ではない。
458デフォルトの名無しさん
2017/07/01(土) 23:56:03.86ID:5xgWPcGQ459デフォルトの名無しさん
2017/07/01(土) 23:56:04.59ID:sOThA7TG ちなみにさっき書いたこれ。
c = %w(a b c).each_with_index.map {|c, i| i.to_s + c}
c = %w(a b c).map.with_index {|c, i| i.to_s + c}
下の方が「単語数」が減っている。
each with index map ・・・ 4単語
map with index ・・・ 3単語
c = %w(a b c).each_with_index.map {|c, i| i.to_s + c}
c = %w(a b c).map.with_index {|c, i| i.to_s + c}
下の方が「単語数」が減っている。
each with index map ・・・ 4単語
map with index ・・・ 3単語
460デフォルトの名無しさん
2017/07/01(土) 23:57:42.07ID:sOThA7TG461デフォルトの名無しさん
2017/07/02(日) 00:03:47.37ID:0SO6fajC あ、間違った。こうなw
c = %w(a b c).map.with_index {|c, i| "#{i}#{c}" }
俺としては、なんでmapがデフォルトでindexを持ってないかのほうが気になるな。
JavaScriptならこれでいいのに
a = ['a', 'b', 'c']
c = a.map((v, i) => i+v)
c = %w(a b c).map.with_index {|c, i| "#{i}#{c}" }
俺としては、なんでmapがデフォルトでindexを持ってないかのほうが気になるな。
JavaScriptならこれでいいのに
a = ['a', 'b', 'c']
c = a.map((v, i) => i+v)
462デフォルトの名無しさん
2017/07/02(日) 00:18:14.45ID:IGa4njyh463デフォルトの名無しさん
2017/07/02(日) 00:19:08.94ID:J2BCSwZK JavaScriptはJavaの名前にあやかっただけで全くJavaじゃないって本当ですか?
464デフォルトの名無しさん
2017/07/02(日) 00:23:24.49ID:0SO6fajC >>462
Rubyでもこの文脈では引数の数のチェックをしてないようですが?
%w(a b c).map.with_index {|c| "#{c}" } # 引数が足りなくてもエラーなし
%w(a b c).map {|c, i, x, y, z| "#{i}#{c}" } # 引数が多くてもエラーなし
Rubyでもこの文脈では引数の数のチェックをしてないようですが?
%w(a b c).map.with_index {|c| "#{c}" } # 引数が足りなくてもエラーなし
%w(a b c).map {|c, i, x, y, z| "#{i}#{c}" } # 引数が多くてもエラーなし
465デフォルトの名無しさん
2017/07/02(日) 00:24:36.29ID:0SO6fajC >>463
Rubyも宝石の名前にあやかってるだけで全くRubyじゃないよw
Rubyも宝石の名前にあやかってるだけで全くRubyじゃないよw
466デフォルトの名無しさん
2017/07/02(日) 00:24:58.24ID:J2BCSwZK >>465
なるほどw
なるほどw
467デフォルトの名無しさん
2017/07/02(日) 00:29:32.61ID:WUsDB0eH JavaScriptはLISPっぽい所ある
468デフォルトの名無しさん
2017/07/02(日) 00:38:11.58ID:yqVk05l0 >これはタイプ数の問題じゃねーよ?
と言いつつも
>可読性というのは読むべき「単語」を減らすものであって
と言うのであった
そして多くの人はこう思うのであった
「単語数と可読性ってそんなに関係あるか?」
「ここで言ってた可読性って、少々冗長であっても
読みやすいほうが良いって話じゃなかったの?」
>下の方が「単語数」が減っている。
>each with index map ・・・ 4単語
>map with index ・・・ 3単語
一単語減らせて本当によかったね
>これはタイプ数の問題じゃねーよ? 👀
Rock54: Caution(BBR-MD5:0be15ced7fbdb9fdb4d0ce1929c1b82f)
と言いつつも
>可読性というのは読むべき「単語」を減らすものであって
と言うのであった
そして多くの人はこう思うのであった
「単語数と可読性ってそんなに関係あるか?」
「ここで言ってた可読性って、少々冗長であっても
読みやすいほうが良いって話じゃなかったの?」
>下の方が「単語数」が減っている。
>each with index map ・・・ 4単語
>map with index ・・・ 3単語
一単語減らせて本当によかったね
>これはタイプ数の問題じゃねーよ? 👀
Rock54: Caution(BBR-MD5:0be15ced7fbdb9fdb4d0ce1929c1b82f)
469デフォルトの名無しさん
2017/07/02(日) 00:49:17.22ID:0SO6fajC >>468
> >これはタイプ数の問題じゃねーよ?
> と言いつつも
> >可読性というのは読むべき「単語」を減らすものであって
> と言うのであった
矛盾してないよ?
例えばコピペ、コピペを使うとタイプ数は減る。
CTRL+vとたった1文字タイプするだけで、
過去に書いたコードを複製できる。
だけど、読むべき単語は倍増していく
可読性のためにやらなければいけないのは、タイプ数を
減らすことではなくて単語数を減らすこと
> >これはタイプ数の問題じゃねーよ?
> と言いつつも
> >可読性というのは読むべき「単語」を減らすものであって
> と言うのであった
矛盾してないよ?
例えばコピペ、コピペを使うとタイプ数は減る。
CTRL+vとたった1文字タイプするだけで、
過去に書いたコードを複製できる。
だけど、読むべき単語は倍増していく
可読性のためにやらなければいけないのは、タイプ数を
減らすことではなくて単語数を減らすこと
470デフォルトの名無しさん
2017/07/02(日) 00:55:38.04ID:0SO6fajC >>468
> 「単語数と可読性ってそんなに関係あるか?」
> 「ここで言ってた可読性って、少々冗長であっても
> 読みやすいほうが良いって話じゃなかったの?」
日本語に置き換えて考えればわかるだろ?
文章はシンプルな方が読みやすい。
ただそれだけのことなんだが。
まああと付け加えるとするならば「誰にとって」の話だな。
もちろんプログラマにとってだ。
これは数学に例えればわかるか?
数学者同士が会話をする時、数式を使ったほうがより簡単に説明できる。
数学者同士の会話で素人がわかるように数式を使わないで
会話するのは話をわかりにくくするだけ
なぜか? 数式を使えば短い単語数で説明できるから。
ここで素人でもわかるように難しい単語を使わない方がいいという意見は
数学者同士の会話で、素人でもわかりやすく話せといってるようなもん。
素人のために生産性を大きく落とすだけ
> 「単語数と可読性ってそんなに関係あるか?」
> 「ここで言ってた可読性って、少々冗長であっても
> 読みやすいほうが良いって話じゃなかったの?」
日本語に置き換えて考えればわかるだろ?
文章はシンプルな方が読みやすい。
ただそれだけのことなんだが。
まああと付け加えるとするならば「誰にとって」の話だな。
もちろんプログラマにとってだ。
これは数学に例えればわかるか?
数学者同士が会話をする時、数式を使ったほうがより簡単に説明できる。
数学者同士の会話で素人がわかるように数式を使わないで
会話するのは話をわかりにくくするだけ
なぜか? 数式を使えば短い単語数で説明できるから。
ここで素人でもわかるように難しい単語を使わない方がいいという意見は
数学者同士の会話で、素人でもわかりやすく話せといってるようなもん。
素人のために生産性を大きく落とすだけ
471デフォルトの名無しさん
2017/07/02(日) 00:57:54.25ID:NbWg8gon >>470
その冗長なレスをまず自覚しろ
その冗長なレスをまず自覚しろ
472デフォルトの名無しさん
2017/07/02(日) 01:08:47.26ID:yqVk05l0 プログラムを書くのであれば誰しも可読性が良いプログラムを書きたいと考える
部分があるかもしれないが、そんなとき、単語数などというものの脳内に
占めるウエイトは、ほぼ無い
「あのプログラムのソースコードは単語数が少ないから非常に読みやすかったよ〜」
なんて会話は、無い
というと、じゃあ単語数が多いほうが良いのか?と言い出すかもしれないが
そもそも単語数など論点にするのがピンボケ
労力の方向がおかしいし、論点がおかしい
部分があるかもしれないが、そんなとき、単語数などというものの脳内に
占めるウエイトは、ほぼ無い
「あのプログラムのソースコードは単語数が少ないから非常に読みやすかったよ〜」
なんて会話は、無い
というと、じゃあ単語数が多いほうが良いのか?と言い出すかもしれないが
そもそも単語数など論点にするのがピンボケ
労力の方向がおかしいし、論点がおかしい
473デフォルトの名無しさん
2017/07/02(日) 01:14:15.76ID:0SO6fajC >>471
お前が短く書き直せば?w
お前が短く書き直せば?w
474デフォルトの名無しさん
2017/07/02(日) 01:15:48.32ID:0SO6fajC >>472
> 「あのプログラムのソースコードは単語数が少ないから非常に読みやすかったよ〜」
> なんて会話は、無い
無駄がないとかシンプルっていう言い方をしてるはずだよ。
無駄がないとかシンプルとはどういうことか?というと
それは殆どの場合単語数が少ないことを意味してる
単に言い方の違いだねw
> 「あのプログラムのソースコードは単語数が少ないから非常に読みやすかったよ〜」
> なんて会話は、無い
無駄がないとかシンプルっていう言い方をしてるはずだよ。
無駄がないとかシンプルとはどういうことか?というと
それは殆どの場合単語数が少ないことを意味してる
単に言い方の違いだねw
475デフォルトの名無しさん
2017/07/02(日) 01:23:00.07ID:yqVk05l0 ついでに言っておくと、俺は別に冗長に書けばわかりやすくなるとも思ってない
元の人がそのようなことを言っていたから、そういった風なことも書いたが
俺自身はそうとも思っていない
というか、そういったことは、割とどうでもよいというか
多少コードがシンプルになったぐらいで一喜一憂する気分ではない
そりゃ少しはうれしいが、それはまぁなんていうか、青信号だったラッキー、みたいな感覚
どちらかというと、1円見つけた!のほうが嬉しいかなー
元の人がそのようなことを言っていたから、そういった風なことも書いたが
俺自身はそうとも思っていない
というか、そういったことは、割とどうでもよいというか
多少コードがシンプルになったぐらいで一喜一憂する気分ではない
そりゃ少しはうれしいが、それはまぁなんていうか、青信号だったラッキー、みたいな感覚
どちらかというと、1円見つけた!のほうが嬉しいかなー
476デフォルトの名無しさん
2017/07/02(日) 01:28:42.17ID:0SO6fajC > 多少コードがシンプルになったぐらいで一喜一憂する気分ではない
割合で考えようか?
4単語が3単語になったら、25%もシンプルになったとみなすことができる
割合で考えようか?
4単語が3単語になったら、25%もシンプルになったとみなすことができる
477デフォルトの名無しさん
2017/07/02(日) 01:36:42.12ID:yqVk05l0 ほらもう、プログラムの美的センスがまるでないでしょ
>無駄がないとかシンプルとはどういうことか?というと
>それは殆どの場合単語数が少ないことを意味してる
大体において、ソフトウェアの可読性について考えたとき
そのほとんどは設計に依存していると考える人は多いっつーか
まぁ普通の感覚であるところだけど
じゃあなるべく素晴らしい設計をしようって意気込んだ時
「できるだけ単語数を減らせるような設計にしよう」
なんてこと考える奴居るのかね
そんなことがシンプルさの基準になるんかね
これはコードレベルでも同じことだろう
と、俺は思っているわけ
>無駄がないとかシンプルとはどういうことか?というと
>それは殆どの場合単語数が少ないことを意味してる
大体において、ソフトウェアの可読性について考えたとき
そのほとんどは設計に依存していると考える人は多いっつーか
まぁ普通の感覚であるところだけど
じゃあなるべく素晴らしい設計をしようって意気込んだ時
「できるだけ単語数を減らせるような設計にしよう」
なんてこと考える奴居るのかね
そんなことがシンプルさの基準になるんかね
これはコードレベルでも同じことだろう
と、俺は思っているわけ
478デフォルトの名無しさん
2017/07/02(日) 01:39:30.83ID:yqVk05l0 >4単語が3単語になったら、25%もシンプルになったとみなすことができる
なんでシンプルさの基準が単語数なのか本当に不思議な奴だ
プログラム書いたことないんじゃね?説
なんでシンプルさの基準が単語数なのか本当に不思議な奴だ
プログラム書いたことないんじゃね?説
479デフォルトの名無しさん
2017/07/02(日) 03:26:13.52ID:0SO6fajC >>477
> 「できるだけ単語数を減らせるような設計にしよう」
> なんてこと考える奴居るのかね
いるだろうな
言語とかライブラリの比較みてみ?
あの言語・ライブラリではこんなに面倒なコードが
たったこれだけのコード(単語数)で書けるって
話になってるから。
> 「できるだけ単語数を減らせるような設計にしよう」
> なんてこと考える奴居るのかね
いるだろうな
言語とかライブラリの比較みてみ?
あの言語・ライブラリではこんなに面倒なコードが
たったこれだけのコード(単語数)で書けるって
話になってるから。
480デフォルトの名無しさん
2017/07/02(日) 03:29:27.16ID:0SO6fajC >>478
> なんでシンプルさの基準が単語数なのか本当に不思議な奴だ
単語数だけじゃないけど?
それ以外の条件が同じ時。
単語数が少ないほうがシンプルなコード
それ以外の条件っていうのは、単語の長さはどちらも同程度であること
一行の文字数はどちらも同程度であること
関数の行数はどちらも同程度であること
ファイル数やクラス数や関数数はどちらも同程度であること
それ以外の条件を同じか、同程度にした時
単語数が少ないほうがシンプルなコードになる。
> なんでシンプルさの基準が単語数なのか本当に不思議な奴だ
単語数だけじゃないけど?
それ以外の条件が同じ時。
単語数が少ないほうがシンプルなコード
それ以外の条件っていうのは、単語の長さはどちらも同程度であること
一行の文字数はどちらも同程度であること
関数の行数はどちらも同程度であること
ファイル数やクラス数や関数数はどちらも同程度であること
それ以外の条件を同じか、同程度にした時
単語数が少ないほうがシンプルなコードになる。
481デフォルトの名無しさん
2017/07/02(日) 05:05:29.89ID:mUyXxhhW 各「.」で何の型が返ってきているのか、実装を見ずとも自明になっている。
最悪でも、マウス当てただけで自明になる書き方。
これを守ってるほうが遥かに重要だわ。
最悪でも、マウス当てただけで自明になる書き方。
これを守ってるほうが遥かに重要だわ。
482デフォルトの名無しさん
2017/07/02(日) 05:55:04.26ID:X/s5VUlf ああもうあなたが初心者であることはよくわかったので他のスレでやってくれ
https://mevius.2ch.net/test/read.cgi/tech/1475332848/
https://mevius.2ch.net/test/read.cgi/tech/1475332848/
483デフォルトの名無しさん
2017/07/02(日) 06:33:34.29ID:tl1wWlTJ うますぎるプログラムはいけない
484デフォルトの名無しさん
2017/07/02(日) 12:23:01.69ID:Ey9UZy2f >>461
確かにその文法欲しいな。
確かにその文法欲しいな。
485デフォルトの名無しさん
2017/07/02(日) 13:05:35.53ID:NbWg8gon >>477
同意
プログラミングの難しさは設計の難しさ
コードの美しさは設計の美しさ
それが分かっている奴は
初心者が騒ぐ観点で騒がない
真顔で黙ってる
タイプ数が少ない?よかったね
単語数が少ない?よかったねえ
同意
プログラミングの難しさは設計の難しさ
コードの美しさは設計の美しさ
それが分かっている奴は
初心者が騒ぐ観点で騒がない
真顔で黙ってる
タイプ数が少ない?よかったね
単語数が少ない?よかったねえ
486デフォルトの名無しさん
2017/07/02(日) 13:08:21.66ID:0SO6fajC コードが美しい?よかったねえ
487デフォルトの名無しさん
2017/07/02(日) 13:49:07.69ID:27xX9ykc488デフォルトの名無しさん
2017/07/02(日) 17:59:14.19ID:NbWg8gon 既存の言語が気に入らないんなら
自分で作ってみればいいんじゃね?
クソじゃない言語とやらを
自分で作ってみればいいんじゃね?
クソじゃない言語とやらを
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 「もうキモくてキモくて…」29歳女性が語る“おぢアタック”の実態。「俺ならイケるかも」年下女性を狙う勘違い中年男性には共通点が [Hitzeschleier★]
- テレビ朝日 本社から男性が転落し死亡。関連会社社員か 当たった通行人が左肩軽傷 [阿弥陀ヶ峰★]
- 中国軍機がレーダー照射 小泉防衛大臣の説明に「矛盾している」中国外務省報道官が批判 [♪♪♪★]
- テレビ朝日本社から20~30代の関連会社社員とみられる男性が転落し死亡 六本木けやき坂通りの通行人にはけが人なし [少考さん★]
- 「これいいじゃん!!!」 セブン-イレブンの1620円で買える“1人用クリスマスケーキ”🎂に注目殺到「天才すぎる」 [パンナ・コッタ★]
- 高市早苗首相が天理教系企業に“巨額発注” 総額5000万円 本人は「政治団体の活動に必要な支出」と回答 ★2 [Hitzeschleier★]
- 【実況】博衣こよりのえちえちスーパーダンガンロンパ7🧪
- 【乞食速報】プロクオリティ ビーフカレー 96食 4262円 [268244553]
- 年末のvip芋煮会って何日だっけ?
- 【速報】福島原発でキセノン135が検出されてる模様、再臨界か [668970678]
- 【速報】テレビ朝日本社から20代〜30代の男性が飛び降り自殺して死亡 東京・六本木 [597533159]
- 歴史って「この教科には暴力的な表現が含まれます」とか警告しといた方がいいよな
