Ruby 初心者スレッド Part 60 [無断転載禁止]©2ch.net

■ このスレッドは過去ログ倉庫に格納されています
2017/04/29(土) 02:01:58.34ID:urVXnFrH
プログラミング言語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/
2017/06/17(土) 15:18:40.82ID:KrWMylVm
具体論がまったくないところがすごいなw
2017/06/17(土) 16:22:03.43ID:b4+zDofQ
>>329
日本人の場合
あらゆる言語の中で一番易しいプログラミング言語
(子供用のおもちゃを除く)
2017/06/17(土) 16:52:41.05ID:CkD5o1Z0
そうですか
GUIはどれを使えばいいですか?
2017/06/17(土) 17:23:28.18ID:RyxkXkzJ
どうしてもやりたいならjruby+jrubyfx楽よ
2017/06/17(土) 17:39:53.37ID:ZEU2lDOZ
この時点で、rubyだめってヒシヒシ伝わる。
336デフォルトの名無しさん
垢版 |
2017/06/17(土) 18:11:55.35ID:n14YEU6w
>>330
初見のコピペ
2017/06/17(土) 18:16:55.55ID:n14YEU6w
>>333
rubyでは向いてないからGUIやめとけ
pythonでGUIやるといいよ
2017/06/17(土) 19:44:55.62ID:KrWMylVm
>>330 の文章とか論理展開とか見てて何かに似てるなーと思っててずっと思い出せなかったが
やっと思い出した

これって、「ゲンダイ」の論調に似てるんだ!w
2017/06/17(土) 19:46:39.93ID:KgLuH5ks
まつもと氏は合理主義のようだけどGUIにはそういうのは及んでないんですか?
2017/06/17(土) 20:05:28.72ID:x959dLvJ
>>339
まつもと氏の行動原理は「IT土建屋死ね」
だからWinでのGUI開発でRubyが広く使われるようなことはあってはならない
2017/06/17(土) 21:40:11.74ID:83r52Wsn
>>329
普通にメジャー言語だから
そのメリットはあると思うけど

他のメジャー言語でも別にいいが
日本語情報が豊富なのが良い
2017/06/17(土) 21:41:18.42ID:83r52Wsn
>>333
Tkが(旧)標準
見た目が簡素だが覚えやすいので
最初はこれがオススメ
2017/06/17(土) 21:42:43.07ID:83r52Wsn
>>330
何がダメでどうすればいいのか言わないなら
たんなる代替なき批判に見える
あとMarzってなんだよ!
2017/06/17(土) 21:44:31.17ID:83r52Wsn
>>339
Tkを標準にしたのは合理的だと思うけど?
もしPythonに移ってもTkは使えるからね
2017/06/17(土) 22:00:59.26ID:qMkdrUOQ
あぁごめんな
ただあの人のインタビューとか読めばわかるけど
逆張り逆張り言ってる
あの人自身もRubyの筋が良いとかメインストリーム的な思想であるとは
考えてないんだよ
ただ、自分の人生の中で逆張りした場合にうまくいくことが多かったので
逆張りし続けているんだとか
だからRuby3.0でも逆張りの一種として
静的型の機能は導入しない方向を検討しているんだろうな
ただそう何度も逆張りが上手くいくとは思わないし
逆張りはしょせん逆張りだろ?あだ花というかなんというか
そういうこともあって結局Rubyはプチブームで終わった現状があるわけだし
変なことして注目を集めることはあってもそれは一過性だよ、芸人じゃあるまいし
しかも逆張りしたときに自分にとって都合がよいことが多かったってだけで
使い手のことは別に考慮されてないんだよなー
2017/06/17(土) 22:03:22.44ID:KrWMylVm
>>345
あいかわらす週刊誌レベルの根拠ない批判しかできないんだなー
2017/06/17(土) 22:07:45.91ID:qMkdrUOQ
普通に考えたら静的型を導入しない理由は全くないんだよ
ただ、あえて理由を挙げるとしたら、最初Rubyは動的型で出発したから
いまさら静的型の機能を入れ込むのは非常に難しいってことなんだよ
過去との互換性もあるし、そういうコミュニティーになっちゃってるしな
もちろんこれは動的型に「逆張り」した結果なんだろうけど
あとあと苦しいわなー
2017/06/17(土) 22:10:52.30ID:KrWMylVm
>>347
もうちょっと言語について勉強してから長文で語ってくれないかなー
正直今のレベルではゲンダイにも載せてもらえないレベルのただの妄言だしさ
2017/06/17(土) 22:22:53.33ID:qMkdrUOQ
ただここまで静的型が「ハマる」とは俺も想像してなかったし
Matzも想像できなかったんじゃろな
何だか知らないが、静的型はすべてにおいて丁度よい感じになってるんだよな
神がかった偶然がいくつも重なってるかんじで、最適解になってる
この牙城はなかなか崩せないよ、一つや二つのメリットじゃないからね
なんでこんなに上手くいったんだろうね
2017/06/17(土) 22:26:25.66ID:83r52Wsn
>>347
>普通に考えたら静的型を導入しない理由は全くない
そんなことない

Python、JavaScriptなど
メジャーな言語が導入してるんだから
2017/06/17(土) 22:31:07.35ID:KrWMylVm
http://hissi.org/read.php/tech/20170617/cU1rZHJVT1E.html
てかこいつ変な人間だったわ
相手しちゃいけないタイプ
2017/06/17(土) 22:59:47.96ID:qMkdrUOQ
まず動的型の根本的な慢性的ともいえる文法上の悩みの種は
どうにかして変数宣言をなくしたい欲求にかられるって点にある
動的型であるから変数宣言に型を書く必要がないので
なんとかして変数宣言自体をなくしたいっていう
まぁ分からなくもない
しかしながら変数宣言には変数の型を決める役割があるのとは別に
「変数のスコープを決める」という役割もあったわけで
安易に変数宣言を削除してしまったRubyやPythonのような言語は
大体において変数のスコープが奇妙なことになっているのじゃ
例えばRubyにおいては「@」であったり、ブロックローカル変数であったり
Pythonであればnonlocalであったり、なにか場当たり的だし
実質的な変数宣言の一種のような気もする
あと、if文や繰り返し文の後ろに続くブロックなどでスコープを持てなくなって
しまったりもな、なんせ、文法上、宣言を代入で代用しているから
代入と宣言の区別がつかないような状態で、かゆいところに手が届かない
だから結局、実は変数宣言は有ったほうが良いんじゃね?ってなって
ならついでに型も書けばってなって、今はさらにこれに加えて
型を書きたくなければ型推論使えば?ってことにまでなっちゃってる
型推論使えば変数宣言をする手間はほぼなくなるし
スコープを細かく制御できるようになるんだから
もう変数宣言が無いことはメリットにならなくなってしまった
まぁこんなのは氷山の一角でジャブだ
コンパイラによる型チェック云々言いたくなるところだがそれ以外にも
文法上の問題としてこういうのもあるということ
その他にも実行性能であったり、ドキュメントの自動生成であったり
リファクタリングの容易さであったり
IDEの入力補完etcのサポートのしやすさであったり
人間も型があったほうが読みやすいんじゃないかとか
結局コメントで型を書いてるんじゃね?とか
色々あるわな
なんか複合的なんだよ
動的型がここまでケチョンケチョンになるとは流石に想像できなかったわ
2017/06/17(土) 23:00:37.97ID:KrWMylVm
http://hissi.org/read.php/tech/20170617/cU1rZHJVT1E.html
はいはい、もう君の素性はバレてるよ
2017/06/17(土) 23:04:50.91ID:qMkdrUOQ
ただ動的型にも良い点があって
「処理系の実装が楽」
しかしこれも実用性を考えて突き詰めていけばJSのV8エンジンのように
加速度的にむしろ大変なことになるというね
とにかく旨みが無い
2017/06/17(土) 23:05:43.09ID:KrWMylVm
http://hissi.org/read.php/tech/20170617/cU1rZHJVT1E.html
はいはい、もう君の素性はバレてるよ
2017/06/18(日) 00:20:30.41ID:lJ0QohrH
LISPみたいに動的型でも宣言ある言語の方がスコープが分かりやすい
2017/06/18(日) 02:54:31.67ID:MwiRGqjx
動的型付けでダックタイピングみたいに
組みやすくなってるメリットがあるから

実際Ruby以外にもPerl、Python、PHPの
P言語はみんな動的型付けになってる

小規模Webサービスのサーバサイド言語
としての用途には動的型が合ってる
2017/06/18(日) 07:50:58.11ID:ppLsekVC
>>357
何か勘違いしてるみたいだけど、ダックタイピングっていうのはオブジェクト指向言語の実装手法の一つで、プログラマにメリットなんかないよ
特にRubyだと多態をダックタイピングに任せるのは嫌われる傾向があって
無意味でも空のメソッドを定義しておいて継承したりするし
2017/06/18(日) 08:09:30.26ID:ppLsekVC
ちなみに、Rubyでダックタイピングが好まれないのはドキュメントよりもコード読めという文化のせいだと思ってる
ダックタイピングだと「このパラメータにはアヒルを渡してくれ」じゃなくて
「このパラメータにはアヒルのように歩きアヒルのように鳴くものを渡してくれ」といちいちドキュメントに書かなきゃいけない
(静的型になる前の)Pythonはドキュメントを重視する文化だから実際そういうドキュメントの書き方をすることもあるんだけどね
Rubyだとそれを避けるために無意味とわかっていても空のスタブとしてアヒルクラスを定義しておいて「アヒルを渡してくれ」と書くわけ
360デフォルトの名無しさん
垢版 |
2017/06/18(日) 08:24:04.22ID:mREyO8+w
>>352
Rubyが動的型って言うより、
型宣言不要と特徴付けるのがええんちゃうかなぁ。

変数宣言なしは良いとして、変数のスコープが判りにくくなったってのは、
そうかも。
2017/06/18(日) 08:29:35.01ID:F94toio2
ダックタイピング任せはメンバの追加がしづらいのも問題
静的型ならインターフェースにメンバを足せばコンパイルエラーになるからエラー箇所を直せばいいが
完全なダックタイピングだと手掛かりがなく修正漏れが発生しやすい
とりあえずスタブを継承させるようにしておけばメソッドを足してもメソッド未定義のエラーにはならない
362デフォルトの名無しさん
垢版 |
2017/06/18(日) 16:45:30.43ID:xPH4G83l
いまさら$とか@とかつけたくないな
2017/06/18(日) 17:45:55.35ID:MwiRGqjx
>>358
>Rubyだと多態をダックタイピングに任せるのは嫌われる傾向
>>359
>Rubyでダックタイピングが好まれない

勝手に決めんなって
それはJavaみたいな静的型の発想で
Rubyを使おうとする奴の話だろ

インターフェイスの継承不要なのが
ダックタイピングのメリットだから
364デフォルトの名無しさん
垢版 |
2017/06/18(日) 17:56:41.46ID:mREyO8+w
Rubyのスクリプトをバックグラウンドで動かすにはどうすれば良いでしょう?
>ruby someScript.rb &

と実行してもTerminal.Appを閉じるとrubyも終了してしまいます。
OSはmacOS Sierraです。

以前、HP-UXで作業して居た時には、xtermを閉じても、logoutしてもバックグラウンドで動き続けてくれました。

launchdとかいうdeamonをコントロールするコマンドがある様なんですけど、これを使って動かさないといけないのでしょうか?
2017/06/18(日) 18:03:58.53ID:kXxrIi51
tmux使え
366デフォルトの名無しさん
垢版 |
2017/06/18(日) 18:13:50.36ID:mREyO8+w
>>365
レスTHX
terminal multiplexerを使えば良いのでしょうか?

someScript.rbを動かすには、someScript.plistを書いて
>launchctl load someScript.plist
ってやるらしいのですが、plistファイルなんて書いた事ないぞぉ。

書き方がよく判らん。
なにか、勘違いしてたら、ご指摘を!
367デフォルトの名無しさん
垢版 |
2017/06/18(日) 18:27:18.73ID:mREyO8+w
>launchctl load a.plist
/work/a.plist: Invalid property list


property listの書き方がよく判らん。
ただのxmlファイルじゃないのか?コメントの放り込み方が悪いのか?
無効なproperty listだとぉー?
368デフォルトの名無しさん
垢版 |
2017/06/18(日) 18:38:44.94ID:mREyO8+w
やったぁー。動き出しタァ。
Terminal.Appを閉じても動いてる。ふぅー。
369デフォルトの名無しさん
垢版 |
2017/06/18(日) 19:28:18.01ID:mREyO8+w
俺的忘備録

必須key、3つ
<key>Label</key>
<key>ProgramArguments</key>
<key>KeepAlive</key>

3つ目のやつを<true/>にしないとbackgroundで動かん!
さらに、最後のはOnDemand=falseと等価なのだが、
OnDemandはshould not use!だって。
man launchd.plistに詳細が記載。
370デフォルトの名無しさん
垢版 |
2017/06/18(日) 19:51:32.81ID:mREyO8+w
Labelが無いとどうなるんでしょう?
371デフォルトの名無しさん
垢版 |
2017/06/18(日) 19:54:50.51ID:mREyO8+w
Invalid or missing service identifier
372デフォルトの名無しさん
垢版 |
2017/06/18(日) 20:02:09.12ID:mREyO8+w
さて、stdoutはどうやって拾うのだ?
373デフォルトの名無しさん
垢版 |
2017/06/18(日) 20:13:05.46ID:mREyO8+w
man lauchd.plist
して/stdout
すれば出て来た。
2017/06/18(日) 22:47:06.74ID:o43mtcr6
>>364-368
Linux では、プロセス間に親子関係がある。
端末から、Aプロセスを起動すれば、端末が親で、Aが子

「親亀こけたら、子亀もこける」から、端末が終了すると、Aも終了する。
端末から、SSHで、リモートサーバーへアクセスしても、
接続断などで、リモートのシェルが終了すると、
シェルから起動したコマンドも終了してしまう

リモートで、tmux をずっと起動させておけば、コマンドは動き続ける

他には、サービス・デーモンのように、プロセスの親をなくす(デーモン化)

ptree コマンドで、プロセスツリーを見てみ
2017/06/19(月) 00:00:57.99ID:7PGcweVa
>>364
マッキンは知らんので、Linuxだとして。
おそらくプロセスを切り離さないと。

nohup、disownとかぐぐれ。
2017/06/19(月) 09:53:11.25ID:JRZAs/i8
>>374
そんな面倒なことしなくても
hoge.app &
でよくね?
2017/06/19(月) 09:56:20.02ID:rtjcKsU2
>>376
それやっても親子関係が残るからだめだっつってるのに文盲か?
378デフォルトの名無しさん
垢版 |
2017/06/19(月) 10:00:51.58ID:zE2VOzv5
>>375
THX

mackin’でもnohup使えた。
launchctlなんて使わなくて良さそう。

>>376
hoge.app&ではterminal.appの終了時にhoge.appがkillされちゃうんだよねぇ。
mackin’では。Linuxでは違うのか?
最近LInux触ってないのでよく知らんのだ。
379デフォルトの名無しさん
垢版 |
2017/06/20(火) 00:23:19.32ID:8wgIueO/
pstree コマンドで、プロセスの親子関係をツリー表示して、見てみれば?

結局、Ruby を学んでも、OS を学んでいなければ、
システム系のプログラミングは出来ない

だから普通、プログラマーよりも、LPIC資格を持っている、
サーバー構築・運用者の方が、給料が高い
2017/06/20(火) 00:54:05.18ID:uMblZ3Am
× システム系のプログラミング
○ 運用系のプログラミング
381デフォルトの名無しさん
垢版 |
2017/06/20(火) 08:29:32.89ID:rapwcYHc
>>379
system callを知らなくても、まあ、一部知ってるけどRubyスクリプト、スマホアプリは作れるよ。

OSを学ぶって、言うけど、それ幅が広すぎ!
まあ、パタ・ヘネ位は読んでます。
2017/06/20(火) 10:01:32.57ID:8wgIueO/
まあ、プログラマーで、プロセスに親子関係があるとか、
cron の使い方とか、tmux とか、知っている奴はいない

cron あるあるとか、SSH あるあるとか、Linuxでは定番
383デフォルトの名無しさん
垢版 |
2017/06/20(火) 10:41:15.76ID:rapwcYHc
>>382
プロセスに親子関係がある。コマンド実行時にshellがforkされるのは知ってたんだけど。。。
以前はnohupなんて使わなくても、
>someCommand &
とすれば
>nohup comeCommand &
した事になったのに!

いつから、nohupなんて現れたのだ?
384デフォルトの名無しさん
垢版 |
2017/06/20(火) 10:45:41.82ID:rapwcYHc
どうやらbashは終了時に起動したプロセスにSIGNHUPを送るらしい。

俺が昔使って居た、csh, tcshではそんな事はなかったのに!
時代は変わったんだな。
385デフォルトの名無しさん
垢版 |
2017/06/20(火) 12:38:36.99ID:5s5M5H6z
>>383
だよな
いつからだっけ
386デフォルトの名無しさん
垢版 |
2017/06/20(火) 12:39:25.49ID:5s5M5H6z
>>384
ああそれか
なんでbashみたいな糞が流行ったんだろ
387デフォルトの名無しさん
垢版 |
2017/06/20(火) 12:51:49.38ID:rapwcYHc
zshってのが便利だってのを、webの記事でよく見るけど、
どうなん?

bashが糞なら、zshを使って見るかな。
zshもbashの親戚みたいな動きをするなら、zshも糞って事になるけど。
2017/06/20(火) 13:51:30.44ID:DOO3yEYl
>>387
zsh もデフォの振る舞いは bash とおなじ。
設定で setopt nohup すれば、hup 送らなくなる。
bash でも huponexit オプション外せば送らなくなる。
ソフトウェアのマニュアルも読まずに糞とか言うのは、
自分は所詮そのレベルの人間ですと言ってるようにしか聞こえないよ。
389デフォルトの名無しさん
垢版 |
2017/06/20(火) 13:59:24.54ID:rapwcYHc
>>388
はい!
無闇に糞って言った事を、反省します。
390デフォルトの名無しさん
垢版 |
2017/06/20(火) 14:18:05.45ID:rapwcYHc
>>388
うぅーん。
macOS Sierraのbashにもshopt huponexitってのがあるが、
どうも、最初からoffになってるにも関わらず、signhupを送ってる。

ためしにonにしてみたが、bash終了時にbackground実行しているプロセスが死んでしまう事に、変わりなし。

nohupコマンドを付けないと、background実行できないみたいだ。
2017/06/20(火) 15:04:00.33ID:DOO3yEYl
>>390
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が必要なのは、ちょいとなぁ。
393デフォルトの名無しさん
垢版 |
2017/06/20(火) 15:22:05.91ID:rapwcYHc
>>391
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だと聞いて、今様子を見ているところです。
2017/06/20(火) 15:29:54.49ID:DOO3yEYl
>>393
vim 上の shell で実行してるの?
tmux か screen の上で動かすか、あきらめてnohup 書く癖を身につけるしかないかと。
396デフォルトの名無しさん
垢版 |
2017/06/20(火) 15:36:38.36ID:rapwcYHc
>>395
nohup書きます。
時代はnohupなんすね。

macOSアプリ作り始めたけど、AppKitってUIKitと似てるけど違うので、混乱するわぁ。
2017/06/20(火) 16:02:58.26ID:HkCB1WW9
rubyスレ?
2017/06/20(火) 16:14:40.13ID:+dHGS6wU
tmux使う方が早い
2017/06/21(水) 00:25:07.92ID:39OgiOwj
>>392
> 即backgroundで動いて欲しいです。

冷静になったら、そうでないほうがたしかによい、と思うはず。
誤ってbgにしたり、bgにしたまま忘れたりした状態でログアウトした場合のリスクを考えれば。
400デフォルトの名無しさん
垢版 |
2017/06/21(水) 13:07:38.08ID:L1LFWazB
むしろ、WSH で、Excel など外部アプリを起動すると、Excel のプロセスが残り続けるから、

どんどん、Excel のプロセスが増えていき、
これらをどうやって終了するのか、皆苦しんでいるんだが
2017/06/21(水) 18:38:55.26ID:xJXAtiMS
残らないが?
402デフォルトの名無しさん
垢版 |
2017/06/23(金) 10:35:54.52ID:0OdP20aK
>>399
bgの何が問題?
403デフォルトの名無しさん
垢版 |
2017/06/23(金) 10:36:22.71ID:0OdP20aK
>>400
馬鹿だな
2017/06/23(金) 13:24:40.77ID:AzvmtT2M
初心者です、自作の汎用関数を定義したのですが、いちいちスクリプト内にコピペするのが面倒なので
外部ファイルにして冒頭でrequireすることにしました。
ですが、ここに具体的なファイルパスを書くと、ファイルの設置場所を変えたい場合に問題があるのでパスは書きたくないです。
require 'myfunc'
と簡便に書ければいいのですが、どこに置けばいいでしょうか?
2017/06/23(金) 13:37:52.68ID:9PTuVR6v
現実の開発ではきちんとバージョン管理するのでフォルダの構成変更なんかそんなに頻繁にやることではない
だからリポジトリを分けるほどでもないなら気にせずパス決め打ちでいい
独立性と再利用性が高いものであればリポジトリを分けてgemにする
2017/06/23(金) 14:21:13.96ID:AzvmtT2M
ありがとうございました
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
2017/06/23(金) 14:43:58.67ID:qsHmY7yg
>>404
場合によっては環境変数 RUBYLIBにmyfunc等のパスを淹れるのもあり
https://docs.ruby-lang.org/ja/latest/doc/spec=2fenvvars.html
2017/06/23(金) 18:29:59.15ID:+um/cK3a
>>400
“終了しない excel application”でググったら出てきたけどこの仕様は罠だろ・・・
410デフォルトの名無しさん
垢版 |
2017/06/23(金) 18:31:41.63ID:PAAniHx4
馬鹿には無理
2017/06/23(金) 19:09:21.56ID:F2nCEsS4
>>409
COM経由で起動させてるんなら自動で終了する方がきもちわるい
2017/06/23(金) 19:49:53.85ID:+um/cK3a
>>411
自動化処理に使ったプロセスが不要になっても残りっぱなしの方が気持ち悪い
2017/06/24(土) 18:05:14.46ID:M5zFSS9+
>>404
モジュールファイルへの相対パスなら確定できる場合はrequire_relative。
特定ディレクトリの設定だけなら許容できる場合は、そのディレクトリを$:に追加。
2017/06/24(土) 18:06:46.13ID:M5zFSS9+
>>412
プロセス自身にはわからんじゃろ。。。
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年目以降は不具合の修正に対応しない」と主張するベンダーはまれだ。多くの場合は、納品から何年たっても、
バグが見つかればユーザーのところに飛んで行き、無償で改修するだろう。
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など動的言語は確実に廃れる。
保守に強い言語のみ生き残れる。
2017/06/28(水) 19:56:54.80ID:ZzpJpley
> RubyやPHPなど動的言語は確実に廃れる。
軽々しくこういう断言する人間の言葉は話半分どころか1/4以下にして聞け、ってばっちゃが言ってた
2017/06/28(水) 20:15:29.47ID:kl/WEkBu
Rubyが現在進行形で廃れていってるのは確かな事実だけどね
2017/06/28(水) 21:48:23.90ID:WbQwz649
ぶっちゃけて言えば、意味論的には普通なのに文法がぐちゃぐちゃすぎて使いづらい。
Perl のあまりの一貫性のなさに Ruby を試したりしたこともあるが、
多少はマシって程度でうんざりするような無茶苦茶さを指向していることにかわりない。
parse.y が黒魔術の塊だというのは聞いていたが、実際に見てみると常軌を逸している。
せっかく yacc を使ってるのに純粋な LALR として解釈できないようなわけわかんないクソが埋め込まれてて、
もはや統制が取れてない。
mruby をベースにして拡充していった方がいい気がする。
2017/06/30(金) 00:38:26.19ID:UcGpMueB
使いづらいなら他の言語使えばいいじゃん
わざわざRubyスレ覗いてRubyの悪口書いてる暇があるなら他の言語でコード書こうぜ
2017/06/30(金) 01:21:01.84ID:svEzz20W
>>420
だからもう十年以上使ってない。
事実として文法規則のごちゃごちゃしたところはあるという話だよ。
そして事実として私はそれを気に入らなかったという話だよ。

よくある場面を短く書けるとか人間の一般的な感覚に合わせたりもした結果だというのはわかっているし、
Ruby に向いた用途があるのは知ってるよ。
ただ、それの行く先には実装上の行き詰まりが生じそうだという懸念だ。
2017/06/30(金) 01:37:54.59ID:UcGpMueB
>>421
うん、そんな人間がなぜRubyスレを覗いてて、なおかつ悪口を書き込むのか
はっきり言えば粘着質で気持ち悪い
2017/06/30(金) 02:32:52.47ID:7V8Jdo2I
Rubyは読み書きしやすいから使ってる
規則が統一された文法が良ければLispを使えよ
2017/06/30(金) 09:41:10.74ID:jqp1y4Nc
何で使ってない言語を見に来ているの?
暇なの?
2017/06/30(金) 09:50:34.06ID:flSVgAwO
rubyは上級者には不満があるのかもしれんが、俺の様な素人が使うには使いやすい。
メソッドチェインも「.」でつなげていくだけだし、
正規表現使うのにimportとかしなくていいし。
でも複数行のコメントアウトは面倒。
426デフォルトの名無しさん
垢版 |
2017/06/30(金) 09:51:37.98ID:BBkM2EA1
>>422

Rubyスレに来て悪態さらすヤツってのは、喩えて言えばこんな感じだ。
最初は、良い会社だと思って就職した。
けど、外から見るのと、入って見るのとでは大違いで、内部は火の車だった。
(例:最近の東芝、タカタ)

転職活動も、うまくいかず、悪態をつかざるを得なくなる。
2017/06/30(金) 10:15:14.59ID:pDIkSJMf
2ちゃんも昔は良かった
428デフォルトの名無しさん
垢版 |
2017/06/30(金) 11:25:06.46ID:BBkM2EA1
>>427
そうかぁ?殺人予告とかあったんだぞ!
そんでもって、本当に発生してビックリなんてのが、2chなのだ。
2017/06/30(金) 11:30:06.98ID:hBaGJvUf
>>425
> でも複数行のコメントアウトは面倒。

初心者スレということでいちおうマジレスしておくと
=begin
=end
で囲むと一挙にコメントアウトできる
430デフォルトの名無しさん
垢版 |
2017/06/30(金) 11:33:27.81ID:BBkM2EA1
>>429
たしか、こんなのも
__END__

以下の行は全てコメント!
うる覚えだが。
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況