반응형

분류 전체보기 123

[Swift] Protocol(1)

프로토콜이란? 프로토콜은 특정 작업이나 기능에 적합한 메서드, 프로퍼티 및 기타 요구사항을 정의해준다. 그 다음 프로토콜을 Class, Struct, Enum에서 채택하여 이런 요구사항을 실제로 구현할 수 있도록 도와준다. 프로토콜은 메서드, 프로퍼티 등을 정의만 하고, 이 프토토콜을 채택한 곳에서 구현을 한다. object-c 언어의 .h 파일과 .m 파일과 같은 느낌이다. 직접 만들수도 있고 이미 만들어져 있는 프로토콜을 채택하기도 한다. 오늘은 가장 많이 사용하는 프로토콜 들을 알아볼려고 한다. Equtable Equtable은 말 그대로 같은지 아닌지를 비교할 수 있도록 도와주는 프토토콜이다. 이 프로토콜을 채용하면 객체와 객체, 혹은 같은 구조체로 만들어진 요소들을 비교할 수 있게 된다. ==을..

macOS 2021.03.16

[Swift] UserDefaults

UserDefaults는 App 시작시 사용자의 기본 데이터베이스를 키-값 쌍으로 지속적으로 저장하는 인터페이스이다. 런타임 시 개체를 사용하여 App이 사용자의 기본 데이터베이스에서 사용하는 기본값을 읽기 때문에 값이 필요할 때마다 데이터베이스를 열 필요가 없어진다. 사용자의 정보라던가 게시물의 대한 정보처럼 대용량의 데이터를 저장할 때 사용하지 않고 자동로그인 여부, 아이디 저장, 환경설정에서 설정하는 설정 데이터 값같은 단일데이터 등을 UserDefaults로 담아서 보관한다. Available iOS 2.0+ macOS 10.0+ Mac Catalyst 3.0+ tvOS 9.0+ watchOS 2.0+ 주요 기능 기본 개체 저장 swift안에 있는 float, Int, double, Bool, U..

macOS 2021.03.15

[iOS, macOS] Alamofire Framework(3)

이전 포스트를 안보신 분들은 보시고 오는 것을 추천드립니다. [iOS, macOS] Alamofire Framework(1) [iOS, macOS] Alamofire Framework(2) Controller 마지막으로 사용자에게 기능을 제공하는 Controller만 남았는데 여기서 Alamofire을 사용하여 API와 통신을 하여 데이터를 최신화한 뒤 View에 제공해 준다. MainTableViewController Import Alamofire import Alamofire Alamofire 프레임워크를 사용하기 위해 코드 제일 앞에 Alamofire을 import 해준다. 변수 생성 var films: [Film] = [] var items: [Displayable] = [] var selecte..

macOS 2021.03.11

[iOS, macOS] Alamofire Framework(2)

프로젝트 구조 이전 포스팅에 이어서 프로젝트에 대해 분석을 하면서 Alamofire의 기능들을 공부해볼려고 한다. [이전 포스팅 바로가기] 해당 프로젝트의 디자인 패턴은 MVC구조로 되어있고 Model 부분은 Networking 폴더안에, View는 스토리보드 파일로 표현하였고, Controller 부분은 ViewController 폴더안에 있다. 우선 Model 쪽을 먼저 확인을 해야겠다. Model Networking 폴더 안에는 총 5가지의 파일이 있는데 해당 파일들을 분석해서 요약을 해보았다. ⚫ Displayable.swift : 모델 데이터를 get방식으로 view의 표시하기 위한 프로토콜 ⚫ Film.swift : 스타워즈 영화 정보에 대한 모델 데이터 ⚫ Films.swift : 영화 정보..

macOS 2021.03.10

[iOS, macOS] Alamofire Framework(1)

Alamofire란? Alamofire은 iOS와 macOS에서 사용가능한 Swift 기반 HTTP 네트워킹 프레임워크이다. Apple의 Foundation networking을 기반으로 인터페이스를 제공하여 일반적인 네트워킹 작업을 단순화한다. Alamofire의 장점은 object-C 언어가 하나도 없이 오직 swift로만 작성된 프레임워크이고 오픈소스인데 거의 완벽한 공식 문서가 있어서 사용자가 처음 사용할 때 어려움이 크게 없다. 어느정도 HTTP 네트워킹의 개념을 알고 있고 swift의 URLSession 클래스를 사용한 경험이 있다면 쉽게 다가갈 수 있는 오픈소스 프레임워크이다. 세부 기능 — Request & Response의 체이닝 함수 제공 — Combine 지원 — URL 및 JSON ..

macOS 2021.03.09

[iOS, macOS] QuickLook 프레임워크(2)

ViewController.swift ViewController에서 QuickLook 기능을 사용할려면 QuickLook관련 2가지 프로토콜을 채택해야한다. QLPreviewControllerDataSource 프로토콜과 QLPreviewControllerDelegate 프로토콜인데 extension을 통해 코드의 가시성과 유지보수에 좋게 코드를 나누어서 개발을 하였다. ViewController class ViewController: UICollectionViewController { weak var tappedCell: FileCell? let files = File.loadFiles() //collectionView의 cell의 개수 override func collectionView(_ colle..

macOS 2021.03.07

[iOS, macOS] QuickLook 프레임워크(1)

QuickLook이란? 프로젝트 내에서 이미지 파일이나 pdf 파일 등을 미리보기로 보여주고 싶은 경우가 있다. 이 때 사용하는 프레임워크인데 특정 파일들을 바로 보여주고 싶을 때 사용한다. 읽기 전용으로만 사용할 수 있으며, 쓰기는 사용할 수 없다. Apple 자체에서 제공하는 프레임워크이기 때문에 별도에 빌드없이 바로 import해서 사용할 수 있다. iOS, macOS 프로젝트 둘 다 사용할 수 있다. 제공하는 파일형식 — iWork 및 MS Office 문서 — 이미지 — 라이브 포토 — txt 파일 — PDF — 오디오 및 비디오 파일 — usdz 파일 형식을 사용하는 증강 현실 개체( iOS만 해당 ) Availability ios 4.0+ macOS 10.5+ Mac Catalyst 13.0..

macOS 2021.03.06

[IOS, MacOS] FileManager Library

FileManager란 IOS와 macOS에서 파일을 다룰 수 있게 해주는 클래스로 ios 2.0 이상, macOS 10.0 이상부터 사용 가능하다. 파일 시스템과 상호작용하는 것을 도와주며 디렉토리의 위치 결정, 생성, 복사, 옮기기가 가능하다. 특정 파일이나 디렉토리의 정보를 얻어오는 것도 지원된다. 특정 파일의 위치를 표시할 때 NSString 객체와 NSURL 객체를 사용할 수 있는데, 시스템 내부적으로 URL 객체가 경로 정보를 더 효율적으로 바꾸어 주어서 NSURL 객체를 사용하는 것을 권장하고 있다. ios 5.0, macOS 10.7 이상부터는 iCloud에 저장된 파일들과 폴더들도 관리할 수 있게 되었는데 iCloud안에 들어있는 파일들을 조작하면 iCloud와 연결된 모든 기기의 파일들..

macOS 2021.03.05

macOS Terminal 커스텀

Iterm2란? macOS로 개발을 하게되면 Terminal 명령어를 자주 이용하게 된다. Terminal은 색상이 거의 존재하지 않고 키워드에 대한 구분색 또한 존재하지 않아 가시성이 많이 떨어지게 되는데 이런 불편한 사항들을 개선하기 위해 만든 프로그램이 Iterm2이다. Terminal도 커스텀을 통해 개선을 할 수 있지만 Iterm2가 좀 더 다양한 기능을 가지고 있어 사용자들이 많이 사용한다. 이번 포스팅은 Iterm2를 설치하고 커스텀하는 방법에 대해 이야기 하고자 한다. Iterm2 설치 여기를 클릭하면 Iterm2 다운로드를 할 수 있는 홈페이지가 나온다. Stable Releases에 있는 다운로드 파일이 가장 안정적인 프로그램이므로 여기에 있는 파일을 다운로드 하는 것을 추천한다. 파일..

macOS 2021.03.04

VSCode 설치 및 환경 꾸미기(Extension 추천)

VSCode란? VScode는 MicroSoft에서 만든 텍스트 편집기이다. 윈도우, 리눅스, macOS에서 사용 가능하며, 디버깅 지원과 Git 제어, 구문 강조 기능등이 포함되어 있고 다양한 extension을 통해 사용자가 원하는 대로 꾸밀 수가 있다. 텍스트 편집기이기 때문에 프로그램 자체가 IDE보다 가볍고 다양한 언어를 지원해서 개발자 들이 사용하는 툴 중에 가장 점유율이 높다. VSCode 설치 아래 페이지에 들어가서 자신이 사용하고 있는 OS와 같은 프로그램을 설치해주면 금방 설치가 된다. https://code.visualstudio.com/ VSCode 기본구조 VSCode를 실행하면 이런 기본화면이 나오는데 좌측 사이드바를 보면 총 5개의 아이콘이 있다. 이것이 VSCode의 핵심기능..

macOS 2021.03.03
반응형