본문 바로가기

분류 전체보기

(179)
비트연산자, 암호화, 복호화 와 제어문 1. 비트연산자 (1) 비트(bit) 정보량의 최소단위 1bit 표현할 수 있는 수 0,1 1bit로는 정보를 알기 힘드니 1byte = 8bit를 정보의 기본 단위로 사용하는 것 장점 : 사람의 언어를 컴퓨터의 언어로 바꾸는 과정을 생략하기 때문에 속도가 빠름 (2)비트논리연산자 1) 논리곱 &(AND) 두 비트가 모두 1이면 1 연산식 결과 1 & 1 1 1 & 0 0 0 & 1 0 0 & 0 0 2) 논리합 | (OR) 두 비트 중 하나라도 1이면 1 연산식 결과 1 | 1 1 1 | 0 1 0 | 1 1 0 | 0 0 3) 배타논리합 ^(XOR) 두 비트가 서로다르면 1 연산식 결과 1 ^ 1 0 1 ^ 0 1 0 ^ 1 1 0 ^ 0 0 4) 논리부정연산자 ~(NOT) 0을 1로, 1을 0 부호..
입력 메소드와 연산자 1. 입력메소드 Scanner sc = new Scanner(System.in); String name = sc.next(); (1) .next() : 입력 받은 값을 String 타입으로 반환한다 입력한 값을 띄었쓰기, 엔터로 구분하고 분리한다 임시 저장공간에서 엔터를 소모한지 않는다 (2) .nextLine() : 입력받은 값을 String 타입으로 반환한다 띄어쓰기를 포함한 한 줄 전체를 입력받는다(엔터를 소모한다) 1) 엔터 이전까지의 값을 가져온다 2) 임시저장공간에서 엔터를 소모한다(지워준다) (3) .nextInt() : 입력받은 값을 int 타입으로 반환한다 입력한 값을 띄어쓰기, 엔터로 구분하고 분리한다 (4) .nextDouble() : 입력받은 값을 double 타입으로 반환한다 입력..
자바 형변환과 입력 메소드 1. 형변환(Type Casting) 강제형변환 : (자료형)값 (double)10; (int)4.2; 자동형변환 1) 작은 byte의 값을 큰 byte의 변수에 저장하면 자동 형변환 된다 2) 정수 + 정수 = 정수 실수 + 실수 = 실수 3) 문자는 정수로 자동 형변환 된다 2. 문자열의 형변환 다른 자료형을 문자열로 변환 다른 자료형 + ""(빈 문자열)로 연결하면 항상 문자열이 된다 문자열을 다른 자료형으로 변환 기본자료형은 기본 자료형끼리 형변환이 된다 클래스타입은 기본 자료형으로 변환이 불가능한데 String 타입(참조자료형)은 Integer, Double, Boolean 등의 클래스의 도움을 받아서 형변환을 할 수 있다 정수형 Integer.parseInt("문자열") 실수형 Double.p..
Java 변수와 자료형 1. 자료형(Data Type): 값의 종류 (1) 기본 타입 자료형 type byte 값 정수형 int 4byte 4,6,-245,123,0,.. long 8byte 5L, -5L, 0L 실수형 float 4byte 4.0f, -95.2f, 0.0f, .. double 8byte 4.0, 3.15, 0.0, .. 논리형 boolean 1byte true, false 문자형 char 2byte 'a','가', .. 문자열 String ?? "2023년 11월 8일" (2) 비트(bit) 컴퓨터가 처리할 수 있는 최소의 데이터 단위 (3) byte 8bit가 모이면 1byte가 된다 (4) 문자 작은 따옴표로 감싸진 1개의 문자 (5) 문자열 문자들을 나열한 것 큰 따옴표로 감싸진 0개 이상의 문자 2. ..
Java 1. java란 ? (1) Java 1) 0,1 로 이루어진 컴퓨터가 이해하는 저급 언어를 사람이 이해 하기 쉬운 고급언어로 번역된 언어의 종류 중 하나 2) 컴퓨터언어 = 저급언어 + 고급언어 3) 번역프로그램: 인터프리터, 컴파일러 4) 저급언어 -----컴파일러-----고급언어 (2) Java 폴더의 구성 1) 프로젝트(폴더) 하나의 프로그램의 단위 프로그램을 구성하는 것들을 모아둔 폴더 2) 패키지(폴더) 소스파일들의 묶음 단위 프로젝트의 하위 폴더 3) 소스파일 .java로 끝나는 파일이며 소스코드가 작성되어있다 4) 클래스 자바의 모든 코드는 클래스 내부에 작성되어있다 클래스의 이름은 반드시 대문자로 시작해야한다 (3) 자바 환경설정 및 설치 1) 자바 설치 여부 확인하기(windows) 실행..
Web Socket 1. Node => ws 모듈 or socket.io 2. HTML5에 추가된 스펙, 실시간 양방향 데이터 전송을 위한 기술 3. HTTP는 클라이언트쪽에서 먼저 서버로 요청을 보내야 응답을 받을 수 있는 단방향 구조 4. web socket을 사용하면 한 번 연결을 맺어 놓으면 서버쪽에서 클라이언트로 먼저 데이터를 보낼 수 있게 됨 5. http프로토콜 대신에 ws프로토콜 6. websocket 이전 실시간 데이터 전송 기술 : 폴링, 딥폴링 => 주기적으로 클라이언트가 서버에 요청 => http 한계 7. SSE(서버센트 이벤트) : 단방향, 서버에서 클라이언트로
CI / CD 1. CI / CD (1) 개발 단계부터 배포까지 자동화하여 애플리케이션을 더욱 짧은 주기로 고객에게 제공하는 방법 (2) 지속적인 통합, 지속적인 서비스 제공, 지속적인 배포 (3) 새로운 코드 통합으로 개발 및 운영에 발생하는 문제를 해결하기 위한 솔루션 (4) CI(Continuous Integration): 지속적인 통합 (5) CD(Continuous Delivery or Continuous Deployment) : 지속적인 서비스 제공, 지속적인 배포 (6) 지속적인 배포 : 개발자의 변경 사항을 리포지토리에서 고객이 사용 가능한 프로덕션 환경까지 자동으로 릴리스 하는 것 (7) 운영 프로세스 과부하 해결 2. CI / CD 툴 (1) Jenkins : 간단한 CI 서버에서 완전한 CD 허브에..
Git Workflow 1. Git Workflow (1) 하나의 브랜치 (2) master 브랜치는 배포할 준비된 상태만 올리고 master 브랜치에서 나온 dev 브랜치에서 개발 개발을 마치고, 프로덕션에 배포할 준비가 되면 master 브랜치와 다시 합치게 됨 (merge) (3) 더 세분화 된 방식은 dev 브랜치에서 기능별로 feature 브랜치를 빼서 개발하고 기능 개발이 완료되면 dev 브랜치에 합침 2. hotfix 브랜치 (1) 긴급하게 에러를 고치기 위해 만드는 브랜치 (2) 마스터 브랜치에서 바로 만들어서 프로덕션에서 생긴 이슈를 고치고 master 브랜치로 합쳐서 배포할 수 있도록 함 3. release 브랜치 (1) dev 브랜치에서 feature 브랜치들을 만들어서 기능들을 모두 개발하고 합침 (2) ..
Serverless Service 1. 서버리스 서비스 (1) 서버가 없다는 뜻으로 백엔드 서버가 존재하지 않음 (2) Cloud Function을 이용하여 함수 단위로 배포를 진행하는 것 (3) 브라우저에서 요청 -> Cloud Function 상의 함수가 실행됨 -> 해당 함수를 통해 DB에 접속하여 데이터 등록 및 조회 2. 서버리스 서비스의 장점 (1) 백엔드 서버를 사용하여 서비스 할때에 비해 요금이 적게 소요됨 => 서버리스 서비스는 함수가 실행될 때만 비용 부과 (2) 접속량이 많지 않을 때는 서버리스 서비스를 사용하면 비용 절감 효과가 있음 3. 서버리스 서비스의 단점 (1) 24시간 서비스가 켜져 있는 것이 아니라 요청이 들어올 때마다 서버가 켜지게 됨 (2) 서버가 켜지는데 시간이 걸려서 요청이 느려짐 => cold s..
Kubernetes 1. Kubernetes (쿠버네티스) (1) 쿠버네티스는 컨테이너 관리자로 컨테이너 운영을 자동화하기 위한 도구 (2) 비슷한 도구로는 메소스, 도커스웜 등이 있음 (3) 컨테이너 오케스트레이션 도구라고도 함 (4) 많은 수의 컨테이너를 협조적으로 연동시키기 위한 통합 시스템 (5) 컨테이너를 다루기 위한 API 및 명령행 도구 등이 함께 제공됨 (6) 도커 호스트 관리, 서버 리소스의 여유를 고려한 컨테이너 배치, 스케일링, 여러 개의 컨테이너 그룹에 대한 로드 밸런싱, 헬스 체크 등의 의 기능을 갖추고 있음 (7) 쿠버네이트 리소스 : 노드, 네임스페이스, 파드 2. Cluster (1) Kubernetes cluster: 쿠버네티스의 여러 리소스를 관리하기 위한 집합체 (2) Node : 클러스터..