카테고리 보관물: Front-end

What is Barrel Pattern?

필요한 여러가지 모듈들을 하나의 모듈로 통합해주는 패턴입니다.
여러 import 모듈들을 하나의 파일에서 re-export 하여 여러 줄의 import 라인을 하나의 라인으로 줄여주는 효과가 있습니다.

// demo/foo.ts
export class Foo {}

// demo/bar.ts
export class Bar {}

// demo/baz.ts
export class Baz {}

배럴 패턴을 사용하지 않을 때는 위의 모듈들을 다음과 같이 개별적으로 import 합니다.

import { Foo } from '../demo/foo';
import { Bar } from '../demo/bar';
import { Baz } from '../demo/baz';

대신 배럴 패턴을 사용하여 demo/index.ts 파일에 다음 라인을 입력합니다.

// demo/index.ts
export * from './foo'; // re-export all of its exports
export * from './bar'; // re-export all of its exports
export * from './baz'; // re-export all of its exports

이제 다음 한줄의 import 로 모든 모듈을 사용할 수 있습니다.

import { Foo, Bar, Baz } from '../demo'; // demo/index.ts is implied

원문 해석 : https://basarat.gitbook.io/typescript/main-1/barrel
참고 블로그
https://xionwcfm.tistory.com/392
https://medium.com/@denisultanoglu/using-barrel-pattern-in-react-typescript-projects-e8e855730182

[Github] REMOTE HOST IDENTIFICATION HAS CHANGED!

model-viewer의 github submodule (크로노스 그룹 gltf 모델 패키지) 업데이트 시도 할때 제목의 오류가 발생하면서 작업이 취소 되는 상황이 발생하여 찾아보다 해결방법을 발견하여 게시함

요약 ) github에서 RSA SSH키를 업데이트 하였으니 오류가 난다면 아래 방법으로 known hosts 파일을 업데이트 할것

다른 이런저런 정보는 발견하면 추가함

https://velog.io/@jeongmin78/Git-WARNING-REMOTE-HOST-IDENTIFICATION-HAS-CHANGED-%EC%97%90%EB%9F%AC-%ED%95%B4%EA%B2%B0

Nuxt build config

https://v2.nuxt.com/docs/configuration-glossary/configuration-target/

nuxt (vue) 를 정적 사이트 ( index.html ) 형태로 빌드 하고 싶다면 다음의 옵션을 조정하면 된다.

// nuxt.config.js
export defulat {
   target: "static",  // server 를 바꾼다.
   ssr: false,        // true 
   ...
}

+ 추가사항 ) nuxt 는 SSR 이기 때문에 각 모듈을 렌더링 타임에 link 하는 방식으로 동작하여 완벽한 방식은 아니다

따라서 컴팩트한 html 을 원할 경우 SSR 이 아닌 다른 Front end 프레임워크 ( vue, flutter 등.. ) 을 사용하는게 좋다.

Plugin

호스트 응용 프로그램과 서로 응답하는 컴퓨터 프로그램

특정한 “주문식” 기능을 제공한다. (확장 기능 이라고도 함)

애드온(add-on), 애드인(add-in) 이라고도 부른다.

어떤 프로그램에서 특정한 기능을 수행 하기 위하여 만들어진 프로그램

플러그인은 단독으로 사용 될 수 없으며 타겟 프로그램에 종속적이다. 간혹 다른 프로그램과 호환가능 하도록 제작하는 경우도 있다. (ex, 어도비 플래시, 자바, 아크로벳 리더 등등…)

기업 / 그룹 또는 개인이 다수의 사용자에 맞는 기능을 전부 구현 할 수는 없으므로 개별 사용자가 직접 구현하도록 한 프로그램의 한 형태.

플러그인이 많아지면 많아질 수록 프로그램이 무거워지는 단점이 있다.

ex1) 비주얼 코드의 수많은 플러그인을 보라. 마이크로 소프트에서 개발한 것이 아닌 개별의 개발자가 만들어낸 추가 기능들 이다.

ex2) 언리얼 엔진의 수많은 기능들 중 플러그인 (애니메이션 편집툴, 본 편집툴 등…) 형태에서 언리얼 엔진 기능으로 합병된 경우가 많다.

C++ 플러그인 구조 예시 https://luckygg.tistory.com/265