코딩
-
git 명령어: git branch소프트웨어 개발 툴 2019. 2. 1. 14:53
지난번 포스트에서 git cherry-pick에 대하여 설명했다. cherry-pick에 대한 포스트를 작성 한 후 곰곰히 생각해보니 git에 대해 조금 더 이야기 하는 것도 나쁘지않을 것 같아 git기본부터 포스팅 해 보려고 한다. 어쩐지 순서가 뒤죽박죽이지만 개의치 않기로 하자. 오늘은 브랜치에 대해 설명 해 보도록 하겠다. 혹시 깃허브를 이용하고 깃허브 master branch, 깃허브 merge, 깃허브 checkout, 깃허브 branch 삭제등등 깃허브와 관련되어 모르는게 있어더라도 이 블로그를 통해서 배울 수 있다. 깃허브도 자체로는 깃을 사용하기 때문이다. 이 포스트에서도 깃허브 리파지토리를 사용한다. 들어가기 전에실습을 할 예정이라면 깃 리파지토리를 미리 준비하라. 만약에 실습은 하고 싶..
-
git 명령어 : git cherry-pick소프트웨어 개발 툴 2019. 1. 30. 16:31
git을 이용해 코드 관리를 하다보면 커밋을 다른 브랜치에 잘못 하거나, 요구사항이 바뀌어 필요 없는 커밋이 생기거나, 코드 의존성(dependency) 때문에 다른 사람의 커밋 중 일부를 가져와야 하는 경우가 종종 생긴다. 그런 경우 git rebase나 git cherry-pick을 많이 사용하는데 오늘은 그 중에서 cherry-pick에 대해 설명 할 것이다. git cherry-pickgit cherry-pick이란 다른 브랜치에 있는 커밋을 선택적으로 내 브랜치에 적용시킬 때 사용하는 명령어이다. 명령어는 다음과 같다.git cherry-pick ...예를 들어 설명 하기 위해 다음의 그림을 보자.위 처럼 현재 당신의 코드는 X 브랜치에 있고 (git checkout X)라는 뜻 당신은 브랜치 ..
-
JMap, JHat으로 Heap Dump 분석소프트웨어 개발 툴 2019. 1. 27. 13:47
프로덕션에서 돌아가는 프로그램이라면 그것이 어떤 종류이건간에 Out of Memory 또는 가비지 컬렉터(GC) Out of Memory의 가능성을 염두 해 두어야 한다. 어떤 프로그램이 테스팅 또는 스테이징 환경에서 문제 없이 돌아간다 하더라도 프로덕션에서는 다른 행동을 보일 수 있다. 엔지니어들이 제대로 테스팅을 하지 않아서가 아니라 프로덕션의 로드(load)가 다르고 프로덕션에서 사용하는 데이터가 테스팅 환경의 데이터와 다르고, 또 유저들이 꼭 엔지니어들이 의도한 대로 프로그램을 사용하지 않기 때문이다. 자바는 가비지 컬렉터(Garbage Collector) 덕분에 엔지니어가 일일히 메모리 관리를 하지 않아도 되지만, 그렇다고 Out of Memeory에러에서 자유롭다고 할 수 없다. 이렇게 프로그..
-
소프트웨어 엔지니어가 되는 법소프트웨어 엔지니어링 2019. 1. 22. 12:57
내가 컴퓨터 공학을 전공하기로 했을 때 쯤 주변에서 컴퓨터 공학은 더 이상 발전 할 게 없고 이미 레드 오션이라는 말을 들었었다. 그래서 대학교에 진학 할 때 쯤 많은 걱정을 안고 있었다. 그러다 2학년 때 쯤 각종 클라우드 서비스와 인공지능이 붐을 일으켰고, 소프트웨어 엔지니어 수요는 기하 급수적으로 늘어났다. 그 붐에 힘입어 나도 어떻게 저떻게 취업을 했고 지금은 미국의 대기업 중 하나에서 소프트웨어 엔지니어로 일 하고 있다. 소프트웨어 업계의 전망과 급여에 매혹돼 요즘 많은 사람들이 소프트웨어 엔지니어로 전향하려는 경우가 많아지고, 따라서 나 같은 소프트웨어 업계 종사자들이 진로와 전망에 대해 많은 질문을 받곤 한다. 어디서부터 어떻게 시작해야되는지. 무슨 언어를 배워야 하는지, 어떤 자격증을 따야..