程序員的慣性思維,比如看到雙十一有的商品是0點結賬,有的是1點才能結賬,我就會好奇為什么要分開?
結合前幾年雙十一的巨大流量,我分析的原因是分流,即如果大家都趕在0點下單,會對結算系統有巨大的流量沖擊,極有可能造成崩盤,如果令一部分商品必須在1點才能結賬,無形之中就緩解了0點時候的系統壓力,而且要在1點結賬的人通常還會為了消磨時間繼續逛,說不定就會又下單買了些什么,真的是一個一舉兩得的好辦法。
上面就是一個例子,是想說看到很多互聯網公司的策略的時候,會情不自禁的從技術的角度去分析策略的制定原因。
接下來再舉幾個例子和大家分享下。
比如路邊的廣告燈牌,其實是有N*M個小小燈泡組成的,從一個燈泡的角度來說,只有亮(1)和不亮(0)兩種狀態,但是通過操作全體燈泡,卻能營造出文字流動的效果。我就很喜歡去推算這種算法的邏輯。
再比如平時做事,很喜歡用程序員拆解大功能到不同子方法并引入高并發的這樣的思維。就比如說我要做飯,這個時候,會首先把整個流程分為買菜,洗菜,切菜,下鍋,但是如果要同時做幾道菜的話,我會進一步想如何高并發的操作能最快完成整個烹飪過程呢,比如泡著菜的時候去切即將下鍋的菜,菜在鍋里不需要翻的時候去把泡著的菜洗出來,等到只剩烹飪又不用盯著鍋的時候,把洗菜切菜的廚具清洗干凈等等。這一整套流程看起來就是一個精明的家庭主婦會做的,但是其實里面就使用了分解與高并發呀,假設你是準備完一道菜,烹飪一道菜,出鍋一道菜再準備下一道菜,那這個過程就是串行的,而你作為核心CPU,就會浪費很多時間在等待上了呀。
程序員思維最好的一點是講究邏輯,我相信這個社會是邏輯驅動的,因此這種思維也給我的生活帶來了很多便捷。
以上是我的淺見,歡迎各位在下方評論區給我交流點贊。
我是蘇蘇思量,來自BAT的Java開發工程師,每日分享科技類見聞,我,與我共同進步。