언어

Exception과 Exception handler (+테스트 코드)
에러는 3가지 종류가 있습니다. 컴파일 에러: 컴파일 시에 컴파일러가 체크하는 예외로, 문법 문제, 소스코드 문제 등으로 발생합니다. (보통 IDE에서 빨간 줄로 알려줍니다.) 런타임 에러 : 컴파일은 성공했지만 프로그램 실행 중, 발생하는 문제입니다. 논리적 에러 : 컴파일도 되고, 실행도 되었지만 의도한 동작이 아닌 다른 동작을 하는 경우입니다. 만약 게임에서 목숨을 다썼는데 죽지않는 경우를 논리적 에러라고 할 수 있습니다. 런타임 에러는 다시 에러(Error)와 예외(Exception)로 나뉘어집니다. 에러는 OutOfMemoryError, StackOverFlowError 와 같은 발생 시 복구할 수 없는 심각한 문제를 의미합니다. 예외는 발생하더라도 수습할 수 있는 비교적 덜 심각한 문제를 말합..

참조 타입과 메모리 사용 영역 (+Java 코드 실행 과정)
도서 『혼자 공부하는 자바』 를 참고하였습니다. 자바의 타입은 크게 기본 타입(primitive type)과 참조 타입(reference type)이 있다. 기본 타입과 참조 타입 기본 타입은 정수 타입(byte, char, short, int, long), 실수 타입(float, double), 논라 타입(boolean)을 저장하는 타입이다. 참조 타입은 객체 object의 번지를 참조하는 타입이며 배열, 열거, 클래스, 인터페이스를 말한다. 기본 타입은 실제 값을 변수 안에 바로 저장하지만 참조 타입은 변수 안에 메모리의 번지를 저장한다. 번지를 통해 객체를 참조한다는 뜻에서 참조 타입이다. 큰 차이점은 참조 타입에는 null 을 저장할 수 있다는 것이다. 만약 힙 영역의 객체를 참조하고 있는 변수에..

Express로 웹서버 만들기 (Basic)
2021.07 에 올렸던 게시글입니다. 이번 글에서는 웹 프레임워크인 Express 로 간단히 웹 서버를 만들어보겠습니다. 웹 서버 우리가 웹브라우저 주소창에 주소를 입력하면 화면에 해당 화면 창이 보이지요?? 이 화면을 우리에게 보내주는 것을 웹 서버가 하는 것입니다! 특정 주소를 주소창에 입력하면, 브라우저는 해당 주소에 있는 웹 서버를 호출하고 웹서버는 해당 홈페이지 내용을 웹 브라우저에 보내는 방식 이런 웹서버를 만들 수 있는 패키지를 웹 프레임워크라 하는데요. 구체적으로 말하면, 웹서버를 만들기 위해서는 여러가지를 매번 해야하는 일들이 있어요! 예를 들면, url로 넘어온 파라미터들을 분류해서 가져오는 일, 정적인 이미지나 js파일들을 관리하는 일, 로그인을 위한 작업 등.. 이렇게 웹서버를 만..

Node.js를 이용한 크롤링
사담 저는 스파르타 코딩클럽 node.js 강의를 들으면서 간단한 쇼핑몰 웹을 구축하던 중 파이썬이 아닌 node.js를 이용해서도 크롤링을 할 수 있다는 것을 알게되어 진행해보면서 기록하기위해 글을 적게 되었습니다. 필요한 패키지 설치 1. Node.js 서버에서 외부의 웹브라우저에 요청해서 특정 HTML을 내려받기 위해 필요한 패키지 => axios 2. 가져온 HTML에서 특정 위치(depth)를 가져오기 위해 필요한 패키지 => cheerio 3. 사이트에서 한글을 가져오면, 발생하는 문제(인코딩 문제 등..)를 해결하기 위해 필요한 패키지 => iconv-lite => npm install axios cheerio iconv-lite -s 설치하고 나면, package.json에 설치가 된 걸 ..
![[짧은글] 컬렉션 프레임워크 (Collections Framework)](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FpHC9C%2FbtrgMss1o4U%2FC6N67NubwNMRxyL3LUxzdk%2Fimg.png)
[짧은글] 컬렉션 프레임워크 (Collections Framework)
이번 포스팅에서는 자바의 컬렉션 프레임워크에 대해 간단히 정리해보려 합니다. (짧은 글!) 컬렉션 프레임워크는 JDK 1.2부터 등장했는데요, 컬렉션 프레임워크는 대량의 데이터 군을 표현하고 이를 효율적으로 다룰 수 있도록 제공하는 표준화된 방법을 제공합니다. 이미 저희가 많이 사용하고 있는 자료구조를 떠올려보면 ArrayList, HashMap 등등이 떠오르는데요, 이것들은 각 인터ㅔ이스의 구현체입니다. 자바 컬렉션 프레임워크 👉자바 컬렉션 프레임워크란, 대량의 데이터를 효율적으로 처리할 수 있는 기능을 제공하는 클래스의 집합! 을 의미한다. 👉데이터를 저장하는 자료구조와 데이터를 처리하는 알고리즘을 구조화해서 클래스로 구현한 것이다. 👉주로 사용되는 인터페이스 (java.util.~) List Set..
html의 유용한 기능
이번 글에서는 어느정도 알고있으면 편한 (은근 자주 쓰이는데 익히지 못해 매번 알아보기 귀찮은) (혹은 이렇게 쓰이는거였군! 싶은) 정보들 위주로 적어보려고합니다. 어디까지나 저의 입장에서 적은 정보들입니다. 태그 브라우저에게 정보를 주는 부분이 태그인데요, • 웹 브라우저 화면에는 보이지 않지만, 웹 브라우저가 알아두어야 할 정보들 입력 • 문서에서 사용할 외부 파일들 링크 들을 포함하고 있습니다. 즉, 웹 브라우저에는 보이지 않지만, 웹브라우저가 웹문서를 해석하기위해 필요한 정보들을 입력하는 공간입니다. 보통 태그와 태그가 있습니다. 태그 : 문자 인코딩 방법 및 문서의 키워드와 요약 정보를 지정 참고로! 태그와 내용을 포함한 전체 문자열 ex) 제목 을 HTML의 기본 구성단위, 엘리먼트 (elem..