• Feed
  • Explore
  • Ranking
/
πŸ’» Dev
7
개발 μ „λ°˜μ— λŒ€ν•œ λ‚΄μš©μ„ λ‹€λ£Ήλ‹ˆλ‹€.





μ§€
μ§€μ„±
4 νŒ”λ‘œμ›Œ
Β·
0 νŒ”λ‘œμž‰
고양이 μ•‰ν˜€λ†“κ³  μ½”λ”©
νƒœκ·Έ

졜근 λŒ“κΈ€
Hysteresis Buffer문제 상황iOS μ•±μ—μ„œ UI μΈν„°λž™μ…˜μ„ κ΅¬ν˜„ν•˜λ‹€ 보면, 값이 κ²½κ³„ κ·Όμ²˜μ—μ„œ 계속 νŠ€λŠ” ν˜„μƒμ„ 자주 λ§ˆμ£Όν•˜κ²Œ λœλ‹€.예λ₯Ό λ“€μ–΄ 슀크둀 λ°©ν–₯에 따라 Viewλ₯Ό μ œμ–΄ν•˜λŠ” λ‹€μŒκ³Ό 같은 λ‘œμ§μ„ 생각해 보자.μœ„λ‘œ 슀크둀 β†’ View μˆ¨κΉ€μ•„λž˜λ‘œ 슀크둀 β†’ View ν‘œμ‹œμ΄ 둜직 μžμ²΄λŠ” λ‹¨μˆœν•˜μ§€λ§Œ, μ‹€μ œ μ‚¬μš© ν™˜κ²½μ—μ„œλŠ” λ¬Έμ œκ°€ λ°œμƒν•œλ‹€. μ†κ°€λ½μ˜ μœ„μΉ˜κ°€ 경계값 근처
0
0
3 months ago
5 min read

μ—¬λŸ¬ Mutation을 순차적으둜 λ°©μΆœν•  λ•Œμ˜ μœ„ν—˜μ„± - μ›μžμ  μƒνƒœ μ—…λ°μ΄νŠΈμ˜ μ€‘μš”μ„±λ¬Έμ œ 상황: ν•˜λ‚˜μ˜ μ•‘μ…˜, μ—¬λŸ¬ 개의 μƒνƒœ λ³€κ²½μƒνƒœλ₯Ό κ΄€λ¦¬ν•˜λ‹€ 보면, ν•œ λ²ˆμ―€μ€ ν•˜λ‚˜μ˜ μ‚¬μš©μž μ•‘μ…˜μ΄ μ—¬λŸ¬ 개의 State ν”„λ‘œνΌν‹°λ₯Ό λ™μ‹œμ— λ³€κ²½ν•΄μ•Ό ν•˜λŠ” 상황에 마주치게 λœλ‹€.예λ₯Ό λ“€μ–΄, μ•„μ΄ν…œ μƒνƒœ 보기 ν™”λ©΄μ—μ„œ 'μƒˆλ‘œκ³ μΉ¨' λ²„νŠΌμ„ λˆ„λ₯΄λ©΄ μ•„λž˜μ˜ μ„Έ κ°€μ§€ μƒνƒœλ₯Ό λͺ¨λ‘ κ°±μ‹ ν•΄μ•Ό ν•œλ‹€κ³  κ°€μ •ν•΄λ³΄μž.struct State { var mainItem:
0
0
9 months ago
6 min read

μ‹±κΈ€ν†€μ˜ 함정? μ˜μ‘΄μ„± μ£Όμž…μ„ ν†΅ν•œ 더 λ‚˜μ€ μ•„ν‚€ν…μ²˜ μ„€κ³„μ†Œν”„νŠΈμ›¨μ–΄ μ•„ν‚€ν…μ²˜μ—λŠ” μ˜μ‘΄μ„±μ„ λͺ…ν™•νžˆ κ΄€λ¦¬ν•˜λŠ” 것은 μœ μ§€λ³΄μˆ˜μ„±κ³Ό ν™•μž₯성을 μœ„ν•΄ ν•„μˆ˜μ μ΄λ‹€.μ½˜μ†” 기반의 숫자 야ꡬ ν”„λ‘œμ νŠΈλ₯Ό μ§„ν–‰ν•˜λ©΄μ„œ 클린 μ•„ν‚€ν…μ²˜μ˜ Repositoryλ₯Ό μ‹±κΈ€ν†€μœΌλ‘œ κ΅¬ν˜„ ν›„ 직접 μ°Έμ‘°ν–ˆλŠ”λ°, μƒκ°ν•΄λ³΄λ‹ˆ 이 방식은 클린 μ•„ν‚€ν…μ²˜μ˜ μ˜μ‘΄μ„± 뢄리 원칙을 μœ„λ°˜ν•˜κ³  μžˆμ—ˆλ‹€. 쑰사λ₯Ό ν•΄λ³΄λ‹ˆ, 클린 μ•„ν‚€ν…μ²˜μ—μ„œλŠ” Repositoryλ₯Ό 싱글톀이 μ•„λ‹Œ
0
2
a year ago
9 min read

단일 μ±…μž„ 원칙 (SRP: Single Responsibility Principle) - μœ μ§€λ³΄μˆ˜μ„±μ„ λ†’μ΄λŠ” 섀계 원칙단일 μ±…μž„ 원칙(SRP)μ΄λž€?ν΄λž˜μŠ€λ‚˜ λͺ¨λ“ˆμ€ 단 ν•˜λ‚˜μ˜ λ³€κ²½ 이유만 κ°€μ Έμ•Ό ν•œλ‹€.SRPλŠ” ν•˜λ‚˜μ˜ 클래슀 λ˜λŠ” λͺ¨λ“ˆμ΄ μ–΄λ € 개의 역할을 λ‹΄λ‹Ήν•˜λ©΄ μ•ˆ 되며, λ³€κ²½ν•΄μ•Ό ν•˜λŠ” μ΄μœ κ°€ ν•˜λ‚˜μ—¬μ•Ό ν•œλ‹€λŠ” 의미λ₯Ό κ°€μ§„λ‹€. 즉, ν΄λž˜μŠ€λŠ” ν•˜λ‚˜μ˜ λͺ…ν™•ν•œ λͺ©μ μ„ κ°€μ Έμ•Ό ν•˜λ©°, ν•˜λ‚˜μ˜ μ±…μž„λ§Œ μˆ˜ν–‰ν•΄μ•Ό ν•œλ‹€.μ‰½κ²Œ 말해, ν•˜λ‚˜μ˜ ν΄λž˜μŠ€λŠ” ν•˜λ‚˜μ˜ μ—­ν• λ§Œ μˆ˜ν–‰ν•΄μ•Ό ν•œλ‹€. μ—¬λŸ¬ 개의 κΈ°
0
0
a year ago
6 min read

비동기 ν”„λ‘œκ·Έλž˜λ°μ˜ 이해비동기 ν”„λ‘œκ·Έλž˜λ°μ΄λž€?동기(Synchronous) vs 비동기(Asynchronous) ν”„λ‘œκ·Έλž˜λ°λ™κΈ°(Synchronous) ν”„λ‘œκ·Έλž˜λ°ν•˜λ‚˜μ˜ μž‘μ—…μ΄ 끝날 λ•ŒκΉŒμ§€ λ‹€μŒ μž‘μ—…μ„ μ‹€ν–‰ν•˜μ§€ μ•ŠμŒμž‘μ—…μ΄ μ™„λ£Œλ  λ•ŒκΉŒμ§€ 앱이 멈좘 κ²ƒμ²˜λŸΌ 보일 수 있음print("μž‘μ—… μ‹œμž‘") sleep(3) // 3초 λ™μ•ˆ 멈좀 print("μž‘μ—… μ™„λ£Œ")문제점sleep(3) λ™μ•ˆ λ‹€λ₯Έ
0
0
a year ago
5 min read

μ•„ν‚€ν…μ²˜μ™€ λ””μžμΈ νŒ¨ν„΄μ•„ν‚€ν…μ²˜μ•„ν‚€ν…μ²˜(Architecture)λž€?μ†Œν”„νŠΈμ›¨μ–΄ μ•„ν‚€ν…μ²˜λŠ” μ•±μ˜ 전체적인 ꡬ쑰λ₯Ό μ„€κ³„ν•˜λŠ” 방법이닀.μ½”λ“œκ°€ μ •λ¦¬λ˜μ§€ μ•Šκ³  λͺ¨λ“  둜직이 ViewController에 μ§‘μ€‘λ˜λ©΄ μœ μ§€λ³΄μˆ˜κ°€ μ–΄λ €μ›€μ•„ν‚€ν…μ²˜λ₯Ό μ μš©ν•˜λ©΄ μ½”λ“œκ°€ λͺ¨λ“ˆν™”λ˜κ³  ν™•μž₯성이 μ’‹μ•„μ§μ•„ν‚€ν…μ²˜λ₯Ό μ μš©ν•˜λ©΄ 쒋은 μ μ½”λ“œκ°€ 가독성이 λ†’μ•„μ§€κ³  μœ μ§€λ³΄μˆ˜κ°€ μ‰¬μ›Œμ§μ•±μ΄ 컀져도 각 μ»΄ν¬λ„ŒνŠΈλ₯Ό μ‰½κ²Œ 뢄리 및 ν™•μž₯
0
0
a year ago
6 min read

URL의 ꡬ성 μš”μ†Œ 및 REST APIURL의 κΈ°λ³Έ ꡬ쑰https://www.example.com:443/path?query=1#fragmentScheme: ν”„λ‘œν† μ½œ (https, http λ“±)Host: μ„œλ²„ μ£Όμ†Œ (www.example.com)Port: 톡신 포트 (443, 80 λ“±)Path: λ¦¬μ†ŒμŠ€ 경둜 (/path)Query: 쿼리 νŒŒλΌλ―Έν„° (?query=1)Fragment: ν•΄μ‹œκ°’ (#
0
0
a year ago
2 min read
iosSwiftSRP단일 μ±…μž„ 원칙Clean ArchitectureSingletonDependency InjectionDependency Inversion PrincipleReactorKitState ManagementArchitectureHysteresis Buffer
m
meowbutlerdev
쒋은 의견 κ°μ‚¬ν•©λ‹ˆλ‹€! 말씀해주신 κ²ƒμ²˜λŸΌ, 싱글톀 μžμ²΄κ°€ μ˜μ‘΄μ„± 뢄리 μ›μΉ™μ˜ μ •λ°˜λŒ€ κ°œλ…μ€ μ•„λ‹ˆκ³ , μ˜μ‘΄μ„± μ£Όμž…κ³Ό ν•¨κ»˜ μ‚¬μš©ν•  μˆ˜λ„ μžˆμŠ΅λ‹ˆλ‹€. 사싀 μ œκ°€ κΈ€μ—μ„œ λ§ν•˜κ³  μ‹Άμ—ˆλ˜ 뢀뢄은 '싱글톀을 직접 μ°Έμ‘°ν•˜λŠ” 방식이 μ˜μ‘΄μ„± 뢄리 원칙을 μœ„λ°˜ν•  수 μžˆλ‹€`λŠ” μ μ΄μ—ˆλŠ”λ°μš”. λŒ“κΈ€μ„ 보고 글을 λ‹€μ‹œ ν•œ 번 μ •λ…ν•΄λ³΄λ‹ˆ μ œκ°€ 글을 μ˜€ν•΄μ˜ μ†Œμ§€κ°€ 있게 μž‘μ„±ν•˜μ˜€μŠ΅λ‹ˆλ‹€. 말씀해주신 뢀뢄에 λŒ€ν•΄μ„œ 더 깊이 있게 곡뢀해보고 글을 μˆ˜μ •ν•˜λ„λ‘ ν•˜κ² μŠ΅λ‹ˆλ‹€. 의견 μ£Όμ…”μ„œ λ‹€μ‹œ ν•œ 번 κ°μ‚¬λ“œλ¦½λ‹ˆλ‹€!
o
octoping
`let userService = UserService(repository: UserRepository.shared)` λ‹€μŒκ³Ό 같이 μ‚¬μš©ν•˜λ©΄, 싱글톀을 μ΄μš©ν•˜λ©΄μ„œλ„ μ˜μ‘΄μ„± μ£Όμž…μ„ μ μš©ν•  수 μžˆμ„ 것 κ°™μŠ΅λ‹ˆλ‹€! μ‹€μ œλ‘œ Spring, NestJS와 같은 λ°±μ—”λ“œ ν”„λ ˆμž„μ›Œν¬μ—μ„œλŠ” μ˜μ‘΄μ„± μ£Όμž… + 싱글톀 νŒ¨ν„΄μ„ 같이 μ‚¬μš©ν•˜κ³  μžˆμ–΄μš”. 싱글톀은 객체λ₯Ό μƒμ„±ν•˜λŠ” 방법에 λŒ€ν•œ '생성 νŒ¨ν„΄'이기 λ•Œλ¬Έμ—, μ˜μ‘΄μ„± 뢄리 원칙과 μ •λ°˜λŒ€μ˜ κ°œλ…μ΄ μ•„λ‹ˆκ±°λ“ μš”.