解決折線圖動態漸變-感悟

        經過幾個周的輾轉,折線圖由最初的漸變,到中間真實數據的無動畫效果,再到真實數據的漸變成功,其實界面刷新的實現邏輯是沒有問題的,只是中間爲了避免邊界爲0的情況,稍微的改變了下實現方式,恰巧就是這微不足道的改動導致了2個周的維修時間,很多時候項目接近尾聲的時候都是牽一髮動全身,所以一定要做好代碼備份工作,再就是你要時刻知道你所改動的任何一處代碼是爲了做什麼;

        遞交了月末考覈之後,自己就開始跟同事一起認真的debug,從頭到尾,追查任何一處,最終在一個微不足道,難以引起注意的對象引用上發現了些端倪,同一個對象,自始至終都沒有重新new過,然後每次查詢數據庫的時候將數據塞進這個對象中,第二次塞數據之前,將當前的對象數據放置另外一個緩存對象中,從緩存對象到現在的對象之間做一個折線的漸變,而不是從0開始上升。但是問題來了,這兩個對象都指向最新的數據在內存中的地址,即兩個對象引用指向同一塊兒內存,怎麼會有漸變?怎麼會有?所以只能在獲取一次數據庫的數據後重新new一個對象,將上次的對象放入緩存中,這樣這兩個對象的hashcode纔不同,即不是同一個對象內存,中間纔會有漸變!其實這個知識點單單放到一個練習知識點中是很容易引起你的注意並能夠成功區分的,但是在真實項目環境中,這種模糊的概念會讓你模棱兩可,歸根結底還是自己Java基礎的不足所致,雖然自己已經補充足夠多的基礎,但是結果說明自己只是侷限於知道層面,沒有真正的應用起來,紙上談兵,移到真實環境中就兩手空了;所以結論是:Java基礎仍有待加強!要達到融會貫通不是一兩天能解決的;

        其實我想說,一個人之所以成爲其他人眼中的大牛,不是他技術有多高深,而是他有着極強的錯誤定位能力、和極強的糾錯能力,或許在我看來一兩個周解決不了的問題,在他眼中,只要知道了代碼邏輯,很快就能定位並給出解決方案,而我只能定位無從解決,所謂知其然不知其所以然,自己要走的路還很長,好好加油補充吧;

        冰凍三尺非一日之寒~       

        C++編程思想先暫時一放,好好補充下Java中的對象-內存之間的映射、引用關係,這纔是當務之急;Java編程思想、瘋狂Java講義,我又來啃你們倆啦!!

發佈了46 篇原創文章 · 獲贊 17 · 訪問量 16萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章