IT 발자취...
-
[알고리즘] 큐빙IT 발자취.../알고리즘 2018. 12. 12. 20:54
삼성 기출문제큐빙 문제 https://www.acmicpc.net/problem/5373해결 방법문제에서 주어진 조건에 맞게 그림을 잘 그리면서 풀기!!!주의할 점은 큐브가 돌 때 주변의 색만 변하는게 아니고 자기 면도 변한다는 점~1차시도 (/src/Main)3차원 배열을 이용하여 cube[사분면][행][열]머리속에서 3차원을 그려가며 열심히 삽질이건 아냐 .... 3차원 배열을 만드는 순간 알고리즘 시험은 포기@@@2차 시도 (/src/SingleMap)U, D, F, B, L, R 의 6개의 1차원 배열을 만든다.각 면을 보는 시점에 따라 좌측 위부터 우측 아래로 1~9까지의 숫자를 배정한다.cube전개도ooooooooogggwwwbbbyyygggwwwbbbyyygggwwwbbbyyyrrrrrrrr..
-
[스프링] 스프링의 제어 역전 및 의존성주입2IT 발자취.../스프링 2018. 12. 12. 20:10
이전 포스트에 이어서 스프링의 제어 역전 및 의존성 주입에 대해 알아 보겠습니다. 1. 제어 역전 개념 2. 스프링의 제어 역전 3. 스프링에서의 의존성 주입 4. 스프링 애플리케이션 컨텍스트 설정위의 순서대로 포스팅을 하도록 하겠습니다. 상당히 방대한 만큼 포스팅 수도 길어 질 것같습니다 ㅠㅠ1. 제어 역전과 의존성 주입 IoC, 즉 DI는 컴포넌트 의존성(종종 객체의 협력 객체(collaborator)라고 부름)을 제공하는 간단한 매커니즘을 제공하고 생명주기를 통해 의존성을 관리하는게 핵심입니다.말이 어려운데, 컴포넌트가 의존성에 접근할 수 있는 서비스 및 생명주기 동안 이들 의존성과 상호작용할 수 있는 서비스를 IoC가 제공한다는 말로 설명할 수 있습니다. 일반적으로 IoC는 두 개의 하위 분류로 ..
-
[스프링] 제어 역전 또는 의존성 주입1IT 발자취.../스프링 2018. 12. 12. 20:10
스프링에서 중요한 제어 역전 또는 의존성 주입을 알아보겠습니다. 내용이 길어질 것 같은 느낌이 듭니다...스프링 프레임워크의 코어는 제어 역전(IoC) 원칙을 기반으로 합니다. IoC는 컴포넌트 의존성의 생성 및 관리를 외부화하는 기법입니다. 이게 무슨말이냐?!! 예를 들면, 클래스 Foo가 클래스 B의 인스턴스에 의존해 어떤 작업을 수행한다고 가정합니다. 기본의 방법으로는 Foo가 new 연산자를 사용해 Bar인스턴스를 생성하거나 팩터리 클래스를 통해 인스턴스를 가져옵니다. //Foo클래스 class Foo { ...생략 //Bar인스턴스 생성 Bar b = new Bar(); ...생략 }하지만 IoC 접근 방식을 사용하면 Bar(또는 하위 클래스) 인스턴스가 외부 프로세스를 통해 런타임 시점에 Fo..
-
[스프링] 빈(Bean) 및 빈팩터리(BeanFactory)IT 발자취.../스프링 2018. 12. 12. 20:09
스프링 빈과 스프링의 의존성 주입 컨테이너의 핵심인 BeanFactory인터페이스에 대해 알아보겠습니다. 먼저 Bean 이란? - 컨테이너가 관리하는 컴포넌트 - 빈은 어느 정도 수준에서 자바빈 명세를 준수하지만, 이 사항이 꼭 필요한 것은 아니다. 특히 생성자 주입을 사용해 빈을 연결할 생각이라면 더욱 그렇다. BeanFactory란? 의존성과 생명주기 등을 포함해 컴포넌트를 관리하는 책임을 가짐 여기서 JSP의 JavaBean과 스프링 빈을 헤깔리지 않게 용어 정리를 잘해야합니다~!
-
[스프링] ApplicationContextIT 발자취.../스프링 2018. 12. 12. 20:08
스프링에서 ApplicationContext 인터페이스는 BeanFactory를 상속한다. ApplicationContext는 DI 서비스뿐 아니라 트랙잰션과 AOP 서비스, 국제화를 위한 메시지 소스(i18n), 애플리케이션 이벤트 처리 등 다른 서비스도 함께 제공한다. 스프링 기반의 애플리케이션을 개발 할 때는 ApplicationContext 인터페이스를 통해 스프링과 연동하는 방식을 권장합니다. 스프링은 직접 작성한 코드를 통해 ApplicationContext를 부트스트랩할 수 있게 지원하고 (ApplicationContext를 직접 인스턴스화하고 적절한 설정을 로드) 웹 컨테이너 환경에서는 ContextLoaderListener를 통한 부트스트랩도 지원한다. ApplicationContext의..
-
[JSP] 자바빈(JavaBean)IT 발자취.../웹 개발 2018. 12. 12. 20:05
자바빈(JavaBean)에 대해 알아보도록 하겠습니다. 스프링 빈이랑 정리없이 알다가 정리를 한번 해보고자 합니다.먼저 빈(Bean)에 대해 알아보겠습니다. 1. 빈이란? - 반복적으로 코드를 따로 작성하여 재사용하기 위해 만들어진 클래스입니다. - 빈은 속성과 메서드로 이루어져 있으며, 데이터의 처리를 담당합니다. (Java - VO(DTO), JSP - JavaBean)자바빈(JavaBean)이란 JavaBean규격서에 따라 작성된 자바 클래스를 말합니다.2. 자바빈 이용의 목적 현재 프로그래밍에서 모듈화(component 화)의 중요성이 강조되는 만큼, JSP 페이지가 화면 표출 부분과 로직들이 혼재함으로 인한 복잡한 구성을 가급적 피하고, JSP 페이지의 로직 부분을 분리해서 코드를 재사용함으로써..
-
[테스트] 소프트웨어 테스팅 기초IT 발자취.../소프트웨어 공학 2018. 12. 12. 20:00
소프트웨어 테스팅 첫번째로는 테스트의 단계에 대해 알아보겠습니다. 소프트웨어 테스팅은 블라인드 테스트와 같이 사용자가 화면을 눌러 결함을 찾아내는 작업만이 테스트라고 생각하지만 이것만이 테스트는 아닙니다. 요구사항 리뷰 컴파일 오류를 잡는것과 같은 디버그 성능 측정 보안 점검 등 도 테스트의 일부분입니다. 테스트는 시스템을 개발하는 일정에 문제가 없도록, 고객이 원하는 시스템이 될 수 있도록, 개발자를 포함한 프로젝트와 관련된 모든 인원이 편할 수 있도록 지원해주는 작업입니다. 그럼 테스트의 단계는 어떻게 될까요? 테스트는 일반적으로 다음과 같이 네 단계로 나뉩니다.● 컴포넌트 테스트 ● 통합 테스트 ● 시스템 테스트 ● 인수 테스트 (ISTQB라는 테스트 인증기관에서 사용하는 표준)· 컴포넌트 테스트 ..
-
[스프링] 스프링이란?IT 발자취.../스프링 2018. 12. 9. 03:27
스프링이 무엇인가와 철학에 대해서 알아보고자 합니다. 보통 스프링은 자바 애플리케이션 개발을 위한 경량 프레임워크로 설명합니다. 위의 말을 두가지의 특징이 들어있습니다. 첫째, 스프링은 자바로 어떤 애플리케이션(단독 실행형, 웹, JEE애플리케이션 등)도 개발할 수 있게 도와줍니다. 이는 아파치 스트러츠 같은 다른 여러 프레임워크가 웹 애플리케이션에 국한되는 점과 다른 점입니다. 둘째, 위 설명에서 '경량'이란 부분은 클래스 개수나 배포판의 크기를 말하기보다는 전체적인 스프링 철학을 가리킵니다. 즉, 최소한의 영향을 준다는 의미입니다. 스프링은 스프링 코어를 활용할 때 애플리케이션 코드를 거의 바꾸지 않아도 된다는 점에서, 또 어느순간 스프링을 더 이상 사용하지 않기로 했을 때도 아주 간단하게 스프링을 ..