반응형

Programming 164

[Git] 브랜치(Branch) 생성 및 사용법

Branch Git 저장소에서 branches를 사용하는 이유는 작업을 분리(isolate)하기 위해서 입니다. 우리가 최초에 생성하는 master 외에도 다른 branch를 생성이 가능합니다. 작업을 분리해서 작업을 한 뒤에 main branch에 merge를 하면 됩니다. branch가 어떻게 동작하는지에 대해서 더 자세하게 알고싶으면 아래 사이트를 참고하시면 됩니다. [참고] guides.github.com/overviews/flow 브랜치(Branch) 생성하기 git status 를 통해 현재 내가 어떤 branch에서 작업을 하는지 볼 수 있습니다. git branch 을 통해 새로운 branch를 생성이 가능합니다. git checkout 을 통해 브랜치를 이동할 수 있습니다. 새로운 파일 ..

Programming/기타 2016.06.20

[Git] Fork를 이용해 외부 git 프로젝트 가져오기

Forks And Clones Forks란? Open source projects에 참여하고 싶은가? 그렇다면 forks에 대해서 알아야 합니다. fork란 다른 원격 저장소에 있는 히스토리를 그대로 나의 github 원격 저장소에 복사하는 것을 말합니다. 다른 사람의 프로젝트에 바로 push를 할 수 없기 때문에 일단 나만의 프로젝트 버전을 관리하기 위해 다른 사람의 원격 저장소에서 프로젝트를 가져옵니다. 그런다음에 내가 contributing을 원래 원격 저장소로 요청을 합니다. 한마디로 외부 프로젝트를 진행할때 나만의 버전을 관리하기 위해서 fork를 해서 외부 프로젝트에 반영한다고 생각하시면 됩니다. fork를 했다면 나의 github에 있는 저장소에서 로컬로 clone을 합니다. 그럼이제 프로젝..

Programming/기타 2016.06.17

[Git] Github 원격 저장소(Remote Repository) 연결 및 반영(Push)하기

Remote Control 로컬(local)의 저장소(repository)를 원격(remote)저장소에 연결하고, 로컬 저장소에 변경된 내용을 원격 저장소에 반영(push)하는 방법에 대해서 설명을 하겠습니다.원격(Remote)? 로컬에서 혼자 커밋하면서 사용하면, 내 피시에만 나의 커밋(commit) 기록이 남습니다. 원격저장소에 로컬에 있는 프로젝트를 반영하기 위해 push를 합니다. push를 함으로써 원격저장소와 로컬저장소에 저장되어 있는 코드 및 기록이 일치(sync)가 됩니다. 이제 함께 프로젝트하는 사람들은 나의 프로젝트를 pulling(가져가기)하면, 프로젝트를 함께하는 모두에게 나의 로컬에 있는 프로젝트를 복사해서 자신의 프로젝트로 옮길 필요가 없습니다. Create a remote re..

Programming/기타 2016.06.14

[Java] 인터페이스와 추상클래스 차이

인터페이스(Interface)와 추상클래스(Abstract)의 차이 우리 면접에서도 자주 등장하는 질문중에 하나가 인터페이스와 추상클래스의 차이가 무엇인가요? 라고 하면 음.. 나는 분명 interface와 abstract를 써보긴 했는데, 이 두개의 차이를 생각하지 않고 사용을 했습니다. 거의 대부분 interface의 키워드를 사용해서 구현을 했습니다. 그렇다면 인터페이스와 추상클래스의 차이가 무엇일까요?우리는 학교다닐때나 책으로 접할때는 항상 외우기 시작합니다. 어떻게? 아래 처럼...추상클래스는 부분적으로 완성된 설계도, 인터페이스는 밑그림만 그려져 있는 기본 설계도추상클래스는 단일 상속만 가능(extends), 인터페이스는 다중 상속이 가능 (implements)추상클래스란 추상 메소드를 한개 ..

Programming/Java 2016.06.11

[Git] 설치, 저장소 생성, 파일추가, 커밋하기

Git설치, 설정하는 방법과 저장소(Repository) 생성, 파일 저장소에 추가 및 커밋(commit)하는 방법 들어가며 Git은 Linus Torvalds라는 Linux operation system을 구현한 분이 처음에 코드 관리를 위해 만든 툴입니다. linux가 오픈소스인건 누구나 아실텐데요. 이처럼 오픈 소스를 개발하기 위해서는 한 명이 아닌 여러명이 개발을 해야합니다. 여러명이 한 프로젝트를 개발한다? 협업을 하는 측면에서 바라본다면, 정말 어려운 문제입니다. 내가 수정한 부분이 다른 사람의 수정한 부분과 동일하면 충돌이 일어날 것이고, 버전 별로 관리를 하지 않는다면 언제까지 .bak파일을 만들거나 복사 붙여넣기를 할 수 없는 문제입니다. 이 처럼 한 프로젝트를 여러명이 동시에 개발할때 ..

Programming/기타 2016.06.03

[Python] Enum 사용하는 방법 및 예제코드

들어가며 파이썬에서는 다른언어와는 다르게 기본적으로 Enum을 제공하지 않습니다. 하지만 역시 파이썬은 모듈이 많은게 장점이기 때문에 enum모듈을 설치하고 사용이 가능합니다. 설치하는 방법과 예제 코드에 대해서 설명해드리겠습니다. 설치하기 sudo pip install enum 예제코드 # Color Enum 정의하기 class Color(Enum): RED = 1 GREEN = 2 BLUE = 3 # 사용하기 Color.RED # 1 Color.GREEN # 2 Color.BLUE # 3

Programming/Python 2016.05.31

[Git] git 시작하기 및 ssh-key 등록하는 방법

Github 시작하기 및 ssh-key 등록하는 방법 들어가며 Git은 코드 버전 관리를 해주는데 중요한 Software라고 할 수 있습니다. 우리가 흔히 학생때 조별 과제를 하게 되면 작은 프로젝트를 자주 진행하게 됩니다. 그 때 바로 등장한 멍청하지만 어떻게 보면 작은 프로젝트에 현명한... 방법중에 하나인 hand-merge 그냥 손머지죠. 이렇게 해왔는데, 프로젝트의 규모가 커지고, 기간이 길어지다 보면 자연스럽게 손머지는 한계에 부딪히게 됩니다. 저는 git을 코드관리도 중요하지만 공유하고 협업이라는 모두가 함께 만들어가는 opensource의 중요성에 대해서 더 중요하게 생각합니다. 소프트웨어 개발자라면 github 아이디 하나 정도는 갖고 있어야 하겠죠. 요즘에는 오픈소스 활동이나 stack..

Programming/기타 2016.05.30

[jQuery] JSON APIs와 Ajax를 이용해 데이터 가져오기

JSON APIs와 Ajax를 이용해 데이터 로딩 및 완료 된 데이터를 처리해 HTML 화면에 출력하는 예제 들어가며 만약 날씨 정보와 같이 수시로 변하는 데이터를 HTML을 통해 화면에 출력을 해주고 싶다면 어떻게 해야할까요? 이처럼 고정값이 아닌, 항상 변하는 값을 HTML을 통해 출력해야 하기 때문에 로컬 파일이나, 클라우드에 있는 파일에서 값을 가져와 HTML페이지에 출력을 해줘야 합니다. 그렇다면 데이터를 어떻게 어디서 어떤 형태로 가져오는지 알아보겠습니다. APIs(Application Programming Interfaces)는 애플리케이션 사이에 소통하는 인터페이스를 말합니다. 우리가 흔히 말하는 Google APIs도 같은 애플리케이션 간에 소통하는 인터페이스를 제공합니다. 우리가 특정 ..

[Python] collections를 이용한 Dictionary 정렬하기

collections 모듈을 이용해 dict 정렬하기 파이썬에서 자주 사용하는 Dictionary를 정렬하는 방법은 operator를 사용하는 방법도 있습니다. [바로가기] 이번에는 기본 모듈인 collections를 이용해서 dict 정렬하는 예제입니다. 소스코드 {2:3, 1:89, 4:5, 3:0} --> {1:89, 2:3, 3:0, 4:5} {2:3, 1:89, 4:5, 3:0}의 dict형태의 데이터를 저장하고, collections을 import 합니다. OrderedDict을 통해 정렬을 하는데, 이때 안에는 sorted(dict.items())를 넘겨주시면 됩니다. 아무래도 key와 value가 모두 정렬되니. 간편하게 사용이 가능 합니다. dict = {2:3, 1:89, 4:5, 3:..

Programming/Python 2016.05.25

[Java] Set 정렬하는 방법 :: HashSet을 List로 변환

[Java] Set 정렬하는 방법 :: HashSet을 List로 변환 들어가며 Set은 중복없이 값을 넣기 위한 객체입니다. List로도 add할때 값이 있는지 확인하고, 없으면 삽입, 있으면 패스하는 간단한 로직으로도 Set을 구현 할 수 있습니다. 이러한 Set을 정렬하는 방법은 여러가지 방법이 있지만 제가 주로 사용하는 방법에 대해서 설명해드릴려고 합니다. 예제코드 fruits의 Set의 객체가 있고, banana, apple, peach의 중복없는 값을 삽입합니다. 이렇게 삽입한 set을 정렬하기 위해서는 fruits의 객체를 List로 변환을 해야합니다. 변환하는 방법은 간단합니다. ArrayList를 만드는 방식과 동일하고 생성자에 fruits를 넣어주면 리스트 형태로 변환이 됩니다. 리스트..

Programming/Java 2016.05.25
반응형