原创 代碼重構的真正意義

         代碼重構,什麼時候開始呢?當我們被自己寫的Code逼上梁山的時候。         美國心理學家曾提出過一個”破窗理論“。認爲:如果有人打壞了一幢建築物的窗戶玻璃,而這扇窗戶又得不到及時的維修,別人就可能受到某些示範性的

原创 史上最全前端面試題及解答(一)

阿里巴巴 1、請簡要介紹一下Koa2中間件原理。 Koa2中間件,主要由四大部分構成,application、context、request、response構成,在application中通過use來註冊我們所要使用的中間件,

原创 算法基礎之完全理解歸併排序

算法思想 當我們要排序一個數組時,可以將這個數組先分段,例如將一個數組分兩半,然後分成的兩半繼續裂變,直到沒有可分的時候,再將數組歸併起來,這個數組就有序了。其實現代碼可以說是極其簡單,下面我來爲大家展示一下這個算法到底有多簡單.

原创 算法基礎之最簡潔的代碼實現快速排序

背景 面試的時候,大廠一般都會有算法面試。在這之中, 快排可以說是比較高頻了。嚴格一點的面試官,都會要求用記事本寫一個可以立即運行的快排程序。一般,如果時間充裕,大家是都能夠寫出來的,然而往往面試官不會給你留那麼多的時間。10分鐘

原创 算法基礎之完全理解希爾排序

背景 希爾排序,作爲八大排序算法之一,也是面試常考的算法。 它屬於插入排序中的一種,總的看來,主要是通過縮小增量因子來實現對數組進行分組插入排序。這樣看來,就很簡單了。 如果我們將簡單插入排序算法看作是增量爲1的希爾排序,那麼增量

原创 經典面試題-順時針打印矩陣

題目描述 輸入一個矩陣,按照從外向裏以順時針的順序依次打印出每一個數字,例如,如果輸入如下4 X 4矩陣: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 則依次打印出數字1,2,3,4,8,12,1

原创 算法基礎之徹底理解冒泡排序及其深度優化

冒泡排序 冒泡排序,作爲最基礎的算法之一,屬於選擇算法中的一種簡單比較算法。其複雜度在最簡單情況下爲O(n), 最複雜情況下爲O(n2),也常作爲面試必考算法。本篇主要通過Javascript來實現冒泡排序以及其優化過程。 1、冒

原创 React-Native之可配置化的圖片資源預加載方案

背景 在RN開發過程中,我們深受Rn包體積的擴大而困擾。爲了優化包體積,最直接的方式莫過於減少本地資源的引用(將資源上傳到雲端)。然而雖然包的體積大大減小,但伴隨而來的則是由於網絡延時導致的加載緩慢,進而引發嚴重的體驗問題,結果自

原创 對數的換底公式的推導

複習高中數學的時候,由於教材沒有告知對數公式的推導,所以自己推導了一遍,貢獻給大家!

原创 React-Native之如何迅速縮小包體積而不影響性能

React-Native作爲reactjs的一個延伸,以H5和Native之間的中間地帶角色存在於我們的項目中。 由於支撐了大量的業務場景,不容置喙的導致體積迅速增大,當然對RN來說,這也許不會導致嚴重的性能問題,甚至還有可能提升性能(因

原创 年薪百萬頂級架構師-打卡第一天

年薪百萬頂級架構師-打卡第一天

原创 代碼重構之路

         代碼重構,什麼時候開始呢?當我們被自己寫的Code逼上梁山的時候。         美國心理學家曾提出過一個”破窗理論“。認爲:如果有人打壞了一幢建築物的窗戶玻璃,而這扇窗戶又得不到及時的維修,別人就可能受到某些示範性的