去年寫了乙個類似人際關係圖展現的小東西,一直沒有時間總結開發中遇到的問題。現在稍微總結一下。
在開發這個東西的時候,效能消耗是我最關心的地方,我總結出以下幾點:
1.在程式設計中盡量使用as來完成,少用它自帶的元件。
究其原因,自然是元件的靈活性、效率的可優化性有了提高。當然,這裡有特定的原因,比如我寫的這個東西,裡面包含線與節點,這些東西用as底層的類就能輕鬆實現,無需太多複雜的屬性。
2.記憶體一定要控制好。
也許在其他型別的專案中,這點不是非常重要,但是對於我這種不停的新增、減少節點和線段的操作,需要對記憶體控制非常嚴格,否則軟體在執行到一定的程度之後必定會出現記憶體溢位的慘劇。
3.無論何時何地,一定要注意編碼格式以及規範,多用繼承。
用as**編寫介面,特別是較為複雜的介面,**的量往往很大,一旦乙個檔案中出現的**超過了四五百行,就得考慮是否需要優化,當然這個不是絕對的,我個人的承受極限是五百行至六百行,超過這個數字我就感覺很難維護了。
4.抽取核心演算法,封裝成swc。
對於這種軟體,必定會包含大量自定義的元件、演算法等等,可以嘗試將裡面最核心的內容封裝成swc放在外部呼叫,在與業務互動上盡量做到底耦合,否則你辛辛苦苦寫的類庫、元件都只能是一次性的。如果出現其他的專案需要類似的東西,你不得不自己重新編寫一套元件。
5.圖形介面就是考你的數學幾何
這點不得不承認,做這種東西,好的幾何基礎,能讓你的介面更加的絢麗。在這個軟體中我就用到了二維向量和貝塞爾曲線,當然,貝塞爾曲線是as自己就帶了的。不過多了解一點會更好難道不是嗎?
Flex元件開發總結
1.如何監聽鍵盤事件?private function sendkeyhandler evt keyboardevent void 說明 有兩種型別的鍵盤事件 keyboardevent.key down和keyboardevent.key up 以上是監聽的是回車事件 要是想監聽組合鍵,例如 ct...
Flex元件開發總結
www.diy567.com累了,去上面休息一下下,qq空間,美文,非主流,網路日記,搞笑簡訊,祝福簡訊,熱門簡訊,有意思啊 1.如何監聽鍵盤事件?private function sendkeyhandler evt keyboardevent void 說明 有兩種型別的鍵盤事件 keyboar...
Flex元件開發總結
1.如何監聽鍵盤事件?private function sendkeyhandler evt keyboardevent void 說明 有兩種型別的鍵盤事件 keyboardevent.key down 和 keyboardevent.key up 以上是監聽的是回車事件 要是想監聽組合鍵,例如 ...