Enviar pesquisa
Carregar
201207 ssmjp
•
1 gostou
•
946 visualizações
th0x0472
Seguir
2012年7月の#ssmjpでの発表資料です。リーダブルコードに感激してお勧めしてきました。
Leia menos
Leia mais
Educação
Denunciar
Compartilhar
Denunciar
Compartilhar
1 de 19
Recomendados
マルチスレッド学習のミッシングリンク
マルチスレッド学習のミッシングリンク
Satoshi KOBAYASHI
Programming camp code reading
Programming camp code reading
Hiro Yoshioka
Promise async await
Promise async await
ikdysfm
Rustの最初の難関を超えるための第一の技
Rustの最初の難関を超えるための第一の技
Masuda Tomoaki
プログラマ人生論
プログラマ人生論
ymmt
「いいコード」をみんなで書こう!
「いいコード」をみんなで書こう!
tq_ed
ZeekRewards prezentace
ZeekRewards prezentace
sosakCZ
Estadios IV NSCLC post-asco 2012
Estadios IV NSCLC post-asco 2012
Martín Lázaro
Recomendados
マルチスレッド学習のミッシングリンク
マルチスレッド学習のミッシングリンク
Satoshi KOBAYASHI
Programming camp code reading
Programming camp code reading
Hiro Yoshioka
Promise async await
Promise async await
ikdysfm
Rustの最初の難関を超えるための第一の技
Rustの最初の難関を超えるための第一の技
Masuda Tomoaki
プログラマ人生論
プログラマ人生論
ymmt
「いいコード」をみんなで書こう!
「いいコード」をみんなで書こう!
tq_ed
ZeekRewards prezentace
ZeekRewards prezentace
sosakCZ
Estadios IV NSCLC post-asco 2012
Estadios IV NSCLC post-asco 2012
Martín Lázaro
sitikiyut KKPI-cafetaria
sitikiyut KKPI-cafetaria
sitimoet
Презентация проекта "Парк ярославского периода"
Презентация проекта "Парк ярославского периода"
gaidar_fund
презентація вишняки
презентація вишняки
vishnyaki-school
Jardim tropical gonçalo, rúben
Jardim tropical gonçalo, rúben
José Palma
Ziinga Discount: Ziinga Meme
Ziinga Discount: Ziinga Meme
Ziinga Discount
Programação dia 31 de julho
Programação dia 31 de julho
Fabiano Drevek
Let the Games Begin!
Let the Games Begin!
prep_delicious
Resistencia a nuevos fármacos en cáncer renal
Resistencia a nuevos fármacos en cáncer renal
Martín Lázaro
3Dパズル カタログ rev2
3Dパズル カタログ rev2
reacjapan
美白一定要知道的基本觀念
美白一定要知道的基本觀念
loseweightfitness
Sunu4
Sunu4
bilgin3
Nhan mac 18 apsara
Nhan mac 18 apsara
APSARA VIỆT NAM
Manual de Naturaleza y Vidad Social (Selva)
Manual de Naturaleza y Vidad Social (Selva)
Rosita Piscoya
Скамейка запасных
Скамейка запасных
scaleproject
guru-sebagai-satu-profesion
guru-sebagai-satu-profesion
cidapink89
Faberlic katalogs 11 2012
Faberlic katalogs 11 2012
Dace Āboliņa
7
7
snmkp
Unikcom webproduction
Unikcom webproduction
Nesterova Yana
良い?悪い?コードコメントの書き方
良い?悪い?コードコメントの書き方
Shigenori Sagawa
20120706-readablecode
20120706-readablecode
Masanori Kado
Our docsys-pyfes-2012-11
Our docsys-pyfes-2012-11
Keiichiro Shikano
Start!! Ruby
Start!! Ruby
mitim
Mais conteúdo relacionado
Destaque
sitikiyut KKPI-cafetaria
sitikiyut KKPI-cafetaria
sitimoet
Презентация проекта "Парк ярославского периода"
Презентация проекта "Парк ярославского периода"
gaidar_fund
презентація вишняки
презентація вишняки
vishnyaki-school
Jardim tropical gonçalo, rúben
Jardim tropical gonçalo, rúben
José Palma
Ziinga Discount: Ziinga Meme
Ziinga Discount: Ziinga Meme
Ziinga Discount
Programação dia 31 de julho
Programação dia 31 de julho
Fabiano Drevek
Let the Games Begin!
Let the Games Begin!
prep_delicious
Resistencia a nuevos fármacos en cáncer renal
Resistencia a nuevos fármacos en cáncer renal
Martín Lázaro
3Dパズル カタログ rev2
3Dパズル カタログ rev2
reacjapan
美白一定要知道的基本觀念
美白一定要知道的基本觀念
loseweightfitness
Sunu4
Sunu4
bilgin3
Nhan mac 18 apsara
Nhan mac 18 apsara
APSARA VIỆT NAM
Manual de Naturaleza y Vidad Social (Selva)
Manual de Naturaleza y Vidad Social (Selva)
Rosita Piscoya
Скамейка запасных
Скамейка запасных
scaleproject
guru-sebagai-satu-profesion
guru-sebagai-satu-profesion
cidapink89
Faberlic katalogs 11 2012
Faberlic katalogs 11 2012
Dace Āboliņa
7
7
snmkp
Unikcom webproduction
Unikcom webproduction
Nesterova Yana
Destaque
(18)
sitikiyut KKPI-cafetaria
sitikiyut KKPI-cafetaria
Презентация проекта "Парк ярославского периода"
Презентация проекта "Парк ярославского периода"
презентація вишняки
презентація вишняки
Jardim tropical gonçalo, rúben
Jardim tropical gonçalo, rúben
Ziinga Discount: Ziinga Meme
Ziinga Discount: Ziinga Meme
Programação dia 31 de julho
Programação dia 31 de julho
Let the Games Begin!
Let the Games Begin!
Resistencia a nuevos fármacos en cáncer renal
Resistencia a nuevos fármacos en cáncer renal
3Dパズル カタログ rev2
3Dパズル カタログ rev2
美白一定要知道的基本觀念
美白一定要知道的基本觀念
Sunu4
Sunu4
Nhan mac 18 apsara
Nhan mac 18 apsara
Manual de Naturaleza y Vidad Social (Selva)
Manual de Naturaleza y Vidad Social (Selva)
Скамейка запасных
Скамейка запасных
guru-sebagai-satu-profesion
guru-sebagai-satu-profesion
Faberlic katalogs 11 2012
Faberlic katalogs 11 2012
7
7
Unikcom webproduction
Unikcom webproduction
Semelhante a 201207 ssmjp
良い?悪い?コードコメントの書き方
良い?悪い?コードコメントの書き方
Shigenori Sagawa
20120706-readablecode
20120706-readablecode
Masanori Kado
Our docsys-pyfes-2012-11
Our docsys-pyfes-2012-11
Keiichiro Shikano
Start!! Ruby
Start!! Ruby
mitim
30日でできない!コンピューター自作入門 - カーネル/VM探検隊@つくば
30日でできない!コンピューター自作入門 - カーネル/VM探検隊@つくば
Hirotaka Kawata
人工知能の技術で有名なニューラルネットワークのフレームワークである #Chainer を用いた対話botを使った俺の屍を越えてゆけ slide share
人工知能の技術で有名なニューラルネットワークのフレームワークである #Chainer を用いた対話botを使った俺の屍を越えてゆけ slide share
Ogushi Masaya
ちゃんとした C# プログラムを書けるようになる実践的な方法~ Visual Studio を使った 高品質・低コスト・保守性の高い開発
ちゃんとした C# プログラムを書けるようになる実践的な方法~ Visual Studio を使った 高品質・低コスト・保守性の高い開発
慎一 古賀
Scrum alliance regional gathering tokyo 2013 pub
Scrum alliance regional gathering tokyo 2013 pub
グロースエクスパートナーズ株式会社/Growth xPartners Incorporated.
ソースコードの品質向上のための効果的で効率的なコードレビュー
ソースコードの品質向上のための効果的で効率的なコードレビュー
Moriharu Ohzu
Proof summit2014mizar
Proof summit2014mizar
Alcor80UMa
Sourcecode Reading Workshop2010
Sourcecode Reading Workshop2010
Hiro Yoshioka
chatGPTの驚くべき対話能力.pdf
chatGPTの驚くべき対話能力.pdf
YamashitaKatsushi
C#言語機能の作り方
C#言語機能の作り方
信之 岩永
どたばたかいぎ成果発表
どたばたかいぎ成果発表
Eric Sartre
Lispmeetup48 cl-online-learningによる文書分類
Lispmeetup48 cl-online-learningによる文書分類
Satoshi imai
PHPでセキュリティを真面目に考える
PHPでセキュリティを真面目に考える
Takuya Sato
Unimaginable code & commentary
Unimaginable code & commentary
Kazuki Kachi
トランザクションスクリプトのすすめ
トランザクションスクリプトのすすめ
pospome
2021 10-07 kdd2021読み会 uc phrase
2021 10-07 kdd2021読み会 uc phrase
Tatsuya Shirakawa
3 18 どこでもスイッチ
3 18 どこでもスイッチ
sohatach
Semelhante a 201207 ssmjp
(20)
良い?悪い?コードコメントの書き方
良い?悪い?コードコメントの書き方
20120706-readablecode
20120706-readablecode
Our docsys-pyfes-2012-11
Our docsys-pyfes-2012-11
Start!! Ruby
Start!! Ruby
30日でできない!コンピューター自作入門 - カーネル/VM探検隊@つくば
30日でできない!コンピューター自作入門 - カーネル/VM探検隊@つくば
人工知能の技術で有名なニューラルネットワークのフレームワークである #Chainer を用いた対話botを使った俺の屍を越えてゆけ slide share
人工知能の技術で有名なニューラルネットワークのフレームワークである #Chainer を用いた対話botを使った俺の屍を越えてゆけ slide share
ちゃんとした C# プログラムを書けるようになる実践的な方法~ Visual Studio を使った 高品質・低コスト・保守性の高い開発
ちゃんとした C# プログラムを書けるようになる実践的な方法~ Visual Studio を使った 高品質・低コスト・保守性の高い開発
Scrum alliance regional gathering tokyo 2013 pub
Scrum alliance regional gathering tokyo 2013 pub
ソースコードの品質向上のための効果的で効率的なコードレビュー
ソースコードの品質向上のための効果的で効率的なコードレビュー
Proof summit2014mizar
Proof summit2014mizar
Sourcecode Reading Workshop2010
Sourcecode Reading Workshop2010
chatGPTの驚くべき対話能力.pdf
chatGPTの驚くべき対話能力.pdf
C#言語機能の作り方
C#言語機能の作り方
どたばたかいぎ成果発表
どたばたかいぎ成果発表
Lispmeetup48 cl-online-learningによる文書分類
Lispmeetup48 cl-online-learningによる文書分類
PHPでセキュリティを真面目に考える
PHPでセキュリティを真面目に考える
Unimaginable code & commentary
Unimaginable code & commentary
トランザクションスクリプトのすすめ
トランザクションスクリプトのすすめ
2021 10-07 kdd2021読み会 uc phrase
2021 10-07 kdd2021読み会 uc phrase
3 18 どこでもスイッチ
3 18 どこでもスイッチ
Mais de th0x0472
とある監視ではまった話 #ssmjp 2014/12
とある監視ではまった話 #ssmjp 2014/12
th0x0472
#ssmjp 2014/09 bashのちょっとした便利機能の紹介
#ssmjp 2014/09 bashのちょっとした便利機能の紹介
th0x0472
import dpkt したよ #ssmjp 2014/02/28
import dpkt したよ #ssmjp 2014/02/28
th0x0472
MAN OF BASH #ssmjp 2013.09.25
MAN OF BASH #ssmjp 2013.09.25
th0x0472
2012/09/27 #ssmjp おうちOpenStack
2012/09/27 #ssmjp おうちOpenStack
th0x0472
2012/06/28 #ssmjp
2012/06/28 #ssmjp
th0x0472
Mais de th0x0472
(6)
とある監視ではまった話 #ssmjp 2014/12
とある監視ではまった話 #ssmjp 2014/12
#ssmjp 2014/09 bashのちょっとした便利機能の紹介
#ssmjp 2014/09 bashのちょっとした便利機能の紹介
import dpkt したよ #ssmjp 2014/02/28
import dpkt したよ #ssmjp 2014/02/28
MAN OF BASH #ssmjp 2013.09.25
MAN OF BASH #ssmjp 2013.09.25
2012/09/27 #ssmjp おうちOpenStack
2012/09/27 #ssmjp おうちOpenStack
2012/06/28 #ssmjp
2012/06/28 #ssmjp
Último
次世代機の製品コンセプトを描く ~未来の機械を創造してみよう~
次世代機の製品コンセプトを描く ~未来の機械を創造してみよう~
Kochi Eng Camp
TokyoTechGraduateExaminationPresentation
TokyoTechGraduateExaminationPresentation
YukiTerazawa
生成AIの回答内容の修正を課題としたレポートについて:お茶の水女子大学「授業・研究における生成系AIの活用事例」での講演資料
生成AIの回答内容の修正を課題としたレポートについて:お茶の水女子大学「授業・研究における生成系AIの活用事例」での講演資料
Takayuki Itoh
ゲーム理論 BASIC 演習106 -価格の交渉ゲーム-#ゲーム理論 #gametheory #数学
ゲーム理論 BASIC 演習106 -価格の交渉ゲーム-#ゲーム理論 #gametheory #数学
ssusere0a682
2024年度 東京工業大学 工学院 機械系 大学院 修士課程 入試 説明会 資料
2024年度 東京工業大学 工学院 機械系 大学院 修士課程 入試 説明会 資料
Tokyo Institute of Technology
The_Five_Books_Overview_Presentation_2024
The_Five_Books_Overview_Presentation_2024
koheioishi1
東京工業大学 環境・社会理工学院 建築学系 大学院入学入試・進学説明会2024_v2
東京工業大学 環境・社会理工学院 建築学系 大学院入学入試・進学説明会2024_v2
Tokyo Institute of Technology
Último
(7)
次世代機の製品コンセプトを描く ~未来の機械を創造してみよう~
次世代機の製品コンセプトを描く ~未来の機械を創造してみよう~
TokyoTechGraduateExaminationPresentation
TokyoTechGraduateExaminationPresentation
生成AIの回答内容の修正を課題としたレポートについて:お茶の水女子大学「授業・研究における生成系AIの活用事例」での講演資料
生成AIの回答内容の修正を課題としたレポートについて:お茶の水女子大学「授業・研究における生成系AIの活用事例」での講演資料
ゲーム理論 BASIC 演習106 -価格の交渉ゲーム-#ゲーム理論 #gametheory #数学
ゲーム理論 BASIC 演習106 -価格の交渉ゲーム-#ゲーム理論 #gametheory #数学
2024年度 東京工業大学 工学院 機械系 大学院 修士課程 入試 説明会 資料
2024年度 東京工業大学 工学院 機械系 大学院 修士課程 入試 説明会 資料
The_Five_Books_Overview_Presentation_2024
The_Five_Books_Overview_Presentation_2024
東京工業大学 環境・社会理工学院 建築学系 大学院入学入試・進学説明会2024_v2
東京工業大学 環境・社会理工学院 建築学系 大学院入学入試・進学説明会2024_v2
201207 ssmjp
1.
Undocumented... 2012/07/23
#ssmjp th0x0472
2.
お約束 Twitter @th0x0472 フォローするときはよく考えて。 アンフォローはお気軽に。 Blog http://th0x0472.at.webry.info/
3.
ところで みなさん、コード書いてますか? Shell script,
C/C++, Python, Perl, Ruby, C#, Java, Assembler, Java Script, Visual Basic, VBScript, etc... (並び順に深い意味はありませんよ・・・?)
4.
文章は書いてますよね メール、ツイッター、ブログ 各種連絡、報告書、議事録 仕様書、設計書、手順書
etc...
5.
今日のお題 リーダブルコード より良いコードを書くための シンプルで実践的なテクニック Dustin Boswel, Trevor
Foucher著 角 征典訳 オライリー 2012年6月 (ISBN:978-87311-565-8) www.oreilly.co.jp/books/9784873115658/
6.
目次 1章 理解しやすいコード
9章 変数と読みやすさ 2章 名前に情報を詰め込む 10章 無関係の下位問題を抽出する 3章 誤解されない名前 11章 一度に1つのことを 4章 美しさ 12章 コードに思いを込める 5章 コメントすべきことを知る 13章 短いコードを書く 6章 コメントは正確で簡潔に 14章 テストと読みやすさ 7章 制御フローを読みやすくする 15章 「分/時間カウンタ」を設 計・実装する 8章 巨大な式を分割する
7.
「優れた」コードって何? return exponent >=
0 ? mantissa * (1 << exponent) : mantissa / (1 << -exponent); (本書 2ページより) アイツは行っちまったのさ・・・ それこそ均一なるマトリクスの裂け目の向こうへ・・・ あいつは確かに活きてる。 広大なネットのどこか、あるいはそのすべての領域に融合して。
8.
「優れた」コードって何? if (exponent >=
0) { return mantissa * (1 << exponent); } else { return mantissa / (1 << -exponent); } (本書3ページより) シーザーを理解するためにシーザーである必要は無い。
9.
読みやすさの基本定理 となる考え コードは他の人が最短時間で理解できる ように書かなければいけない。
(本書 3ページより)
10.
「他の人」? どうせ誰も読まないし 他の人なんか知ったこっちゃないし 俺はマテバが好きなの!
11.
「他の人」? 金曜日の自分と次の月曜日の自分。 夏休み前の自分と夏休み明けの自分。 半年後の自分。5年後の自分。
12.
僕の場合 先週書いたコードの理屈をぱっと思い出せな かったことがあります。よくあります。 (そもそも休みの日まで仕事のコトを覚えていたくない) あるプロジェクトを離れてから4,5年後に 自分が書いたスクリプトが使い続けられてる という話を聞いたことがあります。
13.
コードの話でしょ? 根幹のメッセージは普遍的。 むしろコード以外の各種文書の方が 改善する余地が大いにあると思う。 エンジニアの共通言語=コードなだけ。
14.
簡単に紹介すると 明確で正確な表現 vs 気取った言い回し 具体的な表現
vs 名状しがたい・・・ 重要な情報を欠落させない 誤解を招かない表現 当たり前? ちゃんと出来てますか?
15.
簡単に紹介すると 全体像を説明する 自分の考えを記録する 読み手の期待を理解する 読み手に書き手の意図を伝える こんな普遍的なお話が詰め込まれてます
16.
そんなわけで コードを書くのが大好きな方はもちろん コードに限らず、何らかの文書を書く方 あまり書きたくない方、読みたくない方
みんなにお勧めです。 (どちらかと言えばむしろ後にあげた方に強くお勧め)
17.
でも・・・ お高いんでしょう? 紙の書籍で ¥2,400− (税別) 電子書籍で
¥2,016− (税込み?) 分厚いんでしょう? 本文、解説、索引で237ページ。
18.
ところで そもそも、ドキュメントが存在しない、 更新されていない・・・ そんなときは、Sphinxですよ。
http://sphinx-users.jp/
19.
おしまい ご清聴ありがとうございました。
Notas do Editor
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n