분류 전체보기 122

React - CRA 세팅하기

먼저 React 를 셋팅하기전에 먼저 node.js 가 필요합니다. node.js 설치하기: https://www.notion.so/shin96bc/Mac-OS-f0217a5c0baa40bba370f0545932c905 명령어로 프로젝트 생성하기 임의의 폴더를 하나 만들고 터미널을 켜서 그 폴더의 경로로 이동합니다. 아래의 명령어를 입력합니다. npx create-react-app 프로젝트명 # ts를 사용하는 경우 npx create-react-app 프로젝트명 --template typescript IntelliJ 사용 File -> new -> project 아래의 사진처럼 세팅해줍니다. 생성할 프로젝트의 이름 리액트 프로젝트를 생성할 위치 웹이면 React, 앱이면 React Native node..

JS/React 2024.03.02

React란?

React란? React 공식홈페이지에서는 React를 사용자 ‘인터페이스 구축을 위한 JavaScript 라이브러리’라고 설명하고 있습니다. 즉, React는 Application이 아니라 그중에 일부인 UI만을 담당하고 있다는 사실을 알 수 있습니다. React는 철저하게 UI만을 다루기 때문에 React Application을 만들기 위해 필요한 나머지 부분들은 third-party library로 만들어졌고, React Application은 React와 함께 third-party library를 사용하여 구현합니다. Why React? Web 사이트를 인스타그램 등의 App처럼 새로고침없이(페이지를 이동할 때 화면이 깜빡이는 현상) 부드럽게 동작하는 Single Page Application 으..

JS/React 2024.03.02

HTTP 02. TCP & UDP

(1) 인터넷 프로토콜 스택의 4계층 애플리케이션 계층 - HTTP, FTP 전송계층 - TCP, UDP 인터넷 계층 - IP 네트워크 인터페이스 계층(LAN 카드, LAN 드라이버 등을 포함) (2) TCP( Transmission Control Protocol ) 1) TCP 의 특징 연결지향 - TCP 3 way handshake(가상 연결) 데이터 전달 보증 순서 보장 신뢰할 수 있는 프로토콜 현재는 대부분 TCP 사용 2) TCP 3 way handshack( 논리적인 연결 ) TCP 는 통신을 할때 클라이언트 에서 "SYN" 이라고 하는 접속 요청을 보냅니다. 서버는 그 SYN 를 받아서 그 SYN 과 함께 요청 수락을 의미하는 "ACK" 를 보냅니다. 그 다음에 클라이언트에서 요청 수락이 확..

HTTP 2022.06.28

Spring Gradle 09. 빈 스코프

(10) 빈 스코프 1) 빈 스코프란? 스프링 빈은 기본적으로 싱글톤 스코프로 생성되기 때문에 아무 설정도 안하면, 스프링의 빈이 스프링 컨테이너의 시작과 함께 생성되어서 스프링 컨테이너가 종료될 때 까지 유지된다. 스코프는 번역 그대로 빈이 존재할 수 있는 범위를 뜻한다. 스프링은 다양한 스코프를 지원한다. 1> 싱글톤: 기본 스코프, 스프링 컨테이너의 시작과 종료까지 유지되는 가장 넓은 범위의 스코프이다. 2> 프로토타입: 스프링 컨테이너는 프로토타입 빈의 생성과 의존관계 주입까지만 관여하고 더는 관리하지 않는 매우 짧은 범위의 스코프이다. 3> 웹( WEB ) 관련 스코프 1. request: 웹 요청이 들어오고 나갈때까지 유지되는 스코프이다. 2. session: 웹 세션이 생성되고 종료될 때 까..

Java/Spring 2022.06.15

Spring Gradle 08. 빈 생명주기 콜백

(1) 빈 생명주기 콜백 1) 빈 생명주기 콜백 시작 데이터베이스 커넥션 풀이나, 네트워크 소켓처럼 애플리케이션 시작 시점에 필요한 연결을 미리 해두고, 애플리키에션 종료 시점에 연결을 모두 종료하는 작업을 진행하려면, 객체의 초기화와 종료 작업이 필요하다. 간단하게 외부 네트워크에 미리 연결하는 객체를 하나 생성한다고 가정해보자. 1> 이 NetworkClient 는 애플리케이션 시작 시점에 connect() 를 호출해서 연결을 맺어두어야하고, 애플리케이션이 종료되면 disConnect() 를 호출해서 연결을 끊어야 한다. ex) public class NetworkClient { private String url; public NetworkClient() { System.out.println("생성자..

Java/Spring 2022.06.15

Spring Gradle 07. 다양한 의존관계 주입 방법

(1) 다양한 의존관계 주입 방법 1) 생성자 주입 이름 그대로 생성자를 통해서 의존 관계를 주입 받는 방법이다. 특징: 1> 생성자 호출시점에 딱 1번만 호출되는 것이 보장된다. 2> 불변( setter를 만들지 않는다 ), 필수( final ) 의존관계에 사용 ( 항상은 아니고 주로 이렇게 사용한다 ) 3> 생성자가 딱 1개만 있으면 @Autowired 생략가능 2) 수정자 주입( setter 주입 ) setter라 불리는 필드의 값을 변경하는 수정자 메서드를 통해서 외존관계를 주입하는 방법이다. 특징: 1> 선택, 변경 가능성이 있는 의존관계에 사용 2> 자바빈 프로퍼티 규약의 수정자 메서드 방식을 사용하는 방법이다. cf) @Autowired 의 기본 동작은 주입할 대상이 없으면 오류가 발생한다...

Java/Spring 2022.06.15

[Spring] Maven 세팅하기

(1) STS.exe 실행 설치      설치 경로는 sts-bundle\workspace      1) spring-tool-suite-3.9.11.RELEASE-e4.14.0-win32-x86_64.zip 압축해제      2) C:\SOO\Spring\sts-bundle 이동      3) STS.ini 파일의 맨 윗줄에 아래의 내용을 추가     -vmC:\Program Files\Java\jdk1.8.0_221\bin\javaw.exe       4) STS.exe 실행      5) 경로는 C:\SOO\Spring\sts-bundle\workspace 로 지정     6) Spring Legacy Project 로 프로젝트 만들기          Spring Legacy Project -> P..

Java/Spring 2022.06.15

Git 02. Git 명령어

(1) github 에 있는 소스파일을 로컬파일에 강제로 덮어쓰기 1) 해당 폴더위치로 이동해서 아래의 명령어를 입력합니다. git reset --hard HEAD git pull (2) 로컬파일을 github Repository 에 강제로 덮어쓰기 1) 해당 폴더위치로 이동해서 아래의 명령어를 입력합니다. 2) 주의: 이 명령어의 사용으로 인해 원격 저장소에 커밋들이 유실되는 현상이 발생할 수 있습니다. git push --force // 또는 git push -f (3) pull 에서 충돌이 날때 git pull --rebase (4) checkout git checkout 브런치 이름 (5) clone git clone url입력 (6) 자동로그인 git config --global credenti..

Git 2022.06.14

Embedded 02. Micom(마이컴) 이란?

(1) Micom 이란? 1) Micom(마이컴) 이란 작은 제어기라는 의미를 가지고 있으며, MCU( Micro Controller Unit ) 또는 Micom( MicroController ) 라고 불립니다. 2) Micom 은 MicroProcessor(마이크로 프로세서) 와 입출력 제어 모듈 그리고 연산을 도와주는 RAM 과 저장 장치로 이루어져 있습니다. 3) 종류가 매우 많고 거의 모든 전자 제품에 사용합니다. (2) Firmware(펌웨어) 란? 1) Firmware 란 Micom 에 프로그래머가 원하는 제어 명령을 하기 위해 프로그래밍한 것을 말합니다. 2) OS 와 비슷한 의미입니다. 즉, 특정 하드웨어 장치에 포함된 소프트웨어라고 정의할 수 있습니다. (정확히는 하드웨어 장치를 제어하기..

Embedded System 2022.06.09

Android 09. Application Class 란?

(1) Application Class 란? 1) Application Class 는 어느 컴포넌트( Activity, Service, Intent 등 )에서나 공유할 수 있는 전역 Class 를 의미합니다. Application 을 상속받은 Class 는 공동으로 관리해야 하는 데이터를 작성하기에 적합합니다. 2) Class 를 만들고 Application Class 를 상속한 뒤, 매니페스트의 application 태그안에 android:name 속성에 Class 의 이름을 등록해서 사용합니다. 3) Application 을 상속받은 Class 는 첫번째 Activity 보다 먼저 인스턴스화 됩니다. 4) 이렇게 애플리케이션에서 공통되게 사용되는 Application 의 자원들은 어디서든 Contex..

Android 2022.06.09