JungIn Choi
04/10/2021, 2:58 PMDay27
• Halfway through Lesson7
◦ issue with _notifyDataSetChanged_() - screen updates even if the modified item is off screen.
▪︎ can lead to performance degradation, unsatisfactory user experience due to flickers while scrolling
◦ DiffUtil - Helper for RecyclerView adapters that calculates changes in lists and minimizes modifications
◦ Updating Adapter to use data binding
▪︎ wrap with <_layout_> tag, put <_data_> inside (should rebuild after then!)
▪︎ BindingAdapter - adapter that adapts the application data into something data binding can display on the screen
◦ RecyclerView use LayoutManager to control and modify the layout strategy
▪︎ LinearLayoutManager, GridLayoutManager
• Etc. memos
◦ (recap) Data binding - Creating an object that connects, maps, binds two pieces of distant information at compile-time, instead of runtime. Allows us to easily observe & show the data to the UI from a data source.
◦ (recap) “_inflating_” a layout refers to converting xml layout view into memory’s kotlin view object.
Self-Comment
• RecyclerView seems to be quite important. Hoping to get used to it. I should learn how to use android profiler. Want to check rendering time, cpu usage etc. of using RecyclerView vs. others
• Lovely weekend, enjoying daytime in some beautiful office, afternoon cleaning my dirty room... Spent only three-four hours of working time, but it was productive.
Goals Tomorrow
• Finish lesson7, Spend some time organizing thoughts before Monday. (Lunch is planned with the CEO of startup I'm about to work in,,) Though it's not a formal interview time, I must be prepared & be ready to clarify basic stuffs