インデントを強制しても綺麗なコードにはなりません

■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
垢版 |
2012/08/04(土) 18:01:47.19
Python等インデント強要する言語に対して。

まず、インデントは簡単です。
誰にでもできることです。

できない人もいるという反論があるでしょうが、

それができない人は、プログラミング全般出来ません。
プログラミングがある程度出来るようになったら、
インデントぐらいできるようになってます。

だから、言語仕様としてインデントを強制する理由は存在しません。
プログラマの自由を奪うだけの意味が無い行為です。
2012/08/06(月) 19:37:32.08
ブロックがbegin〜endの言語よりはマシだな
2012/08/06(月) 20:15:30.13
いや、そっちのがマシ
2012/08/06(月) 22:45:09.23
end end end
2012/08/07(火) 09:18:08.64
使ってれば分かるけど
{ } うつよりも
do end タイプするほうが速い
2012/08/07(火) 09:53:50.46
>>26
不器用なんだね。

ワンライナー書いてるとスペース不要な括弧のが便利。
2012/08/07(火) 13:08:40.67
shift押すのめんどくさいんだよな
2012/08/07(火) 14:07:49.98
>>28
マウスでお絵描きしてな。
2012/08/07(火) 14:14:07.83
小指の無い人かも
2012/08/07(火) 14:29:09.14
まぁrubyはどっちでもかけるんだし
好きなほう使えばとしか
2012/08/08(水) 00:04:02.55
入力補完動くし。
2012/08/08(水) 08:47:06.66
Pythonってネストが深くなるかどうかより
ソースが1個か2個でもネストしたまま長くなると
それだけで読みづらいと思うんだけど
2012/08/08(水) 16:31:39.91
初心者向きではない
2012/08/08(水) 17:13:46.81
なでしこ
全角半角スペースTAB問わずインデント可能で混乱を招きやすいあたり実は中級者向け
2012/08/08(水) 17:47:46.37
スペース書いてしまったMakefileを思い出す。
2012/08/08(水) 20:44:10.39
コンパイラがチェックしてくれるなら意味はある
コーディング規則みたいな中途半端な強制が一番うざい
38uy
垢版 |
2012/08/09(木) 08:09:32.94
インデントの強制って
"アルゴリズム" とは無関係のことに対して気をつけなければならないってこと
完成し終わったソースは、字数が少なく綺麗でも
それは関数型と似ていて、途中思考をしていくのは苦手な言語

Pythonでゼロからアルゴリズムを思考してかいて、複雑なものを作ろうとしたら
インデントに気をつけながらIFやFORをコメントアウトしながら
デバッグしていく効率の悪いバカですよ
2012/08/09(木) 12:49:48.19
endの代わりにpassやreturnをつければいい
40uy
垢版 |
2012/08/10(金) 09:17:05.92
endは邪魔
41uy
垢版 |
2012/08/10(金) 09:18:37.04
訂正 end は { } よりはマシであるが、邪魔

でもなくなると読みづらい
ではどうすればよいかというと
結局ソースコードを書く時間を減らせばいい
思考をまとめてから開始し、エディタ、pcと向かい合う時間を最低限にする事が
一番ストレスたまらない
2012/08/11(土) 14:16:35.72
begin〜endを{}と比較するとか池沼レベルの発想
どっちでも大差ないしむしろタイプ数が増える分begin〜endの方が英単語書きたい系中二病の疑いが高い
43uy
垢版 |
2012/08/12(日) 13:32:19.11
> begin〜endを{}と比較するとか池沼レベルの発想
>どっちでも大差ないし

えっ えっ_
2012/08/12(日) 16:24:03.07
IDEが勝手にインデント付けするならアリだけど
インデントしてないと実行時エラーはやりすぎだと思う。
Pythonは知らんけど。
45デフォルトの名無しさん
垢版 |
2012/08/12(日) 16:49:55.72
何の言語それ
46デフォルトの名無しさん
垢版 |
2012/08/12(日) 17:05:17.22
日本人は、戦争に負けた。
でも何時から奴隷になった?
あなた達は今目覚めないと、二度とその目は開かない。
歴史というのはいつも編集されている。平清盛がとても優しい人だった。
『江談抄』で平安を生きた公家が鎌倉期にそれを階述してる。でも『平家物語』では悪役にされるんだよ。
http://www.youtube.com/watch?v=7QQzmAQ7wEc&feature=related
2012/08/12(日) 18:16:06.38
どこの誤爆それ
2012/08/13(月) 17:39:19.37
勝手にIDEでインデントうんぬんは変だと思うけど…
書きたいコードと違うものが出来上がる場合だってあるし

明確にそれしか解釈しようがないなら自動でいいけどな
2012/08/13(月) 17:42:26.68
と思ったけどそれも変だな…

制御構造を大幅に変更する途中で勝手にインデントを書き換えられても困るな
50デフォルトの名無しさん
垢版 |
2012/08/13(月) 20:37:24.79
Pythonは使える奴を選ぶ言語
誰でもは使えない
51デフォルトの名無しさん
垢版 |
2012/08/13(月) 21:17:17.43
Wordの文章のインデントを揃えられれば既に立派なSEです
2012/08/13(月) 21:21:18.33
ごめん俺SEじゃなかったみたいだ
2012/08/13(月) 21:22:51.39
Wordはテンプレートを作るのが楽しいよねw
2012/08/14(火) 08:40:40.26
10代20代テレビ離れ 30%減少 インターネットの方が面白い 総務省
http://engawa.2ch.net/test/read.cgi/poverty/1344886835/


Twitter Facebook YouTube mixi ニコニコ動画

総務省が発表した「情報通信白書」には、
世代別の「テレビを見る」時間を過去と比較したデータがある。
若い世代のテレビ離れは一目瞭然。
10代では、2005年に1日平均106分だった視聴時間が、2010年には70分と、
わずか5年で3割以上も減少している。
同様に20代では、2005年に104分だったのが2010年には76分に激減。

10代 106分 → 70分
20代 104分 → 76分

http://zasshi.news.yahoo.co.jp/article?a=20111104-00000005-pseven-pol

テレビよりインターネット

メディア環境研究所は2010年6月23日、毎年2月に実施している
「メディア定点調査」の最新版「メディア定点調査・2010」の抜粋編を発表した。
「20代男性はテレビ以上にパソコンでネットに接続している」
「男性は10代から30代でテレビよりも、パソコンと携帯電話を合わせた
インターネットへの接続時間が長い」

グラフ
http://www.garbagenews.com/img10/gn-20100624-17l.gif
http://www.garbagenews.net/archives/1443170.html
2012/08/14(火) 20:59:19.46
そりゃ、インターネットは24時間接続しっぱなしだものw
2012/08/16(木) 10:47:22.02
インデントを揃えるのは
衛生面の教育が高度に普及している日本人にぴったり
57uY
垢版 |
2012/08/17(金) 03:58:34.79
ちょっとPython実際にやってみてわかったけど
やりにくいよこれ
使える奴を選ぶ言語だ

プログラム言語は所詮道具、手段みたいな奴には良いかもしれないけど
一行に詰め込めない自由度の低さが半端ない
そしてrubyになれてると括弧が鬱陶しい
2012/08/17(金) 08:23:50.51
>>57
> 使える奴を選ぶ言語だ

同意。
お前は二度と来るな。
2012/08/17(金) 10:12:27.08
今日も俺はrubyで発狂コードを書きまくってたけど
Pythonでも方法はあるんだろうけどさぁ

Pythonに乗り換えるとしたら
Pythonのありとあらゆる機能を調べないと
いま自分がrubyで書いてるコードは絶対Pythonに移植とか出来ない
class,if,for イテレータとか、その程度だけじゃどうにもならない
1言語を極めるって凄い重要だなと思った
60uY ◆4g.xmLCL/2
垢版 |
2012/08/18(土) 15:05:18.66
てs
2012/08/18(土) 16:20:47.00
     ___
   /|    |
   ||. |∧_∧|
   ||. (´・ω・| うわっ、クソスレに来てしまった。
   ||oと.  U|
   || |(__)J|
   ||/ ̄ ̄
     ___
    |     |
    |     |
    |   o|
    |     |
    |     |
    彡 ̄ ̄ パタン、
62デフォルトの名無しさん
垢版 |
2012/08/18(土) 21:22:57.36
63デフォルトの名無しさん
垢版 |
2012/08/19(日) 01:52:32.31
rubyさいきょう
2012/08/20(月) 02:51:15.61
Python結構いいと思えてきた
紙グラミングするときにはendなんて書かないし
Pythonは、タイプ数こそは少ないけど
みててつまらない言語である
しかしオブジェクトの操作は多分rubyのほうが数段優秀だ
けどその優秀さは、実は多くのプログラミングでは必要としない優秀さであって
ハッカーが趣味でキチガイみたいなコードを書く為の楽しみとして使われる機能だと思う
rubyにある変な機能は、使いまくっていったら可読性のかけらもないが
自分にしか読めなくてもいいから、とりあえず考え付く限りの最高のコードを書く為だけにあるような気がする
Pythonは、当たり前のことを普通にやっていく言語
あくまで言語は道具であり手段って奴には向いているのかもしれない

rubyのendは冗長だよ、でもそこは冗長でいい事もある、そのendがPythonと違って可読性の助けになるから
所詮プログラミング言語は、存在自体が冗長で、なんらかの目的に特化するために
言語上で言語を作る事が一番良い結論付いた
つまり、プログラミング言語を作りやすいプログラミング言語が最強 ruby最強
2012/08/20(月) 15:07:39.64
お前らどんなソフト作ってるの?
もしかして、2ちゃんねるで語ってるだけじゃなかろうな?
66uY
垢版 |
2012/08/20(月) 15:27:32.34
>>65
初心者死ね
67uY
垢版 |
2012/08/20(月) 15:29:19.77
プログラミングすら出来ない初心者死ね

プログラミングすら出来ないPC初心者死ね

プログラミングすら出来ない人生初心者死ね

プログラミングすら出来ない人間死ね

プログラミングすら出来ない生き物死ね
2012/08/21(火) 22:46:12.46
少子化どころかゼロ赤子時代がくるな…
2012/08/22(水) 12:41:43.42
70デフォルトの名無しさん
垢版 |
2012/08/23(木) 00:25:49.98
>>64
言語つくるならぱいぱいが楽チンでいいよ
ぼくがかんがえたさいきょうのrubyも簡単に作れる
2012/08/23(木) 01:30:20.35
同じ動作をするコードは誰が書いても同じコードになる。
(勿論、複雑になるとそう簡単には行かないが)
Pythonはその思想に基づいてるはず。

rubyは逆。同じ動作でも好きに書けた方が良い、という思想。


前者は大規模開発におけるコードの均質化に貢献する。
後者はごく少人数の少数精鋭の開発、趣味的コーディングの心地よさに貢献する。

言語の差があるから一長一短。
インデントを強制しても綺麗にならないとしても
綺麗なコードはインデントしているのは確かな事実。
72uY
垢版 |
2012/08/23(木) 01:48:00.99
>>70
じゃあ作ってみて 何日で作れる?

逃げんなよ
2012/08/23(木) 02:25:53.49
>>71
> 同じ動作をするコードは誰が書いても同じコードになる。

ありえない。もしそうなら著作権が発生しないことになる。

> インデントを強制しても綺麗にならないとしても
> 綺麗なコードはインデントしているのは確かな事実。

もしコーディング技術のレベルを最低0から最高10で表すとしたら
レベル1でインデントできるようになっている。
つまりインデントを強制することで得られるのはレベル0が1になる程度。
それが意味がある程度の人間が書いたコードは、どっちみち汚い。
74uY
垢版 |
2012/08/23(木) 02:34:11.78
初心者がC言語で書いたソースを
そのままPythonにしたら発狂すると思う
その時にインデント構文である事を後悔する
こういう癖のある言語は腕が良くないと使えない
2012/08/23(木) 10:02:26.13
C→パイスンなんて移植は普通誰もやらないから心配する必要はない
76uy
垢版 |
2012/08/23(木) 10:10:51.15
初心者がパイソンをさわったらってはなしだよ
とてもインデントが面白いことになると思う
俺初心者の頃に7重ループとか書いたことある
イフエルセ節を全部forで書き換えた
2012/08/23(木) 11:43:29.66
ループは展開できる
豆な
78uy
垢版 |
2012/08/23(木) 19:23:01.54
イフエルセのエルセ節はforでなくせる
2012/08/23(木) 19:46:09.26
エルスって読んでた。
2012/08/23(木) 19:51:44.75
イフエルセでググっても1件しか出てこない
2012/08/23(木) 20:13:36.09
もとから無かったというオチ
82デフォルトの名無しさん
垢版 |
2012/08/23(木) 20:14:21.66
インデント強制なしで{ }を使わずに書く方法を編み出してから言え。
2012/08/24(金) 01:12:16.78
つdo-end
2012/08/24(金) 10:53:17.72
ここから
ここまで
2012/08/24(金) 11:45:52.82
<寝言は>
</寝て言え>
2012/08/24(金) 11:49:50.30
line 2: ERROR: タグが終了していません
2012/08/24(金) 12:47:09.99
[ -z "$a" ] && echo T || echo F
8882
垢版 |
2012/08/24(金) 18:13:37.42
>83以降
{ }より長い文字数のは却下。タイピング数が増える。
2012/08/24(金) 19:35:13.48
begin end以外認めない。{ }とかシフト押すし小指疲れるからやだ。
2012/08/24(金) 20:08:20.60
ruby以外は嫌だ。使いこなせないから。てことか。
2012/08/24(金) 20:14:59.10
(if a t nil)
言語のふつくしさで言ったらlispだな。
可読性?なにそれおいしいの?
9288
垢版 |
2012/08/24(金) 23:33:59.28
結局パイソンのインデント方式が、余計な記号もいらないし、早くて楽なんだよ。はい論破
2012/08/25(土) 00:50:31.82
エディタによっては勝手にインデント調節しちゃうのもあるんだよな。
そうするとパイソンのソースコードは一瞬で破壊されてしまう。
94デフォルトの名無しさん
垢版 |
2012/08/25(土) 01:08:58.26
なんだってー!
2012/08/25(土) 01:13:07.42
beginは5文字なのにendが3文字なのが気に入らない
2012/08/25(土) 01:21:34.48
>>92
Ctrl+A→Shift+Tab連打→Ctrl+S はい論破
2012/08/25(土) 02:31:51.17
PythonはPython用のIDEじゃないとまともに使えないよね
ある意味JAVAとかよりもIDE依存の言語
98デフォルトの名無しさん
垢版 |
2012/08/25(土) 03:04:18.63
>>89
{ }(カッコ)の一方にカーソルをおいて、
Ctrl + Q
をすれば、対応するカッコにジャンプする

Ctrl + Q
するたびに相手にジャンプする。便利な機能だ
2012/08/25(土) 03:05:12.88
>>92
お前には改行記号とタブ記号が見えないのか。
2012/08/25(土) 04:11:59.18
Rubyでいい
10192
垢版 |
2012/08/25(土) 14:47:19.18
>99
だからCもJavaもfor文とかではどっちみちタブでずらずじゃん。
それに加えて中括弧やビギンエンドを打たないといけない。パイソンに比べると二度手間なんだよ。
2012/08/25(土) 14:52:54.98
>>101
ワンライナー書きたい場合は?
2012/08/25(土) 14:57:36.86
中括弧やbeginを打つ速度はどれくらい?

プロジェクトの中でそれらの文字が
何個含まれているかを数えれば
どれくらい時間がかかるのか
わかるよね。

俺はbeginを打つのに1秒ぐらいかかっている。
一日にかける行数を1000行として、
10行に1個beginが存在すると仮定する。

100秒だ。つまり一日で1分半の差が出る。

こんなくだらない話をしているのかい?
2012/08/25(土) 15:05:29.61
>>102
大昔の BASIC じゃあるまいし、今時ワンライナーって…
2012/08/25(土) 15:09:27.98
>>104
今は、ワンライナーの代わりに
何を使ってるの?
2012/08/25(土) 16:54:13.67
>>104
なんでBASIC。sh使えないのか?
2012/08/25(土) 17:21:10.00
>>4
>それに開発中、コードの順番を入れ替えて
>正しく動かくか少し試すなんてときに
>強制は邪魔だし、

偶発的プログラミングをしてはいけません
偶発的プログラミングとは、内容を理解せずに偶然の幸運を頼ってあてずっぽうにプログラミングすることです
2012/08/25(土) 17:26:24.45
> 少し試す

日本語不自由だと苦労するね。
2012/08/25(土) 17:45:28.52
休日に3週間前のレスの言葉尻だけを捉えて教師面とかマジ尊敬するわ
2012/08/25(土) 17:51:28.41
ああアンカーつけないと >>109 みたいに誤解するか…

>>4 へのレスじゃなくて、>>107 へのレスだ。

ちょっと試すことと、プログラミングすることを一緒にするなよ、ということ。
2012/08/25(土) 18:00:03.97
>>110
ちなみに>>109>>107宛てね
>>108が3週間前の話題を蒸し返したわけじゃないし
2012/08/25(土) 18:01:04.01
何だこりゃ >>4を書いた本人か
2012/08/25(土) 18:08:05.44
>>111
そういうことか、了解。
114右翼 ◆gXFLM6waxs
垢版 |
2012/08/26(日) 02:45:34.88
こういうコミュ障と俺どっちがマシ?
115右翼 ◆gXFLM6waxs
垢版 |
2012/08/27(月) 09:56:36.02
>>4
インデント強制が見やすくするためなのであれば
その反面でその場限りのスクリプトをかくときの開発効率が落ちるというのは当たり前な気がする
タイプ数よりもインデント強制があるほうが思考の邪魔だよ閉じ括弧とかはその気になればエディタに補完させる手もいくらでもある
だからperlのほうが流行ってたんだろう
今はrubyが流行ってるよ
2012/08/27(月) 13:36:26.88
{ }かbegin endで効率に差が出るとは思えんな
2012/08/27(月) 23:29:09.60
心底どうでもいい話だ
118uy
垢版 |
2012/08/27(月) 23:55:37.12
rubyが流行った
2012/08/28(火) 00:21:30.33
流行りが去った
120デフォルトの名無しさん
垢版 |
2012/08/28(火) 01:53:28.18
rubyの流行は凄いよな
LLだと現状これ以外の選択肢がないほどに成長した
2012/08/28(火) 04:08:21.44
rubyが使えるホスティングサービスの割合を見ればわかることだな。
122デフォルトの名無しさん
垢版 |
2012/08/28(火) 05:06:37.81
バージョンごとにかきかえが必要な言語は、不利だ
123デフォルトの名無しさん
垢版 |
2012/08/28(火) 07:10:47.85
ruby流行りすぎだけど必然だと思うよ
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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