본문 바로가기
728x90

분류 전체보기86

MVC(Model - View - Controller) MVC의 탄생 Smalltalk MVC MVC의 탄생은 1970년대 GUI Applicataion에 적합한 구조를 설계 구조를 고민하다 나오게 된 구조로 알려져있다. Form 과 Widget - 폼은 iOS의 ViewController와 유사한 레이아웃이며, UI 전체의 이벤트 핸들링을 담당한다. - 위젯은 버튼, 테이블뷰와 같은 UI 컴포넌트와 유사하다. 이 당시 개발방법은 각각의 UI 컴포넌트안에 모든 코드를 작성하는 것이다. - 위젯을 폼에 배치하는 입장에서 보면 위젯안에 어떤 코드들이 있는지 신경쓰지 않고 배치할 수 있었기 때문에 좋은 분리라고 여김 Trygve Reenskaug - 코드가 위젯의 프레젠테이이션과 얽혀있기 때문에 좋은 분리가 아니라고 주장 - 에디터 : 프레젠테이션을 담당하는 계층.. 2023. 8. 16.
아키텍처(Architecture) Architecture의 뜻은 여러가지로 사용된다. 가장 일반적인 뜻은 "건축학"을 뜻하기도 하며 현재에는 "구성", "구조", "설계 방식" 등을 포괄하는 의미로 사용되어진다. Software Architecture는 단어 그대로 "소프트웨어 구조"이다. - 소프트웨어의 계략적인 계층 분리 방법이다. - 개발 환경, 팀 규모, 비즈니스 로직의 크기, 테스트 코드 작성 여부 등에 따라 적합한 아키텍처가 달라질 수 있다. ▸ 입력과 출력을 어떻게 처리하는가? , 데이터 바인딩 엔진이 있는가? (개발환경) ▸ 개발팀의 규모가 어떻게 되는가? (팀 규모) ▸백엔드가 아닌 클라이온트 사이드에 비지니스 로직이 많은가? (비지니스 로직의 크기) ▸ TDD, 유닛 테스트 등 테스트 코드를 작성할 계획이 있는가? (테.. 2023. 8. 13.
DX Sprint 2023 해커톤 회고록 [1] 인스타 광고를 보고 참여해야겠다는 생각이 들어 바로 신청했던 DX Sprint 2023 해커톤에 iOS개발자로 참여했던 경험을 써보겠습니다. 혹여나, 열릴지 모르나 DX Sprint 2024를 신청할려고 하시는 분들은 참고하시길 바랍니다... 그 이유는... 1. 참가 신청 너디너리 해커톤에서 운 좋게 좋은 팀원들을 만나 처음 참여한 해커톤에서 대상을 받게 되어 그 뽕을 잊지못해, 이리저리 해커톤을 갈구하며 돌아 다니던 중, 인스타 광고에서 DX Sprint2023 광고를 보고 소개페이지에 들어갔는데, 기간이 2주?! , 오 네이버 , AWS 후원?! , 상금 100만원?!! 심지어 앱스토어 배포 경험까지?! 상당히 구미가 당길만한 키워드가 많아서 고민없이 바로 신청을 했다. 그런데... 아무리 인터넷을.. 2023. 8. 7.
[Swift] Final 키워드 왜 쓰는 걸까? Swift에서의 MVVM에 대해 공부하며, 관련 예제 코드 및 남들이 MVVM을 적용한 프로젝트 코드들을 뜯고 맛보던 중 공통 되게 Class 앞에 final 을 붙인걸 보게 되는데... 문법적 의미 Swift language LANGUAGE GUIDE 중 상속 항목에서 final에 대한 설명이 나옵니다. final 키워드를 메소드, 프로퍼티, 서브스크립트 앞에 사용함으로써, 오버라이드 되는 것을 막을 수 있다. 또한 class에서 상속이 불가능해진다. 라... 오호라? 오... 그렇구나. 문법적의미가 저렇구나... 근데 왜 수 많은 사람들이 굳이 왜 썻지? 라는 생각이 들었는데... 성능적 이점 애플 깃허브에 있는 Optimization 팁들 중 final 사용이 성능을 개선시켜준다는 내용이 있습니다... 2023. 8. 6.
헷갈리는 Auto Layout 정리하자. 0. 오토 레이아웃이란? 아이폰 SE2, 8+, X,13 15Pro 등 다양한 아이폰 화면비율에 구애받지 않고 시각적으로 동일한 화면을 구현해야하는데 이를 위한 가장 편리하고 권장되는 방법이다. https://developer.apple.com/library/archive/documentation/UserExperience/Conceptual/AutolayoutPG/index.html#//apple_ref/doc/uid/TP40010853-CH7-SW1 Auto Layout Guide: Understanding Auto Layout developer.apple.com 제약 조건에 따라 뷰 계층 구조의 모든 뷰의 크기와 위치를 동적으로 계산하며, 설계에 대한 이러한 제약 기반 접근 방식을 통해 내부 및 외.. 2023. 7. 16.
[나는 바보다 1] public, private 잘 구분하자. 0.들어가기 앞서 나는 바보다 시리즈는 제가 개발과정중 너무나도 당연하면서도 어처구니 없는 실수를 했던것을 기록하여 스스로 반성하고자 만든 시리즈입니다. 1. 나는 바보다. 스냅킷으로 컬렉션뷰를 다 구성하고 컬렉션뷰 셀 파일도 다 구성했습니다. 그런데 자꾸 Expected superview but found nil when attempting make constraint `equalToSuperview 슈펴뷰가 없다고 뜨는 겁니다. 장난 안하고 전 컬렉션뷰를 설정한 레이아웃에서 오놓치게 있는 줄 알고, 하나하나 몇번을 뜯어봤습니다. 챗지피티한테도 제 코드를 주면 해결책이라면서 주는 코드가 제 코드 그대로 있는내용을 주는겁니다...ㅠ 2. 다시는 바보가 되지말자. 다시한번 Mode-View-Controll.. 2023. 7. 14.
728x90
반응형