본문 바로가기

JeongWoo

오늘의 할 일 1on1 3번 성과 공유회 템플릿 만들고 공지 쓰기 팀워크의 부활 스터디 가이드 만들기 더보기
오블완 오늘은 다낭 숙소를 예약했다. 푸라마 빌리지를 예약하고 싶었는데 조식 패키지가 없어서 실패했다. 더보기
챌린지 1일차 오늘은 1월부터 10월까지 진행한 면담일지를 정리해야 한다 더보기
2장 왜 애자일 인가 - 클린 애자일 정리 2. 왜 애자일 인가? 애자일 개발이 중요한 것은 더 깊은 철학적, 윤리적 이유 때문이다. 바로 직업의식과 고객의 당연한 기대 때문이다. 직업의식 애자일 개발은 (전문가가 되겠다는) 약속이다. 소프트웨어 개발 산업 전반에 전문가 다운 행동을 퍼트리겠다는 약속 내 수준을 올리겠다는 약속 과거에 실패가 많았다 → 소프트웨어가 이제 너무 많다 → 실패하면 안 된다 소프트웨어는 어느 곳에나 있다. 정말 많은 곳에 소프트웨어가 있다. 우리가 세상을 지배한다. 소프트웨어는 누가 만드는가? → 여러분과 나다 우리가 세상을 지배한다. 테스트가 안돼서 엉망이다. → 테스트 슈트가 소프트웨어의 정상 동작을 엄밀하게 증명한다고 말할 수 있는 프로그래가 얼마나 될까? 도요타 리콜 (브레이크 소프트웨어 결함) 재앙 프로그래머의.. 더보기
1장 애자일 소개 - 클린 애자일 정리 애자일이란 무엇일까? - 짧은 반복 주기와 고객과 개발자 사이의 원할한 커뮤니케이션으로 생산성을 높는 개발 방법론? 애자일 이전에 왜 프로젝트가 실패했는지에 대해서 생각해보고, 애자일이 무엇인지를 이해해 보자. 또 애자일을 실천하면서 우리가 얻을 수 있는 가치들도 생각해보자. 1. 애자일 소개 애자일의 역사 제조업과 산업 전반적으로 과학적 관리법이 성공적으로 자리 잡고 있었다. → 계획을 세우는 데 먼저 많은 노력을 들인 다음, 그 계획을 주의 깊고 세세하게 실천하는 것 (하향식, 지휘 및 통제 접근법) → 효율성과 생선성을 극적으로 향상시켰다. 선애자일 (pre agile) → 조금씩 걸어보고 측정을 한 후 그에 맞추어 개선하기를 반복하는 방법 Q. 소프트웨어 프로젝라는 것이 어떤 종류의 프로젝트인가?.. 더보기
SwitchCompat 스타일로 디자인 적용하기 SwitchCompat SwitchCompat link 기본 디자인 입히기 뒷배경 track 과 스위치 아이콘 thumb 부분의 drawable 을 수정해서 커스텀 할 수 있다. Thumb Drawble state_checkd 를 통해서 checked 상태와 unchecked 상태를 설정한다. shape_switch_thumb_on shape_switch_thumb_off Track Drwable state_checkd 를 통해서 checked 상태와 unchecked 상태를 설정한다. shape_switch_track_on shape_switch_track_off 전체 코드 원하는 디자인과 조금 다른 짜리몽땅한 모습이 보여진다. (약 34dp) 가로 길이를 조정하기 위해서는 app:switchMinWi.. 더보기
안드로이드 배포 종류, 공개 비공개, 내부 테스트 설정 Set up an open, closed, or internal test 공개, 비공개, 내부 테스트 설정 - Play Console 고객센터 도움이 되었나요? 어떻게 하면 개선할 수 있을까요? 예아니요 support.google.com 프로덕션 : 일반 사용자 테스트 공개 테스트 공개 테스트 버전은 Google Play에서 테스터에게 제공됩니다. 사용자는 스토어 등록정보를 통해 테스트에 참 플레이스토어에서 바로 참여 신청할 수 있음 인원 제한(1000 이상) or 무제한 비공개 테스트 하나 또는 여러 개의 비공개 테스트 버전을 생성 및 관리하여 내가 지정한 테스터를 대상으로 출시 전 버전의 앱을 테스트하세요. email 또는 groups 를 통해서 관리 가능 (G-suite 로 훅 넣을 수 있다는 얘기.. 더보기
Android Proguard Obfuscating and Shrinking your code 프로가드를 통해서 안드로이드 프로젝트의 난독화와 최적화를 할 수 있다. obfuscate: 난독화 Shrink : 수축, 축소 optimize : 최적화 Android Gradle 플러그인 3.4.0 이상을 사용하여 프로젝트를 빌드하는 경우 플러그인은 더 이상 ProGuard를 사용하여 컴파일 시간 코드 최적화 작업을 하지 않습니다. 대신 플러그인은 R8 컴파일러를 이용하여 다음의 컴파일 시간 작업을 처리합니다. proguard 설정 방법 android { buildTypes { debug { mifinyEnalbled false } release { // Enables code shrinking, obfuscation, and optimi.. 더보기
Retrofit + Rx + JUnit 으로 api test 하기 Retofit 을 RX 로 Wrapping 해서 API test 를 실행할 수 있다. Junit5 Gradle 설정testImplementation 'org.junit.jupiter:junit-jupiter-api:5.2.0' testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.2.0'Retrofit Gradle 설정implementation 'com.squareup.retrofit2:retrofit:2.4.0' implementation 'com.squareup.retrofit2:converter-gson:2.4.0' implementation 'com.squareup.okhttp3:logging-interceptor:3.10.0' implementa.. 더보기
1. 리액티브 프로그래밍 소개 리액티브 프로그래밍은 데이터 흐름과 전달에 관한 프로그래밍 패러다임입니다.데이타 흐름을 먼저 정의하고 데이터가 변경 되었을 때 연관되는 함수나 수식이 업데이트되는 방식입니다. 이벤트 pull 방식에서 이벤트 push 방식으로의 변화 함수형 프로그램은 Side Effect가 적다.콜백이나 옵저버 패턴이 스레드에 안전하지 않은 이유는 같은 자원에 여러 스레드가 경쟁 조건에 빠지게 되었을 때 예측이 할 수 없는 잘못된 결과가 나온다.함수형 프로그램은 Side Effect 가 없는 환경을 지향하기 때문에 멀티스레드 환경에서도 안전하다. RXJava 는 Nexflex의 기술 블로그에서 처음 소개되었다.만든이유* 동시성을 적극적으로 끌어안을 필요가 있다.* 자바 Future를 조합하기 어렵다는 점을 해결해야 한다... 더보기