- 'Why'라는 고민을 항상하자! → 싱글톤은 왜 해야할까? setHasOptionsMenu( )를 왜 해야하지? 등등
- 자바를 숙달하자. 어떤 프로젝트던지 언어때문에 막히는 일은 없어야한다.
- 항상 일의 우선순위를 정하자!
현재로서는, API 문서보기 > project 구현
이론과 개념 > 코드 구현
- 이 스터디를 통해 과장님의 지식을 전수받으려면, 사소한 것도 메모해서 얻어가도록 하자.
< App Components API 문서 읽기 >
읽다가 내용이 잡다하고 디테일하면 skip하자. 개념만 보자.
예를들어 인텐트를 skip 해야한다.
액티비티나 서비스를 읽다보면 인텐트 얘기가 나오는데, 그 때마다 참고하면 된다.
< AlramStudy project >
- TimePicker 프래그먼트와 Option 프래그먼트를 하나로 묶기
- Manager는 싱글톤 패턴으로 구현할 것
- AlramListAdapter를 중첩클래스로 만들기
- AlramManager 프레임웤 이용하지말고 구현하기
- 쓰레드와 서비스 이용하기
- 프로젝트를 최초로 볼 때에 매니페스트 파일을 보면 편하다.
> 메인 화면이 어디인지, 어떤 액티비티들이 있는지 앱 구조를 파악할 수 있다.
- 액티비티를 프래그먼트로 나눌 때 같은 기능을 하는 애들을 하나의 프래그먼트에 정의한다.
> 소인수분해하듯 최소 단위로 나누지 말자.
>> TimePicker 프래그먼트와 Option 프래그먼트를 하나로 묶기
- 설계의 기준은 내부 코드이므로 UI에 결속되지 말자.
> 집 : 창문 = 코드 : UI
- 다양한 객체들이 사용하는 모델은 하나만 존재해야한다.
- 프로젝트에서 매니저(프록시)는 하나만 존재하는 것이 좋다.
> > Manager는 싱글톤 패턴(=static)으로 구현할 것
다양한 객체들이 하나의 매니저(proxy)를 통해 모델을 사용한다.
- 한 화면으로만 사용되는 것은 중첩클래스로 만들기 (static inner class = nested class)
>>AlramListAdapter를 중첩클래스로 만들기
위 어댑터는 알람 리스트만 사용하므로 외부 클래스로 만들지 않아도 된다.
- 모델은 최대한 단순하게 만들기, 컨트롤러적인 기능은 넣지 않는다.
> [예외 예시] 서버에서 받은 데이터를 앱에서 사용해야 할 경우에만 모델이 데이터 변환 기능을 갖게하자.
: 서버가 저장한 데이터들은 다양한 값일 수 있다. (JSON, XML, Binary 등)
앱에서는 String 값만 사용한다고 할 때, 모델이 데이터를 포함한 김에 변환도 해주는 것이 좋다.
- UI 최소화하기
설계한 UML 다이어그램에 의존하기보다는 모든 설계와 그 작업흐름도가 내 머릿속에 있어야한다는데,
아직은 머릿속에 다 담고있기가 힘들다.
종이에 그린 설계도조차 머리에 담겨지지 않는다.
'Android > 현업에 투입되기위한 STUDY' 카테고리의 다른 글
0724 4차 App Componenets 발표 (0) | 2015.07.24 |
---|---|
0714 3일차 AlramStudy project 컨설팅 (0) | 2015.07.14 |
App Components > Activities Intro (0) | 2015.07.10 |
App Components > Intents and Intent Filters (0) | 2015.07.07 |
0707 1일차 HAS-A로 시작해서 DI로 끝난다. (0) | 2015.07.07 |