moonscode 236

[Web] HTTP & REST에 대한 고민

REST REST는 Client에서 Server에 데이터를 요청할 때 활용하는 인터페이스와 같습니다. Server가 얼마나 REST에 가까운 API Design을 했느냐에 따라 Client 개발자는 예상가는 데이터 처리를 할 수 있습니다. 개발자들과 협업할 때 통일된 약속은 매우 중요합니다. 만약 통일된 약속이 없다면 명세서 확인으로 부족하여 어떤 데이터가 반환되는지 소스코드를 일일이 확인해야하는 불상사가 발생할 수도 있죠. 그리고 REST 설계방식은 배우기도 그리 어렵지 않습니다. 이런 이유로 예상가는 WEB API Design을 하기 위해 REST API를 강조하는 것이죠. ( 하지만 약속이 중요할 뿐 반드시 REST 설계형식을 따라야 한다는 것은 아닙니다. GraphQL과 같은 방식도 있죠. ) H..

DevOps/Web 2019.10.18

[Git] 명령어 빠르게찾기

Basic git --version git --version git init git init git clone git clone git clone http:// git status git status git add git add -i 대화형 모드가 시작되며 파일의 일부분만 스테이징이 가능 -p 대화형 모드없이 바로 패치 모드 사용 git add . git add src git commit git commit -m "" git commit -m "Which one best naver or kakao?" git commit -C HEAD -a --amend 지정한 커밋의 로그 메시지를 다시 사용하여 기존 커밋을 수정 -c 사용시 기존 메시지를 수정할 수 있는 편집기 실행 git diff 스테이지영역과 현재 ..

DevOps/Git 2019.10.15

QuickSearch // Java // FileSystem

Java IO는 파일의 속성 정보를 읽기 위해 File 제공 Java NIO는 다양한 클래스와 인터페이스 제공 - java.nio.file, java.niofile.attribute File Java IO Path java.nio.file.Path Interface Path path = Paths.get(String first, String... more); Path path = Paths.get(URI uri); get() compareTo() - 경로가 동일하면 0, 상위 경로면 음수, 하위 경로면 양수, 음수와 양수 값의 차이나는 문자열 수 int compareTo(Path other) getFileName() - 부모 경로를 제외한 파일 또는 디렉토리 이름만 가진 Path 반환 Path getFi..

Java/Java 개념 2019.10.14

QuickSearch // Java // Collection

Collection 객체를 효율적으로 관리하기 위한 자바의 자료구조 모음 List 순서 유지 중복 가능 ArrayList 내부 저장 구조에 Array를 사용하는 List 저장용량이 초과하면 자동으로 저장용량을 늘림 List list = new ArrayList(); List list = new ArrayList(30); Vector ArrayList와 동일한 내주 저장 구조를 가짐 ArrayList와 다른 점은 동기화(Synchronized)된 메소드를 가짐으로 ThreadSafety 하다는 것 Syncronized & ThreadSafety? List list = new Vector(); List list = new Vector(30); LinkedList 다음 객체의 주소를 참조하여 체인처럼 관리하는..

Java/Java 개념 2019.10.14

QuickSearch // Java // Stream

Stream 람다 내부반복자 파이프라인 ( 중간처리 & 최종처리 ) 병렬처리 ( 포크조인 ) Creating from collection List list = new ArrayList(); Stream stream = list.stream(); from array String[] arr = {"soul", "music", "child"}; Stream stream = Arrays.stream(arr); from range IntStream stream = IntStream.of(1,2,3,4,5); IntStream stream = IntStream.rangeClosed(1, 100); from file // Files.lines() Path path Paths.get("../memo.txt"); Str..

Java/Java 개념 2019.10.13

[Git] cherry-pick

무엇인가 ? 다른 브런치의 일부 커밋만 반영하고 싶을 때 # git branch master next-release 예제 (single commit) 만약 master에 반영한 commit들 중에서 일부만 next-release로 반영하고 싶을때 # git checkout master # git commit -m "a" # git commit -m "b" # git log --pretty=oneline asdasdadsa a asdasdasdd b # git cheeckout next-release # git cherry-pick asdasdadsa git log -- pretty=oneline asdasdadsa a 예제 (multiple commits) git cherry-pick ^.. Cherr..

DevOps/Git 2019.06.03

[Git] stash, reset

실수로 다른 브런치에 작업을 하였다면 ? git stash ! git stash ( = git stash save ) stash 저장하기 ( + rebase 처리 ) git stash list stash 목록보기 git stash show stash_name 특정 stash 자세히 보기 git stash pop stash 적용 + 삭제 git stash apply stash 적용 실수로 다른 브런치에 작업하고 git add 처리까지 하였다면 ? git reset --soft ! git reset --soft 로컬시스템에 저장전으로 파일을 되돌립니다. git stash 위와동일 실수로 다른 브런치에 작업하고 git add 후에 git commit 까지 하였다면 ? git branch new_branch 새..

DevOps/Git 2019.06.03

[Git] Github Wiki 작성방법

Github Wiki를 사용하는 방법을 알아봅시다. #페이지사용법 [Wiki]탭으로 이동 [New Page] 오른쪽 상단 New Page 버튼을 이용해서 페이지를 추가 할 수 있습니다. #로컬편집방법 웹에서 페이지를 편집하는 일을 귀찮을 수 있습니다. Github는 Wiki에 대한 Repository를 제공하여 로컬에서 편집할 수 있습니다. [Clone this wiki locally] 오른쪽 하단 주소를 이용하여 git과 동일하게 Repository를 내려받을 수 있습니다. git init git clone or git remote add origin 아래는 Repository에서 생성된 파일목록입니다. 특수 기능을 가진 파일에 대해서는 `_` 문자를 이용하여 사용합니다. #Pages&Sidebar P..

DevOps/Git 2019.04.18