54.
54
Martin Fowlerの犠牲的アーキテクチャ
“For many people throwing away a code base is a sign of failure, perhaps
understandable given the inherent exploratory nature of software development, but
still failure. But often the best code you can write now is code you'll discard in a
couple of years time.”
“多くの人々にとって、コードベースの破棄とは失敗の象徴です。ソフトウェアが本
来持つ調査的性格を考慮したとしても。しかし、いま書けるベストなコードが数年後
に捨てられるということは珍しくないのです”
http://martinfowler.com/bliki/SacrificialArchitecture.html
数年後に破棄することを前提にコードを書くという考え方。
長いスパンでのプロトタイピングとしてアーキテクチャを考える。
twitter:Rails→Scala
PayPal:Perl→C++→Java
dwango:PHP→Scala
コードベースを刷新した例
開発に失敗したのではなく、
検証に成功したとみなす
65.
65
システム移行戦略
EC2
(Internal API)
EC2
(Event Fetcher)
Tokyo Tokyo
Beanstalk
DynamoDB
現行システム
RDS(MySQL)
腐敗防止層
新システム
call
action
fetch
SQS
(Event Queue)
push
call
old api user new api user
Be the first to comment