O slideshow foi denunciado.
Utilizamos seu perfil e dados de atividades no LinkedIn para personalizar e exibir anúncios mais relevantes. Altere suas preferências de anúncios quando desejar.
스프링보다 중요한 스프링 이야기
박성철

(한국 스프링 사용자 모임; KSUG)
生卽苦
좋은 SW란?
좋은 SW란?
기능 품질 구조 품질
신규 기능 추가
기능 구현 + 통합
“우린 못해!”

“우린 안해!”
소프트웨어 위기
소프트웨어 위l의 주요한 위lr 컴퓨터 성능이 몇 수십 배나 더 강력해졌기
때문입st! 심하게 말하면, 컴퓨터가 없었을  r 프로i래밍에r 전혀 문제가
없었습st( q린 컴퓨터 몇 개 뿐이었을  r 프로...
인텔 CPU 클럭 속도 향상 속도
미녀라고 하더니…
SW 위기
SW 개발 문제
SW 품질 문제
SW 기능 문제
SW 구조 문제
보이는 문제
숨은 문제
SW 개발 문제
SW 기능 문제
SW 구조 문제
보이는 문제
숨은 문제
테스트
설계 & 아키텍처
개발 방법론
분해

(decomposition, factoring)
관심사 분리

(Separation of concerns)
Edsger W. Dijkstra, 1974, "On the role of scientific thought”



“e심사 분리r, 완벽하지r 않t 해x, 아...
SW 구조
코드 한 덩어리
수평적 분리
표현 계층
애플리케이션 계층
도메인 계층
데이터 접근/시스템 통합 계층
수직적 분리
기능A
기능B
기능C
기능D
기능E
기능F
수평/수직적 분리
AaaControl
AaaService
AaaBiz
AaaDao
BbbControl
BbbService
BbbBiz
BbbDao
CccControl
CccService
CccBiz
CccDao
DddC...
수평/수직적 분리
AaaControl
XxxService
AbcBiz
QazDao
BbbControl
WsxDao
CccControl
YyyService
EdcDao
DddControl
ZzzService
RfvDao
...
객체 지향 프로그래밍
객체지향 프로그래밍
동적 디스패치
캡슐화 서브타입 다형성
객체 위임
상속
Open
Recursion
클래스
인스턴스
메서드
추상화
다이나믹 디스패치 ≒ 메시징
“m게 OO7r 메시징d 상태 처리 d정의 지역적 보존,
보호, 은익d 모든 것의 극u적인 지연 바인딩 뿐이t(”

“OO7 Mo me meaGs oGly messaACGA, local Ke...
순서도 vs 소통도

(flow chart vs communication diagram)
메시지
대면 대화 X 지인과의 전화 통화 X
메시지
맥도날드에서 주문하기 O
invokeinterface
자바의 네(다섯)가지 호출 방식
invokestatic invokespecial
invokevirtual
invokedynamic
안o 친f야( 이것 좀 부탁해(
n가 ph지 몰라x 신분은 ...
인터페이스 중심 설계
“7KoAKammCGA Mo aG CGMeK@ace,SGoM aG CmplemeGMaMCoG”
2o@ 디자인 패턴
X
설계
구현
역할
의존관계 역전 원칙

(Dependency inversion principle; DIP)
AbcService
X
SomeRepository
SomeDao
서비스 계층
데이터 접근 계층
생성과 사용 분리

(Separation of Use from Construction)
객체 생성 문제
malloc() new
?
GRASP의 생성자(creator) 원칙
누가 객체를 생성해야 하나?

대상 클래스로 구성되는 클래스

대상 클래스를 담고 있는 클래스

대상 클래스의 인스턴스를 기록하는 클래...
스프링보다 중요한 스프링 이야기
스프링보다 중요한 스프링 이야기
스프링보다 중요한 스프링 이야기
스프링보다 중요한 스프링 이야기
스프링보다 중요한 스프링 이야기
스프링보다 중요한 스프링 이야기
스프링보다 중요한 스프링 이야기
스프링보다 중요한 스프링 이야기
스프링보다 중요한 스프링 이야기
스프링보다 중요한 스프링 이야기
스프링보다 중요한 스프링 이야기
스프링보다 중요한 스프링 이야기
스프링보다 중요한 스프링 이야기
스프링보다 중요한 스프링 이야기
스프링보다 중요한 스프링 이야기
스프링보다 중요한 스프링 이야기
스프링보다 중요한 스프링 이야기
스프링보다 중요한 스프링 이야기
스프링보다 중요한 스프링 이야기
스프링보다 중요한 스프링 이야기
스프링보다 중요한 스프링 이야기
스프링보다 중요한 스프링 이야기
스프링보다 중요한 스프링 이야기
스프링보다 중요한 스프링 이야기
스프링보다 중요한 스프링 이야기
스프링보다 중요한 스프링 이야기
스프링보다 중요한 스프링 이야기
스프링보다 중요한 스프링 이야기
스프링보다 중요한 스프링 이야기
스프링보다 중요한 스프링 이야기
스프링보다 중요한 스프링 이야기
스프링보다 중요한 스프링 이야기
스프링보다 중요한 스프링 이야기
스프링보다 중요한 스프링 이야기
스프링보다 중요한 스프링 이야기
스프링보다 중요한 스프링 이야기
스프링보다 중요한 스프링 이야기
스프링보다 중요한 스프링 이야기
스프링보다 중요한 스프링 이야기
스프링보다 중요한 스프링 이야기
스프링보다 중요한 스프링 이야기
스프링보다 중요한 스프링 이야기
스프링보다 중요한 스프링 이야기
스프링보다 중요한 스프링 이야기
스프링보다 중요한 스프링 이야기
스프링보다 중요한 스프링 이야기
스프링보다 중요한 스프링 이야기
Próximos SlideShares
Carregando em…5
×

스프링보다 중요한 스프링 이야기

11.444 visualizações

Publicada em

2015/4/23일 OKKY 정기 모임에서 발표한 자료입니다. 클린코드 11장과 12장의 내용을 기본 틀로 해서 내용을 구성해 봤습니다.
스프링을 이용해서 생성과 이용의 관심사 분리, 횡적 관심사 분리를 하게 되면 지속적으로 SW를 개선할 수 있다는 내용입니다.

Publicada em: Software
  • DOWNLOAD THIS BOOKS INTO AVAILABLE FORMAT (Unlimited) ......................................................................................................................... ......................................................................................................................... Download Full PDF EBOOK here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... Download Full EPUB Ebook here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... ACCESS WEBSITE for All Ebooks ......................................................................................................................... Download Full PDF EBOOK here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... Download EPUB Ebook here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... Download doc Ebook here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... ......................................................................................................................... ......................................................................................................................... .............. Browse by Genre Available eBooks ......................................................................................................................... Art, Biography, Business, Chick Lit, Children's, Christian, Classics, Comics, Contemporary, Cookbooks, Crime, Ebooks, Fantasy, Fiction, Graphic Novels, Historical Fiction, History, Horror, Humor And Comedy, Manga, Memoir, Music, Mystery, Non Fiction, Paranormal, Philosophy, Poetry, Psychology, Religion, Romance, Science, Science Fiction, Self Help, Suspense, Spirituality, Sports, Thriller, Travel, Young Adult,
       Responder 
    Tem certeza que deseja  Sim  Não
    Insira sua mensagem aqui
  • DOWNLOAD THIS BOOKS INTO AVAILABLE FORMAT (Unlimited) ......................................................................................................................... ......................................................................................................................... Download Full PDF EBOOK here { https://tinyurl.com/yyxo9sk7 } ......................................................................................................................... Download Full EPUB Ebook here { https://tinyurl.com/yyxo9sk7 } ......................................................................................................................... ACCESS WEBSITE for All Ebooks ......................................................................................................................... Download Full PDF EBOOK here { https://tinyurl.com/yyxo9sk7 } ......................................................................................................................... Download EPUB Ebook here { https://tinyurl.com/yyxo9sk7 } ......................................................................................................................... Download doc Ebook here { https://tinyurl.com/yyxo9sk7 } ......................................................................................................................... ......................................................................................................................... ......................................................................................................................... .............. Browse by Genre Available eBooks ......................................................................................................................... Art, Biography, Business, Chick Lit, Children's, Christian, Classics, Comics, Contemporary, Cookbooks, Crime, Ebooks, Fantasy, Fiction, Graphic Novels, Historical Fiction, History, Horror, Humor And Comedy, Manga, Memoir, Music, Mystery, Non Fiction, Paranormal, Philosophy, Poetry, Psychology, Religion, Romance, Science, Science Fiction, Self Help, Suspense, Spirituality, Sports, Thriller, Travel, Young Adult,
       Responder 
    Tem certeza que deseja  Sim  Não
    Insira sua mensagem aqui
  • DOWNLOAD THIS BOOKS INTO AVAILABLE FORMAT (Unlimited) ......................................................................................................................... ......................................................................................................................... Download Full PDF EBOOK here { https://tinyurl.com/yyxo9sk7 } ......................................................................................................................... Download Full EPUB Ebook here { https://tinyurl.com/yyxo9sk7 } ......................................................................................................................... ACCESS WEBSITE for All Ebooks ......................................................................................................................... Download Full PDF EBOOK here { https://tinyurl.com/yyxo9sk7 } ......................................................................................................................... Download EPUB Ebook here { https://tinyurl.com/yyxo9sk7 } ......................................................................................................................... Download doc Ebook here { https://tinyurl.com/yyxo9sk7 } ......................................................................................................................... ......................................................................................................................... ......................................................................................................................... .............. Browse by Genre Available eBooks ......................................................................................................................... Art, Biography, Business, Chick Lit, Children's, Christian, Classics, Comics, Contemporary, Cookbooks, Crime, Ebooks, Fantasy, Fiction, Graphic Novels, Historical Fiction, History, Horror, Humor And Comedy, Manga, Memoir, Music, Mystery, Non Fiction, Paranormal, Philosophy, Poetry, Psychology, Religion, Romance, Science, Science Fiction, Self Help, Suspense, Spirituality, Sports, Thriller, Travel, Young Adult,
       Responder 
    Tem certeza que deseja  Sim  Não
    Insira sua mensagem aqui
  • 잘읽었습니다~~ 좋은내용 고맙습니다.
       Responder 
    Tem certeza que deseja  Sim  Não
    Insira sua mensagem aqui

스프링보다 중요한 스프링 이야기

  1. 1. 스프링보다 중요한 스프링 이야기 박성철
 (한국 스프링 사용자 모임; KSUG)
  2. 2. 生卽苦
  3. 3. 좋은 SW란?
  4. 4. 좋은 SW란? 기능 품질 구조 품질
  5. 5. 신규 기능 추가 기능 구현 + 통합 “우린 못해!” “우린 안해!”
  6. 6. 소프트웨어 위기 소프트웨어 위l의 주요한 위lr 컴퓨터 성능이 몇 수십 배나 더 강력해졌기 때문입st! 심하게 말하면, 컴퓨터가 없었을  r 프로i래밍에r 전혀 문제가 없었습st( q린 컴퓨터 몇 개 뿐이었을  r 프로i래밍이 조k 문제가 되었 c, 이제r 거v한 컴퓨터에 프로i래밍x 따라서 거v한 문제가 되었습st( ' 에츠허르 w이크스트라 / 1.-, 01M 튜링상 수상 연설 F. L. 바우어(Fritz Bauer), 1968, 나토 SW 공학 학회 http://homepages.cs.ncl.ac.uk/brian.randell/NATO/NATOReports/index.html
  7. 7. 인텔 CPU 클럭 속도 향상 속도
  8. 8. 미녀라고 하더니…
  9. 9. SW 위기 SW 개발 문제 SW 품질 문제 SW 기능 문제 SW 구조 문제 보이는 문제 숨은 문제
  10. 10. SW 개발 문제 SW 기능 문제 SW 구조 문제 보이는 문제 숨은 문제 테스트 설계 & 아키텍처 개발 방법론
  11. 11. 분해 (decomposition, factoring)
  12. 12. 관심사 분리 (Separation of concerns) Edsger W. Dijkstra, 1974, "On the role of scientific thought” 
 “e심사 분리r, 완벽하지r 않t 해x, 아직은 ph가의 생각을 효율 적으로 정리하rw 사용할 수 있r 유일한 l법이t(” “sepaKaMCoG o@ coGceKGs X eOeG C@ GoM peK@ecMly possCble Cs yeM Mhe oGly aOaClable MechGCJue @oK e@@ecMCOe oKdeKCGA o@ oGe’s MhouAhMs”
 “특정 e점에 주의를 집중함”
 “@ocusCGA oGe's aMMeGMCoG upoG some aspecM”
  13. 13. SW 구조
  14. 14. 코드 한 덩어리
  15. 15. 수평적 분리 표현 계층 애플리케이션 계층 도메인 계층 데이터 접근/시스템 통합 계층
  16. 16. 수직적 분리 기능A 기능B 기능C 기능D 기능E 기능F
  17. 17. 수평/수직적 분리 AaaControl AaaService AaaBiz AaaDao BbbControl BbbService BbbBiz BbbDao CccControl CccService CccBiz CccDao DddControl DddService DddBiz DddDao
  18. 18. 수평/수직적 분리 AaaControl XxxService AbcBiz QazDao BbbControl WsxDao CccControl YyyService EdcDao DddControl ZzzService RfvDao DefBiz GhiBiz JklBiz MnoBiz 사용자 인터페이스 모델 쓰임새(Use Case) 모델 데이터 모델
  19. 19. 객체 지향 프로그래밍
  20. 20. 객체지향 프로그래밍 동적 디스패치 캡슐화 서브타입 다형성 객체 위임 상속 Open Recursion 클래스 인스턴스 메서드 추상화
  21. 21. 다이나믹 디스패치 ≒ 메시징 “m게 OO7r 메시징d 상태 처리 d정의 지역적 보존, 보호, 은익d 모든 것의 극u적인 지연 바인딩 뿐이t(”
 “OO7 Mo me meaGs oGly messaACGA, local KeMeGMCoG aGd pKoMecMCoG aGd hCdCGA o@ sMaMe'pKocess, aGd exMKeme laMe'bCGdCGA o@ all MhCGAs” “중요한 착안은 “메시지”이t( 이r 스몰톡d 스퀵 핵심 의 본질이t( 일본어에 마(ま)라r 짧은 u어가 있t(”
 “9he bCA Cdea Cs “messaACGA" MhaM Cs PhaM Mhe keKGal o@ SmallMalk)SJueak Cs all abouM( 9he JapaGese haOe a small PoKd Tma’(((” 앨런 케이(0laG Kay) 間
  22. 22. 순서도 vs 소통도 (flow chart vs communication diagram)
  23. 23. 메시지 대면 대화 X 지인과의 전화 통화 X
  24. 24. 메시지 맥도날드에서 주문하기 O
  25. 25. invokeinterface 자바의 네(다섯)가지 호출 방식 invokestatic invokespecial invokevirtual invokedynamic 안o 친f야( 이것 좀 부탁해( n가 ph지 몰라x 신분은 아s 이것 좀 처리해줘( n가 ph지 x무지 모르겠지만 이것 좀 처리해줘(
  26. 26. 인터페이스 중심 설계 “7KoAKammCGA Mo aG CGMeK@ace,SGoM aG CmplemeGMaMCoG” 2o@ 디자인 패턴 X 설계 구현 역할
  27. 27. 의존관계 역전 원칙 (Dependency inversion principle; DIP) AbcService X SomeRepository SomeDao 서비스 계층 데이터 접근 계층
  28. 28. 생성과 사용 분리 (Separation of Use from Construction)
  29. 29. 객체 생성 문제 malloc() new ? GRASP의 생성자(creator) 원칙 누가 객체를 생성해야 하나? 대상 클래스로 구성되는 클래스 대상 클래스를 담고 있는 클래스 대상 클래스의 인스턴스를 기록하는 클래스 대상 클래스와 가깝게 사용되는 클래스 대상 클래스를 생성하는데 필요한 데이터가 있는 클래스 5A A G

×