需求描述:路人甲家里没有雨伞,出门总是被雨淋。为了不被雨淋,想到买一把雨伞。
实现:买了一把雨伞放家里。解决了下雨天,从家里出去被雨淋的情况。有一天,他从公司下班,突然下雨,想到雨伞在家里,又被淋着回家。
第一次性能优化:再买一把伞放公司。解决了下雨天,从公司回家被雨淋的情况。有一天,他出去玩,正要回家时,突然下雨,想到雨伞在家里和公司,又被淋着回家。
第二次性能优化:再买一把伞放背包里,随身携带。解决了出去玩儿时,被雨淋的情况。
至此,经过两次优化,解决了任何时候被雨淋的情况。
实现:买了一把雨伞放家里。解决了下雨天,从家里出去被雨淋的情况。有一天,他从公司下班,突然下雨,想到雨伞在家里,又被淋着回家。
第一次性能优化:再买一把伞放公司。解决了下雨天,从公司回家被雨淋的情况。有一天,他出去玩,正要回家时,突然下雨,想到雨伞在家里和公司,又被淋着回家。
第二次性能优化:再买一把伞放背包里,随身携带。解决了出去玩儿时,被雨淋的情况。
至此,经过两次优化,解决了任何时候被雨淋的情况。
注:不考虑雨大的情况。
性能优化就是这样,不断分析项目中存在的问题,即瓶颈,然后解决瓶颈的过程。