1read 100read
2013年06月プログラム317: インデントを強制しても綺麗なコードにはなりません (165) TOP カテ一覧 スレ一覧 2ch元 削除依頼
自動巡回ソフトというものを作ってみたい (151)
【初心者歓迎】C/C++室 Ver.84【環境依存OK】 (929)
【.NET】WCF〜Windows通信基盤技術【通信】 (100)
攻守最強のプログラミング言語は? (129)
Androidプログラミング質問スレ Part33 (555)
CoffeeScript (214)

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


1 :2012/08/04 〜 最終レス :2013/04/24
Python等インデント強要する言語に対して。
まず、インデントは簡単です。
誰にでもできることです。
できない人もいるという反論があるでしょうが、
それができない人は、プログラミング全般出来ません。
プログラミングがある程度出来るようになったら、
インデントぐらいできるようになってます。
だから、言語仕様としてインデントを強制する理由は存在しません。
プログラマの自由を奪うだけの意味が無い行為です。

2 :
変数名の先頭が大文字か小文字かで、定数かそうでないかを決める
どっかのスクリプト言語よりゃ、インデントは必ずやるから害はないな

3 :
手紙書くのにインデントする人は少ない。

4 :
>>2
インデント強制は害があるよ。
そもそもインデントの目的は見やすくするため。
見やすくするためという目的が達成できるのなら
変則的なインデントでも良い。
それに開発中、コードの順番を入れ替えて
正しく動かくか少し試すなんてときに
強制は邪魔だし、
あとですぐに削除するデバッグ用のコードを目立つように
わざとインデントしないこともある。
一体誰のための、強制ギブスなのか全くわからない。

5 :
仕様書の文章書く時は
段落が変わったら字下げしないと駄目だよっていわれた
後、てにおはに赤ペンで修正されてた。


6 :
それがインデントとなんの関係が?

7 :
>>6
インデントというのは自然言語に対する敗北宣言なのだ。

8 :
このスレッドは天才チンパンジー「アイちゃん」が
言語訓練のために立てたものです。
アイと研究員とのやり取りに利用するスレッドなので、
関係者以外は書きこまないで下さい。
                  京都大学霊長類研究所

9 :
で、具体的に何を求めてスレ立てたの?
できればコテハンやトリップ付けて発言して欲しいな

10 :
Pythonはゴミ言語

11 :
IDEのフォーマッタ使えよ

12 :
Pythonは、閉じ括弧不要とインデントが深くなるコードを抑制する効果があった

> あとですぐに削除するデバッグ用のコードを目立つように
Pythonの場合だけど、
if __debug__:
  # debug code
最適化オプション付きで実行すると、コンパイル時に取り除かれるので
実行時のパフォーマンスに影響しないから削除不要。削除するなら __debug__ で該当箇所を検索できる。

13 :
インデントを強制する言語では自由なインデントができなくなる
一箇所処理を書き入れただけなのに全体のインデント修正が必要になるって非効率的にもほどがある

14 :
>>12
> Pythonは、閉じ括弧不要とインデントが深くなるコードを抑制する効果があった
インデントを浅く保つってことは、プログラミング技術の中で、
難易度が高いことなのか?
インデントが深くなるような奴=初心者プログラマは
どっちにしろ汚いコードになるし、
それなりのプログラマ = インデント深くならない だろ?
なんの効果も出てないよ。

15 :
Python以外にはどんなのがあるの?

16 :
>インデントが深くなるコードを抑制する効果があった
ブロックが深くなると読みづらくなるのはインデントだろうが{}だろうがendだろうが変わらんのじゃ?
インデントがブロックを表す言語だとそうじゃない言語よりブロックが深くなった時により回避したい気持ちが強くなるん?
それって可読性が悪いってことを暗に言ってるように聞こえるが。

17 :
暑いねー

18 :
馬鹿には無理

19 :
ヒント:インタプリタ

20 :
>>15
なでしこ

21 :
: さえなくなれば良言語

22 :
インデント最初に見たときは、読み難くかったな。PascalかAlgolかどちらだか忘れたけど。

23 :
ブロックがbegin〜endの言語よりはマシだな

24 :
いや、そっちのがマシ

25 :
end end end

26 :
使ってれば分かるけど
{ } うつよりも
do end タイプするほうが速い

27 :
>>26
不器用なんだね。
ワンライナー書いてるとスペース不要な括弧のが便利。

28 :
shift押すのめんどくさいんだよな

29 :
>>28
マウスでお絵描きしてな。

30 :
小指の無い人かも

31 :
まぁrubyはどっちでもかけるんだし
好きなほう使えばとしか

32 :
入力補完動くし。

33 :
Pythonってネストが深くなるかどうかより
ソースが1個か2個でもネストしたまま長くなると
それだけで読みづらいと思うんだけど

34 :
初心者向きではない

35 :
なでしこ
全角半角スペースTAB問わずインデント可能で混乱を招きやすいあたり実は中級者向け

36 :
スペース書いてしまったMakefileを思い出す。

37 :
コンパイラがチェックしてくれるなら意味はある
コーディング規則みたいな中途半端な強制が一番うざい

38 :
インデントの強制って
"アルゴリズム" とは無関係のことに対して気をつけなければならないってこと
完成し終わったソースは、字数が少なく綺麗でも
それは関数型と似ていて、途中思考をしていくのは苦手な言語
Pythonでゼロからアルゴリズムを思考してかいて、複雑なものを作ろうとしたら
インデントに気をつけながらIFやFORをコメントアウトしながら
デバッグしていく効率の悪いバカですよ

39 :
endの代わりにpassやreturnをつければいい

40 :
endは邪魔

41 :
訂正 end は { } よりはマシであるが、邪魔
でもなくなると読みづらい
ではどうすればよいかというと
結局ソースコードを書く時間を減らせばいい
思考をまとめてから開始し、エディタ、pcと向かい合う時間を最低限にする事が
一番ストレスたまらない

42 :
begin〜endを{}と比較するとか池沼レベルの発想
どっちでも大差ないしむしろタイプ数が増える分begin〜endの方が英単語書きたい系中二病の疑いが高い

43 :
> begin〜endを{}と比較するとか池沼レベルの発想
>どっちでも大差ないし
えっ えっ_

44 :
IDEが勝手にインデント付けするならアリだけど
インデントしてないと実行時エラーはやりすぎだと思う。
Pythonは知らんけど。

45 :
何の言語それ

46 :
日本人は、戦争に負けた。
でも何時から奴隷になった?
あなた達は今目覚めないと、二度とその目は開かない。
歴史というのはいつも編集されている。平清盛がとても優しい人だった。
『江談抄』で平安を生きた公家が鎌倉期にそれを階述してる。でも『平家物語』では悪役にされるんだよ。
http://www.youtube.com/watch?v=7QQzmAQ7wEc&feature=related

47 :
どこの誤爆それ

48 :
勝手にIDEでインデントうんぬんは変だと思うけど…
書きたいコードと違うものが出来上がる場合だってあるし
明確にそれしか解釈しようがないなら自動でいいけどな

49 :
と思ったけどそれも変だな…
制御構造を大幅に変更する途中で勝手にインデントを書き換えられても困るな

50 :
Pythonは使える奴を選ぶ言語
誰でもは使えない

51 :
Wordの文章のインデントを揃えられれば既に立派なSEです

52 :
ごめん俺SEじゃなかったみたいだ

53 :
Wordはテンプレートを作るのが楽しいよねw

54 :
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

55 :
そりゃ、インターネットは24時間接続しっぱなしだものw

56 :
インデントを揃えるのは
衛生面の教育が高度に普及している日本人にぴったり

57 :
ちょっとPython実際にやってみてわかったけど
やりにくいよこれ
使える奴を選ぶ言語だ
プログラム言語は所詮道具、手段みたいな奴には良いかもしれないけど
一行に詰め込めない自由度の低さが半端ない
そしてrubyになれてると括弧が鬱陶しい

58 :
>>57
> 使える奴を選ぶ言語だ
同意。
お前は二度と来るな。

59 :
今日も俺はrubyで発狂コードを書きまくってたけど
Pythonでも方法はあるんだろうけどさぁ
Pythonに乗り換えるとしたら
Pythonのありとあらゆる機能を調べないと
いま自分がrubyで書いてるコードは絶対Pythonに移植とか出来ない
class,if,for イテレータとか、その程度だけじゃどうにもならない
1言語を極めるって凄い重要だなと思った

60 :
てs

61 :
     ___
   /|    |
   ||. |∧_∧|
   ||. (´・ω・| うわっ、クソスレに来てしまった。
   ||oと.  U|
   || |(__)J|
   ||/ ̄ ̄
     ___
    |     |
    |     |
    |   o|
    |     |
    |     |
    彡 ̄ ̄ パタン、

62 :


63 :
rubyさいきょう

64 :
Python結構いいと思えてきた
紙グラミングするときにはendなんて書かないし
Pythonは、タイプ数こそは少ないけど
みててつまらない言語である
しかしオブジェクトの操作は多分rubyのほうが数段優秀だ
けどその優秀さは、実は多くのプログラミングでは必要としない優秀さであって
ハッカーが趣味でキチガイみたいなコードを書く為の楽しみとして使われる機能だと思う
rubyにある変な機能は、使いまくっていったら可読性のかけらもないが
自分にしか読めなくてもいいから、とりあえず考え付く限りの最高のコードを書く為だけにあるような気がする
Pythonは、当たり前のことを普通にやっていく言語
あくまで言語は道具であり手段って奴には向いているのかもしれない
rubyのendは冗長だよ、でもそこは冗長でいい事もある、そのendがPythonと違って可読性の助けになるから
所詮プログラミング言語は、存在自体が冗長で、なんらかの目的に特化するために
言語上で言語を作る事が一番良い結論付いた
つまり、プログラミング言語を作りやすいプログラミング言語が最強 ruby最強

65 :
お前らどんなソフト作ってるの?
もしかして、2ちゃんねるで語ってるだけじゃなかろうな?

66 :
>>65
初心者R

67 :
プログラミングすら出来ない初心者R
プログラミングすら出来ないPC初心者R
プログラミングすら出来ない人生初心者R
プログラミングすら出来ない人間R
プログラミングすら出来ない生き物R

68 :
少子化どころかゼロ赤子時代がくるな…

69 :


70 :
>>64
言語つくるならぱいぱいが楽チンでいいよ
ぼくがかんがえたさいきょうのrubyも簡単に作れる

71 :
同じ動作をするコードは誰が書いても同じコードになる。
(勿論、複雑になるとそう簡単には行かないが)
Pythonはその思想に基づいてるはず。
rubyは逆。同じ動作でも好きに書けた方が良い、という思想。

前者は大規模開発におけるコードの均質化に貢献する。
後者はごく少人数の少数精鋭の開発、趣味的コーディングの心地よさに貢献する。
言語の差があるから一長一短。
インデントを強制しても綺麗にならないとしても
綺麗なコードはインデントしているのは確かな事実。

72 :
>>70
じゃあ作ってみて 何日で作れる?
逃げんなよ

73 :
>>71
> 同じ動作をするコードは誰が書いても同じコードになる。
ありえない。もしそうなら著作権が発生しないことになる。
> インデントを強制しても綺麗にならないとしても
> 綺麗なコードはインデントしているのは確かな事実。
もしコーディング技術のレベルを最低0から最高10で表すとしたら
レベル1でインデントできるようになっている。
つまりインデントを強制することで得られるのはレベル0が1になる程度。
それが意味がある程度の人間が書いたコードは、どっちみち汚い。

74 :
初心者がC言語で書いたソースを
そのままPythonにしたら発狂すると思う
その時にインデント構文である事を後悔する
こういう癖のある言語は腕が良くないと使えない

75 :
C→パイスンなんて移植は普通誰もやらないから心配する必要はない

76 :
初心者がパイソンをさわったらってはなしだよ
とてもインデントが面白いことになると思う
俺初心者の頃に7重ループとか書いたことある
イフエルセ節を全部forで書き換えた

77 :
ループは展開できる
豆な

78 :
イフエルセのエルセ節はforでなくせる

79 :
エルスって読んでた。

80 :
イフエルセでググっても1件しか出てこない

81 :
もとから無かったというオチ

82 :
インデント強制なしで{ }を使わずに書く方法を編み出してから言え。

83 :
つdo-end

84 :
ここから
ここまで

85 :
<寝言は>
</寝て言え>

86 :
line 2: ERROR: タグが終了していません

87 :
[ -z "$a" ] && echo T || echo F

88 :
>83以降
{ }より長い文字数のは却下。タイピング数が増える。

89 :
begin end以外認めない。{ }とかシフト押すし小指疲れるからやだ。

90 :
ruby以外は嫌だ。使いこなせないから。てことか。

91 :
(if a t nil)
言語のふつくしさで言ったらlispだな。
可読性?なにそれおいしいの?

92 :
結局パイソンのインデント方式が、余計な記号もいらないし、早くて楽なんだよ。はい論破

93 :
エディタによっては勝手にインデント調節しちゃうのもあるんだよな。
そうするとパイソンのソースコードは一瞬で破壊されてしまう。

94 :
なんだってー!

95 :
beginは5文字なのにendが3文字なのが気に入らない

96 :
>>92
Ctrl+A→Shift+Tab連打→Ctrl+S はい論破

97 :
PythonはPython用のIDEじゃないとまともに使えないよね
ある意味JAVAとかよりもIDE依存の言語

98 :
>>89
{ }(カッコ)の一方にカーソルをおいて、
Ctrl + Q
をすれば、対応するカッコにジャンプする
Ctrl + Q
するたびに相手にジャンプする。便利な機能だ

99 :
>>92
お前には改行記号とタブ記号が見えないのか。

100read 1read
1read 100read
TOP カテ一覧 スレ一覧 2ch元 削除依頼
【JavaScript系】 NILScript 【AutoHotkey風】 (189)
【GNU】スクリプト言語 Guile【scheme】 (105)
【COBOLから】バッチ処理【Javaまで】 (152)
Perl初心者スレ(マジレス回答) (172)
Androidプログラミング質問スレ Part33 (555)
C++相談室 part103 (128)
--log9.info------------------
西野カナVSまゆゆ (167)
ロック聴いてるのって中二病だろ (120)
矢沢永吉。今年のライブは東京ドームで還暦 (136)
今の10代と20代前半は音楽より携帯に夢中 (120)
【ニコ生】ネット生配信Live・番組紹介スレ【UST】 (122)
ロックバンドのCD売り上げを考察しますん (149)
スイーツ(笑)だと思うミュージシャン (102)
まさに時代は神聖かまってちゃん (111)
吉井和哉232 (264)
浜田省吾 Part120 (449)
【人間は】妖精のブラ 西川貴教【モルモット】 (705)
長渕剛 No.229 (384)
【X JAPAN】 YOSHIKI Part.76【VIOLET UK】 (181)
浅井健一 part123 (362)
長渕剛 No.234 (238)
氷室京介〜NORTH OF EDEN〜Part718 (817)
--log55.com------------------
【不当解雇?】マルゴー閉店【クライマックス】閉店3店舗目
デジコン 3丁目
モデルガンスレ その64
長崎県のサバゲー事情
千葉県におススメのガンショップはありますか? 
ヤフオク違法モデルガン晒し3
福島サバゲースレ2
初心者雑談スレ