Suche senden
Hochladen
ソフトウェア開発の格言
•
Als PPTX, PDF herunterladen
•
0 gefällt mir
•
2,847 views
Ryosuke Miyahara
Folgen
自分が今までに本で読んだり人に聞いたりして知った「ソフトウェア開発における格言」の内、特にビビッと来たものを紹介しています。
Weniger lesen
Mehr lesen
Ingenieurwesen
Diashow-Anzeige
Melden
Teilen
Diashow-Anzeige
Melden
Teilen
1 von 13
Jetzt herunterladen
Empfohlen
nseg第5回勉強会
nseg第5回勉強会
ko ty
SEゼミ2015 - 練習
SEゼミ2015 - 練習
Kouhei Sutou
リーダブルコード勉強会 in 筑波大 - 練習
リーダブルコード勉強会 in 筑波大 - 練習
Kouhei Sutou
Agile insepction
Agile insepction
Suzuki Masayuki
NaITE_27_session2
NaITE_27_session2
NaITE_Official
Windowsとlinuxの小技達lt
Windowsとlinuxの小技達lt
Ryosuke Miyahara
貧乏人でも出来るお手軽docker
貧乏人でも出来るお手軽docker
Kenzo Nagahisa
Ltの作成と実践~入門編~
Ltの作成と実践~入門編~
Daiji Okuno
Empfohlen
nseg第5回勉強会
nseg第5回勉強会
ko ty
SEゼミ2015 - 練習
SEゼミ2015 - 練習
Kouhei Sutou
リーダブルコード勉強会 in 筑波大 - 練習
リーダブルコード勉強会 in 筑波大 - 練習
Kouhei Sutou
Agile insepction
Agile insepction
Suzuki Masayuki
NaITE_27_session2
NaITE_27_session2
NaITE_Official
Windowsとlinuxの小技達lt
Windowsとlinuxの小技達lt
Ryosuke Miyahara
貧乏人でも出来るお手軽docker
貧乏人でも出来るお手軽docker
Kenzo Nagahisa
Ltの作成と実践~入門編~
Ltの作成と実践~入門編~
Daiji Okuno
[Slide]闇アジャイラーvs光アジャイラーforDevLOVE(EnergizedWorkLT祭)
[Slide]闇アジャイラーvs光アジャイラーforDevLOVE(EnergizedWorkLT祭)
masashi takehara
International php conference 2016 参加レポート
International php conference 2016 参加レポート
Ryosuke Miyahara
Team geek感想LT
Team geek感想LT
Ryosuke Miyahara
月刊ライトニングトーク 2014/05 イントロダクション
月刊ライトニングトーク 2014/05 イントロダクション
Seiya Konno
勉強会に行こう
勉強会に行こう
Kosuke Ogawa
ブロガーズフェスティバル2015 ライトニングトーク
ブロガーズフェスティバル2015 ライトニングトーク
Kazuhiro Maehara
月刊ライトニングトーク 2014/08: 前回からのダイジェスト
月刊ライトニングトーク 2014/08: 前回からのダイジェスト
Seiya Konno
スタートアップできなかった話
スタートアップできなかった話
MontBlanc. Tsukuda
ブロフェス2016 LTスライド(公開用)
ブロフェス2016 LTスライド(公開用)
Susumu Kataoka
IOS/Androidアプリの3つの大事な設計方針
IOS/Androidアプリの3つの大事な設計方針
Ken Morishita
アジャイル開発の現在・過去・未来~今を知り、源流を訪ね、先を見据える~
アジャイル開発の現在・過去・未来~今を知り、源流を訪ね、先を見据える~
Kenji Hiranabe
テーマ・プラグイン開発の光と闇 #wctokyo
テーマ・プラグイン開発の光と闇 #wctokyo
Hidekazu Ishikawa
Ltサンプルスライド
Ltサンプルスライド
Tsukasa Saeki
WindowsでPython
WindowsでPython
drillan
quiz
quiz
Arman Sharma
Lecture 4 measuring the cost of living
Lecture 4 measuring the cost of living
Gale Pooley
Daniel goodwin real estate law 150414
Daniel goodwin real estate law 150414
Gale Pooley
Fotos antigas
Fotos antigas
Umberto Pacheco
Mau menikmati hidup ? Begini caranyaaaa ... !!
Mau menikmati hidup ? Begini caranyaaaa ... !!
Bintang Fajar
A arte de Olbinski
A arte de Olbinski
Umberto Pacheco
Coderetreat
Coderetreat
YAMANE Toshiaki
06.超初心者向けセキュリティ入門(.netの解析と対策)
06.超初心者向けセキュリティ入門(.netの解析と対策)
Study Group by SciencePark Corp.
Weitere ähnliche Inhalte
Andere mochten auch
[Slide]闇アジャイラーvs光アジャイラーforDevLOVE(EnergizedWorkLT祭)
[Slide]闇アジャイラーvs光アジャイラーforDevLOVE(EnergizedWorkLT祭)
masashi takehara
International php conference 2016 参加レポート
International php conference 2016 参加レポート
Ryosuke Miyahara
Team geek感想LT
Team geek感想LT
Ryosuke Miyahara
月刊ライトニングトーク 2014/05 イントロダクション
月刊ライトニングトーク 2014/05 イントロダクション
Seiya Konno
勉強会に行こう
勉強会に行こう
Kosuke Ogawa
ブロガーズフェスティバル2015 ライトニングトーク
ブロガーズフェスティバル2015 ライトニングトーク
Kazuhiro Maehara
月刊ライトニングトーク 2014/08: 前回からのダイジェスト
月刊ライトニングトーク 2014/08: 前回からのダイジェスト
Seiya Konno
スタートアップできなかった話
スタートアップできなかった話
MontBlanc. Tsukuda
ブロフェス2016 LTスライド(公開用)
ブロフェス2016 LTスライド(公開用)
Susumu Kataoka
IOS/Androidアプリの3つの大事な設計方針
IOS/Androidアプリの3つの大事な設計方針
Ken Morishita
アジャイル開発の現在・過去・未来~今を知り、源流を訪ね、先を見据える~
アジャイル開発の現在・過去・未来~今を知り、源流を訪ね、先を見据える~
Kenji Hiranabe
テーマ・プラグイン開発の光と闇 #wctokyo
テーマ・プラグイン開発の光と闇 #wctokyo
Hidekazu Ishikawa
Ltサンプルスライド
Ltサンプルスライド
Tsukasa Saeki
WindowsでPython
WindowsでPython
drillan
quiz
quiz
Arman Sharma
Lecture 4 measuring the cost of living
Lecture 4 measuring the cost of living
Gale Pooley
Daniel goodwin real estate law 150414
Daniel goodwin real estate law 150414
Gale Pooley
Fotos antigas
Fotos antigas
Umberto Pacheco
Mau menikmati hidup ? Begini caranyaaaa ... !!
Mau menikmati hidup ? Begini caranyaaaa ... !!
Bintang Fajar
A arte de Olbinski
A arte de Olbinski
Umberto Pacheco
Andere mochten auch
(20)
[Slide]闇アジャイラーvs光アジャイラーforDevLOVE(EnergizedWorkLT祭)
[Slide]闇アジャイラーvs光アジャイラーforDevLOVE(EnergizedWorkLT祭)
International php conference 2016 参加レポート
International php conference 2016 参加レポート
Team geek感想LT
Team geek感想LT
月刊ライトニングトーク 2014/05 イントロダクション
月刊ライトニングトーク 2014/05 イントロダクション
勉強会に行こう
勉強会に行こう
ブロガーズフェスティバル2015 ライトニングトーク
ブロガーズフェスティバル2015 ライトニングトーク
月刊ライトニングトーク 2014/08: 前回からのダイジェスト
月刊ライトニングトーク 2014/08: 前回からのダイジェスト
スタートアップできなかった話
スタートアップできなかった話
ブロフェス2016 LTスライド(公開用)
ブロフェス2016 LTスライド(公開用)
IOS/Androidアプリの3つの大事な設計方針
IOS/Androidアプリの3つの大事な設計方針
アジャイル開発の現在・過去・未来~今を知り、源流を訪ね、先を見据える~
アジャイル開発の現在・過去・未来~今を知り、源流を訪ね、先を見据える~
テーマ・プラグイン開発の光と闇 #wctokyo
テーマ・プラグイン開発の光と闇 #wctokyo
Ltサンプルスライド
Ltサンプルスライド
WindowsでPython
WindowsでPython
quiz
quiz
Lecture 4 measuring the cost of living
Lecture 4 measuring the cost of living
Daniel goodwin real estate law 150414
Daniel goodwin real estate law 150414
Fotos antigas
Fotos antigas
Mau menikmati hidup ? Begini caranyaaaa ... !!
Mau menikmati hidup ? Begini caranyaaaa ... !!
A arte de Olbinski
A arte de Olbinski
Ähnlich wie ソフトウェア開発の格言
Coderetreat
Coderetreat
YAMANE Toshiaki
06.超初心者向けセキュリティ入門(.netの解析と対策)
06.超初心者向けセキュリティ入門(.netの解析と対策)
Study Group by SciencePark Corp.
現場で役立つシステム設計の原則
現場で役立つシステム設計の原則
増田 亨
20130603 aspnet勉強会 実践的debugging
20130603 aspnet勉強会 実践的debugging
kumake
CND(認定ネットワークディフェンダー / Certified Network Defender)公式トレーニングのご紹介
CND(認定ネットワークディフェンダー / Certified Network Defender)公式トレーニングのご紹介
グローバルセキュリティエキスパート株式会社(GSX)
Certified network defender
Certified network defender
Trainocate Japan, Ltd.
【セミナー講演資料】CND(認定ネットワークディフェンダー)公式トレーニング紹介
【セミナー講演資料】CND(認定ネットワークディフェンダー)公式トレーニング紹介
グローバルセキュリティエキスパート株式会社(GSX)
[SC12] あなたのチームのセキュリティスキルは十分ですか?DevSecOpsを見据えたセキュリティ人材の育成方法
[SC12] あなたのチームのセキュリティスキルは十分ですか?DevSecOpsを見据えたセキュリティ人材の育成方法
de:code 2017
ベンチマーク勉強会#01
ベンチマーク勉強会#01
milk hanakara
良いコードとは
良いコードとは
Nobuyuki Matsui
「ドメイン駆動設計」の複雑さに立ち向かう
「ドメイン駆動設計」の複雑さに立ち向かう
増田 亨
20130320 agile pm
20130320 agile pm
Takao Kimura
今、おさえておきたい DevOps
今、おさえておきたい DevOps
智治 長沢
Developers Summit 2014 【13-D-7】 コミュニティLT - Story 5. 「新人技術者にどうプログラミングを教えたか」
Developers Summit 2014 【13-D-7】 コミュニティLT - Story 5. 「新人技術者にどうプログラミングを教えたか」
Fujio Kojima
20100324 勉強会資料(ドメイン駆動)
20100324 勉強会資料(ドメイン駆動)
Masayuki Kanou
非開発者のためのアジャイル開発入門
非開発者のためのアジャイル開発入門
Kiro Harada
楽天市場で使われている技術、エンジニアに必要なコアスキルとはTechnology used in Rakuten, core skills neede...
楽天市場で使われている技術、エンジニアに必要なコアスキルとはTechnology used in Rakuten, core skills neede...
Rakuten Group, Inc.
20140115 potato tips No.3 Android App Test Development Driven and Jenkins CI ...
20140115 potato tips No.3 Android App Test Development Driven and Jenkins CI ...
tkawashita
GCSアジャイル開発を使ったゲームの作り方
GCSアジャイル開発を使ったゲームの作り方
Hiroyuki Tanaka
プロジェクトリーダに必要な3つのこと
プロジェクトリーダに必要な3つのこと
Yuji Okazawa
Ähnlich wie ソフトウェア開発の格言
(20)
Coderetreat
Coderetreat
06.超初心者向けセキュリティ入門(.netの解析と対策)
06.超初心者向けセキュリティ入門(.netの解析と対策)
現場で役立つシステム設計の原則
現場で役立つシステム設計の原則
20130603 aspnet勉強会 実践的debugging
20130603 aspnet勉強会 実践的debugging
CND(認定ネットワークディフェンダー / Certified Network Defender)公式トレーニングのご紹介
CND(認定ネットワークディフェンダー / Certified Network Defender)公式トレーニングのご紹介
Certified network defender
Certified network defender
【セミナー講演資料】CND(認定ネットワークディフェンダー)公式トレーニング紹介
【セミナー講演資料】CND(認定ネットワークディフェンダー)公式トレーニング紹介
[SC12] あなたのチームのセキュリティスキルは十分ですか?DevSecOpsを見据えたセキュリティ人材の育成方法
[SC12] あなたのチームのセキュリティスキルは十分ですか?DevSecOpsを見据えたセキュリティ人材の育成方法
ベンチマーク勉強会#01
ベンチマーク勉強会#01
良いコードとは
良いコードとは
「ドメイン駆動設計」の複雑さに立ち向かう
「ドメイン駆動設計」の複雑さに立ち向かう
20130320 agile pm
20130320 agile pm
今、おさえておきたい DevOps
今、おさえておきたい DevOps
Developers Summit 2014 【13-D-7】 コミュニティLT - Story 5. 「新人技術者にどうプログラミングを教えたか」
Developers Summit 2014 【13-D-7】 コミュニティLT - Story 5. 「新人技術者にどうプログラミングを教えたか」
20100324 勉強会資料(ドメイン駆動)
20100324 勉強会資料(ドメイン駆動)
非開発者のためのアジャイル開発入門
非開発者のためのアジャイル開発入門
楽天市場で使われている技術、エンジニアに必要なコアスキルとはTechnology used in Rakuten, core skills neede...
楽天市場で使われている技術、エンジニアに必要なコアスキルとはTechnology used in Rakuten, core skills neede...
20140115 potato tips No.3 Android App Test Development Driven and Jenkins CI ...
20140115 potato tips No.3 Android App Test Development Driven and Jenkins CI ...
GCSアジャイル開発を使ったゲームの作り方
GCSアジャイル開発を使ったゲームの作り方
プロジェクトリーダに必要な3つのこと
プロジェクトリーダに必要な3つのこと
ソフトウェア開発の格言
1.
ソフトウェア開発の格言
2.
目次 ❏ DRY原則 ❏ プレイン・テキストの威力 ❏
ボーイスカウトルール ❏ 割れ窓理論 ❏ 偶発的プログラミング
3.
DRY原則 Don’t Repeat Yourself(繰り返しを避けるこ と) すべての知識はシステム内において、単一、かつ明確な、 そして信頼できる表現になっていなければならない。 「達人プログラマー」より
4.
DRY原則 要は情報の一元管理 だけど、必ずしも守れるものではない ❏ 設計書とコード ❏ コードとコメント ❏
パフォーマンスを上げるためのキャッシュ とは言え、極力この原則を守った方が良い やむを得ない部分では、メンテナンスに注意す る
5.
プレイン・テキストの威力 達人プログラマーが取り扱う素材は木でも鉄でもありませ んー知識です。我々は要求を集めて知識とし、設計、実装、 テスト、ドキュメントの中でその知識を表現するのです。 プレイン・テキストを使えば手作業、自動的な作業を問わ ず、事実上すべてのツールを使って思い通りに知識を操作 することができるようになるのです。 「達人プログラマー」より
6.
プレイン・テキストの威力 プレイン・テキストのイイトコ ❏ diffが取りやすい(バージョン管理しやすい) ❏ コードの自動生成ができる ❏
コードから自動生成ができる
7.
できたらいいなと思うプロセス ❏ 設計レビュー用仕様書はwordでもexcelでも 良い ❏ 設計が固まった後の仕様書(メンテナンス 用)は、プレイン・テキストで作成する ❏
仕様書とコードの両方に現れる情報は、一方から他 方を自動生成できるようにする ❏ 外部インターフェース、内部インターフェース、 etc...
8.
できたらいいなと思うプロセス ❏ プログラムにおける唯一の真実はコード ❏ 仕様書になんと書いてあっても、実際の動 作はコードが全て ❏
コードがコミットされると、コードからド キュメントが自動生成されたら、少なくと もコードとそのドキュメントに乖離はなく なる プレインテキストの威力+DRY原則
9.
ボーイスカウトルール アメリカのボーイスカウトの以下のルールを、コーディン グにも適用すること: キャンプ場を、来た時よりも綺麗にして帰ること チェックアウトした時よりも、少しでも綺麗に してチェックインする 「Clean Code」より
10.
ボーイスカウトルール チェックアウトした時よりも、少しでも綺麗に してチェックインする ❏ 「解読に苦労した部分にコメントを追加する」 これだけでも、次に読む人の工数を結構削減できる かも。 ❏ 変数の意味 ❏
関数コメント ❏ etc...
11.
割れ窓理論 「建物の窓が壊れているのを放置すると、誰も注意を払っ ていないという象徴になり、やがて他の窓もまもなく全て 壊される」という考え方 コード中のささいなtypoやちょっとしたスパゲッティが放 置されると、「このコードの品質はこの程度でいいんだ」 という感じで新たなtypoやスパゲッティを呼んでしまう Broken Windows: The
police and neighborhood safety 「達人プログラマー」
12.
ボーイスカウトルールと割れ窓理論 ボーイスカウトルールを適用して、割れ窓を発 見したら自分の変更に加えて是非窓の修理を!
13.
偶発的プログラミング コードを書いてみて、テストしてみて、動いた からOK、は危険!(偶発的プログラミング) ❏ たまたまテストした時の条件がうまく合致していた だけかもしれない。 ❏ もし何らかのルーチンを呼び出す場合には、ドキュ メント化されている振る舞いのみを前提とする ❏
ドキュメント化されていないルーチンを呼ぶ必要が あるときは、自分の仮定をドキュメント化しておく 「達人プログラマー」
Jetzt herunterladen