본문 바로가기

728x90
728x90

전체 글

(51)
[Flutter/Dart] Flutter Plugin 만들어 보기 - 2 (with. Plugin 프로젝트 생성하는/만드는 법) Package와 Plugin의 차이점 _instance; /// 플랫폼별 구현체는 자신들을 등록할 때 TestPluginPlatform를 확장한 클래스로 값을 설정해야함 static set instance(TestPluginPlatform instance) { PlatformInterface.verifyToken(instance, _token); _instance = instance; } /// 함수가 구현되지 않았을 경우 처리 Future getPlatformVersion() { throw UnimplementedError('platformVersion() has not been implemented.'); } } PlatformInterface라는 추상 클래스를 확장하여 작성된 커스텀 추상 클래스(T..
[Flutter/Dart] Flutter Plugin/Package 만들어 보기 - 1 (with. Plugin과 Package 차이점) Plugin 프로젝트 만들기 [Flutter/Dart] Flutter Plugin 만들어 보기 - 2 (with. Plugin 프로젝트 생성하는/만드는 법) Package와 Plugin의 차이점 _instance; /// 플랫폼별 구현체는 자신들을 등록할 때 TestPluginPlatform를 확장한 클래스로 값을 설정해야함 static set instance(TestPluginPlatform instance) { PlatformInterface.verifyToken(instance s-o-h-a.tistory.com Package란? 일반적으로 프로그래밍에서 패키지란 다음과 같은 뜻을 가진다. "일반적으로 많이 사용되는 기법이나 특수한 목적만을 위해 미리 프로그램으로 작성하여 다른 사람이 실제 프로그램..
ICC, ICM Profile이란? Color Profile에 대해 알아보자 Color Profile 이란? 직역하면 "색상 프로필"이라는 의미로 색상들에 대한 정보 모음이며, 해당 확장자는 .icc로 되어있어 ICC Profile이라고 불린다 ICC Profile 이란? "색 입력 장치나 색 출력 장치의 특성을 구현하는 데이터의 집합"을 의미한다. 쉽게 말하자면 각 장치의 색상표? 색상정보표? 라고 생각하면 될 것 같다. 색을 사용하거나 보여 주는 모든 장치는 저마다 프로파일을 가지고 있다. 같은 이미지를 어떤 모니터, 혹은 어떤 출력 장치로 출력하느냐에 따라 색상이 다르게 보일 때가 있을 것이다. 이것이 바로 각 장치들이 사용하는 Color Profile이 상이하기 때문이다. 만약 어떤 출력 장치에서든 같은 색상을 보여주고 싶다면, 해당 색상을 다른 출력 장치의 Color P..
[Flutter/Dart] 간단하게 Provider 사용해보기 (with. watch와 select의 차이점) flutter는 Widget이 StatefulWidget, StatelessWidget으로 나뉠만큼 상태관리가 중요하다 그리고 상태 관리를 편하게 해주기 위한 라이브러리들로 GetX, BLoC 등 여러가지가 존재하지만 내 기준 Provider가 상위호환 중에서는 가장 기본이라는 느낌이 커서 Provider에 대해 간단한 예제를 만들어 보았다. Provider란? [Xcode/iOS] 간단한 예제로 Protocol 구현해보기 (with. SwiftUI) 프로토콜(Protocol)이란? 특정 작업 혹은 기능에 적합한 메소드, 프로퍼티, 기타 요구사항들의 청사진 특징 클래스, 구조체, 열거형에서 채택될 수 있음 여러개의 프로토콜을 동시에 채택할 수 있 s-o-h-a.tistory.com 결과화면 GIF Scr..
[Flutter/Dart] iOS, Android 등 플랫폼(Platform)에 따른 UI 설정하기 (with. Material, Cupertino) flutter는 한번에 다양한 플랫폼 개발을 할 수 있는 편리한 크로스 플랫폼이다! 하지만 각 플랫폼마다 익숙한 UI가 존재하기에 플랫폼에 맞는 UI를 구현하는 것이 개인적으로 중요하다 생각한다. 왜냐하면 주로 iOS/MacOS를 사용하는 내가 그 부분이 크게 신경쓰이기 때문이다....ㅎㅎ 처음 개발을 진행할 때는 필요한 하위 부분에서 플랫폼을 체크하여 UI를 뿌려주었는데, 이는 수많은 switch문과 길어지는 코드로 매우 불편했다....... 그래서 앱이 처음 실행될 때 UI 분기를 나누고 해당하는 UI로 구현된 class가 포함된 dart file만을 import하여, 파일별로 UI를 나누는 방법을 사용해서 이를 구현하고 있으며 아래 내가 사용하는 방법을 가져와보았다 Paltform & kisweb ..
[Xcode/iOS] 간단한 예제로 Protocol 구현해보기 (with. SwiftUI) 프로토콜(Protocol)이란? 특정 작업 혹은 기능에 적합한 메소드, 프로퍼티, 기타 요구사항들의 청사진 특징 클래스, 구조체, 열거형에서 채택될 수 있음 여러개의 프로토콜을 동시에 채택할 수 있음 프로토콜은 이름과 타입만이 지정될 뿐 상세한 내용은 구현하지 않는다 예제 protocol FullyNamed { static var firstName : String { get set } var mddleName : String { get set } var fullName: String { get } func getName() -> String mutating func toggleName() init(middleName: String) } 예제 결과화면 구현 Money.swift import Foundati..
[Flutter/Dart] 입문 기본 상식(with. 소개, Widget, State, Provider) Flutter란? Google에서 개발 및 지원하는 오픈 소스 프레임워크 다수의 플랫폼에 대한 사용자 인터페이스(UI)를 단일 코드 베이스로 구축 iOS, Android, 웹, Windows, MacOS, Linux의 여섯 가지 플랫폼에 대한 애플리케이션 개발을 지원 Dart(객체지향)를 사용하고 기계 코드로 컴파일 ** JIT컴파일, AOT컴파일 모두 지원 >> 따라서 핫 리로드, 핫 리스타트 기능 지원가능! JIT(Just-In-Time) 컴파일 : 런타임 시 바이트 코드를 기계어로 번역, ex) Java, C#, Python AOT(ahead-of-time)컴파일 : 실행 전(설치 시점)에 미리 기계어로 번역, ex) C, C++ 플랫폼별 렌더링 도구를 사용하지 않고 자체 렌더링 엔진(Google의..
iOS/Swift 직무를 위한 면접 질문리스트(with. ARC, GCD, Dispatch Queue, 접근제어, 메모리 참조) iOS 직무 면접을 대비한 질문 리스트를 작성해두신 분들이 많아서, 해당 질문에 대한 답변을 정리해보며 기본 지식을 익히고 면접을 대비해보고자 한다......... 읽고 그렇구나! 하는 것은 쉽지만... 완벽하게 이해하여 남에게 다시 설명하는 것은 너무나도 어려운 것 ㅜㅜ open, public, Internal, fileprivate, private 각 접근레벨에 대해 설명하시오 더보기 접근레벨 open 선언된 모듈이 아닌 다른 모듈에서도 사용 가능, 다른 모듈에서 Override 및 서브 클래싱 가능 public 선언된 모듈이 아닌 다른 모듈에서도 사용 가능 Internal 기본 접근레벨, 모듈 전체에서 사용 가능 fileprivate 특정 엔티티를 선언한 파일 안에서만 사용 가능 private 특정..

728x90
728x90