본문 바로가기

분류 전체보기75

[NestJS] NestJS CLI 시작 및 실행 명령어 보기 NestJS CLI 설치하기 npm i -g @nestjs/cli NestJS CLI 전역 설치 NestJS New 명령어 새로운 (표준 모드) Nest 프로젝트를 생성합니다. nest new sample-nestjs Options 옵션 별칭 설명 --dry-run -d 파일 시스템을 변경하지는 않고 변경 사항을 보고합니다. --skip-git -g Git 저장소 초기화를 건너뜁니다. --skip-install -s 패키지 설치를 건너뜁니다. --package-manager -p 패키지 관리자를 지정합니다. npm, yarn, pnpm 중 하나를 사용할 수 있습니다. 패키지 관리자는 전역으로 설치되어 있어야 합니다. --language -l 프로젝트에 사용할 프로그래밍 언어를 지정합니다. TypeScri.. 2023. 6. 4.
[NextJS] Ubuntu Docker(도커) 이미지 빌드·컨테이너 실행 하기 간단 설명 목록 설명 Dockerfile Dockerfile은 도커 이미지를 빌드하기 위한 빌드 지시사항들을 포함한 텍스트 파일입니다. Dockerfile은 컨테이너 이미지를 구성하는 데 필요한 모든 단계와 명령을 정의합니다. .dockerignore 도커 빌드 과정에서 제외할 파일과 디렉토리를 지정하는 파일입니다. Dockerfile을 작성할 때 모든 파일이나 디렉토리를 이미지에 포함시키는 것은 필요하지 않을 수 있습니다. 특정 파일이나 디렉토리를 이미지 빌드 과정에서 제외할 수 있습니다. docker-compose 여러 컨테이너로 구성된 멀티 컨테이너 애플리케이션을 정의하고 구성하기 위해 사용되는 도구입니다. 애플리케이션의 서비스, 네트워크, 볼륨, 환경 변수 등을 정의할 수 있습니다. Docker .. 2023. 6. 1.
[MongoDB] Ubuntu MongoDB(몽고DB) 설치˙설정˙데이터베이스 및 사용자 생성˙완전삭제 하기 MongoDB 설치sudo apt updatesudo apt install -y wget curl gnupg2 software-properties-common apt-transport-https ca-certificates lsb-release종속성 설치# ubuntu 24.04curl -fsSL https://www.mongodb.org/static/pgp/server-7.0.asc | \ sudo gpg -o /usr/share/keyrings/mongodb-server-7.0.gpg \ --dearmorecho "deb [ arch=amd64,arm64 signed-by=/usr/share/keyrings/mongodb-server-7.0.gpg ] https://repo.mongodb.or.. 2023. 5. 27.
[Flutter] 모바일 앱을 보호하기 위한 몇가지 보안 난독화 코드 난독화는 역엔지니어링을 위해 코드를 읽기 어렵게 만드는 것입니다. 난독화 코드에 대한 방법은 넘어가겠습니다. 메모리 캐시 플러시 뱅킹 앱과 같은 안전을 중요시하는 앱의 경우 주기적으로 인메모리 캐시를 플러시해야 합니다. class CacheControl extends WidgetsBindingObserver { CacheControl() { WidgetsBinding.instance.addObserver(this); } void _cleanAllCache() { // Cleans all cache. } @override void didChangeAppLifecycleState(ApplifecycleState state) { // 앱이 일시 중지된 시점 체크 if (state == AppLif.. 2023. 5. 21.
[Flutter] Theme.of(context) 성능 이슈 Flutter에서 테마 오브(context)를 사용할 때 발생할 수 있는 성능 이슈에 대한 문제점을 알아보겠습니다. 중복 빌드 아래의 코드의 경우에는 `builder` 함수가 위젯 트리가 빌드될 때마다 호출되어 여러 번 빌드가 발생됩니다. 위젯 상태의 변경이나 애니메이션, 화면 리사이즈 등 다양한 이벤트가 발생할 때마다 호출됩니다. class Home extends StatefulWidget { @override _HomeState createState() => _HomeState(); } class _HomeState extends State { @override Widget build(BuildContext context) { return Scaffold( appBar: AppBar( title: T.. 2023. 5. 10.
[Flutter] Xcode File not found: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/arc/libarclite_iphoneos.a Xcode에서 `File not found: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/arc/libarclite_iphoneos.a` 문제가 발생한다면, 아래의 문제가 있을 수 있습니다. Xcode 14는 iOS 11 배포 대상에 대한 빌드만 지원합니다. libarclite이전 OS 버전에는 필요했지만 이제는 더 이상 사용되지 않습니다.이 라이브러리와 관련된 오류가 발생하는 경우 프로젝트의 모든 대상을 감사하여 iOS 11에서 최소 배포 대상에 대한 지원을 선언하는 대상을 최소 iOS 11 또는 그 이상의 최신 버전으로 업데이트해야 합니다. 오류가 발생하는 패키지의 IOS 버전을 최소 11 .. 2023. 5. 3.
[Flutter] 애플 개발자 계정 사업자로 전환 및 가입하기 (DUNS 발급) 구글, 애플 개발자 계정의 경우 개인과 사업자로 가입할 수 있습니다. 이번에는 애플 개발자 계정을 사업자로 전환하거나 가입하는 과정과 DUNS 발급하는 부분을 알아보겠습니다. 애플 계정 사업자 가입 애플 개발자 사업자로 가입하려면 다음 단계를 따르면 됩니다. Apple 개발자 웹사이트에 가입하기 먼저, Apple 개발자 웹사이트에 가입해야 합니다. Apple ID를 가지고 있다면 Apple 개발자 웹사이트에 로그인할 수 있습니다. Apple ID가 없다면, Apple ID를 생성해야 합니다. 회원가입 정보 입력하기 Apple 개발자 웹사이트에 로그인하면 회원가입 정보를 입력해야 합니다. 개발자 프로그램에 가입하기 위해 필요한 정보는 다음과 같습니다. 이름, 이메일 주소, 전화번호 회사 이름과 주소 D-U.. 2023. 4. 19.
[React] 카카오톡 공유시 썸네일 교체가 안되는 경우 OG 캐시 초기화 하기 카카오톡에 링크를 공유하면 나오는 썸네일 부분은 카카오에서 파싱 하여 캐싱 하게 됩니다. 만약, 변경을 하였는데 즉시 반영이 필요한 경우에는 아래와 같이 카카오 개발자센터로 이동하여 캐시를 지우셔야 합니다. 디버그 캐시 초기화 카카오계정 accounts.kakao.com 2023. 4. 18.
[Flutter] 플러터 개발시 모범사례 확인하기 플러터(Flutter)로 앱을 개발할 때, 일관성 없는 코드 작성이나 특정 컨벤션을 지키지 않는 경우 성능 이슈나 재사용성의 저하 등의 문제가 발생할 수 있습니다. 이러한 문제를 방지하기 위해서는 다음과 같은 모범 사례를 따르는 것이 좋습니다. 뷰단 삼항연산자 플러터(Flutter)는 UI(View)와 비즈니스 로직(Model, Controller)을 구분하지 않고 코드를 작성할 수 있기 때문에, 뷰단에서도 코드를 자유롭게 혼합할 수 있습니다. 이러한 점은 개발자들이 빠르게 프로토타이핑을 할 수 있도록 도와주지만, 코드를 장기적으로 유지하기 어렵거나 가독성이 떨어질 수 있다는 단점도 존재합니다. 따라서, 개발자는 코드의 가독성을 높이기 위해 모델과 컨트롤러 등을 적절히 분리하고, 코드의 일관성을 유지하는.. 2023. 4. 9.
[Flutter] 앱에서 이미지 최적화하여 성능 향상 시키기 이미지가 이러한 시스템에서 필요한 것보다 큰 경우 특히 저사양 장치에서 성능 저하를 유발할 수 있으며 목록 보기에서와 같이 이미지가 많은 경우에는 성능 하락에 영향이 있으며, 심한 경우에는 앱이 크래시가 발생할 수도 있습니다. 태그 추가 main에 아래 코드를 추가해줍니다. 아래와 같이 추가하게 되면 이제 디버그 콘솔에서 확인할 수 있습니다. debugInvertOversizedImages = true; 이미지 조절 이미지 assets/images/signin/onboarding_1.png의 디스플레이 크기는 639×400이지만 디코딩 크기는 960×600이며 추가로 1666KB를 사용합니다. 사전에 자산 크기 조정, 639의 cacheWidth 매개변수, 400의 cacheHeight 매개변수 제공 또.. 2023. 4. 9.