전체 글

I work diligently to become lazy.
17년 4월 23일 아침 9시 30분 제 6회 YBM IT에서 주관하는 COS (Coding Specialist) 1급 시험을 보고 왔다. 시험을 보러 가기 전에 이것 저것 검색을 해봤는데 1급에 대한 후기가 없어서 남겨본다. 시험에 대해 간단히 소개를 하자면, COS시험은 CBT방식의 시험이다. CBT방식은 Computer Based Testing으로 컴퓨터를 사용해서 컴퓨터가 채점하는 방식의 시험이다. 또 다른 방식으로는 PBT라고 하는 Paper Based Testing방식도 있다. 이 시험을 응시하기 위해 기본적으로 갖추고 있어야 할 지식은 '스크래치 언어'이다. 추후 계획은 다른 진입 장벽이 낮은 언어들에 대해서도 시험이 만들어질 것이라고 한다. (언제인진 모르겠지만) 난이도는 그렇게 어렵지 않..
· Archive/Java
java 개발을 하려면 환경변수를 설정해야한다. 아니 더 정확히는 명령 프롬프트에서 컴파일하고 실행하려면 환경변수를 설정해야 한다. 명령 프롬프트는 cmd창으로 알고 있는 보통 검정색 있어보이는 화면을 말한다. 우선 환경변수라는것이 무엇인지부터 알아보자. IT(정보기술) 용어로, OS의 셸(shell) 등에 설정되어 있다. 변수의 이름과 의미는 미리 정해져 있기 때문에 환경변수를 읽으면 시스템의 설정을 어느 정도 알 수 있다. OS의 환경변수는 시스템의 실행파일이 놓여 있는 디렉토리의 지정 등 OS 상에서 동작하는 응용소프트웨어가 참조하기 위한 설정이 기록된다. 응용소프트웨어로부터는 시스템 콜(system call:프로그래밍 언어에서 지원하지 않는 기능에 대하여 운영체계의 루틴을 호출하여 이용하는 것)이..
· Archive/Java
자바에는 문자열을 처리하기 위한 클래스로 String, StringBuilder, StringBuffer 클래스가 있다. 단순히 문자열을 처리하기 위함이라면 (예를 들면 System.out.println("문자열"); 이런 경우) 어떤 것을 사용해도 별다른 차이는 없다고 알고 있다. 하지만 문자열을 더하는 (+) 연산을 할 경우에 퍼포먼스상의 차이가 발생한다. 백번 듣느니 한 번 보는게 낫다. 실제로 아래와 같은 예제는 많은 곳에서 흔히 볼 수 있는 예제일 것이다. package xxxelppa.tistory.com; public class StringTest { public static void main(String[] ar) { long StartTime = 0; long EndTime = 0; St..
· Archive/Java
정규표현식 자체만으로도 정말 많은 이야기를 할 수 있지만. 기본적인 정규표현식의 개념과 언제 사용하면 좋은지에 대해서는 어느정도 알고 있다고 가정한다. (나중에 기회가 된다면 정규표현식에 대해서 정리를 할 계획인다.) 자바에서 정규표현식을 사용하기 위해서는 두 개의 라이브러리를 import해야 한다. import java.util.regexp.Matcher; import java.util.regexp.Pattern; 바로 util package에 있는 클래스 이다. 두 개의 클래스를 import 했다면, 다음처럼 작성해보자. // 비밀번호 유효성 검사식1 : 숫자, 특수문자가 포함되어야 한다. String regExp_symbol = "([0-9].*[!,@,#,^,&,*,(,)])|([!,@,#,^,&..
· Archive/Java
답답하면 니들이 뛰라는 말이 있다. 그래서 정리해봤다. javaFX를 사용해서 MDI (Multi Document Interface)를 개발해야할 경우가 간혹 생길수 있다. 검색을 해보았지만 마땅히 내가 원하는 스타일이 없었다. 그렇다고 이제 와서 javaFX를 (나는 처음부터 한 번 쭉 훑어 봤지만)처음부터 볼 수는 없는 노릇이다. 갑자기 javaFX를 사용하게 되어서 아주 급하게 공부를 하고 있었는데, 사용하지 않게 될 가능성이 높아졌다. 그래서 지금까지 알아본 내용이 너무(?) 아까워서 나름의 정리를 해보려 한다. 우선 javaFX가 무엇인지 간략하게 살펴보는 것으로 시작한다. javaFX는 RIA (Rich Client Application)을 개발하기 위한 것으로, 크로스 플랫폼을 지원하는 그래..
· Archive/Java
런타임시에 어노테이션 정보 사용하기 클래스에 적용된 어노테이션 정보 얻기 - 클래스.class 의 어노테이션 정보를 얻는 메소드를 이용한다. 필드, 생성자, 메소드에 적용된 어노테이션 정보 얻기 - 클래스.class의 다음 아래 표에 작성된 메소드를 이용해서 - java.lang.reflect 패키지의 Field, Constructor, Method 클래스의 배열을 얻어낸다. 리턴타입 메서드명 (매개변수) 설명 Field[] getFields() 필드 정보를 Field 배열로 반환 Constructor[] getConstructor() 생성자 정보를 Constructor 배열로 반환 Method[] getDeclaredMethods() 메소드 정보를 Method 배열로 반환 - Field, Constru..
· Archive/Java
프로그램을 작성하다보면 종종 @이라는 문자를 본다. 어노테이션이라고 부르는건 알겠는데 정확한 사용 방법과 어떻게 수정하는지 등에 대해서 명확하게 알지 못했다. 어노테이션의 용도 1. 컴파일러에게 코드 작성 문법 에러를 체크하도록 정보를 제공한다. 우리가 코드를 작성하고 나서 이 코드가 제대로 잘 작성이 되었는지, 잘못 작성이 되었는지 컴파일러에게 검사할 수 있도록 정보를 제공해주는 역할이다. 대표적인 예로 @Override 이다. 이 어노테이션은 컴파일러에게 내가 지금 작성하고 있는 코드가 부모 클래스에 있는 메서드인지 검사해보라는 의미이다. 2. 소프트웨어 개발 툴이 빌드나 배치시 코드를 자동으로 생성할 수 있도록 정보를 제공한다. 나중에 자바 프로그램을 개발하고난 이후 jar나 war형식으로 압축을 ..
· Archive/Java
1편에서 람다식에서 생략 가능한 부분이 있고, 함수형 인터페이스를 사용하기 때문에 발생하는 람다식 안에서 사용하는 변수의 제한적인 부분이 있다고 했었다. 우선 람다식에서 생략 가능한 문법에 대해서 정리 해보자. 추상메서드의 매개변수에 따라 생략 가능한 부분이 조금 다르기 때문에, parameter가 있는 경우와 없는 경우로 나누어 살펴보자. 1. parameter : 없음 public class FunctionalInterfaceExample { public static void main(String[] ar) { // 매개변수가 없는 경우 ()는 무조건 작성해 줘야 한다. FInterface fi_1 = () -> { }; // 구현부가 여러 라인인 경우 { } 안에 작성해야 한다. FInterface..
nimkoes
한칸짜리책상서랍