본문 바로가기 메뉴 바로가기

JHB의 삽질 이야기

프로필사진
  • 글쓰기
  • 관리
  • 태그
  • 방명록
  • RSS

JHB의 삽질 이야기

검색하기 폼
  • 분류 전체보기 (372)
    • JHB (23)
      • IT 이야기 (4)
      • 잡다한 이야기 (19)
    • Cloud (44)
      • AWS (40)
    • Language (46)
      • C C++ (26)
      • C# (2)
      • Java (1)
      • Python (16)
    • Development (221)
      • Windows (62)
      • Mobile (72)
      • Linux (6)
      • Driver (12)
      • Firmware & HW (3)
      • Algorithm (14)
      • CM&CI&CD (14)
      • Web개발 (8)
      • Container (1)
      • Database (1)
      • Etc (26)
      • Tip (2)
    • MUSIC (17)
      • Listen (12)
      • Compose (5)
    • ETC (20)
      • Public (20)
    • TOOL/FRAMEWORK
      • MFC
      • WPF
      • GIT
    • LANGUAGE
      • C/C++
      • C#
      • Java
      • Python
  • 방명록

리팩토링 (1)
이번 프로젝트 하면서 겪은 설계 실수 몇가지

작게 시작한 프로젝트 규모가 점점 커지면서 리팩토링을 하게 됐는데 크고 작은 실수가 몇개 있었다. 덕분에 엄청난 시행착오를 거쳐 오랜 시간걸렸다. 몇가지 실수를 적어 보겠다. 첫번째는 메세지 전달 부분에서의 의존성을 줄이지 못한 부분이다. 각 모듈을 DLL로 쪼개는 리팩토링을 감행 하였는데 여기서 각 DLL 간 의존성을 0으로 하고, 최대한 독립적으로 General 하게 코딩하려 했다. A DLL에서 B DLL로 메세지를 전달 하는 과정에서 상수값을 어쩔 수 없이 공유하게 됐는데, 차라리 A DLL에 SetListener 메소드를 구현하고, B DLL에서 해당 메소드를 콜해서 원하는 핸들러를 등록하게 했어야 했다. 두번째는, Data와 Controller를 완벽하게 분리 하지 못했다. 기본적으로 Data..

JHB/잡다한 이야기 2016. 3. 5. 17:02
이전 1 다음
이전 다음
공지사항
최근에 올라온 글
  • Serverless로 E-Commerce⋯
  • 갑자기 RDS CPU 점유율이⋯
  • DDB Singletable 디자인
  • AWS CLI v2 에서 명령어⋯
최근에 달린 댓글
  • 정답입니다 중상수준입니다.⋯
  • 글 지우시는게 좋을거같아요⋯
  • 다른글 배껴오신건가요?
  • 안녕하세요, 혹시 Kinesis Da⋯
Total
812,766
Today
30
Yesterday
198
링크
  • Kaspyx - Hacking
  • JHB LinkedIn
  • Dive into Deep Learning
TAG
  • MFC
  • source
  • 안드로이드
  • 프로그래밍
  • 리눅스
  • Visual C++
  • java
  • jni강좌
  • 드라이버
  • C
  • Quiz
  • android
  • Cloud
  • database
  • AWS
  • Troubleshooting
  • algorithm
  • Python
  • kering
  • jni
  • C++
  • driver
  • 음악
  • winapi
  • it
  • linux
  • gcc
  • NDK
  • db
  • API
more
«   2022/05   »
일 월 화 수 목 금 토
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31        
글 보관함
  • 2022/03 (1)
  • 2021/11 (1)
  • 2021/10 (1)
  • 2021/09 (1)
  • 2021/08 (1)

Blog is powered by Tistory / Designed by Tistory