CS
-
JAVA - Wrapper ClassCS/Java 2021. 2. 27. 17:19
Wrapper Class 자바의 자료형 기본 타입) char, int, float, double, boolean등. 참조 타입) class, interface 등. 기본 타입의 데이터를 객체로 표현해야 하는 경우 래퍼 클래스를 사용한다. Wrapper Class란? 기본 타입의 자료를 객체로 다루기 위해 사용하는 클래스를 Wrapper Class라고 한다. 기본 타입 Wrapper Class byte Byte char Character int Integer float Float double Double boolean Boolean long Long short Short 박싱: 기본 타입의 값을 래퍼 클래스로 만드는 과정을 말한다. 언박싱: 래퍼 클래스에서 기본 타입의 값을 얻어내는 과정을 말한다. 래퍼 ..
-
JAVA - JDK , JRECS/Java 2021. 2. 26. 19:20
JDK, JRE 요약 JDK = JRE + @ JRE란? Java Runtime Environment JVM이 자바 프로그램을 동작시킬 때 필요한 라이브러리 파일들과 기타 파일들을 가지고 있다. 컴파일된 자바 프로그램을 실행시킬 수 있는 자바 환경으로 JVM의 실행 환경을 구현했다고 할 수 있다. 자바 프로그래밍 도구는 포함되어 있지 않기 때문에 자바 프로그래밍을 하기 위해서는 JDK가 필요하다. JDK란? Java Development Kit 자바 프로그래밍시 필요한 컴파일러 등을 포함한다. 개발을 위한 도구(javac, java등)들을 포함한다. JDK를 설치하면 JRE도 같이 설치된다. reference goodgid.github.io/Java-JDK-JRE/
-
WEB - AJAXCS/WEB 2021. 2. 26. 19:13
AJAX(Asynchronous JavaScript And Xml) AJAX란? JavaScript 라이브러리 중 하나이며 비동기적인 통신을 지원한다. JSON, XML, HTML, 일반 텍스트 형식을 포함한 다양한 포맷을 주고 받을 수 있다. 서버와 통신하기 위해 XMLHttpRequest라는 객체를 생성하여 수행한다. 비동기성 페이지 새로고침 없이 서버에 요청을 보낸다, 서버로 부터 데이터를 받고 클라이언트에서 데이터를 처리한다. 서버 응답에 대한 처리 request요청의 상태가 변하면 readyState라는 플래그가 변하여 onreadystatechange라는 함수를 호출한다. readyState 상태 플래그 0(Uninitialized) - request가 초기화 되지 않음. 1(Loading) ..
-
JAVA - RamdaCS/Java 2021. 2. 26. 01:09
Ramda Ramda함수란? JAVA8부터 지원이 되며, 익명함수 라고도 한다. 함수형 인터페이스를 사용한다. 불필요한 코드를 줄이고 가독성을 향상시키기 위해 나왔다. 람다의 표현식 (파라미터) -> {몸체} 몸체 부분이 단일 행일 경우 중괄호와 return을 생략할 수 있다. 기본 자바 문법 (문자열 내림차순 정렬) Arrays.sort(arr, new Comparator() { @Override public int compare(String o1, String o2) { return o2 - o1; } }); 람다식 문법 Collections.sort(arr, (o1, o2) -> o2 - o1); 람다식의 장, 단점 장점 불필요한 반복문을 줄일 수 있어 코드가 간결해 진다. 가독성이 향상된다. 단점..
-
JAVA - GenericCS/Java 2021. 2. 26. 00:47
Generic Generic이란? JDK 1.5에 처음 도입되었다. 데이터의 타입을 일반화 한다는 것을 의미한다. 클래스으로 선언한다. 이때 사용되는 타입으로는 래퍼 클래스만 가능하다. Generic의 선언 및 생성 선언 class MyArray { T element; void setElement(T element) {this.element = element;} T getElement() {return element}; } 사용 MyArray myArr = new MyArray(); 위의 예제는 MyArray클래스에 사용된 타입 변수로 Integer 타입을 사용하는 예제이다. 제네릭 클래스를 생성할 때 사용할 실제 타입을 명시하면 내부적으로 정의된 타입 변수가 실제 타입으로 변환되어 처리된다. refer..
-
Network - 클라우드CS/Network 2021. 2. 23. 21:01
클라우드 클라우드 컴퓨팅이란? 서로 다른 물리적인 위치에 존재하는 컴퓨터들의 리소스를 가상화 기술로 통합해 제공하는 기술이다. 배치 모델: 클라우드 인프라의 위치와 운영에 따른 분류 public Cloud 서비스 제공업체가 구축한 서버, 스토리지 등 IT인프라를 기업, 개인이 사용료를 내고 이용하는 방식이다. private Cloud 자체적으로 데이터 센터 안에 클라우드 환경을 구축해서 사용하는 방식이다. hybrid Cloud public의 유연성, 경제성과 private의 보안성, 안정성을 가진다. public + private를 결합한 형태이다. 서비스 모델: 사용자에게 인프라의 어느 계층까지 서비스할 것인지에 따른 분류 Packaged Software 직접 인프라와 플랫폼, OS, 애플리케이션까지..
-
자료구조 - BTreeCS/자료구조 2021. 2. 22. 19:28
B-Tree B-tree B의 의미는 balance를 의미한다. 군형잡힌 다진검색트리로 다음의 성질을 만족한다. (다진검색트리란 자식을 여러개 갖는 트리를 말한다.) 루트 제외 모든 노드는 최소 k/2 ~ k개의 키를 갖는다. 모든 리프노드는 같은 깊이를 갖는다. 디스크에 저장하는 cost를 최소화하여 데이터베이스에서 주로 사용된다. 최악의 경우 디스크 접근 횟수를 줄일 수 있다. B-tree의 삽입 삽입 후 오퍼플로우가 발생하면(키의 수가 k보다 많으면) 형제 노드(양 옆의 노드) 중 여유가 있는 노드가 있으면 남는 키를 형제 노드에게 삽입해 준다. 없으면 오버플로가 발생한 레코드를 둘로 분할하고 가운데 키를 부모 노드로 넘긴다. B-tree의 삭제 삭제 후 언더플로우가 발생하면(키의 수가 k/2보다 ..
-
Network - VPNCS/Network 2021. 2. 21. 21:53
VPN VPN(Virtual Private Network) 공중망에 터널링 기술(암호화)을 적용시킨 가상 사설망이다. 전용망의 고비용을 대체하기 위해 나타났다. 암호화된 터널을 통해 인터넷에 연결하여 온라인 프라이버시를 확보하고 민감한 데이터를 보호한다. 상호 연결 부분에 전용VPN장치나 그러한 기능이 내장되어 있는 라우터나 방화벽 설치가 필요하다. VPN장치: 통신 데이터를 암호화 한 수 인터넷으로 보내고 수신측에서는 암호화를 해제한다. VPN의 장단점 장점 비용이 저렴하다.(전용망 구축에 비해) 단점 VPN서버와 암호화 통신을 하기 때문에 속도가 느리다. reference this1.tistory.com/entry/VPN%EC%9D%B4%EB%9E%80-%EB%AC%B4%EC%97%87%EC%9D%B..