개발언어/Java (7) 썸네일형 리스트형 [JAVA] JAVA 지역 변수의 범위 이전의 정적 팩터리 부분에 이어서 effective java의 내용을 정리한 글입니다. C와 같이 역사가 깊은 프로그래밍 언어의 경우 지역 변수를 코드의 첫 블럭에 선언하는 경우가 많다. 이러한 전통이나 습관이 이어져서 자바에서도 코드의 첫 블럭에 지역변수를 선언하는 경우를 많이 볼 수 있는데, 이는 자바처럼 어디서든 변수를 선언할 수 있는 언어의 경우 좋은 습관이 아니다. 지역변수는 유효범위를 최소로 줄이면 변수의 가독성과 유지 보수에 관한 장점이 크게 올라가는데 지역변수가 코드의 첫부분에 선언된것 만으로도 코드가 어수선해져 가독성이 떨어지게 된다.(변수를 실제로 사용하는 시점에서는 타입과 초깃 값이 기억나지 않을 수 있다.) 즉, 지역변수의 범위를 줄이는 가장 강력한 기법은 ‘가장 처음에 쓰일때 선언.. [Java] Java문법 for, for-each 이번 포스팅도 마찬가지로 Effective java의 내용을 정리한 포스팅 입니다. 이번 내용은 Java의 반복문 중 for문과 for-each문에 관해서 어떤것을 주로 사용할지에 관한 내용입니다. 기본적으로 반복문을 사용할때 우리에게 필요한것은 반복자(예를들면 int i = 0 의 i같은)나 인덱스(i가 arr이란 배열에서 arr[i]처럼 사용되는 경우)이 아닌 배열혹은 리스트등의 내부에 원소입니다. 이러한 반복자와 인덱스의 사용은 실질적으로 필요하지 않은 변수임에도 코드에서 사용되어서 개발자의 실수를 늘리는 요소로 작용됩니다. 또한 컬렉션이나 배열이냐에 따라 for문 내부의 형태가 달리지므로 이또한 주의할 점이 됩니다. 위의 문제들은 for-each문을 사용하게 되면 모두 자연스럽게 해결되는 문제입니.. JAVA 기초 CLASS란 이번 포스팅은 초심을 되찾자는 생각으로 JAVA의 클래스에 대한 이야기를 해볼까 합니다. 클래스는 객체지향의 가장 대표적인 특징으로 자바는 이러한 클래스를 가짐으로서 프로젝트를 여러 요소가 합쳐진 하나의 결합체 됩니다. 그럼 이 클래스가 무엇이길래 프로젝트를 여러개의 요소로 볼 수 있게 만드는지 알아보겠습니다. 클래스란 클래스를 설명하기에 설계도란 말만큼 적합한 용어는 없는것 같습니다. 어떠한 물건을 계획적으로 생산하기 위해선 그 물건의 설계도가 필요합니다. 클래스는 이러한 물건을 만드는 설계도와 같습니다. 예를 들어서 자동차를 만든다고 생각해 보겠습니다. 같은 자동차를 여러대 만들기 위해서는 이 자동차에 대한 설계도가 필요합니다. 그렇다면 자동차를 만들기 위한 설계도에는 어떤 내용이 포함되어야 할까요?.. JUnit 초기화 @Before 와 @BeforeClass 차이 Junit을 사용할 때 각 테스트의 초기화를 위해서 @Before를 사용하곤 합니다. 하지만 이와 비슷한 @BeforeClass라는 Junit 어노테이션도 존재하는데 이 둘의 차이를 알아볼까 합니다. 각 테스트보 보다 먼저 실행되는 @Before 테스트 작성 시 실행되기 전 유사한 객체가 필요한 경우 각 @Test 어노테이션이 붙은 메소드 보다 먼저 실행됩니다. 즉 해당 클래스의 @Test 어노테이션의 갯수만큼 실행되는 어노테이션 입니다. 예를 들어 public class Example { List emptyList; //테스트 마다 사용되는 클래스 //Test 전 마다 매번 실행된다. @Before public void initialize() { emptyList= new List(); } //size.. Java VM Arguments 설정 Java 프로그래밍 시 ${ } 과 같은 형태로 불러오는 변수들이 있다. 해당 변수들은 JRE내부의 JVM(자바 가상 머신)에 설정된 시스템 변수들로 해당 변수가 설정될 시 프로젝트 어디에서든 ${ }과 같은 호출방법으로 해당 변수를 불러올 수 있다. 즉, Java Virtrual Machine 에 식별자로 사용되는 값 들이다. 해당 변수들은 각 실행환경 마다 설정 할 수있는 변수들로 IDE 혹은 구동되는 WAS의 레벨에서도 설정이 가능하고 옵션에 따라 여러가지 용도(JVM의 메모리를 설정하는 등)로 사용가능하다. 하지만 오늘 설명할 옵션은 -D 옵션으로 해당 옵션으로 IBM Knowledge Center의 설명에 따르면 시스템 등록전보 변수를 이름/값 쌍으로 설정하여 사용 가능하다. One approa.. 정적 팩토리 메소드(Static Factory Method) 장단점 이펙티브 자바 책 공부중 내용 정리가 필요 할것 같아 정리합니다. 참고 하실 분들은 아래 색 보시고 참고 하시면 될것 같습니다. 검정 : 책내용 파랑 : 정리 빨강 : 중요 장점 1) 이름을 가질 수 있다. - 생성자의 매개변수와 생성자 그 자체만으로는 반환될 객체의 특성을 제대로 설명하지 못한다. 반면, 정적 메소드는 이름만 잘 지으면 반환될 객체의 특성을 쉽게 묘사 가능하다. 예를 들면 BigInterger(int, int, Random); // 기본 생성자. BigInterger.probablePrime(); // 정적 팩토리 메소드. 위의 경우 둘 중 정적 팩토리 메소드가 probablePrime이 '값이 소수인 BigInterger를 반환한다.' 라는 의미가 명확하다. - 생성자는 하나의 시그니.. 서블릿(Servlet)이란 예전에 호기심으로 웹에 대해 공부를 시작하며 처음 JSP를 접하게 됐는데 그땐 그냥 관심일 뿐이어서 깊게 공부하지 않았었습니다.그러다 최근 이직을 하며, 프로그래밍 내에서 분야가 완전 바뀌게 되어서 스스로 정리할 필요성을 느껴 처음부터 제대로 정리하고 가자는 생각에 글을 쓰게 되네요.일단 처음으로 JSP를 공부하며 자주 접했던 용어인 Servlet에 대해 정리하고 넘어갈까 합니다. 자바 서블릿(Java Servlet) 자바 서블릿(Java Servlet)은 자바를 사용하여 웹페이지를 동적으로 생성하는 서버측 프로그램 혹은 그 사양을 말하며, 흔히 "서블릿"이라 불린다. 자바 서블릿은 웹 서버의 성능을 향상하기 위해 사용되는 자바 클래스의 일종이다. 서블릿은 JSP와 비슷한 점이 있지만, JSP가 HTML.. 이전 1 다음