Ruby 初心者スレッド Part 65

■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん (ワッチョイ 0f80-JI52)
垢版 |
2018/12/22(土) 04:43:34.03ID:84E3pYZa0
プログラミング言語 Rubyについての、初心者向けスレです。質問・要望・雑談などをどうぞ

質問するときは、OSやRubyのバージョン、エラーメッセージを書いて下さい。
Ruby on Rails については、WEBプログラミング板で

前スレ
Ruby 初心者スレッド Part 64
https://mevius.5ch.net/test/read.cgi/tech/1535797516/

るりまサーチ (リファレンス検索)
http://rurema.clear-code.com/

Rubyist Magazine - るびま
http://jp.rubyist.net/magazine/

逆引きRuby
http://www.namaraii.com/rubytips/

Ruby コミュニティ公式
https://www.ruby-lang.org/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:----: EXT was configured
2019/02/22(金) 10:48:26.93ID:jNyfsysYM
>>204
gemの仕様です
だからpre-build gemを嫌ってる人もいます
2019/02/22(金) 11:24:33.25ID:43iXBVf10
さすがに、MSYS2 のようなコンパイラーは、何GB も食うから、いらない。
ただし、コンパイラーが無いから、Windows 用のweb socket のバイナリが無くて、困っている

>>204
の、sqlite3/2.4/sqlite3_native.so だけを入れる方法は無いの?
2.0〜2.3 は、いらない
2019/02/22(金) 22:52:10.31ID:hC9++n+50
>>206
Amazonや楽天ぐらいあるだろ…
2019/02/25(月) 16:51:11.43ID:6aHiqgcw0
技術書ほとんど電子書籍でしか買わないかな。PDF でパソコンかタブレットで読んでる
211デフォルトの名無しさん (エムゾネ FF0a-kEY9)
垢版 |
2019/02/25(月) 17:10:55.80ID:cOrzmhCLF
mruby 出番無くなったな
https://qiita.com/inachi/items/903bb988e23a7ef83ca7
https://youtu.be/L125HSqkJ6U
https://makezine.jp/blog/2018/01/micropython_ref.html
https://qiita.com/hatobus/items/69b353dea3d8f2a25441
2019/02/25(月) 18:11:00.52ID:sO03erxCM
そもそもmrubyに出番があったことなど無かった
島根県の助成金貰う代わりのネタを考えないとMatzと取り巻きが露頭に迷う懸念はあるね
2019/02/25(月) 18:24:32.74ID:mboQc3DnM
>>211
js,、scratch(まあscratchもjsだけど)、pythonか。
rubyが入れるわけないわな。
至極残当。
2019/02/25(月) 19:47:52.74ID:PRvX3sK80
ていうかmrubyは「くみこみでもるびーつかいたい」という以上のものではないしそれ以上の役割を持たせてもいけないはずだったのだ
どこで間違えたのやら
2019/02/26(火) 14:44:39.80ID:s53snE6vM
>>214
mrubyは経産省やハードウェアメーカーがスポンサーに入ってるから、やってみた、うごいた、わーい、だけじゃ済まされないよ
だから誰も使ってなくても誰にも求められてなくても誰もやりたくなくても開発は続けなきゃいけない
2019/02/26(火) 15:13:52.55ID:W0wJxBNyM
典型的な埋没費用だね
経産省は血税をなんだと思ってるんだ
217デフォルトの名無しさん (アウウィフ FF21-kEY9)
垢版 |
2019/02/26(火) 15:18:03.05ID:8+7ktUtNF
>>214
補助金詐欺とまでは言わないでも補助金ゴロ

>>216
ren4 に教えてやれ
2019/02/26(火) 16:23:09.00ID:tl8UlM+n0
そもそも組込で Ruby 使いたいっていう需要が小さいよね
2019/02/26(火) 20:25:10.10ID:cNXsTeTJ0
東ロボなみの失態
2019/02/27(水) 01:40:46.20ID:TAg3u7Bg0
組み込みに贅沢な文法いらんしなぁ。
数千行程度までなら、lua程度でいい。
2019/02/27(水) 02:13:01.70ID:oZYESBBc0
rubyからCや特定CPU向けアセンブラを生成できるようにすれば用途は広がるが、
CPUを活用するにはrubyに不足している機能があるのかも

AIに出番をつくる何かを追加しよう
222デフォルトの名無しさん (ワッチョイ 797c-BftX)
垢版 |
2019/02/27(水) 13:17:12.60ID:+TCpifLa0
まだ負けと決まった訳じゃない(キリっ
223デフォルトの名無しさん (フォォーッ MMa5-4qoz)
垢版 |
2019/02/27(水) 22:05:06.13ID:qTA28+u/M
 本は立ち読みして使える本かどうかチェックしてから買うもので・・・
 >>212
わかーました。Matzに会ったら教えちゃーけん、楽しみに待っててごしないや
224デフォルトの名無しさん (ワッチョイ d72d-SKB1)
垢版 |
2019/02/28(木) 13:12:02.91ID:MdFdHsbt0
勝ち負けどころちゃうやろ、Rails以外にもう使い途なんてあらへん状態や
225166 (ワッチョイ ff2c-Im2K)
垢版 |
2019/03/05(火) 11:07:33.23ID:CZi591h70
>>167
自己レス。自分で作った

# ファイルの最終行が、改行コードで終わっているかどうかを判別する
# CRLF, LF ( \r\n, \n )

last_line = nil

File.foreach( "a.txt" ){ |line| last_line = line }

p last_line.end_with?( "\n" ) # 末尾が、\n か?
226デフォルトの名無しさん (ワッチョイ 7f7c-vuRV)
垢版 |
2019/03/05(火) 11:24:52.77ID:HwCl8Q1J0
ひろゆきもpythonに浮気か
2019/03/05(火) 11:41:00.66ID:DIrFqE8lM
漢字Talkでは失敗するなw
228デフォルトの名無しさん (ワッチョイ d77d-HTI0)
垢版 |
2019/03/05(火) 16:52:31.95ID:eRmNxjQF0
>>225
ファイル全部を読まなくても size-1 で seek すれば十分だよ。
2019/03/05(火) 23:56:13.17ID:CZi591h70
seek できるのは、バイナリファイルだけだろ。
改行コードを判定できるかね?

最後の1バイトを取って、文字コードに変換できるのかな?
バイナリから、文字コードへの変換
2019/03/06(水) 00:17:19.60ID:WeP2IlHt0
Gem.ruby_version >= Gem::Version.create("2.5")
でRuby2.5以上であることを判定しとけばいいじゃない
2019/03/06(水) 01:09:00.71ID:sa1I2u5H0
>>229
ri File.seek
232166 (ワッチョイ 162c-1cTK)
垢版 |
2019/03/07(木) 21:29:51.98ID:8RwKmlXy0
テキストファイルを、バイナリファイルとして読み込んで、
最後のバイトが、CR かLF なら、最後に改行コードが無いと考えてみたが、

sjis でお馴染みの「表」などのダメ文字のバグが多い事を考えると、
バイナリファイルでは、複数バイトの文字を判別できない

ダメ文字とは、euc-jp では、複数バイト文字の最後のバイトに、\(逆スラッシュ)が存在しないが、
sjisには存在するため、行の最後に「表」などがあると、
その最後のバイト\ で、改行がエスケープされてしまう

文字の種類が増えていくと、これと同じ問題が生じるかも知れない。
複数バイト文字の最後のバイトに、CR かLF が存在するかも知れないから、改行と区別できない
2019/03/07(木) 21:32:17.66ID:8RwKmlXy0
>232
修正

>テキストファイルを、バイナリファイルとして読み込んで、
>最後のバイトが、CR かLF なら、最後に改行コードが無いと考えてみたが、

テキストファイルを、バイナリファイルとして読み込んで、
最後のバイトが、CR かLF なら、最後に改行コードがあると考えてみたが、
2019/03/08(金) 00:25:29.01ID:N66/0TP00
>>185
# 大文字小文字だけが異なる、ファイル名を見つける
filenames = <<"EOT".lines # ファイル名の配列
aB.txt
Ab.txt
xx
cd
CD
EOT

results = { }
filenames.each do |filename|
filename.chomp! # 改行を削除
fn_down = filename.downcase # 小文字に変換

if results.has_key? fn_down
results[ fn_down ].push filename
else
results[ fn_down ] = [ filename ]
end
end

return if results.empty? # 空

# 重複しないファイル名を削除する
results.reject! { |k, v| v.length == 1 }

results.each_value { |v| puts v.join( " : " ) }

結果
aB.txt : Ab.txt
cd : CD
2019/03/08(金) 00:49:28.36ID:OXqbGHm40
>>232
ムダにややこしく考えすぎ。
だいたい、コントロール文字が複数バイト文字の一部に含まれるエンコーディングはかつて存在しなかったし、今さら将来に発明されることもない。
2019/03/08(金) 01:06:02.77ID:Sy1GZuWW0
>>232
いつも他スレで暴れてるrubyボット君か。
毎度毎度、仕入れた知識の表層をなぞるだけで知ってるつもりになってるから、具体的な問題点が理解できてないし、考えようともしない。だからいつも的はずれなことを言っては他の人に突っ込まれる。
237166 (ワッチョイ 162c-1cTK)
垢版 |
2019/03/08(金) 12:09:07.38ID:N66/0TP00
sjisには悪名高い「表」などのダメ文字が存在する。
複数バイト文字の最後のバイトに、\(逆スラッシュ)が存在する。
euc-jp では存在しないけど

ダメ文字で、バグらされた人は多い

特に外人は、1文字1バイトでコーディングするから、バグる!
2019/03/08(金) 12:24:05.67ID:jbQifWXg0
今はUTF-8を使うので、sjisはもう過去の問題。
WindowsもUnicodeに完全対応している
2019/03/08(金) 14:40:40.07ID:N66/0TP00
https://rubygems.org/gems/lazy_priority_queue/versions/0.1.1

Windows10 で、MSYS2 コンパイラー無しの状況で、上の順位キューを、
gem 'lazy_priority_queue', '~> 0.1.1'
で入れようとしていますが、

この、SHA 256 checksum は、gem で入れたモジュールに対して、どうやって確かめるの?

e5d4ea8d037e8743afc91019fc23f5f6858372fea73e05e8244f8964f0634337
2019/03/08(金) 15:10:01.94ID:GpWg6Xx2M
>>239
チェックはgemが勝手に行っているから貴方のような馬鹿がいちいち気にする必要はない
2019/03/08(金) 15:26:21.92ID:N66/0TP00
ダウンロードじゃなくて、gem で入れた場合は、

checksum を確かめる必要は無かったかな?
2019/03/08(金) 19:11:03.24ID:OXqbGHm40
>>237
コントロール文字に関係ないやろ。
2019/03/09(土) 08:50:15.35ID:Qv+6Y9Yd0
>>237
File.open( "foo.txt", "w:CP932" ){|fh| fh.puts("ソ") }
File.open( "bar.txt", "w:CP932" ){|fh| fh.print("ソ") }
File.open( "car.txt", "w:UTF-8" ){|fh| fh.print("\u4E0A") }
File.open( "foo.txt", "r:CP932" ){|fh| fh.seek(fh.size-1); puts fh.read(1).start_with?("\r","\n") }
File.open( "bar.txt", "r:CP932" ){|fh| fh.seek(fh.size-1); puts fh.read(1).start_with?("\r","\n") }
File.open( "car.txt", "r:UTF-8" ){|fh| fh.seek(fh.size-1); puts fh.read(1).start_with?("\r","\n") }
UTF-16やUTF-32等のファイルがあるなら対策すること。
2019/03/09(土) 09:11:16.66ID:P/rUKkBa0
バカは古いバージョン使ってるからバグる
245166 (ワッチョイ 162c-1cTK)
垢版 |
2019/03/09(土) 11:14:06.24ID:GVs3bbIF0
>>243
テキストファイルとして読み込んだファイルに、
seek のようなバイナリ(1バイトずつの)処理を使うと、
複数バイトの文字が存在するから、バグらない?

複数バイトの文字があると、文字数とバイト数が異なるから
2019/03/09(土) 12:10:02.52ID:pTdmUQIN0
>>245
お前もう諦めろ
2019/03/09(土) 13:55:35.31ID:P/rUKkBa0
>>243

fh.seek(-1, IO::SEEK_END)
の方がよさげ
2019/03/10(日) 00:40:01.29ID:2U7BqM9T0
macでHomebrewを使用して、最新版2.6.1をインストールしましたが、
ターミナルでバージョンを確認すると古いもの(2.3.7)が表示される。

この場合考えられる要因は何でしょうか?
2019/03/10(日) 02:00:15.91ID:waZbF5z90
マッキンは知らんけど、どうせPATHやろ?
whichとかruby -Vとかで、インストールされたパスと実際に実行されるパスを確認したら?
250デフォルトの名無しさん (ワッチョイ 162c-1cTK)
垢版 |
2019/03/10(日) 19:48:05.79ID:bEzyp4mc0
Mac は知らないけど、元からRuby が入っているから、仮想環境のanyenv を使うとか?
元のバージョンも消せないでしょ?

rbenv(Ruby), pyenv(Python), ndenv(Node.js)

こういう事も知らない素人が、2.6 などの最新版を使ったら、ダメでしょ。
1年過ぎたバージョンを使え!

漏れは、Windows10 だけど、まだ、2.4.4 を使ってる
2019/03/10(日) 20:19:51.46ID:JyECxoS9M
Win以外なら最新版でほとんど問題ないんだよおバカさん
2019/03/10(日) 22:42:52.26ID:6nzJw0Ap0
>>251
お前のレベルは低すぎるなw
Rubyを使うのが目的で、Rubyで何かを作った経験がないだろ
2019/03/10(日) 23:07:47.98ID:bEzyp4mc0
>>243
結果は、true, false, false になったけど、どういう事?
2019/03/10(日) 23:57:03.24ID:bEzyp4mc0
>>234
修正

String#lines の所を見たら、chomp: true で改行も削除できる。
こりゃ便利!

p ary = <<"EOT".lines( chomp: true ) # 配列
a
b
EOT

#=> ["a", "b"]
255デフォルトの名無しさん (ワッチョイ 837f-/bUt)
垢版 |
2019/03/11(月) 01:01:19.82ID:5t+/rFdi0
なぁなぁ。
CSRF対策って、トークンを input hidden に書けってのが鉄板だけど。
あれってform action のURLに書いてもセキュア度って変わらないことないか?
URLなら href にも書ける(使い道は考えてない)
2019/03/11(月) 01:33:23.12ID:W406Vhex0
>>255
だめ

CSRFっていうのは、悪意のあるやつからリンクが送られてきて
それを開いてしまうことで成り立つもの

リンクの中にトークンを入れてしまったら意味がない
トークンがリンクの中に入らないからこそ意味がある
2019/03/11(月) 01:43:29.79ID:5t+/rFdi0
>>2256
そんなん。
悪意のある奴から送られてくるリンクにあるトークンと
対象者の持ってるセッションに紐付けられるトークンは
全然違うやん。

悪意サイトに埋め込むフォームの場合も結局は
action と hidden を書くわけじゃん?
要するに hidden に書くべきトークンが予想できないからCSRF対策になる訳でしょ。
これが action に書いてあってもなんら変わらないじゃん?

↑以上、予想が非常に困難なトークンを前提。もちろんそれが当たり前だし。
258デフォルトの名無しさん (オッペケ Src7-EzoF)
垢版 |
2019/03/11(月) 09:43:03.52ID:EA8HXttJr
>>257
全世界が認めている方法よりお前が考え出した方法のほうが優れていると思えるところがすげえな
お前と仕事する奴がかわいそう
2019/03/11(月) 15:12:15.45ID:5t+/rFdi0
>お前が考え出した方法のほうが優れている

どこをどう読んだらそう解釈できんの?実際使うとか、勝手に妄想するなよ……。
そもそも全世界が認めている方法であれば理由は明確なんだよな?
その割に鉄板扱いの呪文レベルで、理由が書いてある記事がないのは一体どういう理由なんだろうか?

そもそも get ではなく post にするのは感覚的にも、暗黙の了解的にも、
当たり前だがCSRF対策で postにせよと書いてあるもの自体が少ない。
セキュリティ初心者向けならなおさらなんだが。
get にしてしまえば URL に乗るし、input である理由が薄弱なのがイラっとするんだよ。

理由が知りたい。
260デフォルトの名無しさん (アウアウエー Saaa-Bj/M)
垢版 |
2019/03/12(火) 05:35:46.16ID:FSVt1tPQa
Rubyでスキルアップ出来るか?
https://www.youtube.com/watch?v=2wfQ3iG08UI
2019/03/12(火) 21:11:19.87ID:EhRgemxCa
>>259
Ruby以前に、社会人としておかしいな。
2019/03/17(日) 22:43:16.23ID:7ulQuPhQ0
Numbered parametersだって
263デフォルトの名無しさん (ワッチョイ 134e-yW/I)
垢版 |
2019/03/19(火) 23:37:28.37ID:gx/b6f7p0
Ruby ではクラス直下では、self(this)は、クラスを指す。
一方、initialize 内では、new で呼ばれた各インスタンスを指す

class Cat
p self #=> Cat クラス

def initialize( name, weight )
@name = name
@weight = weight
p self #=> 各インスタンス
end
end

bob = Cat.new( "bob", 5 )
alice = Cat.new( "alice", 4 )

出力
Cat
#<Cat: @name="bob", @weight=5>
#<Cat: @name="alice", @weight=4>

オブジェクト指向をわかっていない人には、Python は無理

まず、Rubyでオブジェクト指向・関数型を学んでから、
Python, JavaScript, Kotlin などをやらないと無理
2019/03/20(水) 01:03:37.41ID:RdYQnT9u0
one time token は、URL のクエリ文字列など、見えたらダメ!

form のhidden 内じゃないとダメ
2019/03/20(水) 08:14:18.91ID:ygECSxKva
formのhiddenが見えないとかマジかよ
さすがにその理解はヤバすぎ
266デフォルトの名無しさん (ワッチョイ 6b2d-5HBQ)
垢版 |
2019/03/26(火) 19:14:05.12ID:d0iwa0lD0
Rubyを勉強し始めようか迷っていて、適当にWeb見てたんだけどさあ
一部のページで、「Railsから入った人にとっては驚くかもしれないけど、Ruby単体でもプログラムが書ける」みたいなことが書いてあって驚いちゃったな
これ、Rubyの言語より先にRailsの学習をすることも可能なんか?
2019/03/26(火) 19:18:17.37ID:NbUyZWCMH
誰でも頭が良くなる、プログラムが書けるようになる方法が発見される 96873
https://you-can-program.hatenablog.jp
2019/03/26(火) 19:20:08.89ID:oGfwRodhM
>>266
できる
「Rubyのコード」を書かなくても(知らなくても)Railsはある程度使える
269デフォルトの名無しさん (ワッチョイ 6b2d-5HBQ)
垢版 |
2019/03/26(火) 19:26:11.18ID:d0iwa0lD0
>>268
そうなのか、ありがとう!
面白そうだからRailsからやろうかな
2019/03/26(火) 22:24:08.02ID:gZH84WWp0
Rails は半年掛かるので、普通人は挫折する。
Sinatra から始めるのが良い

社内エンジニアから、Railsエンジニアになった人の動画が、YouTube にもある

Railsの知識が、膨大な理由は、Ruby の文法じゃない

Linux のOS のコマンド・機能、テスト、環境構築運用技術や、
DB、HTML, CSS・SASS, JavaScript, jQuery など、システムのAll Set だから

Railsが、全言語のフレームワークに応用できるのは、大半がRubyの文法とは関係ないから。
ほとんどの内容が、システムの事
2019/03/26(火) 22:55:31.07ID:nYFNe3O+0
でももうRailsははやらんよな。
実際にはわかりやすくもないし。

もちろん用途によるけど、Rubyに興味があるのなら、Rubyからやったほうがええんちゃう?
2019/03/27(水) 03:26:16.91ID:iumvruyG0
この行列の前後に、番兵(0)を置くには、どう書く?

ary = [[1, 2, 3], [4, 5, 6]]

結果
0, 0, 0, 0, 0
0, 1, 2, 3, 0
0, 4, 5, 6, 0
0, 0, 0, 0, 0
273デフォルトの名無しさん (アウアウエー Sac2-yExI)
垢版 |
2019/03/27(水) 06:09:28.25ID:J3LATpLka
import pandas as pd
df = pd.DataFrame([[1, 2, 3], [4, 5, 6]])
df = pd.concat([pd.DataFrame([0]*df.shape[0]),df,pd.DataFrame([0]*df.shape[0])], axis=1)
df.columns = list(range(df.shape[1]))
df = pd.concat([pd.DataFrame([[0]*df.shape[1]]),df,pd.DataFrame([[0]*df.shape[1]])])
df.index = list(range(df.shape[0]))

>>> df
0 1 2 3 4
0 0 0 0 0 0
1 0 1 2 3 0
2 0 4 5 6 0
3 0 0 0 0 0
274デフォルトの名無しさん (ワッチョイ 4ad2-KGYh)
垢版 |
2019/03/27(水) 13:26:23.63ID:mz7eRfCH0
>>272
ary = [[1, 2, 3], [4, 5, 6]]
a=[0]*ary[0].sizeこ
b=([a]+ary+[a]).map{|x|[0]+x+[0]}
p b

[[0, 0, 0, 0, 0], [0, 1, 2, 3, 0], [0, 4, 5, 6, 0], [0, 0, 0, 0, 0]]
275デフォルトの名無しさん (ワッチョイ 4ad2-KGYh)
垢版 |
2019/03/27(水) 13:35:27.03ID:mz7eRfCH0
>>274
すみません。途中に入ったひらがなはゴミです無視してください。
2019/03/27(水) 13:38:32.48ID:kDDFgxGr0
>>272
番兵なんて使わないと言っておく
あんなの必要なに、古い言語だけや(笑)
2019/03/27(水) 18:23:38.55ID:ie5q9CuxM
番兵て。w
マトリクスに余白があれば、処理が簡単になるアルゴリズムは存在するやろ。

パッとは出てこないけど、ホントにいろいろ。
2019/03/27(水) 23:32:37.93ID:iumvruyG0
番兵を使わないと、1〜6 (1:start, 6:end)の道順をたどる際、面倒だろ?

例えば、1 から次を探すのに、上下左右を判断して、
上・左にはマスが無いから、番兵で壁を作った方が、プログラミングしやすい
2019/03/27(水) 23:40:47.09ID:Dp9Jy9i30
素直じゃない
280デフォルトの名無しさん (ワッチョイ 0f2c-injD)
垢版 |
2019/04/02(火) 21:21:41.64ID:3dIjgbOm0
たのしいRuby 第6版、2019/3/19

Ruby 2.6 対応の新版が出た!
2019/04/07(日) 22:27:45.26ID:AQpaCo65a
番兵が出てくるのはカプセル化が下手糞な証拠
2019/04/07(日) 22:39:35.97ID:5zmVKMWF0
番兵は、カプセル化には何の関係もない。
効率的な実装に役立つものだから。
2019/04/08(月) 02:08:42.22ID:UNm+DOhC0
nilとfalseが別だったりするし
Rubyの場合は番兵いらんと思うぞ
2019/04/08(月) 19:44:29.48ID:xeXNozVz0
そら、番兵がいらんようなコードしか書いてないだけや。
285デフォルトの名無しさん (ワッチョイ 02d2-GBaV)
垢版 |
2019/04/08(月) 19:53:09.21ID:Axd3G2xU0
番兵の話はお題スレからきていてると思うのだけど
番兵が有用と言う人と無用と言う人で
元のお題をやってみたら?
2019/04/09(火) 00:49:34.31ID:BWeYJxgy0
番兵が無ければ、

上下 : 上下に行があるか?
左右 : 左右に列があるか?

を判定しないといけないから、わかりにくい
287デフォルトの名無しさん (アメ MM8d-3NqX)
垢版 |
2019/04/09(火) 01:32:18.70ID:03qzHG/tM
範囲外アクセスをどう扱うかの方法論でしかないのでは?
lengthすらない昔のC辺りのやり方。
色々整備されてる現代言語でやる奴はアホ。
アホというか、だったらCやってりゃいいじゃん。
楽に書くために高級な機能があるのに番兵のほうが分かりやすい?w
高級機能のために速度犠牲にしてる言語で高級機能使わないとかww
288デフォルトの名無しさん (アメ MM8d-3NqX)
垢版 |
2019/04/09(火) 01:35:04.47ID:03qzHG/tM
eachよりforのほうが分かりやすい
mapよりforのほうが分かりやすい
reduceよりforのほうが分かりやすい
CでいいじゃんCやってなよ
2019/04/09(火) 02:17:33.75ID:3lXFFzae0
範囲内かどうかをいちいち判定して、わざわざ分岐したいんか。
まったく、物好きやな。w

んなことをせんでも、番兵や余白を利用したら、わかりやすさや効率化を果たせることもあるんやで。
2019/04/09(火) 02:56:23.16ID:Lun3H7EC0
こんなのあったな

10 ON STICK(0) GOTO 40,60,30,60,50,60,20,60
20 X=X+(X>0):GOTO 60
30 X=X-(X<3):GOTO 60
40 Y=Y+(Y>0):GOTO 60
50 Y=Y-(Y<2):GOTO 60
60 RETURN
2019/04/09(火) 03:40:14.16ID:Lun3H7EC0
範囲が1つ多かったな
あと押さない場合0だったような
292デフォルトの名無しさん (ワッチョイ 012d-gjr1)
垢版 |
2019/04/09(火) 17:27:08.92ID:a64vJmyf0
Ruby Motionって契約してる人います?
これって今から使い始めても継続的に保守され続けるような雰囲気してますか?
2019/04/09(火) 18:42:29.12ID:GpL36fRzM
IDEが欲しいならRubyMineかVSCodeにしとけ
さすがにRubyMotionなんかもう完全に終わってる
2019/04/09(火) 19:38:46.13ID:gArhDSWi0
>>289
Rubyの配列(Array)は添字による読み出しの際に範囲外だとnilを返す
逆に言えばnil以外で初期化することでnilを番兵代わりに使える
まぁ、負の添字に対するカバーは必要だが
2019/04/09(火) 20:45:47.01ID:W6lz3wMr0
番兵の勝ち
296デフォルトの名無しさん (アメ MM8d-3NqX)
垢版 |
2019/04/09(火) 20:57:02.17ID:QoVolURMM
じゃあCでいいな。
遅いくせにCでやってたのと同じ方法でしか解決できないクソ言語。
2019/04/09(火) 23:02:02.22ID:AKuUbIoh0
何言ってんだこいつ
298デフォルトの名無しさん (ワッチョイ 012d-gjr1)
垢版 |
2019/04/10(水) 07:32:34.80ID:2VCYuCv80
>>293
広く捉えればIDEなのかも知れませんが、iOS/Android等の開発ができるのが売りなので他ではなかなか代替が効かないと思うんです
http://www.rubymotion.com/jp/
これもう廃れてるんですかね・・・・・
2019/04/10(水) 07:36:54.35ID:lSfLGzBw0
Rubyすら死にかけているというのに
いわんやRubyMotionをや
2019/04/10(水) 07:53:22.57ID:bZQdtc4sa
Rubyでスマホアプリとかそれこそ論外
プロのバリバリのRubyエンジニアですら誰も使ってないわそんなもん
2019/04/10(水) 19:42:08.61ID:2VCYuCv80
>>299-300
やはり止めておいたほうが良さそうですか
以前、将棋のロジックをRubyで書いてしまったので、これをiOS/Androidに使い回せたら良いなと思ったのですが・・・・
2019/04/10(水) 19:53:43.11ID:Uk872prY0
そんなん移植すればよかろうよ
書いた総時間の10分の1くらいでできるはずだ
プログラミングに慣れているというのはそういうことでもある
2019/04/11(木) 00:11:15.02ID:rbVbMGbi0
Rubyで書いたのかもったいない
絵に描いたような技術的負債だな
サンクコストと割り切って早めの移植をお薦めする
2019/04/11(木) 00:27:57.58ID:6OTuCZjY0
プロトタイプとして作るならRubyでも全然アリだと思うけどな
技術的負債と言い切る方がむしろおかしい感じがする
2019/04/11(木) 00:28:18.22ID:SMdbPkuM0
Haxe が、Ruby・Elixir も、JavaScript(JS) に変換してくれればなあ

パズル本でも、解答はRuby で書いてある。
これが、JS なら、可読性が悪くなるから

まあ、ES2015(ES6)で書いて、Babel で、ES5 に変換するぐらいかな?
2019/04/11(木) 01:05:21.02ID:rbVbMGbi0
>>304
ロジックをRubyで書いてしまったからアプリもRubyで…
と言った具合に間違いを積み重ねることになった元凶を
技術的負債と言わずに何と言うの?
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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