Spring 사용자 모임 오프라인 세미나 We bring e-business to your business! Agile Java 1. Getting Started 작성자 : 안영회, 백기 선.

Slides:



Advertisements
Similar presentations
3. 메소드와 변수 SCJP 자격증 프로젝트 발표자 : 최선웅. 1. 메 소 드 개 념 2. 메 소 드 양 식 3. 메 소 드 변 수 4. 메 소 드 예 제 5. 참 고 문 헌 / 자 료 목 차.
Advertisements

Combacsa’s SPARCS Web Seminar. xUnit Framework Python : unittest Other testing tools.
1 강. 안드로이드 개요 및 개발 환경 구축 - 안드로이드 개요 -JDK 설치 -Path 설정 - 이클립스 설치 -ADT, SDK 설치 Lecturer Kim Myoung-Ho Nickname 블스
Java 로 배우는 디자인패턴 입문 Chapter 15. Facade 간단한 창구 덕성여자대학교 컴퓨터학부.
목 차 C# 언어 특징 .NET 프레임워크 C# 콘솔 프로그램 C# 윈도우 프로그램 실습 프로그래밍세미나 2.
ㅎㅎ C++ 프로그래밍의 첫 걸음 C++로 프로그래밍한다는 것의 의미 세상에서 가장 간단한 C++ 프로그램
클래스 class, 객체 object 생성자 constructor 접근 access 제어 이벤트 event 처리.
어서와 Java는 처음이지! 제1장 기초 사항.
Power Java 제3장 이클립스 사용하기.
어서와 Java는 처음이지! 제1장 기초 사항 IT응용시스템공학과 김형진 교수.
- Pipeline Submission : submit - Pipeline 등록 : register
TDD Junit TDD & Spring Framework 참고자료
윤 홍 란 제3장 클래스와 객체의 사용-1 윤 홍 란
Unit test with JUnit 실습용
Internet Computing KUT Youn-Hee Han
2주 실습강의 Java의 기본문법(1) 인공지능연구실.
Test-Driven Development
JAVA 언어로 배우는 디자인 패턴 입문 chap. 1-2.
2강. JAVA 프로그래밍이란?-II & 변수 JAVA 프로그램 환경설정과 실행 방법 변수란?
Java RMI (Remote Method Invocation)
자바 5.0 프로그래밍.
Chapter 9 – 부 프로그램 Outline 9.1 개요 9.2 매개변수 평가와 전달기법 9.3 형식 매개변수 명세
8.1 인터페이스 개요와 인터페이스 정의 8.2 인터페이스의 사용 8.3 인터페이스의 상속 8.4 인터페이스 참조
4장. 웹로직 서버상에서의 JDBC와 JTA의 운용
6장. 물리적 데이터베이스 설계 물리적 데이터베이스 설계
소프트웨어설계 UML 학기.
2장 자바환경과 자바 프로그램 2.1 자바 개발 환경 2.2 자바 통합환경 2.3 자바 응용 프로그램과 애플릿 프로그램
윤 홍 란 4 장 클래스 작성 윤 홍 란
DataScience Lab. 박사과정 김희찬 (월)
SqlParameter 클래스 선문 비트 18기 발표자 : 박성한.
자바 5.0 프로그래밍.
컴퓨터 프로그래밍 실습 #6 제 4 장 클래스 작성.
반도체 신입 Operator 채용 안내 ㈜ 하이닉스반도체에서는 2011년도 신입 Operator 사원을 모집합니다.
계수와 응용 (Counting and Its Applications)
자바 5.0 프로그래밍.
UNIT 02 JDK & Tools 설치 로봇 SW 컨텐츠 교육원 조용수.
11장. 1차원 배열.
2장 JSP 개발 환경 설정 이장에서 배울 내용 : JSP 페이지를 작성하기 위한 개발환경을 설정하고, 웹 어플리케이션 개발을 위해 반드시 이해하여야 할 웹 어플리케이션 폴더 구조에 대해 학습한다. 또한 요청된 JSP 페이지가 어떠한 처리과정을 거쳐 응답이 이루어지는가에.
진대제 장관이 말하는 '100점짜리 인생의 조건' ▲ 진대제 정보통신부 장관    `인생을 100점짜리로 만들기 위한 조건은 무엇일까요`  진대제 정보통신부 장관이 대한상의 초청 조찬 간담회를 시작하며 참석자 들에게 던진 `조크성` 질문이다. 진 장관은 "제가 재미있는 얘기하나 하겠습니다"고 말하고, 
Chapter 3: Introduction to SQL
13. 연산자 오버로딩.
16강. 스프링MVC 게시판-I 프로젝트 설계 DataBase 구축 프로젝트 생성 Lecturer Kim Myoung-Ho
소프트웨어 공학 (Software Engineering)
메소드와 클래스 정의 및 문제 풀이 Method and Class Define and Problem Solve
Spring 프레임워크의 이해 3. Spring IoC 이해 및 활용.
제 2장 어휘구조와 자료형 토 큰 리 터 럴 주 석 자 료 형 배 열 형.
Introduction to Programming Language
Chapter6 : JVM과 메모리 6.1 JVM의 구조와 메모리 모델 6.2 프로그램 실행과 메모리 6.3 객체생성과 메모리
2장. 변수와 타입.
컴퓨터공학실습(I) 3주 인공지능연구실.
Java IT응용시스템공학과 김형진 교수 5장. 객체지향 개념 public class SumTest {
자바 5.0 프로그래밍.
자바 5.0 프로그래밍.
Chapter 4 변수 및 바인딩.
JA A V W. 06.
Signature, Strong Typing
Signature, Strong Typing
Signature, Strong Typing
시스템 인터페이스 Lab#5 쉡 실습.
Java RMI (Remote Method Invocation)
안드로이드 앱 분석 팀 기반의 설계 프로젝트 박민재
MIDP 네트워크 프로그래밍 ps lab 김윤경.
Java 5장. 객체지향 개념 public class SumTest {
.Net FrameWork for Web2.0 한석수
2.가상머신의 탐험 도구, Oolong에 대하여 ps lab 김윤경.
A SMALL TRUTH TO MAKE LIFE 100%
A SMALL TRUTH TO MAKE LIFE 100%
프로젝트 개요 OPENSTACK을 이용한 교육용 CLOUD 환경 구축! 교수님(관리자)와 학생(이용자)으로 구분.
한상철 (Han, Sangchul) 상허연구동 102호 ( )
Chapter 7: Deadlocks.
Presentation transcript:

Spring 사용자 모임 오프라인 세미나 We bring e-business to your business! Agile Java 1. Getting Started 작성자 : 안영회, 백기 선

테스트란 ? 테스트의 목적  The tests are a means of specifying what the code needs to do. => 요구사항 (requirements)  After writing the corresponding code, the tests are run to ensure that the code does what the tests specify.  코드 작성 이전과 이후 모두에 필요 >> Driver 가 될 수 있음.  요구사항을 담는 측면과 Driver 로 쓸 수 있는 면에서 Use Case 와 역 할이 겹친다.

테스트 프레임워크 비교  JUnit  JUnit 4  TestNG  비교 기준 - Intrusion - Assertion 방법 - 부가 기능

변수의 범위 (Scope)  지역 변수 (Local Variables) = temp/temporary variables It is local because it will exist only for the duration of the test method.  인스턴스 변수 (Instance Variables) = field A field declaration can appear anywhere within the class as long as it appears outside of the methods defined in that class.  attribute( 속성 ): a general object-oriented term for a characteristic of an object.  Principle of least privilege Principle of least privilege

변수의 범위 (Scope) statement method instance class

간단한 객체 생성 구문의 이해  Student student = new Student("Jane Doe"); 1.the Java VM executes the code to the right-hand side of the assignment operator. 2.creating a Student object in memory. 3.The VM takes note of the actual memory address where it places the new Student object. 4.the VM assigns this address to a reference on the left-hand side.

리팩토링 (Refactoring)  목적 1. ensure that there is no duplicate code in the system 2. ensure that the code is clean and expressive, clearly stating the intent of the code  불필요한 지역 변수 제거하기.  문자열의 의미를 나타내는 변수 사용하기. setName(“ 기선 ”); String name = “ 기선 ”; setName(name);

리팩토링 : 이클립스 리팩토링 활용  String 리터럴 > final 변수

리팩토링 : 이클립스 리팩토링 활용  인스턴스 / 멤버 변수 이름 변경

리팩토링 : 이클립스 리팩토링 활용  빠른 보정 (quick fix) 으로 this 명시

이름 짓기 (Naming Conventions)  잘못된 이름 패턴 sDescription, firstNameString, trim,..., tdmAccountWebCtrl, CD_SA_OGNZTBR  등장하게 되는 이유 ? 네임스페이스에 대한 이해부족. 이름 짓기 어렵다 ( 네이버 찾는거 힘들다 ) > 도메인 용어가 정의되지 않음.  좋은 이름 : in JDK or Spring API  좋은 작명이 주는 이점은 ? 명확한 작성이 명실상부를 유도하여 SOC 를 돕는다.

공백 문자 (whitespace) 과 들여쓰기 (indentation)  종류 - space - tab \t - form feed \f - new line(carriage return) \n  # 이클립스 들여쓰기 / 포맷 교정 및 표준화 기법 공유

13 코드 깊이 보기  Instance Variables Encapsulation Test ??

14 코드 깊이 보기  Summarizing the Test 명령 Command Mutator, Modifier 질의 Query 1.immutable!! 2.Fixture 와 testcase 가 같은 패키지에 위치할 때 얻는 이점

15 TDD 기반 개발 절차 1.Write a small test to assert some piece of functionality. 2.Demonstrate that the test fails. 3.Write a small bit of code to make this test pass. 4.Refactor both the test and code, eliminating duplicate concepts and ensuring that the code is expressive.