이거 보고 주민등록등본 pdf로 받아서 신청
돈 받을 때 신원 등록이 필요한거지 앱 등록 자체는 그냥 할 수 있는듯?
https://www.youtube.com/watch?v=RNYQZ0h4e-c
이거 보고 광고 붙여보려고 했는데

앱 등록하는게 생각보다 오래 걸리는 일이었다.
고대비 이미지:
낮은 채도:
시각적 느낌:
스마트 포인터는 동적 메모리 관리를 자동화하기 위해 만들어진 특수한 포인터 클래스입니다. C++에서는 일반적으로 동적 메모리 할당(new/delete)이 필요한 상황에서 이를 직접 관리해야 하는데, 이 과정에서 메모리 누수와 같은 문제가 발생할 수 있습니다. 스마트 포인터는 이를 방지합니다.
스마트 포인터의 역할
그럼 이것만 쓰면 gc 필요없는거 아님?
스마트 포인터만 사용하면 Garbage Collector(GC)가 필요 없다고 생각할 수 있지만, 이는 완전히 사실은 아닙니다.
순환 참조(Circular Reference):
객체 수명 관리가 필요 없는 경우
객체가 아닌 다른 자원
소스 파일
: c++로 작성한 프로그램. 번역 단위 (translation unit) 라고도 부르는데, 컴파일러가 한 번에 기계어 코드로 바꾸는 단위이기 때문.
헤더 파일
: 특수한 형태의 소스 파일. 타입 선언, 함수 프로토타입 같은 정보를 번역 단위 간에 공유하는 데 쓰임. 컴파일러는 헤더 파일이 존재하는지 모름. c++ 전처리기가 컴파일에 앞서 모든 #include 구문을 헤더 파일로 교체하기 때문.
번역 단위 1개가 컴파일된 결과물인 기계어는 목적(object) 파일에 저장됨.
목적 파일 안의 기계어 특성
목적 파일 여러 개 묶은게 '라이브러리'.
목적 파일과 라이브러리는 링커를 거쳐 실행 파일로 변환되는데, 이 과정을 '링크한다'고 말함.
컴파일러에서 안 정했던 메모리 주소 값이나 외부 참조를 확정한 상태의 기계어가 실행 파일.
실행 파일은 운영체제에서 로드하고 실행 가능.
실행 파일의 기계어 코드는 여전히 relocatable함.
모든 기계어와 데이터를 가리키는 메모리 주소는 절대 주소가 아니라 기준 값에 더해질 상대 값이라는 뜻.
동적 링크 라이브러리 (DLL, Dynamic Link Library) 는 라이브러리의 한 종류인데, 정적 라이브러리와 실행 파일의 중간 형태를 띰.
함수 담고 있다는 점에선 라이브러리와 같고, 운영체제가 따로 로드한다는 점은 실행 파일과 같음.
시작과 끝 처리 코드 있다는 것도 실행 파일과 유사.
실행 파일이 DLL 쓰려면 부분적으로 링크된 (partially linked) 기계어 코드가 있어야 함.
링크 거치면 대부분 메모리 주소 결정되는데 DLL 함수 참조는 결정 안됨.
나중에 실행 파일 실행 할 때 운영체제에서 참조 결정 안된 함수 찾아서 필요한 DLL을 메모리에 로드.
실행 파일과 상관 없이 DLL만 교체할 수 있다는 점에서 매우 유용.
리액트는 속성을 prop이라 부름.
인자 받아서 동적으로 컨텐츠 변경 가능하다.
function Nav(props) {
const lis = [
<li>
<a href="/read/1">html</a>
</li>,
<li>
<a href="/read/2">css</a>
</li>,
<li>
<a href="/read/3">js</a>
</li>,
];
return (
<nav>
<ol>{lis}</ol>
</nav>
);
}
배열을 넣었다가 푸는 것도 가능
for (let i = 0; i < props.topics.length; i++) {
let t = props.topics[i];
lis.push(<li>{t.title}</li>);
}
저대로는 쓸모가 없으니 for문으로 동적으로 받은 props를 받아오기
lis.push(
<li key="{t.id}">
<a href={"/read/" + t.id}>{t.title}</a>
</li>
);
동적으로 만든 각각의 <li> 태그는 key라는 props를 가지고 있어야 하고, 반복문 안에서 고유해야 함.
자동으로 생성하는 태그의 경우 리액트가 태그들을 추적해야 하는데, 이렇게 추적해야 할 때는 근거가 있어야 하고, 그 근거로써 key라는 약속된 prop을 부여하는 것.
이렇게 함으로써 리액트가 성능을 높이고 정확한 동작을 할 수 있게 협조.