如何從零開發一個框架(序)

在現公司工作了5年之後,終於決定接受一些新的挑戰。下個月就要去新公司入職,回頭看看過去5年,做了一些有意思的工作,也有一些遺憾。不過不管怎樣,人生總是要向前的,在翻過這個新篇章的時候,我覺得,似乎可以寫點東西來總結一些過去5年的工作,也算是對自己的一個交代吧。

過去5年,做得最有意思的工作,大概就是親手開發了兩個框架來支持公司的業務開發,即使我現在離開公司,這兩個框架在可以預見的將來也還會將繼續支持公司的業務。一點遺憾大概就是,公司畢竟不是大公司,在業界沒有什麼知名度,因此沒能成功的將這兩個框架向外界推廣介紹出去。當然,框架本身設計理念比較特殊,不是有特殊需求和偏好的開發者,大概很難在一開始接受框架的思維方式。雖然實際上,公司的新員工都會普遍經歷從一開始的半信半疑到後來的欲罷不能的過程,但的確還是受限於公司的知名度,很難讓人相信我們真的可以做到在如此成熟的WEB開發領域,仍然可以大幅度提高開發效率這樣的事實。

寫下上面這一大段文字後,回頭一讀,似乎自己一直在抱怨公司拖累了我走向網紅的道路,真是非常抱歉,我心裡。。。。啊,其實偶爾還是想過的(害羞ing)。。。不過,歸根結底,我還是要感謝公司的,因為很少能夠有這樣的機會從頭開始寫一個框架並真正將其投入生產環境並進行持續的維護,這樣的經歷,這大概今後都會一直都會是我職業生涯的一筆財富。所以,還是得強調一次,我非常感謝這5年在公司的經歷。

回過頭來,這樣難得的經歷,我回頭想來,覺得的確還是有很多思考或者說撕烤的過程,是值得分享出來給大家看看的。有很多有志於開發自己的框架的開發者,或者稍微保守一點的說,有很多希望能夠在開發中總結並實現自己的設計思想的開發者,很多時候,囿於經驗和見識,會犯下很多錯誤,導致不能很好的實現自己的想法。可以說,可能超過一半的開發者都試圖開發過自己的框架,或者類似框架的東西,但最終真正能夠完成的寥寥無幾。所以,我希望我分享的經歷,能夠幫助這些開發者的成長。

最後,我無意在這個系列文章中吹噓自己的框架有多高妙或者說貶低別的框架有多糟糕,也無意討論某些設計理念和思想是否合理,我意在分享的是,當我作出一個設計決策的時候,我的理由是什麼,我是如何在作出決策的時候進行權衡取捨的,讀者其實完全可以不贊成我最終的決定,但是如果我撕烤的過程能夠讓你覺得有所收穫,我就非常高興了。

最後的最後,放上框架的鏈接,算是熱身:

astamuse/asta4d

astamuse/asta4js

====

如何從零開發一個框架(1)


推薦閱讀:

0基礎如何在5天之內完成一個選戶系統?
為什麼 Tornado 在調用 self.finish() 以後不終止 RequestHandler 中相關處理函數的運行?
單頁網站如何得到較高的用戶體驗?
google的material-ui為什麼沒有柵格系統?

TAG:软件设计 | 框架 | Web开发 |