전체 글 183

CS)네트워크_대역폭

■ 대역폭 (Bandwidth) □ 대역폭이란?네트워크가 일정 시간 동안 전송할 수 있는 데이터의 최대 용량대역폭이 높을 수록 더 많은 데이터를 전송할 수 있다. 주로 초당 비트 bps 단위로 측정된다.    □ 유/무선 인터넷에서 대역폭     - 유선 인터넷        일반적으로 Ethernet 케이블을 통해 연결되며, 흔히 100Mbps, 1Gbps, 10Gbps 등 표준으로 쓰인다.         예) 인터넷 회선 약정시 500M급, 100M급 인터넷이라 표현되는 것이 데이터 전송 대역폭이다.       - 무선 인터넷        Wi-Fi를 통해 연결된다.         흔히 사용되는 2.4G / 5G는 대역폭이 아니라 주파수다.    □ 처리량과 대역폭의 관계처리량은 실제로 네트워크를 통..

CS 2024.05.22

CS)네트워크_네트워크 기초

■ 네트워크란?  □ 네트워크란두 개 이상의 컴퓨터나 기기들이 데이터를 주고 받기 위해 연결된 시스템노드(node)와 링크(link)가 서로 연결되어 있으며, 리소스를 공유하는 집합이다. 인터넷은 가장 큰 규모의 네트워크다.  □ 좋은 네트워크란?      - 높은 처리량 : 네트워크를 통해 전송되는 데이터의 양이 많을수록 좋다.     - 낮은 지연시간 : 데이터가 출발지에서 목적지까지 도달하는 데 걸리는 시간이 짧을수록 좋다.     - 신뢰성 : 네트워크가 항상 안정적으로 동작하고, 데이터 전송 중에는 오류가 적어야한다.      - 보안성 : 데이터 전송 중에 외부로부터 공격이나 도청을 방지할 수 있어야 한다.   □ 처리량(Throughput)네트워크가 일정 시간 동안 전송할 수 있는 데이터의 ..

CS 2024.05.22

CS)Spring_11_스프링 MVC 패턴

서블릿(Servlet)이란?-> 웹 클라이언트에게 요청을 받고(브라우저), 그에 대한 응답을 생성하여 클라이언트에게 반환하는 역할클라이언트의 요청을 처리하도록 특정 규약에 맞춰 Java코드로 작성하는 클래스 파일이다.아파치 톰캣은 이러한 서블릿들이 웹 애플리케이션으로 실행될 수 있도록 해주는 서블릿 컨테이너 중 하나다. 스프링 MVC 내부에는 서블릿을 기반으로 웹 애플리케이션이 동작하며, 스프링 부트는 기본적으로 아파치 톰캣이 내장되어 있다.  □ MVC 패턴이란? 애플리케이션을 개발할 때 사용하는 패턴 개발 영역을 Model, View, Controller로 구분하여각 역할에 맞게 코드를 작성하는 개발방식  ∴ UI 영역과 도메인(비즈니스 로직) 영역을 분리하여           서로 영향 주지 않으면..

CS 2024.05.20

React 입문 -

단순한 js함수 but jsx 반환 -> 컴포넌트 isLogginedIn 상태에 따른 메시지 렌더링  함수형 상태, 생명주기(Hooks) 메서드 가능단순 간결클래스형보다 가볍고 성능이 약간 나을수도 클라스형과 차이 : 작성 방식과 상태 관리 방식에 차이 but 동일하게 리액트에 의해 처리 돼 돔으로 랜더링  jsxjs코드 안에 html과 유사한 구문 사용할 수 있게 해줌실제로 js로 변환, React.createElement()호출로 변환   var, cond, undefined, style, classname, comment var : const 변수 사용   const name = "React";   Hello, {name}! 변수 사용하고, jsx 안에서 {name}으로 변수 참조 conditio..

React 입문 - Hook, props

function MyComponent() {  const [count, setCount] = useState(0); // count 상태 변수와 setCount 상태 업데이트 함수 선언   useEffect(() => {    document.title = `You clicked ${count} times`; // count가 변경될 때마다 실행되는 부수 효과  }, [count]); // count가 변경될 때만 useEffect 실행  useEffect(() => {    document.title = `You clicked ${count} times`; // count가 변경될 때마다 실행되는 부수 효과  }, [count]); // count가 변경될 때만 useEffect 실행  ==> useS..

React 입문 - 기본 파일 구조

■ index.html리액트가 렌더링되는 기본 html파일, 하나의 html 파일로 동작하는 단일 페이지 애플리케이션(SPA)의 루트 리액트가 여기에 필요한 js파일을 삽입 요소가 있으며, 여기에 React 컴포넌트가 렌더링 됨 ■ index.js 애플리케이션의 진입점(entry point) ReactDOM을 사용하여 App 컴포넌트를 에 렌더링  ■ index.js 메인 컴포넌트 파일, 다른 하위 컴포넌트 포함하고 애플리케이션 구조 정의 주요 레이아웃이나 라우팅 등을 설정  ■ App.js 메인 컴포넌트 파일다른 하위 컴포넌트를 포함하고, 애플리케이션 구조를 정의 레이아웃이나 라우팅 설정 ■ components/ChildComponents.jsApp.js 내에서 사용하는 자식 컴포넌트 파일하위 컴포넌트..

React 입문 - 부모 자식 비유

리액트에서 부모컴포넌트 자식컴포넌트는 부모가 열심히 일해서 벌어놓은 돈이나, 성실히 살아서 일군 성과들을 자식이 사용해 좋은 집에서 좋은 차를 타고 비싼밥 먹으며 다닌다고 생각하면 돼?  네, 리액트에서 부모 컴포넌트와 자식 컴포넌트의 관계를 설명하는 비유로 "부모가 열심히 일해서 벌어놓은 돈이나, 성실히 살아서 일군 성과들을 자식이 사용해 좋은 집에서 좋은 차를 타고 비싼 밥 먹으며 다닌다"고 하는 것은 적절한 비유입니다. 이 비유를 통해 부모 컴포넌트가 자식 컴포넌트에게 데이터를 제공하고, 자식 컴포넌트는 이를 활용하는 관계를 쉽게 이해할 수 있습니다.리액트에서의 부모-자식 관계데이터 제공:부모 컴포넌트는 자신의 상태나 데이터를 관리합니다.부모 컴포넌트는 이 데이터를 props를 통해 자식 컴포넌트에..

CS)Spring_10_빈 라이프 사이클

스프링의 컨테이너는 bean의 생명주기 관리와 의존성 주입을 담당하여, 개발자가 로직에 집중할 수 있도록 해준다.(객체의 소멸과 생성을 프레임워크가 대신 처리한다. )   □ 콜백이란?주로 콜백함수를 부를 때 사용하는 용어다.콜백함수를 등록하면 특정 이벤트가 발생했을 때 해당 메서드가 호출된다.  콜백 함수는   DB연결, 네트워크 소켓 연결과 같이 시작 시점에 미리 연결한 뒤   종료 시점에 연결을 종료해 객체의 초기화 & 종료 작업이 필요한커텍션풀의 connection/disconnect 같은 작업에 사용된다.  □ 빈 생명주기 콜백의 필요성스프링 빈도 위와 같이 초기화/종료 작업을 나눠서 진행한다.즉, 객체 생성 --> 의존성 주입 라이프 사이클을 가진다.     (데이터를 사용하기 위해서는 의존관..

CS 2024.04.25

돈의 속성

리스크의 특성 중 하나는 과거 사례가 미래에 영향을 주지 않는다는 점이다. 패턴을 찾는 사람들은 새로운 미래, 아직 일어나지 않은 상황을 고려하지 않는다. 새로운 일이 벌어지면 이 상황을 과거의 일과 묶어 해석할 뿐이다. 그러나 언제나 세상에는 역사에 없던 최악의 상황이 일어난다. 그리고 투자 세계에서 이를 대비하지 않는 사람은 사라지게 되어 있다. 또한 리스크는 정기적인 모습을 가진 채 비정기적으로 나타난다. '평균 10년에 한 번', '평균 30%하락'과 같은 용어는 리스크를 이해하는데 가장 방해가 되는 데이터다. 평균이라는 말처럼 실속 없는 것이 없다. 때때로 평균은 아무 의미가 없거나 사실을 왜곡하고 있기 때문이다. 그래서 리스크를 이해한다는 건 패턴과 분석에 의한 가정이 아니라 리스크에..

Book 2024.04.21

S)Spring_10_스프링 컴포넌트 스캔 Component Scan & DI 자동 주입

■ 스프링 컨테이너란? 스프링에서 자바 객체는 Bean이라고 한다. 스프링 컨테이너는 bean의 생명 주기를 관리(생성, 관리, 제거 등)하며, 생성된 bean에 추가적인 기능을 제공한다. ■ 컴포넌트 스캔(Component Scan) Bean으로 등록될 준비가 된 클래스들을 스캔하여 Bean으로 등록해주는 과정을 말한다. 애플리케이션이 시작될 때 자동으로 수행된다. □ 스캔 대상 @Component 어노테이션이 붙어있는 클래스들은 전부 컴포넌트 스캔의 대상이 된다. @Component 컴포넌트 스캔에서 사용 @Configuration 스프링 설정 정보에서 사용 @Service 컴포넌트 스캔, 스프링 비즈니스 로직에서 사용 @Repository 스프링 데이터 접근 계층에서 사용 @Controller 컴포..

CS 2024.04.15