[FE] 마이크로 프론트엔드 아키텍처
·
공부한 것
마이크로 프론트엔드(Micro Frontend) 아키텍처백엔드의 마이크로서비스(Microservice) 개념을 프론트엔드 영역으로 확장한 아키텍처 패턴.즉, 하나의 대규모 프론트엔드 애플리케이션을 여러 개의 독립적인 “작은 프론트엔드 애플리케이션”으로 나누어 개발·배포하는 구조를 말함.프론트엔드를 여러 개의 독립적인 애플리케이션(마이크로 앱)으로 분리하여, 각각 별도로 개발·배포하고 최종적으로 하나의 UI로 통합하는 아키텍처사용 하는 이유대규모 프로젝트의 복잡성 감소, 팀 단위 독립성 확보, 부분 배포 및 업데이트 용이성을 위해 사용구조Container (또는 Shell): 전체 프레임워크 역할을 하는 메인 앱. 공통 스타일, 라우팅, 인증 등을 담당.Micro Apps: 독립적으로 동작하는 각 서비스 ..
[백엔드] Spring
·
공부한 것
초기 자바 개발은? EJB 구조가 너무 복잡하고 설정 파일(XML)이 너무 많고 코드가 무겁고 단순한 기능도 구현 절차가 길고 비효율적.그래서? SPRING FRAMEWORK 개발왜 만들었냐.복잡한 설정 단순화.객체간 의존성 자동 관리 (DI)POJO(Plain Old Java Object) 형태로 개발 가능스프링의 장점생산성 향상 – 설정 자동화, 의존성 관리로 개발 시간 단축유지보수 용이 – 결합도를 낮추어 코드 변경이 쉬움테스트 용이성 – Mock 객체 기반 단위 테스트 지원대규모 확장성 – 스프링 부트, 클라우드, 시큐리티 등으로 확장 가능커뮤니티·문서 풍부 – 전 세계적으로 가장 널리 사용되는 자바 프레임워크임.
[서버] Nginx
·
공부한 것
Nginx(엔진엑스)웹 서버 소프트웨어로, HTTP, 리버스 프록시, IMAP/POP3 프록시 서버 기능 등을 제공함. 높은 성능과 안정성을 목표로 개발. 적은 리소스로 많은 동시 연결을 처리할 수 있도록 설계됨.핵심 아키텍처이벤트 기반 (Event-Driven) 및 비동기 (Asynchronous) 방식: 요청을 처리하기 위해 새로운 프로세스나 스레드를 생성하는 대신 마스터 프로세스(Master Process)가 설정 파일을 읽고, 그 하위에 있는 소수의 워커 프로세스(Worker Process)가 실제 연결을 처리함. 하나의 워커 프로세스는 여러 개의 연결을 동시에 처리할 수 있음. I/O 작업이 발생하면 운영체제 커널에 작업을 위임하고 다른 이벤트를 처리하는 방식으로 동작하여 CPU와 메모리 자원을..
채팅 사이트 구현 - ㅇㅇ님이 입력 중
·
개발일지
보호되어 있는 글입니다.
채팅 사이트 구현
·
개발일지
보호되어 있는 글입니다.
TyprScript와 JavaScript의 차이
·
공부한 것
나는 주로 리액트 개발을 타입스크립트를 사용해서 하는데 같은 학교 친구들에게 프론트엔드 개발을 알려주다보면왜 자바스크립트가 아닌 타입스크립트를 쓰는지 물어보는 경우가 많다. 먼저 타입스크립트는 자바스크립트의 문법이 너무 자유롭다보니선언할 때 타입을 지정하지 않는데, 이러면 동작하면서 개발자가 모르게 형변환이 되어있는 부분이 예상치 못한 오류를 발생시킬 수 있다.자바스크립트는 동적 타입이라 그 특성상 이런 버그들을 찾기 힘들다보니 타입스크립트를 사용한다면 컴파일 단계에서 에러를 알려줘 이러한 오류를 방지할 수 있다. 타입스크립트에는 자바스크립트와 달리 타입 검사라는게 있는데 이게 뭐냐면명시적, 추론된 타입을 기반으로 코드를 검사한다.각 변수, 함수, 객체의 타입을 검사하고 타입이 일치하지 않거나 오류가..
깃허브 Achievements
·
개발일지
보호되어 있는 글입니다.
vue.js란
·
공부한 것
보호되어 있는 글입니다.
Svelte와 React
·
공부한 것
보호되어 있는 글입니다.
C언어 - 포인터
·
스터디
C언어에서 가장 중요한 것중 하나인 포인터에 대해 알아보자. 1. 개념메모리 주소를 저장하는 변수이다.변수 하나당 메모리 어딘가에 고유한 주소가 존재한다.포인터는 그 주소를 가리키며, 간접적으로 대상 변수에 접근하거나 값을 변경한다. 2. 선언과 초기화int x = 42;int *p; p = &x; int *p; : p는 int를 가리키는 포인터&x : x의 주소 (주소 연산자)반드시 선언 후 유효한 주소로 초기화해야 함3. 역참조, 대입int y = *p; *p = 100; *p : p가 가리키는 메모리의 실제 값int y = *p; → y에 x의 값이 복사*p = 100; → x의 값이 100으로 변경\4. 예제#include int main(void) { int number = 5..