반응형

전체 글 250

개발문서

개발산출물 1. 분석 1-1. 개발표준정의서 개발환경, 주석작성방법, Java 코딩 규칙 등 공통의 코딩 rule 등을 정함 1-2. 요구사항정의서 상세 기능 정의 test Case 정의할 때 사용 가능 나중에 문제 생겼을 때, 이거 보고 1-3. 프로세스정의서 중요 1-4. 아키텍쳐정의서 직접적인 opensource 언급 X 전체적인 구조 정의 1-5. 화면정의서 기획서(화면UI 및 기본 Flow 등) 1-6. 메뉴구조도 기능? 화면?에 따른 업무분담 2. 설계 2-1.프로그램목록 2-2.인터페이스 설계서 3. 개발 4. 테스트 5. 종료 관리산출물 1. 착수 1-1. PM(프로젝트 관리) WBS 문서명명규칙 1-2. PP(프로젝트 계획) 산출물리스트 기술적용계획표 착수보고 2. 수행 및 통제 2-1...

Platform/Etc 2020.03.31

[AAC] ViewModel | LiveData

ViewModel 왜 사용해 ? Activity, Fragment 생명주기에 따른 데이터 손실? 관리가 어려워서, 개발자들이 힘들었었다.(= 액티비티에 종속된 UI데이터를 유지하는 것이 힘듦) EX. 가로 ↔ 세로 화면 전환, 앱이 background에 있을 때, 메모리관리/부족 등으로 액티비티를 종료하고 다시 시작하는 경우가 있기 때문에 데이터 관리가 어려웠다. Ex. 여러 Fragment에서 데이터를 공유하려면, 공유하는 하나의 Activity에 데이터를 종속시키고 관리해야 했다. -> Activity의 생명주기에 데이터가 종속됨! 그 이전의 해결책 onSaveInstanceState() -> 직렬화할 수 없는 객체는 저장 X (많은 데이터를 저장하기 위해 디자인 되지 X) Retained Fragm..

Platform/Android 2020.03.18

[Class]

Paraclable 직렬화 interface Serializable보다 Andriod에서 훨씬 빠른 속도를 보여줌 Parcelable.Creator non-null static 필드(필수) Parcel로 부터 값을 읽어 오기 위해서는 Parcelable.Creator Interface 가 필요 public static final Parcelable.Creator CREATOR = new Parcelable.Creator() { @Override public WorkConfig createFromParcel(Parcel source) { return new WorkConfig(source); } @Override public WorkConfig[] newArray(int size) { return new ..

Platform/Android 2020.03.17

[aab] Android App Bundle

aab가 왜 필요해? Android 64bit 지원 정책으로 인해 64bit용 native library를 build하여 package에 추가해야 했기 때문에, 앱 패키지용량은 증가할수 밖에 없는 상황이 되어 버렸다. ---> aab가 해결! aab가 왜 좋은데? - 사용자가 앱을 다운 받을 때, 앱 다운로드 크기 & 디스크 할당 크기 save - Android 6.0 이상: 다운로드 크기, 디스크 할당 크기, 설치 시간 save (how? apk대신 저장되는 압축X 기본 라이브러리 사용) - 사용자에게 필요한 기능 및 설정을 사용자가 요청할 때 제공 - 효율적인 빌드 및 출시 관리: 여러 개의 apk를 빌드하고 게시할 필요 X aab로 어떻게 테스트해? 1.google play beta test에 등록..

Platform/Android 2020.03.06

[Test-Driven Development: By Example] 테스트 주도 개발-Money편

테스트 주도 개발 Test-Driven Development 국내도서 저자 : 켄트 벡 / 김창준,강규영역 출판 : 인사이트 2014.02.15 상세보기 테스트 주도 개발 Test-Driven Development켄트 벡 상세보기 TDD 오직 자동화된 테스트가 실패할 경우에만 새로운 코드를 작성한다. 중복을 제거한다. 프로그래밍 순서 빨강 - 실패하는 작은 테스트를 작성한다. 처음에는 컴파일조차 되지 않을 수 있다. 초록 - 빨리 테스트가 통과하게끔 만든다. 이를 위해 어떤 죄악(copy and paste, 테스트만 간식히 통과할 수 있게끔 함수가 무조건 특정 상수를 반환하도록 구현하기 등)을 저질러도 좋다. 리팩토링 - 일단 테스트를 통과하게만 하는 와중에 생겨난 모든 중복을 제거한다. 불확실한 상태로..

Book/Programming 2020.02.25

[Java프로그래밍면접 이렇게 준비한다] Chapter20. 안드로이드

- 안드로이드 앱의 주요 구성 요소와 함수는 무엇인가? A) 주요구성요소: Activity / Service / BroadcastReceiver / Content Provider(Content Resolver 이용) - Activity란 무엇인가? A) 사용자 인터페이스와 함께 화면에 표시됨 / 각 액티비티는 독립적으로 실행 / 내외부 앱의 화면이 어떻게 변경되는지 조정하기 위해 직접 액티비티를 실행할 수 있음 - Broadcast Receiver란 무엇인가? A) 시스템 전체나 내부에서 브로드캐스트된 인텐트를 받는다. -> 알림을 보여 줌 / 다른 구성 요소를 활성화 / 다른 짧은 작업을 수행 앱은 많은 시스템 브로드캐스트를 구독하는 데(실행 시작이나 네트워크 연결이 변경됐을 때) Broadcast R..

Book/Programming 2020.01.21

[Java프로그래밍면접 이렇게 준비한다] chapter8. 자바 기본

1. 원시타입 - 왜 Integer.MIN_VALUES에 대응하는 양수가 없는가? 보수의 표현 특징 - 자바에서 객체란 무엇인가? - final 키워드는 객체 참조에 어떤 영향을 미치는가? A) 변수정의에서 지정된 값처럼 일단 할당이 되고 나면 메모리 위치가 변경되지 X 단, 객체 참조는 변경할 수 없어도 객체 내부의 값들은 개별 값들이 final이 아니라면 변경할 수 O - 객체의 가시성 수정자(visibility modifier)는 어떻게 작동하는가? A) private / none / protected / public private - 오직 해당 클래스에서만 사용 > 같은 타입의 다른 모든 인스턴스가 private 멤버 변수에 접근 가능(p.163~) - 메서드와 변수에 사용되는 static 키워드..

Book/Programming 2020.01.21
반응형