BackEnd
▶ 배열이란? 배열은 같은 타입의 여러 변수를 하나의 묶음으로 다루는 것 여기서 중요한 것은 같은 타입이어야 한다는 것이다. 예를 들면, int 배열을 선언하려면 다음과 같이 사용할 수 있다. int[] score = new int[5]; // 5개의 int 값을 저장할 수 있는 배열 생성 위의 코드가 실행되면 아래의 그림과 같이 배열이 생성된다. (0x100 값은 실제 객체의 메모리 주소가 아닌 예시로 적은 주소 값) 배열의 선언과 생성과정을 단계별로 보자. 1. int[] score; int형 배열 참조변수 score를 선언한다. 데이터를 저장할 수 있는 공간은 아직 없다. 2. score = new int[5]; 2-1. 연산자 'new'에 의해서 메모리의 빈 공간에 5개의 int형 데이터를 저장할..
레퍼런스 문서에서 이 파트는 스프링 프레임워크에 필수인 모든 기술을 다룬다. 그 중에서도 핵심 기술은 IoC (Inversion of Control) 컨테이너이다. 스프링 프레임워크의 IoC 컨테이너는 스프링의 AOP (Aspect-Oriented Programming: 관점 지향 프로그래밍) 기술의 포괄적인 범위가 뒤따른다. 스프링 프레임워크는 개념적으로 이해하기 쉽고 자바 엔터프라이즈 프로그래밍의 AOP 요구사항 sweet spot의 80%를 성공적으로 해결하는 자체적 AOP 프레임워크를 갖고 있다. 스프링에는 AspectJ (현재 자바 엔터프라이즈 환경에서 가장 풍부한 기능과 성숙한 AOP 구현)가 통합되어 제공된다. 1. The IoC Container 이 챕터는 스프링의 IoC 컨테이너를 다룬다..
▶ 조건문 (if, switch) 1. if문 만일(if) 조건식이 참(true)이면 괄호 { } 안의 문장들을 수행한다. if (조건식) { // 조건식이 참일 때 수행될 문장들을 적는다. } 2. 블럭 괄호 { }를 이용해 여러 문장을 하나의 단위로 묶을 수 있다. 이를 블럭(block) 이라 한다. 블럭 내의 문장들은 탭으로 들여쓰기를 해서 블럭 안에 있는 문장이라는 것을 알기 쉽게 해야한다. 3. if-else문 'else'의 뜻이 '그 밖의 다른'이므로 조건식의 결과가 참이 아닐 때 else 블럭의 문장을 수행한다. 4. if-else if문 처리해야할 경우의 수가 세가지 이상일 땐, else if로 조건식을 추가해서 사용한다. 조건식이 참인 경우가 하나도 없을 때는 마지막에 else블럭을 통해..
▶ 들어가기 전에 프로그래밍에서 연산자는 필수적인 요소 중 하나이다. 그러므로 이번 포스팅에서 연산자에 대해 개념을 정리하고 실수하기 쉬운 부분을 정리하고자 한다. ▶ 연산자란? 연산자(Operator)는 '연산을 수행하는 기호'를 말한다. 자바에서 연산자는 사칙연산(+, -, *, /)을 비롯해서 다양한 연산자들을 제공한다. 연산자가 연산을 수행할 때 대상이 되는 연산 대상을 피연산자(Operand)라고 한다. 피연산자에는 변수, 상수, 리터럴, 수식 등이 있다. 연산자는 피연산자로 연산을 수행하고 나면 항상 결과값을 반환한다. 1. 연산자의 종류 종류 연산자 설명 산술 연산자 + - * / % 사칙 연산과 나머지 연산 비교 연산자 > = 비교 > 논리 > 대입. 대입은 마지막에 수행된다. 단항(1) ..
▶ 들어가기 전에 우리가 프로그래밍을 할 때 변수는 필수적으로 사용되는 요소이다. 하지만 변수에 대해 자세하게 알지 못하고 사용하게 되면 메모리 누수, 스택 오버플로우 문제로 이어질 수 있는 위험도 존재한다. 그래서 변수에 대한 정리를 해야겠다는 생각이 들어 포스팅을 하게 되었다. ▶ 변수란? 변수란 다음과 같이 정의된다. 단 하나의 값을 저장할 수 있는 메모리 공간 하나의 변수에는 하나의 값만 저장할 수 있으며, 새로운 값 저장시 기존 값은 사라진다. 변수는 선언과 동시에 초기화(Initialization) 해야 한다.메모리는 공유자원이므로 전에 다른 프로그램에 의해 저장된 쓰레기 값(Garbage Value)이 남아있을 수 있기 때문이다. 변수의 명명규칙 "변수의 이름" 처럼 프로그래밍에서 사용하는 ..
들어가기 전에 Java로 프로그래밍을 함에 있어서 좋은 개발자가 되기 위해서는 고수준 영역뿐만 아니라 메모리가 관리되는 방식, 클래스 파일이 생성되는 방식, JVM의 내부 구조, 동작 원리 등을 알고 있어야 한다고 생각이 들었다. 그래서 오늘은 JVM에 대해서 공부해보겠다. JVM이란? JVM은 Java Virtual Machine의 약자이다. 말 그대로 자바를 실행하기 위한 가상 기계이다. 자바로 작성된 애플리케이션은 바이트 코드로 컴파일되어 JVM에서 이를 해석(interpret)하여 실행한다. 위와 같은 특성 때문에 자바 애플리케이션은 운영체제 및 플랫폼에 독립적이지만, JVM은 종속적이다. 그래서 윈도우 운영체제면 윈도우용 JVM, 리눅스 운영체제면 리눅스용 JVM을 이용한다. JVM 특징 스택 ..
1. Java의 등장 썬 마이크로시스템즈(Sun Microsystems, Inc)에서 개발하여 1996년 1월에 발표한 객체지향 프로그래밍 언어이다. 자바의 역사는 1991년 제임스 고슬링, 아서 밴 호프를 포함한 썬 엔지니어들이 가전제품에 탑재될 소프트웨어를 만들고자 C++의 장점을 도입하고 단점을 보완한 오크(Oak)라는 언어를 개발한 것에서부터 시작되었다. Oak는 운영체제에 독립적인 장점이 있어 가전제품이나 PDA와 같은 소형기기보다 여러 종류의 운영체제를 사용하는 컴퓨터들이 통신하는 인터넷에 적합하다고 판단되었다. 그래서 Oak를 웹에 적합하게 개발 방향을 바꾸며 이름을 자바(Java)로 변경하였으며, 자바로 개발된 '핫 자바(Hot java)'를 발표하고 1996년 1월에 자바의 정식 버전을 ..