목록Back-End (5)
곰돌이 놀이터
어노테이션(@, Annotation)이란? Annotation은 Java5부터 새롭게 추가된 문법요소이다. 사전적으로는 "주석"이라는 의미를 가지고 있으며, 의미대로 자바 코드에 주석처럼 달아 특수한 의미를 부여해준다. 이 특별한 의미는 컴파일 타임 또는 런타임에 해석된다. 아래와 같이 클래스 내부 또는 클래스 바로 위에 '@'와 함께 시작하는 것이 어노테이션입니다. 이는 자바, Spring이 제공해 주는 것도 있고, 사용자가 직접 만들 수도 있다. ■ 어노테이션 용도 - @Override 어노테이션처럼 컴파일러를 위한 정보를 제공하기 위한 용도 - 스프링 프레임워크의 @Controller 어노테이션처럼 런타임에 리플렉션을 이용해서 특수 기능을 추가하기 위한 용도 - 컴파일 과정에 어노테이션 정보로부터 ..
회사에서 일을 하다보면 다른 사람이 작성한 소스 코드를 분석하게 된다. 이렇게 소스 코드를 분석하다보면 변수나 메소드의 이름이 너무나 모호해서 이 코드를 이해하기 위해서 앞뒤전후의 코드들을 샅샅이 살펴봐야하는 경우가 생각보다 많이 생긴다. 이것이 얼마나 업무를 비효율적으로 만드는 코딩방식인가에 대해 느끼기 시작하면서 코드 컨벤션의 중요성을과 우리 부서내에도 이러한 표준이되는 코딩 규칙이 필요하다는것을 느끼게 되었다. 이러한 이유로 코딩 컨벤션, 코딩 규칙을 검색하던중 아주 정리가 잘 되어있는 블로그를 발견하여 그 내용을 재정리하여 공유하고자 한다. 출처 출처는 Kwangshin's Positive Blog 이며, 원문인 Orcle 에서 작성한 Code Conventions for JavaTM Progra..
개발자로 일을 하다보면 스프링이란 단어를 많이 듣게 된다. "백엔드는 스프링 프레임워크, 프론트엔드는 앵귤러를 이용할 계획이야." 나는 처음 스프링 프레임워크 라는 단어를 들었을때 "스프링? 용수철? 스프링 프레임워크가 뭐지?" 라는 생각을 했던것으로 기억을 한다. 간단하게 스프링(Spring Framework)을 정의내린다면 아래와 같다. 자바 엔터프라이즈 애플리케이션 개발에 사용되는 오픈소스 경량급 애플리케이션 프레임워크 ■ 엔터프라이즈 애플리케이션→ 기업과 조직의 비즈니스를 처리해주는 시스템을 의미■ 오픈소스→ 소프트웨어 혹은 하드웨어 제작자의 권리를 지키면서 소스가 모두에게 공개되고 , 특별한 라이선스를 취득할 필요 없이 소스를 자유롭게 열람하고 목적에 맞게 수정후 배포도 가능하다.■ 경량급→ 라..
JVM JVM 은 Java Virtual Machine 의 줄임말로 write once, run everywhere 즉, OS마다 따로 코드를 작성해야 하는 번거로움을 없이 Java가 '플랫폼에 돌립적' 일 수 있게 만들어준다.예를들어 C 프로그램은 바로 기계어로 컴파일 하므로 HW 기종에 맞게 각각 컴파일되어야 한다. 이를 '플랫폼에 종속적이다' 라고 한다. 반면, Java 프로그램은 중간 단계언어로 컴파일하여 JVM만 각 OS에 설치되어 있다면 HW 기종에 상관없이 단 한번만 컴파일하면 된다. 이를 '플랫폼에 독립적' 이라고 한다.간단히 말해 JVM은 Java 클래스 파일을 로드하고 바이트 코드를 해석하며, 메모리 등의 자원을 할당하고 관리하며 정보를 처리하는 작업을 하는 프로그램이다. OS는 JVM..
8년을 끈 구글과 오라클의 자바(JAVA) 저작권 전쟁이 오라클의 승리로 막을 내렸다. 그렇다면 과연 자바가 무엇이길래 구글과 오라클에서 이리도 오랫동안 라이센스 분쟁을 벌였던것일까? 썬 마이크로시스템즈를 인수한 오라클에서는 자바를 아래와 같이 설명한다. Java는 Sun Microsystems가 1995년에 처음 출시한 프로그래밍 언어이자 컴퓨팅 플랫폼으로, 수 많은 응용 프로그램 및 웹 사이트가 Java를 설치하지 않으면 작동되지 않으며, 이 수는 매일 늘어나고 있습니다. Java는 빠르고, 안전하며, 안정적입니다. 랩톱에서 데이터 센터, 게임 콘솔에서 과학용 수퍼 컴퓨터, 휴대 전화에서 인터넷에 이르기까지 Java 기술은 어디에나 존재합니다. .. 그렇다 위의 설명만으로는 자바를 이해했다고 보기 어..