[iOS] MVC (Model-View-Controller)

Model-View-Contoller : MVC 여러가지 디자인 패턴 중, iOS 애플리케이션 개발에 적용되는 MVC패턴에 대해 알아보자. Model-View-Controller MVC 디자인 패턴은 애플리케이션의 객체를 모델, 뷰, 컨트롤러 세 가지 역할 중 하나의 역할로 할당한다. 이 패턴은 애플리케이션 내에서 객체가 수행하는 역할 뿐만 아니라 객체가 서로 통신하는 방식을 정의한다. 세 가지 유형의 객체는 각각 다른 객체와 구분되며, 다른 유형의 객체와 통신한다. 애플리케이션 내의 특정 MVC 유형을 한데 모아 레이어라고도 합니다. Model Objects (모델 객체) 애플리케이션과 관련된 데이터를 캡슐화하고, 해당 데이터를 조작하고 처리하는 로직과 계산을 정의합니다. 하나의 모델 객체는 다른 모델 객체와 일대일 또는 일대다 관계를 맺을 수 있다. **모델 객체는 데이터를 사용자에게 제공하거나 사용자가 이를 편집할 수 있는 뷰 객체에

2021년 8월 10일
·
0개의 댓글
·

[iOS] 프로그래밍 디자인 패턴이란?

프로그래밍 디자인 패턴 프로그래밍을 할 때에 특정 상황에 적용되는 패턴을 정형화해 두면 비슷한 상황에서는 더욱 빠르게 대처할 수 있다. 프로그래밍 디자인패턴이란? GoF의 정의 특정한 상황에서 일반적 설계문제를 해결하기 위해 상호교류하는 수정 가능한 객체와 클래스드에 대한 설명이다. 라만 숙련된 객체지향 개발자 및 기타 소프트웨어 개발자는 소프트웨어 개발의 가이드라인이 되는 일반적인 원칙들과 관용적인 해결책들의 레퍼토리를 구축한다. 패턴은 이러한 원칙들과 관용적 해결책을 기술하는 구조적인 형태로 체계화되고 명명된 것이다. 디자인 패턴의 특징 경험을 통하여 얻을 수 있다. 특정 형식을 갖고 체계적으로 작성되는 것이 일반적이다. 패턴에는 각기 다른 추상화 수준이 존재하며 계속 진화한다. 프로그래밍 디자인 패턴의 장점 프로그래밍 과정에서 의사소통에 도움을 준다. 디자인 패턴을 알고 있는 설계자들은 특정 문제에 대해 공통

2021년 8월 10일
·
0개의 댓글
·

[iOS] iOS의 View체계

우리가 iOS 애플리케이션 화면에서 보는 컨텐츠는 윈도우와 뷰를 사용해 나타낸다. view 계층 구조와 계층에 포함된 뷰에 대해 이해한다. view 계층을 생성하고 관리하는 방법을 이해한다. view 좌표계를 이해한다. View의 기본적인 역할 뷰는 자신의 콘텐츠를 보여주는 것과 더불어 다른 뷰를 위한 컨테이너 역할을 한다 윈도우는 그 자체로 콘텐츠를 표현할 수 없지만 애플리케이션의 뷰를 위한 컨테이너 역할을 한다. 뷰는 UIView 클래스 또는 UIView 클래스의 하위클래스(Subclass)의 인스턴스로 윈도우의 한 영역에서 콘텐츠를 보여준다. View가 나타낸느 콘텐츠는 이미지, 문자, 도형과 같이 다양하다. View는 제스처 인식기, 터치 이벤트를 처리할 수 있다. 또한 뷰 계층구조에서 부모뷰는 자식뷰의 위치와 크기를 관리한다. 뷰 계층(View hierarchy) 뷰 계층구조와 서브뷰 관리 뷰는 자신의 콘텐츠를 보여주는 것과 더불

2021년 8월 10일
·
0개의 댓글
·

[iOS] Foundation이란?

Foundation 프레임워크 코코아 터치 프레임워크에 포함된 Foundation 프레임워크에 대해 알아보자. Foundation은 iOS 애플리케이션의 운영체제 서비스와 기본 기능을 포함하는 프레임워크이다. 애플리케이션에 원하는 기능을 적절하게 구현하기 위해서 Foundation 프레임워크를 이해하는 일은 매우 중요하다. Foundation? Foundation은 원시 데이터 타입(String, Int, Double), 컬렉션 타입(Array, Dictionary, Set) 및 운영체제 서비스를 사용해 애플리케이션의 기본적인 기능을 관리하는 프레임워크이다. Foundation 프레임워크는 데이터 타입, 날짜 및 시간 계산, 필터 및 정렬, 네트워킹 등의 기본 기능을 제공한다, Foundation 프레임워크에서 정의한 클래스, 프로토콜 및 데이터타입은 iOS뿐만 아니라 macOS, watchOS 등 모든 애플SDK에서 사용된다. _Foundation에서 제공하

2021년 8월 5일
·
0개의 댓글
·

[iOS] UIKit이란?

UIKit 프레임워크 코코아 터치 계층에 포함된 UIKit에 대해 알아보자! UIKit은 iOS 애플리케이션 개발시 사용자에게 보여질 화면을 구성하고 사용자 액션 대응에 관련된 다양한 요소들을 포함한다. UIKit? \> UIKit은 iOS 애플리케이션의 사용자 인터페이스를 구현하고 이벤트를 관리하는 프레임워크이다. UIKit 프레임워크는 제스처 처리, 애니메이션, 그림 그리기, 이미지 처리, 텍스트 처리 등 사용자 이벤트 처리를 위한 클래스를 포함한다. 그리고 테이블뷰, 슬라이더, 버튼, 텍스트 필드, 얼럿 창 등 애플리케이션 화면을 구성하는 요소들을 포함한다. UIKit 클래스 중 UIResponder에서 파생된 클래스나 사용자 인터페이스에 관련된 클래스는 애플리케이션의 메인 스레드(혹은 메인 디스패치 큐)에서만 사용한다. UIKit은 iOS와 tbOS플랫폼에서 사용한다. UIKit 기능별 요소 사용자 인터페이스 view

2021년 7월 28일
·
0개의 댓글
·
post-thumbnail

[iOS] Cocoa Touch

코코아 터치 계층( Cocoa Touch Layer ) iOS 애플리케이션 개발환경 토대인 코코아 터치 계층에 대해 알아보자. 코코아 터치의 개념과 핵심을 이해하는 일은 앞으로 iOS 애플리케이션 개발할 때 큰 그림을 그릴 수 있는 바탕이 되는 중요한 일이라고 한다! 코코아 터치 계층은 iOS 애플리케이션 개발에 주 축을 이루는 개발환경으로, 애플리케이션의 다양한 기능 구현에 필요한 여러 프레임워크를 포함하는 최상위 프레임워크 계층이다. 코코아 계층은 macOS 애플리케이션 제작에 사용한다. '코코아'라는 단어는 Objective-C 런타임을 기반으로하고, NSObject를 상속받는 모든 클래스 또는 객체를 가리킬 때 사용한다. '코코아 터치'또는 '코코아'는 iOS 또는 macOS의 전반적인 기능을 활용해 애플리케이션을 제작할 때 사용하는프레임워크 계층이다. '코코아 터치'는 핵심 프레임워크인 UIKit과 Foundation을 포함한다. UIKit Fram

2021년 7월 28일
·
0개의 댓글
·

[iOS]UI요소를 알아보자 - UIButton, UISlider, UILabel

1. 학습 목표 UIButton 생성 방법, 모양 설정 및 사용자 상호작용에 대응하는 방법을 이해 UILabel 생성 방법, 레이블에 입력되는 문구를 설정하는 방법을 이해 UISlider 생성 방법, 구성요소 및 관련 메서드를 이해 2. 핵심 키워드 UIButton UILabel UISlider > UIButton UIButton 클래스는 상호 작용(터치/탭 등의 이벤트)에 반응해 미리 지정된 코드를 실행하는 컨트롤 요소이다. 버튼을 선택하여 드래그하여 스토리보드의 원하는 위치에 놓는다. 버튼을 드래그하여 controller에 아울렛변수 또는 액션으로 추가한다. button -> attribute inspector state con

2021년 7월 28일
·
0개의 댓글
·
post-thumbnail

[iOS] 프로젝트에 이미지 추가하기 - asset

본 글은 부스트코스 iOS앱프로그래밍을 수강하며 작성되었습니다. 1. 학습 목표 asset과 관련된 개념 이해 에셋을 이용해 프로젝트에 사용할 이미지 추가하기 2. 핵심 키워드 Asset Catalog App Slicing App Thining > 에셋 카탈로그란? Xcode에서 프로젝트를 처음 생성하면 Asset.xcassets 이라는 폴더가 자동생성된다. 이 폴더에서 다양한 에셋을 관리하며, 이를 에셋 카탈로그라고 한다. 에셋 카탈로그는 에셋과 다양한 디바이스 속성에 대한 파일의 연결을 통해서 애플리케이션 리소스에 쉽게 접근할 수 있도록 도와준다. 리소스는 애플리케이션이 실행 중일 때 사용하는 이미지, 음악 파일을 이야기한다. 속성은 디바이스의 특징, 사이즈 클래스, 주문형 리소스, 특정 타입의 정보를 포함하고 있다. > 에셋 카탈로그 구성 ![](https://images.ve

2021년 7월 26일
·
0개의 댓글
·
post-thumbnail

[iOS APP] xcode에서 프로젝트 생성하고 프로젝트 파일 알아보기

1. Single View App 템플릿으로 개발하기 여기서 App을 선택하면, 기본적으로 하나의 뷰가 나타나며 필요에 따라 새로운 뷰를 추가하여 만들 수 있다. 일반적으로 가장 많이 사용하는 템플릿이다. 2. 프로젝트의 기본정보 입력하기 Product Name : 개발하고자 하는 앱의 이름을 입력한다. Team : 개발자 프로그램에 등록된 ID 또는 팀을 입력한다. 개발자 인증서가 등록되어 있으면 여기서 선택을 할 수 있다. 처음 시작할 때는 시뮬레이션(뭘까?)을 사용할 것이므로 입력하지 않아도

2021년 5월 9일
·
0개의 댓글
·