インデント揃ってればそのままend無くしても読めるし誰かそういうの作ってくれよ
インデントを強制するとコードがきれいになると言ってる人がいたら
そいつは素人だと思ったほうが良い
インデントがおかしいのはコードが綺麗かどうか以前の問題。
汚いコードというのは、インデントが正しくてかつ汚いコードだから
インデント程度を正しくした所で、汚いコードが綺麗になるわけがない。
確かにこういうの見るとイラッとする
end
end
end
end
end
end
ruby並みのオブジェクト指向とpythonのインデントのブロック兼ね備えた言語あればいいのにと思う
インデント上がればend補完するように最初にテキストを変換すればできるんじゃね?
python の欠点の一つはブロックの終わりをエディターが
助けてくれない点だ。} があればエディタもそこで終わるのね
とわかって次の行は適切にインデントしてくれるのだが
>>9
どういう意味?オートインデントするんでしょ? ブロックを終わらせてインデントを上げたい時にめんどいって意味じゃね
Pythonでウザイ点
1. コードを書く
2. あれ?なんかバグで動かない
3. ちょっと一時的にデバッグプリントいれてみよう
4. ちょっと条件文コメントアウトしてみよう
そういった場合にそこいらのブロックを全部
辻褄が合うようにインデントしなきゃいかん所だ
特にデバッグプリントなんか、あとで消すから
わざと目立つようにインデント壊していれるのに
コメントアウトしてフォーマットしたらどうなるのよ?
まぁでもなにはともあれ人によってコードがバラつかない&スッキリして見えるっていうメリットがデカ過ぎてそれ以外のデメリットなんて些細なことになるけどな
>>14
1. コードを書く
2. あれ?なんかバグで動かない
3. ちょっと一時的にデバッグプリントいれてみよう
4. ちょっと条件文コメントアウトしてみよう
5. くっそインデントが壊れて正しく動かない!
インデント直さなきゃ!
6. よしバグが判明したぞ!また戻さなきゃ! >>15
> まぁでもなにはともあれ人によってコードがバラつかない&スッキリして見えるっていうメリットがデカ過ぎて
インデント揃える程度でコードがばらつかないなんてことありえない
それともPythonという言語の矯正がなければ、インデントが
めちゃくちゃになるような人がコードかいてんのか? マジックコメントでこういう事できるならそういう選択肢があってもいいんじゃね?
俺も擬似コード書くときはrubyのendなしバージョンみたいなことしてるわ
すまん、上の書き込みはコードの矯正云々の意図は全くない
>>16
ちなみにRubyからendだけなくした言語でこの副作用出る? フォーマッターが使えないって欠点があるんだよな。
Rubyなど、インデントが崩れていてもブロックの終わりが
わかる言語ではインデントを自動的に直すことが可能だが
Pythonだとそれが不可能
自力でインデントしなくちゃいけない
>>22
そんなバラバラなものがPythonで矯正ができる?
「Pythonで矯正できる程度」しか揃わんだろうがw
あんたがいるのは初心者の世界なのかもしれんが、
「綺麗なフォームが身につきます」がプロの世界で
大きなメリットになるとでも思ってるの? 実績も証拠も無しにプロの世界ハーするのは他板とツイカス底辺だけにしてくれ
二週間も要してそのような感情的な反論しか用意できなかったとは…
あわれだな
昨日初見の完全部外者だから詳しいことは分からんよ…
それより学生プログラマっぽい主張並べてないで具体的な事例や実績を聞かせてもらえると嬉しいな
> 特にデバッグプリントなんか、あとで消すから
> わざと目立つようにインデント壊していれるのに
アホか デバッグプリントで馬鹿正直にprint直書きする奴があるか
アホと脳死はマジで有害だから死んでくれ
>>27
確かにそうですね。
では自動フォーマッタが出来ない弊害やデバッグプリント方法の是非に関してもっと詳細に反論して頂いてもよろしいですか? このスレタイに"に'end'"が要らない
=> Rubyって要らないよな
ここまでの流れをマトメると:
(1)インデント程度を正しくしたところで、汚いコードは綺麗にはならない(>>3)
(2)言語による矯正がなければインデントがめちゃくちゃになるレベルの人には有益(>>17)
(3)(1)および(2)に対し、インデント矯正のメリットに関しては学生プログラマっぽい
主張ばかりが並べられ、プロらしい具体的な事例や実績は何一つ示されずにいる(>>26)
こんなところか
画像>6枚 ' border=no /> せめて } にしとけば良かったのにと思ったけど
あえて end にした理由をRubyの神様が説明してた気もするんだよなあ
どんな理由だったっけ
欧米の開発者に完全に見切られた以上
潔いendこそRubyに必要なのでは
Ruby は、アマゾン・Google, Heroku で、採用されてる!
Ruby on Rails 6 (Ruby 2.5 以上)では、GitHub 中心で、
複数データベース(レプリカ)接続の大規模サービスと、
テストの並列実行など、別次元へ行ってしまった!
モジュールバンドラーも、Webpack になりました!
Coffee Script は、無くなった
メール送受信の機能と、
ブラウザの入力フォームが、ドラッグ&ドロップで、ファイルも受け付けるようになった
GitHubのRails離れと、迫りくるMicrosoft
https://yakst.com/ja/posts/5290
> プラットフォーム改造で変わる「Ruby専門店」。今後はGo、Java、Kubernetesへ。
> 昨年始まったアーキテクチャレベルの改革も現在は三分の一ほど進んでいる。
同社はRuby on Railsから離れ、もっと異種混合で使い捨てのきくインフラへとシフトしていっている。
GitHubを「Ruby専門店」と称する同氏によると、GitHubにRubyの居場所はまだあるが、GoやJava、さらにはHaskellの方が多くデプロイされているそうだ。 日本では使われてるんだから海外の持ち出してもしょうがないだろ
Rails の作者、DHH(David Heinemeier Hansson)率いる、Basecamp 社から、
Eileen Uchitelle が、GitHub へ移籍した
そのEileenが、大規模サービス用の、
複数データベース(リードレプリカ)接続を作った
> Eileen Uchitelle が、GitHub へ移籍した
ちゃんとMicrosoft社って書こうよ
Microsoft は、GitHub の一株主って言うだけだろ
>>1
end はとても重要です。
空白だけだと人間にはブロックの位置がとても判読しにくいため、
end や } と空白によるインデントが全部合ってこそ、間違いが防げる
のです。
Pythonのように空白だけで命令文の入っているブロックの位置を識別する設計だと、
命令文を書く位置を間違い、原因不明の不具合に悩まされることに成る確率
が高くなります。正確に書こうと思うと、書くべき位置の割り出しに時間が
かかり、間違っていた場合に原因を見つけ出すのにとても時間がかかります、 >>1
end はとても重要です。
メモ帳で書いてみなさい。
空白だけだと人間にはブロックの位置がとても判読しにくい python はインデントを義務付けるなら
{} も義務付けてほしかったな
その方が可読性が高くなるし
エディタも助けやすくなる
if の終わりは fi みたいな
遊び心を持ってほしかった
「各所からツッコミ!」
→ 日本のみに生息するRubyキチガイどもが難癖つけてるだけでしたwww
そりゃ、Ruby は、アマゾン、Google, Heroku でも採用されているから!
Node.js も、Ruby実装系のコピーだし、
npm, yarn も、Bundler のコピー
元々、Vagrant, Chef, Homebrew, SASS も、Github, twitter, cookpad も、Ruby製
ここ10年、時価総額が大きくなった企業は、皆、Rubyで小さく始めてる。
大きくなったら、Go などへ変える
ビジネスチャンスでは、他の言語よりも、数年速い。
今世紀最大の起業家、vagrant の作者、Mitchell Hashimoto(hashicorp)は、Go へ行ったけどw
仮に、Python で先に実装されても、JavaScript の開発者がPython からコピーしないw
可読性が高い、Rubyで実装されるのを待って、Rubyからコピーするw
机上討論では模擬コードとして、可読性が高い、Rubyが使われる
Pythonには、カッコ・end が無いから、インデント幅だけで決まるから、対応関係がわからない
普通に関数の粒度を間違ってるバカがインデント批判してるだけだろ。
>>58
おそらく「ぼくはRubyしかよめない」ということかと。 GitHubのRails離れと、迫りくるMicrosoft
https://yakst.com/ja/posts/5290
> プラットフォーム改造で変わる「Ruby専門店」。今後はGo、Java、Kubernetesへ。
> 昨年始まったアーキテクチャレベルの改革も現在は三分の一ほど進んでいる。
同社はRuby on Railsから離れ、もっと異種混合で使い捨てのきくインフラへとシフトしていっている。
GitHubを「Ruby専門店」と称する同氏によると、GitHubにRubyの居場所はまだあるが、GoやJava、さらにはHaskellの方が多くデプロイされているそうだ。 >>60
わいはjs4年の実の娘と一緒にお風呂に入って対面座位で抱きしめ合ってベロちゅう唾飲みせっくすしてる。つるぺたとつるまんが気持ち良すぎて抜かずで連続3回中出しした。
禁断を犯した事実が興奮をさらに煽りもう近親相姦は当分やめられない。妻にはもちろん内緒。娘がいて本当に良かった。 >>1
お望みのものなら、既にRing-langがあるんだけど、何か?
まぁ、開発者が燃え尽き症候群と長期休暇で 1.11のリリースが延期に、翻訳者が言語仕様にキレて翻訳が放置されたままなのが難点ではあるが。