전체 글 (10) 썸네일형 리스트형 [Swift] 함수 함수 정의와 호출정의함수는 작업의 가장 작은 단위이자 코드의 집합( 반복되는 작업을 피하고자 사용 )호출func 함수명(파라미터 명: 데이터 타입) -> 반환 타입{ return 반환 값} 샘플 예제두 수를 더하는 함수 생성func sum(a:Int, b:Int) -> Int{ return a+b}sum(a: 5, b: 1)반환 값이 없는 경우void 혹은 반환 값을 적지 않아도 된다.// 1. Void 로 반환 값을 표기func test(c: String = "Hello", d:String = "IOS") -> Void{ print("\(c)! \(d)")}// 2. 표기 xfunc test(c: String = "Hello", d:String = "IOS"){ print("\(c)! .. [Flutter] Flutter 라이브러리 직접 만들어서 pub.dev에 배포하기 (패키지 생성부터 업로드까지) 안녕하세요. 오늘은 제가 최근에 진행했던 Flutter 라이브러리 직접 만들고 배포하기 과정을 정리해보려고 합니다.pub.dev에 내가 만든 기능을 올리고 공유하고 싶은 분들께 도움이 되었으면 합니다 :) 1. 패키지 생성먼저, CLI에서 패키지를 생성합니다. flutter create --template=package my_flutter_libmy_flutter_lib는 패키지 이름입니다. 원하는 이름으로 변경하세요.--template=package를 붙이면 앱이 아니라 라이브러리 형태로 생성됩니다. 폴더 구조는 아래처럼 만들어집니다.my_flutter_lib/├── lib/│ └── my_flutter_lib.dart├── test/│ └── my_flutter_lib_test.dart├──.. 안드로이드 빌드파일 안드로이드 빌드파일이란?안드로이드 프로젝트에서는 Gradle이라는 빌드 도구를 사용해 앱을 빌드, 테스트, 패키징 합니다.Gradle 설정은 프로젝트 내 build.gradle 파일을 통해 정의되며, 이 파일은 크게 두 가지로 나뉩니다:Project-level build.gradle: 전체 프로젝트의 빌드 설정Module-level build.gradle: 실제 앱 모듈의 세부 설정Project-level build.gradle// android/build.gradlebuildscript { ext.kotlin_version = '1.9.0' repositories { google() mavenCentral() } dependencies { cl.. Flutter 앱 성능 최적화 Flutter 앱 성능 최적화 1. 앱이 느려지는 원인 분석 불필요한 리빌드setState()나 상태 관리가 과도하게 build() 호출을 유발동일한 위젯이 자주 다시 그려짐 잘못된 예 setState(() { title = 'New Title'; count++; }); // 모든 위젯이 rebuild됨 리스트/스크롤 성능 저하ListView, GridView에 너무 많은 위젯이 한 번에 그려짐itemBuilder 내부에서 무거운 연산 실행 비동기 처리 미흡Future 작업이 UI 쓰레드에서 블로킹이미지 로딩, JSON 파싱 등을 메인 쓰레드에서 수행 2. 성능 개선 실전 팁 2-1. 위젯 빌드 최적화const 사용const MyWidget()은 불변 → rebuild 방지Stateless 위젯이라도.. 디버깅과 성능 분석 도구 앱을 개발하면서 내가 개발한 앱의 퍼포먼스가 어느정도이며 메모리 사용량은 어느정도 되는지에 대해 궁금할 수 있습니다. 여러 방면에서 사용할 수 있지만 이런 경우에는 저는 Flutter DevTools를 이용하여 확인합니다. 오늘은 이 방법에 대해 간단히 소개하도록 하겠습니다. - Flutter DevTools란Flutter DevTools는 Flutter 팀에서 공식 제공하는 디버깅 및 성능 분석 도구입니다. - DevTools 실행 방법저는 vscode를 사용하기 때문에 vscode 기준으로 작성하겠습니다.1. VS Code디버깅 중일 때 자동으로 DevTools 아이콘 표시클릭 한 번으로 웹 브라우저에서 실행2. 터미널에서 실행flutter pub global activate devtools flut.. Flutter에서 의존성 주입과 Mockito로 유닛 테스트 작성하기 Flutter 개발을 하다 보면 비즈니스 로직이 잘 동작하는지 검증하고 싶을 때가 많습니다.이럴 때 가장 좋은 방법이 바로 Unit Test 입니다.하지만 외부 API 호출(http)이 있는 경우 테스트가 쉽지 않은 경험이 있어서... (이부분은 mockito를 활용하여 처리)테스트 가능한 구조로 만들고, Mockito를 활용해 유닛 테스트를 작성하는 방법을 정리해보겠습니다. 프로젝트 설정pubspec.yaml에 다음 의존성 추가dev_dependencies: flutter_test: sdk: flutter mockito: ^5.4.2 build_runner: ^2.4.6 API 추상화와 의존성 주입먼저 테스트 가능한 구조로 만들기 위해, API 호출 로직을 추상화합니다.1. 추상 인터페이스 .. Node js의 동작원리와 핵심기술 Node.js란?Node.js는 자바스크립트를 브라우저 밖, 즉 서버에서도 실행할 수 있게 해주는 런타임입니다. 프론트엔드 개발자가 백엔드 영역까지 확장할 수 있게 해주었고, 빠른 비동기 처리를 기반으로 대규모 실시간 시스템에서 자주 활용됩니다.정리하자면, Node.js는 Chrome V8 JavaScript 엔진 위에서 동작하는 JavaScript 런타임입니다.(쉽게 말하면, 브라우저 없이도 JavaScript 코드를 실행할 수 있게 해주는 환경입니다.)최초 릴리즈: 2009년개발자: Ryan Dahl주요 특징:이벤트 기반논블로킹 I/O싱글 스레드 처리 Node.js의 동작 원리1. V8 엔진Node.js는 Google Chrome의 V8 엔진 위에서 동작합니다. 이 엔진은 JavaScript 코드를 .. Flutter 프로젝트에서 dev/prod 환경을 분리해서 관리하는 방법 개발할 때, 개발(dev) 환경과 운영(prod) 환경을 분리해서 관리하는 것은 정말 중요합니다.개발 서버와 운영 서버 주소가 다르거나테스트용 기능을 dev에서만 활성화하고 싶을 때배포할 때 실수로 개발용 설정이 들어가는 걸 방지하고 싶을 때환경 분리는 필수가 됩니다.이번 글에서는 Flutter에서 dev/prod 환경을 깨끗하게 관리하는 방법을 정리해보겠습니다. 환경 관리를 위한 대표적인 방법Flavors (플레이버) 사용가장 공식적이고 강력한 방법dotenv 파일 사용 (flutter_dotenv)간단하게 API 키, 서버 주소만 분리할 때build.yaml 분리빌드 스크립트 수준에서 세분화CI/CD 설정에서 환경변수로 구분서버 배포 자동화할 때 유용 이번 내용에서는 쉽게 접근할 수 있는 라이브러.. 이전 1 2 다음