リーダブルコードとは
・読みやすさ、理解しやすさを追及したコードのことです
・読みやすいということはメンテナンス性も高いということです。
・理解しやすいコードはコードレビューも楽になります。
・理解しやすいコードはバグも少なくなります。
・短いほうが優れていることが多いですが、必ずしも短いほうがいいとは限りません。
俺ルール
・書き方の勝負であり、言語の勝負をしないでください。
・標準、非標準に限らずライブラリを使いましょう。
・なければ自分で関数を作りましょう。関数はなるべく汎用的に。
こういうコードを読みやすくするにはどうすればいいでしょうか?
というようなことを語るスレ。需要ありますかね?
探検
リーダブルコーディング技術スレ
■ このスレッドは過去ログ倉庫に格納されています
2013/10/11(金) 01:06:21.56
367デフォルトの名無しさん
2014/12/19(金) 23:44:37.90ID:cAPBq6kb なかなか難しいところだ脳。
やっぱコード書く前にしっかり設計やってからやるべきなのかね。
趣味だけども
やっぱコード書く前にしっかり設計やってからやるべきなのかね。
趣味だけども
368デフォルトの名無しさん
2014/12/19(金) 23:57:59.54ID:wb+cst2b369デフォルトの名無しさん
2014/12/20(土) 01:22:27.35ID:+b2U+9C3 このスレの忘年会みたいな軽いノリで、リーダブルじゃない現場コードの晒し合いとか愚痴晒し合いとかしませんか
言語問わずなんでもありで
丁度上司のunreadableコードと戦っててもうね
出所バレない感じに整形したりしてるんですがもうね
言語問わずなんでもありで
丁度上司のunreadableコードと戦っててもうね
出所バレない感じに整形したりしてるんですがもうね
370デフォルトの名無しさん
2014/12/20(土) 01:41:00.69ID:acQ5HpBR 再帰関数使いたいけど無名関数じゃ再帰できないようだからしぶしぶprivateメソッド化して細切れになる現象
371デフォルトの名無しさん
2014/12/20(土) 05:18:20.39ID:dWuhsWfV372デフォルトの名無しさん
2014/12/20(土) 09:26:41.56ID:z0Uvrlhl >>370つ Yコンビネータ
って全然リーダブルじゃねーか
って全然リーダブルじゃねーか
373デフォルトの名無しさん
2014/12/20(土) 10:07:02.21ID:KOv8i75g void isReadable()
374デフォルトの名無しさん
2014/12/20(土) 10:10:00.30ID:KOv8i75g new codeClone[num_of_func]
375デフォルトの名無しさん
2014/12/20(土) 12:02:33.91ID:F1BtQojg376デフォルトの名無しさん
2014/12/20(土) 12:12:29.43ID:cUhMXe+F377デフォルトの名無しさん
2014/12/20(土) 12:16:04.49ID:F1BtQojg >>371
> ワンストップ・サービス(窓口)のFacadeはどうなる?
その例から何を言いたいのかよくわからないよ。
何か俺が言ったことを勘違いしていそうだから、
勘違いしていそうなところの補足をしておく。
> 間違ったやり方だと
>
> 長い関数があった時、その一部。例えば前半分と後ろ半分みたいに分けて
> 汎用的ではない関数(というよりもルーチン)を増やすやり方。
この前半分と後ろ半分にわける間違ったやり方というのは、
例えば一つの工程をA、Bの二つに分けた時、
Bの内容(引数・戻り値じゃなくて"内容")を見ないと
Aが最終的にどうなるかわからないようなもののこと。
Facadeみたいにそれぞれの独立した工程に処理を渡して
引数・戻り値といった最小限の情報だけでやり出来るものは関係ない。
> ワンストップ・サービス(窓口)のFacadeはどうなる?
その例から何を言いたいのかよくわからないよ。
何か俺が言ったことを勘違いしていそうだから、
勘違いしていそうなところの補足をしておく。
> 間違ったやり方だと
>
> 長い関数があった時、その一部。例えば前半分と後ろ半分みたいに分けて
> 汎用的ではない関数(というよりもルーチン)を増やすやり方。
この前半分と後ろ半分にわける間違ったやり方というのは、
例えば一つの工程をA、Bの二つに分けた時、
Bの内容(引数・戻り値じゃなくて"内容")を見ないと
Aが最終的にどうなるかわからないようなもののこと。
Facadeみたいにそれぞれの独立した工程に処理を渡して
引数・戻り値といった最小限の情報だけでやり出来るものは関係ない。
378デフォルトの名無しさん
2014/12/20(土) 12:18:32.86ID:F1BtQojg >>376
区別できているかできていないかの前に
質問に答えてよ。
俺は「無限の時間と労力をかけてでもやれ」なんて一言も言っていない。
でもまあ、仕事(作業)するなら時間がかかるのはあたりまえだよ。
(その時間内で)適切なやり方をやれって言っているだけだが
どうして無限の時間をかけるって話になったのさ?
区別できているかできていないかの前に
質問に答えてよ。
俺は「無限の時間と労力をかけてでもやれ」なんて一言も言っていない。
でもまあ、仕事(作業)するなら時間がかかるのはあたりまえだよ。
(その時間内で)適切なやり方をやれって言っているだけだが
どうして無限の時間をかけるって話になったのさ?
379デフォルトの名無しさん
2014/12/20(土) 12:21:24.19ID:F1BtQojg 「適切なやり方をやれ」って言っただけなのに
それを「無限の時間と労力をかけてでもやれ」と勘違いしてしまうのは
「適切なやり方をやったら、俺は無限の時間がかかるんだ。適切なやり方=無限の時間なんだ」って
>>368が言っているようにみえるのは仕方ないでしょw
それを「無限の時間と労力をかけてでもやれ」と勘違いしてしまうのは
「適切なやり方をやったら、俺は無限の時間がかかるんだ。適切なやり方=無限の時間なんだ」って
>>368が言っているようにみえるのは仕方ないでしょw
380デフォルトの名無しさん
2014/12/20(土) 13:02:04.48ID:lS6KGt9L381デフォルトの名無しさん
2014/12/20(土) 13:09:20.32ID:z0Uvrlhl382デフォルトの名無しさん
2014/12/20(土) 13:22:29.06ID:cUhMXe+F だから正論に反論なんてできないよ
「適切なやり方やればいい」
間違ったことは言ってないからな
でも、そんなことは小学生でも言えるわ w
「適切なやり方やればいい」
間違ったことは言ってないからな
でも、そんなことは小学生でも言えるわ w
383デフォルトの名無しさん
2014/12/20(土) 14:21:29.36ID:qyYbVqEq >>382の上司「無限の時間をかけてでも適切なことをやれ!でも給料はいつも通り!」
って言われてるからここで愚痴ってるんでしょ
って言われてるからここで愚痴ってるんでしょ
384デフォルトの名無しさん
2014/12/20(土) 22:26:54.94ID:F1BtQojg >>382
だから変なのは「無限の時間」って話が出てきた所だけだよ。
正論言ってるんだから、俺が言った内容に反論できないのはわかってるよ。
俺が言った内容ではない話が、どこからできたんだ?って言ってるだけ。
だから変なのは「無限の時間」って話が出てきた所だけだよ。
正論言ってるんだから、俺が言った内容に反論できないのはわかってるよ。
俺が言った内容ではない話が、どこからできたんだ?って言ってるだけ。
385デフォルトの名無しさん
2014/12/20(土) 22:56:28.88ID:cUhMXe+F386デフォルトの名無しさん
2014/12/20(土) 23:25:50.20ID:F1BtQojg >>385
誰が誰の立場でできませんっていうんだよ?
わけわからんわ。
時間内に出来るかどうかはケースバイケースなんだし、
出来るところまでやればいいだけだろ。
それに技術力を上げれば時間内にできることも多くなるぞ。
何も努力しないでコピペばかりするから技術力も上がらなくなる。
誰が誰の立場でできませんっていうんだよ?
わけわからんわ。
時間内に出来るかどうかはケースバイケースなんだし、
出来るところまでやればいいだけだろ。
それに技術力を上げれば時間内にできることも多くなるぞ。
何も努力しないでコピペばかりするから技術力も上がらなくなる。
387デフォルトの名無しさん
2014/12/21(日) 00:56:33.95ID:XZ/0moqW >>385
上司「何言ってるんだ土日があるだろ。ただしそれはお前の能力不足が原因だから残業代は出ないからな。」
上司「何言ってるんだ土日があるだろ。ただしそれはお前の能力不足が原因だから残業代は出ないからな。」
388デフォルトの名無しさん
2014/12/21(日) 11:05:47.64ID:ikKWfd9P389デフォルトの名無しさん
2014/12/21(日) 13:01:56.36ID:XZ/0moqW >>388
上司「俺は土日をつかえなんて指示はしていない。そんな計画を承認したはずもない。
ただお前が業務時間内に間に合わないなら土日や深夜や自宅時間も使わざる負えないだろうということだ。そんなこともわからんのか。」
上司「俺は土日をつかえなんて指示はしていない。そんな計画を承認したはずもない。
ただお前が業務時間内に間に合わないなら土日や深夜や自宅時間も使わざる負えないだろうということだ。そんなこともわからんのか。」
390デフォルトの名無しさん
2014/12/21(日) 14:38:18.36ID:dx70AcKS391デフォルトの名無しさん
2014/12/21(日) 14:40:57.90ID:dx70AcKS あ、もしかして俺なら(上級者なら)時間内にできる仕事を
どれだけ時間があっても出来ないって言いたい人なのかな?
俺にはいくら時間があっても仕事できないよって。
どれだけ時間があっても出来ないって言いたい人なのかな?
俺にはいくら時間があっても仕事できないよって。
392デフォルトの名無しさん
2014/12/21(日) 14:50:49.21ID:dx70AcKS まあ、ここいらでリーダブルコーディングの話に戻すか。
仕事が遅い人って見ていると、自分で自分を苦しめてるんだよね。
自分でぐちゃぐちゃなコードを書いて、
正しく動かない、バグが直せないって言ってる。
自分が書いたコードと戦っているわけさw
リーダブル、つまり読みやすいコードを書けるように
自分を鍛えれば、自分が書いたコードと戦うことは少なくなっていく。
でも仕事が遅い人って、自分が書いたコードと戦うことに精一杯。
時間がないを言い訳にしてレベルを上げようとしないから、
戦う敵を量産するだけで、更に時間をなくしてる。
コードは読むものなのだが、どうもレベルが低い人にとっては
解析する物になっているようだ。解析した後その謎を片付けないでそのままにして
さらにコードを追加するから、書けば書くほど謎が深まっていく
だから仕事をするばするほどかかる時間が増えていく。
あ、だから無限の時間って話になるのかw
仕事が遅い人って見ていると、自分で自分を苦しめてるんだよね。
自分でぐちゃぐちゃなコードを書いて、
正しく動かない、バグが直せないって言ってる。
自分が書いたコードと戦っているわけさw
リーダブル、つまり読みやすいコードを書けるように
自分を鍛えれば、自分が書いたコードと戦うことは少なくなっていく。
でも仕事が遅い人って、自分が書いたコードと戦うことに精一杯。
時間がないを言い訳にしてレベルを上げようとしないから、
戦う敵を量産するだけで、更に時間をなくしてる。
コードは読むものなのだが、どうもレベルが低い人にとっては
解析する物になっているようだ。解析した後その謎を片付けないでそのままにして
さらにコードを追加するから、書けば書くほど謎が深まっていく
だから仕事をするばするほどかかる時間が増えていく。
あ、だから無限の時間って話になるのかw
393デフォルトの名無しさん
2014/12/21(日) 15:48:14.53ID:wuWkedhz >>391-392
話の流れも読めてないバカ乙
話の流れも読めてないバカ乙
394デフォルトの名無しさん
2014/12/22(月) 21:28:40.57ID:ndw8Yqnw 流れが読めないのはリーダブルでないのの典型
395デフォルトの名無しさん
2014/12/22(月) 22:36:05.51ID:bXw2G98F と責任転嫁w
396デフォルトの名無しさん
2014/12/27(土) 23:32:28.76ID:OlYxJx97 自作のソフト、ネタ尽きてきたからコードの簡略化してたら5時間くらいたってた
397デフォルトの名無しさん
2015/10/14(水) 23:40:08.29ID:DmhFYPJM クリエイティブじゃないやつはリファクタリングして仕事した気になってる勘違いが多い
398デフォルトの名無しさん
2015/10/15(木) 01:26:25.23ID:h4rpxLqO ぎくっ
399デフォルトの名無しさん
2015/10/15(木) 12:52:24.82ID:fomBTPP1 はい
400デフォルトの名無しさん
2016/05/01(日) 16:37:41.94ID:tKi6j9CT 匿名通信(Tor、i2p等)ができるファイル共有ソフトBitComet(ビットコメット)みたいな、
BitTorrentがオープンソースで開発されています
言語は何でも大丈夫だそうなので、P2P書きたい!って人居ませんか?
Covenantの作者(Lyrise)がそういう人と話したいそうなので、よろしければツイートお願いします
https://twitter.com/Lyrise_al
ちなみにオイラはCovenantの完成が待ち遠しいプログラミングできないアスペルガーw
The Covenant Project
概要
Covenantは、純粋P2Pのファイル共有ソフトです
目的
インターネットにおける権力による抑圧を排除することが最終的な目標です。 そのためにCovenantでは、中央に依存しない、高効率で検索能力の高いファイル共有の機能をユーザーに提供します
特徴
Covenant = Bittorrent + Abstract Network + DHT + (Search = WoT + PoW)
接続は抽象化されているので、I2P, Tor, TCP, Proxy, その他を利用可能です
DHTにはKademlia + コネクションプールを使用します
UPnPによってポートを解放することができますが、Port0でも利用可能です(接続数は少なくなります)
検索リクエスト、アップロード、ダウンロードなどのすべての通信はDHT的に分散され、特定のサーバーに依存しません
1^
BitTorrentがオープンソースで開発されています
言語は何でも大丈夫だそうなので、P2P書きたい!って人居ませんか?
Covenantの作者(Lyrise)がそういう人と話したいそうなので、よろしければツイートお願いします
https://twitter.com/Lyrise_al
ちなみにオイラはCovenantの完成が待ち遠しいプログラミングできないアスペルガーw
The Covenant Project
概要
Covenantは、純粋P2Pのファイル共有ソフトです
目的
インターネットにおける権力による抑圧を排除することが最終的な目標です。 そのためにCovenantでは、中央に依存しない、高効率で検索能力の高いファイル共有の機能をユーザーに提供します
特徴
Covenant = Bittorrent + Abstract Network + DHT + (Search = WoT + PoW)
接続は抽象化されているので、I2P, Tor, TCP, Proxy, その他を利用可能です
DHTにはKademlia + コネクションプールを使用します
UPnPによってポートを解放することができますが、Port0でも利用可能です(接続数は少なくなります)
検索リクエスト、アップロード、ダウンロードなどのすべての通信はDHT的に分散され、特定のサーバーに依存しません
1^
401デフォルトの名無しさん
2016/11/11(金) 16:02:24.59ID:dP+cWDA6■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 【給食無償化】国が全額負担 自維公3党、近く合意へ★2 [ぐれ★]
- BreakingDown 前日会見で対戦予定選手から不意打ちビンタ→後頭部強打で失神した選手、くも膜下出血と報告「脳内に出血が発見され…」 [Anonymous★]
- 【秋田市】新スタジアム「5,000人規模では不十分」 Jリーグ側から指摘 200億近い事業費になる見込み 財政負担がさらに大きく [鉄チーズ烏★]
- 【サッカー】Jリーグ、43億円の赤字予算を承認 ★2 [鉄チーズ烏★]
- 40代教員、1億8600万円分の暗号資産だまし取られる 「警察手帳のような物」見せられ−滋賀県草津市 [蚤の市★]
- 上野動物園の双子パンダ、1月末に中国に返還へ 国内でパンダ不在に ★4 [蚤の市★]
- JK「そしたら美穂泣いちゃってさ~」JK2「あははははw 」ショタ「まてっ!」
- 名前は知ってるけど映像じゃなく実際に見たことの無いもの ← なにそうぞうした?
- ピカチュウこい
- お前らとデュエルSEXしたい
- 維新・吉村はん「国民よ思い出せ! 悪夢の民主党時代を!!」 [592058334]
- クリスマス🎄ソング🎅みんなで歌う会しよう
