본문 바로가기

전체 글

(109)
기초 네트워크와 친구들 네트워킹이란 서로 연결해서 대화할 수 있게 하는 것. 즉 장비들을 서로 대화가 가능하도록 묶어주는 것이다. 인터넷 여러개의 네트워크를 묶었다라는 의미. 하나의 프로토콜(TCP/IP)만을 사용한다. 인트라넷 내부의 네트워크. 즉 사내 네트워크 엑스트라넷 기업의 인트라넷을 그 기업의 종업원 이외에도 협력 회사나 고객에게 사용할 수 있도록 한것이다. LAN(Local Area Network) 어느 한정된 공간에서 네트워크를 구성한다. WAN(Wide Area Network) 서로 멀리 떨어진 곳을 네트워크로 연결한다. 이더넷(Ethernet) 네트워크를 만드는 방법 중 하나 ( 가장 많이 쓰임 ) CSMA/CD 프로토콜을 사용(순서없이 아무나 통신) CSMA/CD 프로토콜이란 눈치 보고 있다..
IO IO(Input Output) 크게 Byte 단위 클래스와 문자 단위 클래스로 나뉘어진다. Byte 단위 입출력 클래스는 InputStream 클래스와 Output 클래스라는 추상 클래스를 상속 받아서 만들어졌다. 문자 단위 입출력 클래스는 Reader클래스와 Writer 클래스라는 추상 클래스를 상속 받아서 만들어졌다. 파일로 부터 입력받고 쓰기 위한 클래스 : FileInputStream, FileOutputStream, FileReader, FileWriter 배열로 부터 입력받고 쓰기 위한 클래스 : ByteArrayInputStream, ByteArrayOutputStream, CharReader, CharWriter 다양한 데이터 입력받고 쓰기 위한 클래스 : DataInputSteram, D..
Router 뷰 라우터는 뷰에서 SPA를 구현할 때 쓰는 라이브러리. 뷰 라우터 옵션 라우터 등록 후 라우터에 옵션을 정의해야한다. 대부분 SPA 앱에서는 아래와 같이 2개 옵션을 필수로 지정한다. routes: 라우팅 할 URL과 컴포넌트 값 지정 mode: URL의 해쉬 값(#) 제거 속성 router-view 브라우저 URL이 변경되면, 앞에서 정의한 routes 속성에 따라 해당 컴포넌트가 뿌려진다. 이 때 뿌려지는 지점이 router-view다. router-link 특정 링크를 통해서 페이지를 이동할 수 있게 해준다. 태그로 변환된다. 예제 Login Main
Reactivity 기존 웹 개발 방식 일반적으로 기존 웹 개발 방식은 HTML, CSS, JavaScript다. 위에서 알 수 있듯이 변수를 변경한 후에 다시 html코드를 작성해줘야 변경사항이 화면에 반영이된다. Object.defineProperty() 객체의 동작을 재정의 하는 API Object.defineProperty의 동작이 Vue의 핵심인 Reactivity(반응성)다. 따라서 Vue의 핵심은 데이터의 변화를 라이브러리에서 감지해서 알아서 화면을 자동으로 다시 그려준다(데이터 바인딩).
해시 테이블 원소가 저장될 자리가 원소의 값에 의해 결정되는 자료구조이다. 저장할 원소의 값으로, 저장할 위치를 계산할 수 있다. 평균 상수 시간에 삽입, 삭제, 검색이 가능하다. 매우 빠르게 자료를 저장/검색해야 하는 경우에 유용하다. 언제나 O(1)
검색 트리 이진트리 (BST) 각 노드는 하나씩의 키 값을 갖는다. 각 노드의 키 값은 다르다. 최상위 레벨에 루트 노드가 있고, 각 노드는 최대 두 개의 자식을 갖는다. 임의의 노드의 키값은 자신의 왼쪽 자식 노드의 키 값보다 크고, 오른쪽 자식의 키값보다 작다. 최선 O(logn), 최악 O(n) 레드블랙트리 => O(logn) B-트리 => O(logn)
정렬 선택정렬 최소 값을 선택해서 이동한다 버블정렬 0 부터 i - 1 까지, 두 쌍의 값을 비교하여, 왼쪽 값이 크면 서로 위치를 바꾼다. 삽입정렬 a 배열의 0 에서 i-1 사이에서 value 보다 큰 값들을 뒤로 한 칸씩 이동하고, 그 값들 앞에 value를 넣는다 병합정렬 start, end의 중간 지점 계산하고 중간 지점을 기준으로 앞부분과 뒷부분을 정렬한 뒤에 병합한다. 시간복잡도는 O(nlogn). 공간복잡도는 병합할 배열과 동일한 크기의 임시 배열을 생성하기 때문에 O(n) 퀵정렬 임의의 값을 기준으로, 기준값보다 작은 값들은 배열의 앞부분으로 이동하고, 기준값보다 큰 값들은 배열의 뒷부분으로 이동하는 알고리즘. 시간복잡도는 평균 O(nlogn), 최악은 O(n^2) 공간복잡도는 O(1) 병합정..
Map 인터페이스 데이터는 key와 value로 구성된다. Map 인터페이스를 구현한 클래스 HashMap 클래스 해시 테이블 알고리즘으로 구현된 클래스 해시 테이블 알고리즘에서 저장할 데이터의 해시(hash) 값을 계산할 때, hashCode 메소드를 사용한다 성능 : 평균 O(1), 최악 O(n) TreeMap 클래스 Red Black Tree 알고리즘으로 구현된 클래스 SortMap 인터페이스를 구현되었다. 등록된 데이터 항목들이 key 순서대로 정렬된다. 성능: 평균 O(logn), 최악 O(logn) HashMap vs HashSet HashSet은 Set 인터페이스를 구현한 클래스. 중복허용안함 HashMap은 Map 인터페이스를 구현한 클래스. Key값은 중복허용안함 Value는 중복허용함. HashMap은 ..