λ³Έλ¬Έ λ°”λ‘œκ°€κΈ°

μΉ΄ν…Œκ³ λ¦¬ μ—†μŒ

8/31 read post

728x90
λ°˜μ‘ν˜•

1.

좜처 : Hide internal members of Kotlin Module from JVM πŸ”

제λͺ© : Hide internal members of Kotlin Module from JVM πŸ”

μš”μ•½ : 라이브러리 λ˜λŠ” SDK κ°œλ°œν•˜λŠ” 경우 일뢀 ν΄λž˜μŠ€μ™€ ν”„λ‘œνΌν‹°λ₯Ό λ…ΈμΆœν•˜κ³  싢지 μ•Šμ„ λ•Œ μ–΄λ–»κ²Œ ν•΄μ•Ό ν•˜λŠ”μ§€ μ„€λͺ…ν•©λ‹ˆλ‹€. μ½”ν‹€λ¦°μ˜ internal ν•œμ •μžλ‘œλŠ” μžλ°”μ—μ„œ ν˜ΈμΆœν•˜λ©΄ 접근이 κ°€λŠ₯ν•˜κΈ° λ•Œλ¬Έμ— 이λ₯Ό λ°©μ§€ν•˜λŠ” 2가지 방법을 μ†Œκ°œν•©λ‹ˆλ‹€. ν•˜λ‚˜λŠ” ‘@JvmName(“#$”)을 μ‚¬μš©ν•˜λŠ” 것인데 ν•„λ“œμ— μ μš©ν• μˆ˜ μ—†κ³  쒋은 방법이 μ•„λ‹ˆκ³ , λ‘λ²ˆμ§ΈλŠ” '@JvmSynthetic’ 을 μ‚¬μš©ν•˜λŠ” 방법을 μ„€λͺ…ν•©λ‹ˆλ‹€.

 

2.

좜처 : Kotlin by lazy under the hood

제λͺ© : Kotlin by lazy under the hood

μš”μ•½ : lazy ν‚€μ›Œλ“œ κ°€ λ‚΄λΆ€κ°€ μ–΄λ–»κ²Œ λ˜μ–΄μžˆλŠ”μ§€ μ–΄λ–»κ²Œ λ™μž‘ν•˜λŠ”μ§€μ— λŒ€ν•΄ μ„€λͺ…ν•©λ‹ˆλ‹€. lazy λ‚΄λΆ€μ μœΌλ‘œλŠ” double-checked locking νŒ¨ν„΄μœΌλ‘œ 싱글톀 객체λ₯Ό μƒμ„±ν•˜κ³  μžˆλŠ” 것을 μ„€λͺ…ν•©λ‹ˆλ‹€.

 

3.

좜처 : Navigation Componentβ€Š—β€ŠComparison between viewModels(), activityViewModels() and…

제λͺ© : Navigation Component — Comparison between viewModels(), activityViewModels() and navGraphViewModels()

μš”μ•½ : android-ktx λΌμ΄λΈŒλŸ¬λ¦¬μ—μ„œ μ œκ³΅ν•˜λŠ” viewModels, activityViewModels, navGraphViewModels 에 λŒ€ν•΄μ„œ μ„€λͺ…ν•©λ‹ˆλ‹€. 각각 fragment scope, activity scope, navGraph scope λ₯Ό 가지며 이에 λŒ€ν•œ 증λͺ…을 μ½”λ“œλ‘œ ν™•μΈν•©λ‹ˆλ‹€.

 

4.

좜처 : https://medium.com/better-programming/thoroughly-understand-git-rebase-2a7c40a5dfd6

제λͺ© : Thoroughly Understand Git-Rebase

μš”μ•½ : Git Rebase 에 λŒ€ν•΄μ„œ μ„€λͺ…ν•©λ‹ˆλ‹€. rebase μ—μ„œ vi νŽΈμ§‘λͺ¨λ“œλ₯Ό 톡해 μ‚¬μš©ν•˜λŠ” μ—¬λŸ¬ λͺ…령어듀에 λŒ€ν•΄μ„œ μ„€λͺ…ν•˜κ³ , μ—¬λŸ¬ 컀밋 λ ˆμ½”λ“œλ₯Ό λ³‘ν•©ν•˜λŠ” 방법과 λΆ„κΈ°λ₯Ό λ³‘ν•©ν•˜λŠ” 방법에 λŒ€ν•΄μ„œ μ„€λͺ…ν•©λ‹ˆλ‹€. 그리고 μ΅œμ‹  변경사항을 λ™κΈ°ν™”ν•˜κΈ° μœ„ν•΄ μ‚¬μš©ν•˜λŠ” μ‹œλ‚˜λ¦¬μ˜€μ— λŒ€ν•΄μ„œ μ„€λͺ…ν•©λ‹ˆλ‹€. λ§ˆμ§€λ§‰μœΌλ‘œ rebase 둜 인해 μ»€λ°‹λ ˆμ½”λ“œκ°€ μ†μ‹€λ˜λŠ” 과정을 μ„€λͺ…ν•©λ‹ˆλ‹€.

 

5.

좜처 : Dynamic feature modules. Is it worth the effort?

제λͺ© : Dynamic feature modules. Is it worth the effort?

μš”μ•½ : λ‹€μ΄λ‚˜λ―Ή ν”Όμ²˜ λͺ¨λ“ˆμ΄ 무엇인지 μ„€λͺ…ν•˜κ³  μ–΄λ–»κ²Œ λ™μž‘ν•˜λŠ”μ§€ μ„€λͺ…ν•©λ‹ˆλ‹€. 그리고 8가지 μ œν•œμ‚¬ν•­μ— λŒ€ν•΄μ„œ μ„€λͺ…ν•©λ‹ˆλ‹€. μ œν•œμ‚¬ν•­μœΌλ‘œ 인해 λ°œμƒν•  수 μžˆλŠ” 였λ₯˜λ“€μ— λŒ€ν•΄μ„œ μ„€λͺ…ν•˜κ³  이것이 적합할 것 같은 예 2가지λ₯Ό μ„€λͺ…ν•©λ‹ˆλ‹€. λ‹€μ΄λ‚˜λ―Ή 피쳐 λͺ¨λ“ˆμ„ μ μš©ν•˜κΈ° μœ„ν•΄μ„œλŠ” κ³ λ €λ₯Ό 많이 ν•΄μ•Ό ν•œλ‹€κ³  μ„€λͺ…ν•©λ‹ˆλ‹€.

 

6.

좜처 : OnBackPressed Deprecated So What to Use

제λͺ© : OnBackPressed Deprecated So What to Use

μš”μ•½ : targetSdk 33 으둜 μ—…λ°μ΄νŠΈν•˜λ©΄ OnBackPressed κ°€ deprecated 되기 λ•Œλ¬Έμ— λŒ€μ²΄λ‘œ μ‚¬μš©ν•˜λŠ” onBackPressedDispatcher λ₯Ό μ„€λͺ…ν•©λ‹ˆλ‹€. onBackPressedDispatcher λ₯Ό κ΅¬ν˜„ν•˜κΈ° μœ„ν•œ 쒅속성 μ„€μ • 방법과 μƒ˜ν”Œ μ½”λ“œμ˜ git μ£Όμ†Œλ₯Ό μ†Œκ°œν•©λ‹ˆλ‹€.

 

7.

좜처 : https://medium.com/proandroiddev/ktor-client-decoded-what-why-how-and-when-c6dca7559390

제λͺ© : Ktor-Client Decoded!! What, Why, How and When????

μš”μ•½ : Ktor κ°€ 무엇인지, retrofit 이 이미 μžˆλŠ”λ° μ™œ ktor λ₯Ό 써야 ν•˜λŠ”μ§€μ— λŒ€ν•΄μ„œ μ„€λͺ…ν•©λ‹ˆλ‹€. Ktor λŠ” μ•ˆλ“œλ‘œμ΄λ“œ ν”Œλž«νΌ 이 μ•„λ‹Œ λ‹€λ₯Έ ν”Œλž«νΌμ—μ„œλ„ μ‚¬μš©ν•  수 μžˆλŠ” 라이브러리 이기 λ•Œλ¬Έμ— μ’‹λ‹€κ³  μ„€λͺ…ν•©λ‹ˆλ‹€. 그리고 Ktor λ₯Ό μ–΄λ–»κ²Œ μ‚¬μš©ν•˜λŠ”μ§€ μ½”λ“œλ‘œ μ„€λͺ…ν•©λ‹ˆλ‹€.

 

8.

좜처 : Java new features 8,9,10,11,12,13,14,15,16,17,18

제λͺ© : Java new features 8,9,10,11,12,13,14,15,16,17,18

μš”μ•½ : μžλ°”μ˜ 버전 8λΆ€ν„° 18κΉŒμ§€ μƒˆλ‘œ μΆ”κ°€λœ κΈ°λŠ₯듀을 λ‚˜μ—΄ν•©λ‹ˆλ‹€. λ‚΄μš©μ€ 이게 λ‹€μ§€λ§Œ 각 버전별 μΆ”κ°€λœ λ‚΄μš©λ“€μ„ ν•œλˆˆμ— 확인할 수 μžˆμŠ΅λ‹ˆλ‹€.

 

9.

좜처 : 코루틴 λ‚΄λΆ€ μƒνƒœ 관리 μ•Œμ•„λ³΄κΈ°

제λͺ© : 코루틴 λ‚΄λΆ€ μƒνƒœ 관리 μ•Œμ•„λ³΄κΈ°

μš”μ•½ : Job의 μ •μ˜μ™€ νŠΉμ„± 및 생λͺ…주기에 λŒ€ν•΄μ„œ μ„€λͺ…ν•©λ‹ˆλ‹€. Job λ‚΄λΆ€μ—μ„œ Job의 생λͺ…μ£ΌκΈ°λ₯Ό κ΄€λ¦¬ν•˜λŠ” JobSupport 클래슀의 생λͺ…μ£ΌκΈ°λ₯Ό μƒμ„Ένžˆ μ„€λͺ…ν•©λ‹ˆλ‹€.

μ„ μ • : 코루틴 λ‚΄λΆ€ state λ₯Ό μ•Œκ²Œ λ˜μ–΄μ„œ μ„ μ •ν•©λ‹ˆλ‹€.

 

10.

좜처 : 33 Viewpager2 Transformers for Your Android ui’s

제λͺ© : 33 Viewpager2 Transformers for Your Android ui’s

μš”μ•½ : viewpager2 에 λŒ€ν•΄μ„œ κ°„λž΅νžˆ μ†Œκ°œν•˜κ³ , 33κ°€μ§€μ˜ λ‹€μ–‘ν•œ viewpager2 Page Transformer 에 λŒ€ν•΄μ„œ μ†Œκ°œν•©λ‹ˆλ‹€. default λΆ€ν„° spinner, anti-clock spin, gate, fidget λ“± λ‹€μ–‘ν•œ 효과λ₯Ό μ†Œκ°œν•©λ‹ˆλ‹€.

 

μ†Œμš”μ‹œκ°„ : 3μ‹œκ°„ 30λΆ„

728x90
λ°˜μ‘ν˜•