전체 글
-
DTO, VO란 (Swift 버전)Swift 2021. 4. 20. 11:12
회사분들이랑 얘기하다가 DTO랑 VO 개념을 까먹어서 쓰게되는 포스팅 DTO : Data Transfer Object 데이터를 오브젝트로 변환하는 객체 즉 데이터의 getter와 setter만 있는 객체를 DTO라고 합니다. (Property 개념이랑 같잖아...? 아래가, Property의 개념인데 ~ -> 이게 DTO라고 한다....!? 많은 Property의 개념중 위의 부분이 DTO에 해당하는 부분이었나보다. 즉 DTO 위의 개념은 프로세스 간의 커뮤니케이션에서 개별 호출이 부담스러워 생기게 된, 전송될 데이터를 한곳으로 (객체) 모은다는 개념이었던것이다. VO : Value Object getter만 있는 객체를 VO라고 한다고 한다...!!!(이런거 많이 봣는데...??!!) 위는 예시로 바로..
-
Xcode 빠른 빌드가 필요할때 - diagnostic-options 와 그외Swift 2021. 4. 20. 10:48
컴파일 타임을 확인하기 DerivedData 파일 삭제 rm -rf ~/Library/Developer/Xcode/DerivedData rm -rf ~/Library/Developer/Xcode/DerivedData (가끔 원인불명 warning이 날때 derivedData 파일을 삭제하면 해결될때가 있다) Clean Build 아래 명령어 입력 defaults write com.apple.dt.Xcode ShowBuildOperationDuration -bool YES defaults write com.apple.dt.Xcode ShowBuildOperationDuration -bool YES 위를 바탕으로 빌드시간을 측정할 수 있다. 최적화 프로젝트 명 - Build Settings 를 확인합니다. ..
-
SwiftLint 적용하기Swift 2021. 4. 19. 15:26
SwiftLint를 꼭 사용해야 된다고 생각하는 사람이지만, 한번도 기술한적이 없길래 적어본다. 다운로드 github.com/realm/SwiftLint realm/SwiftLint A tool to enforce Swift style and conventions. Contribute to realm/SwiftLint development by creating an account on GitHub. github.com 왜? 처음 프로젝트를 시작할때 꼭 Code Convention을 작성한다. 이 프로젝트에서 개발자가 지켜야하는 개발 작성 표준인 것이다. SwiftLint 가 바로 https://github.com/raywenderlich/swift-style-guide 기반으로, swift 스타일 및 컨..
-
Figma (피그마) Zeplin과 비교카테고리 없음 2021. 4. 19. 15:05
Figma: 간단히는 UI 디자인 툴 입니다. 아래 다운로드 링크 www.figma.com/downloads/ 아래 아주 잘 비교된 내용이 있다. (사용량 기준, 2018년도만 해도 Zeplin이 훨씬 앞서던 통계에서도 아래처럼 Figma가 높아져 있었다. 2020기준) 출처 : https://uxtools.co/tools/handoff Figma vs Zeplin 그리고 디자인 관련된 입장으로 서술 해 두신 분이 있는데, 왜 좋은지 서술해주신 부분이 있어서 참고했다. 아래 링크를 참조하면 좋을것 같다...! 출처 : m.blog.naver.com/whose8/221980872255 위를 보면 알 수 있지만, 디자인적으로 Figma가 좀더 사용성이 있는것 같다. 둘다 사용해보면서 느낀 점 (개발자 관점)..
-
ios 14 위젯 만들기Swift 2021. 3. 17. 10:40
출처 및 설명 : developer.apple.com/documentation/widgetkit/creating-a-widget-extension Apple Developer Documentation developer.apple.com iOS 14이후 놀라운 점이 홈 화면에 위젯을 둘 수 있따고?! 이죠 해당 부분을 개발해보면 넘 재밌을거같아 해보겠습니다. 프로젝트에서 File - New - Target - Widget Extension 을 선택합니다. (Xcode 버전이 낮으면 없을 수 있습니다. 업데이트 필요해요~) 위젯은 SwiftUI로만 작성이 가능합니다.
-
Clean SwiftSwift/아키텍쳐 2021. 3. 14. 16:54
Clean Swift? https://clean-swift.com/ 처음 보이는 페이지에서 Clean Swift에 대한 설명은 Clean Architecture + TDD Code less. Test More. 이라고 되어있습니다. 장점 이 템플릿의 아래와 같은 점을 해결할 수 있다고 소개하고 있습니다. - ViewController가 점점 거대해지고, 이해하기 어려워지고, 오류를 고치기 어렵다. - 비즈니스 로직을 model로 옮겼다. model이 너무 커졌다. - 앱이 하나의 거대한 스토리보드로 되어있다. - 버그 재현하는데 4시간을, 고치는데 일주일 걸리는 문제 - 코드의 새로운것을 추가하려면 다시 또또또 리팩토링하는 문제 - TDD 노력과 이익을 따졌을때 그만한 가치가 없을때 실제로, MVC 패턴..
-
Xcode Build Settings 타겟분리Swift 2021. 3. 8. 10:49
일단 Xcode에는 debug 와 Release가 있습니다. Build Setting을 개발과 운영 어떤 방식으로 구분할 지 그 방법에 대해서 고민해본 결과를 서술합니다. 이 글을 시작하기 전... 일단 Xcode에는 debug 와 Release가 기본적으로 분리되어 있죠. 이와 관련하여, Build Setting을 개발과 운영 어떤 방식으로 구분할 지 그 방법에 대해서 고민해본 결과를 서술합니다. 저의 목적! 개발과 운영을 나눠, Log 는 Release일때 당연히 ㄴㄴ, 빼고 싶은 파일들이 있으므로 Release로 아카이브 했을때 그 파일들은 담기면 안됩니다! 항목 Debug Release 내부 상수의 IS_DEBUG true false Log 출력 허용 허용 안함 MOCK network code 포..
-
Git AliasGit 2021. 2. 2. 15:35
내가 쓰는 Git Alias 저장 git config --global alias.co checkout git config --global alias.st status git config --global alias.last 'log -1 HEAD' // 마지막 로그 하나만 볼 수 있음 git config --global alias.b '!git branch | awk "/^\\*/{print $2}"' // 너무 좋은 현재 브랜치명 보여주기 추가 머지된 로컬 브랜치 삭제(develop, master 제외) git config alias.db '!git branch --merged | grep -v \"master\\|develop\" | xargs git branch -d' 출처: https://zeddi..