# 許願區 🧞 > 此區包含預期在短期不會做的事情 ### [RN] Dependency cycle 問題 - Nora (需要再研究問Kei的意見) 說明: Dependency cycle 優點: 避免不預期bug ![](https://i.imgur.com/iUkaoPi.png) Solution:更改資料夾 難度::star: 風險::star: :star: :star: :star: :star: 可能遇到的問題: >While circular dependencies may not directly result in bugs (they certainly can), they will almost always have unintended consequences. In our project, we were experiencing slow TypeScript type-checking and frequent dev-server “JavaScript heap out of memory” crashes. 參考: - [link1](https://github.com/benmosher/eslint-plugin-import/blob/v2.22.1/docs/rules/no-cycle.md) - [link2](https://spin.atomicobject.com/2018/06/25/circular-dependencies-javascript/) 渴望度:9/20 ### [Android/iOS/Core] 避免送出交易後卡在等待回應 - Clement 說明:發送交易後,立即更新(扣除)資料庫餘額,而非等到交易成功後才 get balance。若交易失敗則通知用戶並加回資料庫餘額。 難度::star:(請CP做) 風險::star::star::star::star::star: 渴望度:5/20 優點: 加總 utxo 當作 btc 的 balance(Ed),但可能有balance不符合使用者預期的結果 1. 減少等待時間 2. 避免重複交易(若成功則餘額不足) 可能會遇到的問題:程式架構更改、CP 支援 ### [RN] refactor class component... - Danny 說明:React-Redux原本使用的Conncet與MapStateToProps會在每一次的Dispatch Event Trigger Re-render,這會造成不必要的效能問題。在最新版本的Redux中,新的Hook useSelect, useDispatch解決了這個問題,可以在每次的Dispatch後以shallowCompare的方式避免不必要的Re-render。 難度::star::star: 風險::star::star::star: 渴望度:7/20 優點: 1. 優化效能 可能會遇到的問題: - 耗時 - exchange那邊class component都要再測過 ### [RN] 寫integration test - Nora 說明:寫integration test確認有符合UI FLOW 難度::star::star::star: 風險::star: 優點:1. 確認page flow有沒有符合需求 2. 避免別的地方改動影響 可能會遇到的問題:比較花時間 渴望度: 參考: ```javascript= test('given empty GroceryShoppingList, user can add an item to it', () => { const { getByPlaceholder, getByText, getAllByText } = render( <GroceryShoppingList /> ); fireEvent.changeText( getByPlaceholder('Enter grocery item'), 'banana' ); fireEvent.press(getByText('Add the item to list')); const bananaElements = getAllByText('banana'); expect(bananaElements).toHaveLength(1); // expect 'banana' to be on the list }); ``` ### [Android] debug 和 release 的 package id 分開 - Clement 說明:debug 和 release 的 package id 分開 優點:可以同時安裝 debug 和 release 版本在裝置上 難度::star: :star: 風險::star: 渴望度:4/15 可能會遇到的問題: 1. CircleCI 與 Fastlane 修改 參考:[Organizing your Firebase-enabled Android app builds](https://firebase.googleblog.com/2016/08/organizing-your-firebase-enabled-android-app-builds.html)