전체 글(51)
-
[ 글또 ] 나의 글쓰기 도식화 파이프라인 및 정보
나만의 글쓰기 프로세스 이 글을 적게된 동기와 계기를 초반에 적어봅니다. 시도한 글쓰기 방식 제목을 이목을 끌 만하거나 비유적인 표현으로 작성해 보았습니다. 글또 글 제출 2회차: [ iOS / UIKit ] UISceneDelegate(에 대해 설명하세요) 글또 글 제출 5회차: 동시성(Concurrency)을 대하는 Swift 의 자세 - DispatchQueue 글씨 문단을 좀 여러 문단으로 나누어 읽기 부담스럽지 않게 시도해보았어요. 강조할 부분을 색을 주기도 했는데, 일관성 유지를 위해 기울이기(Italic), 볼드, 색을 자제했어요. 참고 문서에 대해 웬만하면 다 링크를 걸려고 했습니다. 2회차 때 글 https://playground-coding.tistory.com/89 [ iOS / UI..
2024.02.10 -
동시성(Concurrency)을 대하는 Swift 의 자세 1 - DispatchQueue
요즘 Rx 에 대해 조금씩 곰튀김님 유튜브 강의를 통해 살펴보고, 동시성 글을 읽게 되면서, RxSwift 와 Combine 은 왜 쓰는걸까? 하는 의문이 들었다. 저 두 라이브러리 또한 비동기로 수행할 작업들을 기다리지 않고 적절한 시기에 동시적으로 수행할 수 있고, 코드의 가독성도 좋아져서일 것 같다. 동시성의 사용과 경계에 대해서는 클린코드에서 알아봤다. (클린코드 동시성 글이 궁금하시다면 링크 클릭 하세요) 애플 또한 동시성을 사용함으로써 얻게 되는 성능적인 측면과 그로 인해 발생할 수 있는 경쟁 상태와 시스템 부하 외 콜백 함수를 사용할 때 발생하는 들여쓰기로 인해 보이는 예쁘지 않은 코드에 대해서도 대응을 했다. (그 방법은 async, await 와 연관이 있다😅, 여기서 언급하게 될 부분은..
2024.02.02 -
[ Clean Code ] 클린코드 시리즈 - 동시성
2024년 1월 28일, 책 클린코드를 함께 읽는 스터디가 종료되었다. 자바로 쓰여졌지만, 자바로 공부하시는 분들이 계셔서 이해안되는 부분은 링크 참조나 설명해주셔서 도움이 많이 되었다. 챕터는 15. JUnit 까지 마쳤지만, 여전히 읽을 챕터와 부록은 남아 있다. 틈틈이 시간 내서 읽어보도록 해야지.. 각설하고, 클린코드 동시성 타이틀을 발견하고, 나는 드디어 올 것이 왔구나 싶었다. 예전에 Swift 를 처음 배울 때 이미지를 Api 에서 요청해 가지고 오고, reloadData로 띄워 프로젝트에서 적용하는 부분에서 DispatchQueue.main.async 를 배웠던 적이 있었는데, 이게 무슨 말인가? 그냥 쓰는 거구나 하고 썼다.. 내적으로는 '디스패치 큐! 이게 대체 뭐길래 쓰는건가?? 알고..
2024.02.02 -
[ Unit Test ] Xcode 에서 단위 테스트 하는 것, XCTest - 1
팀프로젝트 파일 내 포함된 코드나 다른 사람들의 코드를 보면 꽤 테스트 코드를 설정해준 프로젝트들이 많았다. 예전부터 TDD(Test Driven Development - 테스트 주도 개발) 라고 자주 들어봤는데, 어떻게 Xcode 에서 적용해볼지 막막했다. 마침 클린코드 책을 읽으면서 단위테스트라는 챕터를 읽었다. 테스트는 왜 하는지에 대한 의문을 가졌다. 코드의 유지보수성, 재사용성, 유연성이 프로덕트를 보존하고 강화할 수 있어서 라는데 사실 개발을 공부하는 초보 입장에서는 와닿지 않는다. 테스트 코드를 작성한다의 의미 무엇을 구현할 지 알고 있다. 어떤 기능인지 명확하게 알고 있다. 요구 사항을 파악하고 있다. ( 22년도 12월쯤 야곰의 원티드 프리온보딩에서 TDD 특강에 대해 들었던 적이 있었다..
2024.01.18 -
[ Clean Code ] 클린코드 시리즈 - 클래스
보호되어 있는 글입니다.
2024.01.14 -
[ Clean Code ] 클린코드 - 단위테스트(Unit Test)
TDD( Test Driven Development) 과거 인식 클래스, 메서드를 공들여 구현하고는 → 엉망진창 테스트 코드로 돌아가기만 하면 아무 코드나 급조해서 붙여 넣음. → 일회성코드에 불과 TDD 법칙 세가지 첫째, 실패하는 단위테스트 작성할 때까지 실제 코드를 작성하지 않는다. 둘째, 컴파일은 실패하지 않으면서, 실행이 실패하는 정도로만 단위테스트 작성 셋째, 현재 실패하는 테스트 통과할 정도로만 실제 코드 작성 ⛔️ 그러나, 방대한 테스트 코드는 심각한 관리 문제를 유발하기도 함. 깨끗한 코드 유지하기 밥 아저씨 사례 그냥 테스트만 구현하고 돌아가면 지저분한 코드여도 상관 없다! ⛔️ 막 쓰는 테스트 코드에 대한 위험성 코드가 지저분해질수록 변경도 어렵다! 테스트 코드 복잡할수록 실제 코드 ..
2024.01.13