본문 바로가기

분류 전체보기

(100)
자세한 Git 사용법 - 5 (branch 작업) 1. git branch 특징 가상 폴더 : 작업 폴더를 실제로 복사하는 것이 아니라, 가상 폴더를 생성. 독립적인 동작: 원본 폴더와 분리하여 독립적으로 개발 2. Branch 명령어들 $ git status : 현재 작업하는 브랜치 위치 $ git branch : 현재 브랜치 확인 $ git branch 브랜치이름 커밋ID : 커밋ID를 생략하면 HEAD기준, 생략하지 않으면 커밋 ID 기준. $ git branch -v :브랜치의 세부 내용 확인 $ git branch -r : 원격 저장소의 브랜치 목록을 확인 가능 $ git rev-parse 브랜치이름 : 브랜치의 commit 해시를 확인 할수 있음 checkout 부분들 $ git checkout 브랜치이름 : 브랜치 이동 $ git branc..
자세한 Git 사용법 - 3 커밋(commit) 1. 코드의 변화 git을 사용하면 과거의 commit 시점으로 돌아갈수 있다. 2. 새파일 생성 및 감지 a) 파일 생성 $ git init $ code index.htm Unstaged 상태의 index.htm 파일이 생성됨. b) 명령어로 등록: add 명령어 $ git add index.htm 스테이지 영역에 파일을 등록되면 파일은 tracked 상태로 변경 c) 파일 등록 취소 tracked -> untracked (--cached 옵션을 함께 사용합니다) $ git rm --cache index.htm 한번이라도 커밋을 했다면 reset 명령어를 사용. $ git reset HEAD index.htm d) 등록된 파일의 이름 변경 $ git mv 파일이름 새이름 3. 첫번째 커밋 3.1) HE..
자세한 Git 사용법 - 2 (Git 개념 잡기) 1. Git 저장소 생성 1.1 초기화 저장소를 생성하려면 먼저 초기화 작업이 필요함. $ git init : 숨겨진 영역을 추가합니다. 숨겨진 영역을 추가함으로써 깃 저장소로 변경되는 것입니다. 1.2. 숨겨진 폴더 $ ls -a : 숨겨진 파일도 같이 나타냄. 더보기 . .. .DS_Store .git 앞에 점(.)이 있으면 숨겨진 폴더를 의미함. git 저장소를 통째로 복사하고자 할 때는 숨겨진 .git 폴더 까지 같이 복사해야합니다. 2. 워킹 디렉터리 2.1 워킹 디렉터리란? 깃은 VCS(Version Control System)의 특성 때문에 저장 공간을 논리적으로 분리합니다. 작업을 하는 공간(working) 임시로 저장하는 공간(stage) 실제로 저장하여 기록하는 공간(repository..
자세한 Git 사용법 - 1 (환경설정) 소스트리 1. 간단한 기본 명령어 $ git : git 명령어 사용법 및 간단히 요약된 내용을 볼 수 있음. $ git help --all : 전체 명령어 리스트 $ git --version : 설치된 git의 버전 정보 확인 명령어를 여러개 묶어서 사용 가능. 세미콜론(;)으로 구분 $ git tag; git branch 2. 환경 설정 (a)config 명령어 git은 환경 설정을 위해 별도로 config 명령어를 제공합니다. config 명령어는 환경 설정 파일을 직접 수정하지 않고는 환경 설정을 쉽게 할 수 있게 도와줍니다. $ git config 설정값 : config 명령어를 처음 실행하면 새로운 config 파일을 생성. 이미 존재한다면 기본 파일 수정 $ git config --unset ..
LiveData LiveData LiveData는 관찰 가능한(Observable)데이터 클래스다. 데이터 바인딩의 Observable클래스나 Rxjava의 Observable과는 달리 LiveData는 lifecycle을 통해 생명주기를 인식한다. 즉 액티비티, 프래그먼트, 서비스와 컴포넌트들의 생명 주기를 따른다. LiveData는 데이터의 변경을 활성화된 관찰자를 통해 알린다. 주어진 LifecycleOwner의 생명주기가 STARTED 또는 RESUME 상태인 경우만 Observer를 활성(active) 상태로 간주한다. LifecycleOwner 인터페이스를 구현하는 객체를 매개 변수로 하는 observe() 매서드를 통해 Observer를 등록할수 있다. LifecycleOwner 구현체가 DESTROYED ..
앱 아키텍처를 위한 Jetpack 컴포넌트 Jetpack 컴포넌트 Jetpack 컴포넌트는 생산성을 높여 개발할 수 있게 돕는 라이브러리, 도구, 가이드의 모음이다. Jetpack에서 애플리케이션을 설계하는 권장 사항을 따르고, 보일러 플레이트(?)를 줄이고, 복잡한 작업을 간소화함으로써 중요한 코드에만 집중할수 있다. 더보기 보일러플레이트란? 컴퓨터 프로그래밍에서 보일러플레이트 또는 보일러플레이트 코드라고 부르는 것은 최소한의 변경으로 여러곳에서 재사용되며, 반복적으로 비슷한 형태를 띄는 코드를 말한다. Jetpack은 안드로이드 프레임워크가 아닌 androidx.* 패키지 라이브러리고 제공된다. 이는 하위 버전과 호환하기 위함이며, Android 플랫폼보다 더 자주 업데이트 된다. 그러므로 항상 최신 Jetpack 컴포넌트를 유지하는 것을 추..
안드로이드 이미지 로딩 최적화 네이버의 안드로이드 개발자 모집글을 보니 '이미지 로딩 및 최적화 경험이 있는 분' 이라는 부분이 있었다. 그래서 이미지 로딩 부분은 Glide란 라이브러리가 있다는 정도만 알았는데 뭐가 더 있는지 좀더 자세히 공부해봐야겠다. 시작하기 앞서 손실 압축과 무손실 압축의 간단한 내용정리 : 더보기 손실 압축 VS 무손실 압축 압축은 데이터 크기를 줄여서 저장공간을 더욱더 잘 활용하기 위한 기술이다. 파일을 압축할 때에는 압축 알고리즘을 사용 압축된 파일을 손상 없이 원래대로 되돌릴 수 있다면 이를 비손실 압축(Lossless Data Compression) 원래대로 복원할 수 없다면 손실 압축(Loss Data Compression)이라 한다. 우선순위 : 손실 압축 : 크기 > 품질 비손실 압축 : 크기 ..
아키텍처를 알아야 앱 개발이 보인다. (RxJava) 차례 : 1. RxJava란 2. Observable 3. RxJava 연산자 4. 스케줄러 5. 배압과 Flowable 6. Subject 1. RxJava란 ? RxJava란 ReactiveX(Reactive Extension)를 자바로 구현한 라이브러리다. RxJava는 이벤트 처리 및 비동기 처리의 구성에 최적화된 라이브러리이다. ReactiveX는 Microsoft사 주도 아래 옵서버 패턴, 이터레이터 패턴, 함수형 프로그래밍의 장점과 개념을 접목한 반응형 프로그래밍 기법을 의미한다. Observable 추상화 및 관련 상위 함수에 중점을 둔 단일 JAR로 가벼운 라이브러리. a) RxJava 설정하기 더보기 build.gradle에 추가 dependencies { implementation '..