2011-10-03 33 views
3

我有一個支持Firefox 3+的Firefox擴展,並且SQLite數據庫對於我的擴展很重要。我看到on the MDN API可能會改變,它「解凍」,我應該擔心它嗎?Firefox 3.0中的SQLite存儲+

該API目前是「解凍」,這意味着它隨時可能更改 ;事實上,Firefox自推出以來,每次發佈 都有所變化,並且可能會繼續爲 這麼做。

回答

4

此警告可能已過時,它已添加到多年前的文檔的原始版本,並且自此以後未更新。事實是,從Firefox 4開始,所有的 API都解凍並可能發生變化。但這不應該是一個令人擔心的理由。隨着SQLite訪問的進行,API現在看起來已經相當成熟,Mozilla開發人員大多都在調整性能,而不會引入重大更改。最重要的變化是在Firefox 3.5中引入了異步API,並且棄用了同步API。但只要你只使用異步API,你應該是安全的(我不能想象你真的需要支持古老的Firefox 3.0版本,我猜你實際上意味着Firefox 3.6)。

+0

嗨弗拉基米爾,感謝您的回答,我的意思是「古老的」firefox 3.0版本,目前我支持firefox 3.0+,所以firefox 3-3.5支持同步API和firefox 4+支持異步API,這些是不同之處? – Yosi

+0

@Yosy:Firefox 3.0僅支持同步API,從Firefox 3.5開始,支持異步API。你真的不應該使用同步API,它是導致Firefox 3.0中一些最糟糕的性能問題的原因。你應該認真考慮放棄對Firefox 3.0/3.5的支持。 –

0

對於如此廣泛使用的東西,我懷疑它,但它很容易編寫代碼來解決這個問題,並保持你的插件向後兼容(至少在JavaScript中)。我最終做的是抽象的方法,確實改變和包裝他們在我自己的電話,將做類似

if (methodInFF3) doFF3Method(); 
else doNewMethod(); 

或類似的東西。這種方式當事情發生變化時,我只需要在一個地方而不是多個地方更改代碼,但是第一次發生這種情況時,我必須隨時更改代碼。對於SQLite我可能不會太擔心,但這只是我,只要確保新版本發佈時,您檢查文檔以查看是否有任何更改,並且您應該沒問題。

+0

您可能會將其與'localStorage'混淆。至於SQLite訪問,它已經改變 - 同步訪問已被棄用,並可能在未來被刪除。 –