전체 글
-
[Java] 흐름 제어문 (continue문, break문, return문)IT/개발(자바, 서블릿, 스프링 등) 2019. 9. 26. 14:54
흐름 제어문 흐름 제어문은 프로그램이 진행되는 흐름을 제어한다. 아래의 쉬운 소스코드를 조금씩 변형하여 테스트를 진행하겠다. i값이 1부터 10까지 1씩 증가하며, 5의 배수일 때에만 세개의 키워드를 하나씩 적용해보았다. (for문은 루프, int i=1, ..., int i=10은 조건식이라 칭하겠다.) @Test public void myTest(){ for (int i = 1; i
-
[Java] 자바 프로그램 실행과정(JDK / JRE / JVM)과 자바 메모리 구조의 이해IT/개발(자바, 서블릿, 스프링 등) 2019. 9. 22. 01:06
오늘은 굉장히 폭 넓은 이야기 주제를 가지고 왔다. 자바 애플리케이션 실행과정과 메모리 구조까지 설명을 하려고 한다. 평소에 굉장히 궁금해했던 부분이었는데, 드디어 공부를 하게 돼서 속이 후련하다 => 자 그럼, 자바 프로그램이 실행되는 과정의 이야기를 시작해보자! 프로그래밍을 할 때, 우리는 (Edit -> Compile -> Run) -> (Edit -> Compile -> Run) -> ... (Edit - Compile - Run) 사이클을 거친다. 나는 자바 개발자이므로 자바로 예를들어 각각의 과정을 설명하겠다. Edit 메모장에 자바 소스코드를 작성하는 것. Compile 컴파일러로 자바코드(.java)를 바이트코드(.class)로 해석하는 것. Run 바이트코드를 실행하는 것. 이러한 과정을..
-
[Design Pattern] 디자인 패턴은 무엇일까?IT/개발(자바, 서블릿, 스프링 등) 2019. 9. 20. 20:11
디자인 패턴이란 객체 지향 프로그래밍을 설계를 할 때 자주 발생하는 문제들을 피하기 위해 사용되는 패턴. 일반 프로그래머가 만나는 문제가 지구상에서 유일한 문제일 확률은 거의 없다. 이미 수많은 사람들이 부딪힌 문제다. 따라서 전문가들이 기존에 해결책을 다 마련해 놓았다. - 나무위키에서 디자인 패턴 정의 참고 - 위의 사진은 잘 알다시피 어릴 때 자주 가지고 놀던 모양자이다. 오늘 눈사람 그림을 그리고 싶다? 그럼 위의 모양자에서 작은 동그라미와 큰 동그라미를 이용해서 눈사람 그림을 완성할 수 있다! 아무리 똥손인 사람이어도 눈사람을 잘 그릴 수 있을 것이다. 마찬가지로, 프로그래밍을 할 때도 참고할 수 있는 틀이 있다면 어떨까? 개발 실력 업그레이드에 도움이 될 것이다. 또한, 당장 사용할 수 없더라..
-
기술 블로그를 시작한 이유IT/개발(자바, 서블릿, 스프링 등) 2019. 9. 2. 14:35
기술 블로그를 시작한 이유는 대충 알고 넘기는 습관을 없애기 위해서다. 비개발자 직군 동료들이 나에게 질문을 했을 때 그들에게 명확하게 설명하지 못 하고 대충 알고 있는 내 모습을 한 번, 두 번, 여러 번 바라보다가 매번 이렇게 살면 안되겠다는 생각이 문득 들었다. 남들에게 보여진다고 생각이 드니까 읽은 글을 또 읽고 또 읽으며 시간을 많이 쓰게 되지만.. 그만큼 남에게 설명할 수 있을만큼 알게 된다는 거니까. 많이 부족한 개발&글솜씨를 가졌지만 차츰차츰 블로그를 기록하려고 한다. =D
-
[Docker] Docker 개념과 실행해보기IT/개발 관련(DB, Git, Docker, Blockchain 등) 2019. 9. 2. 13:34
오늘은 도커에 대해서 정리를 해보겠다! 백문이 불여일견이라고, 빨리 실행해보고 싶어서 최소한의 개념만 잡고 바로 실행부터 해보았다. 1. 도커 개념 도커는 리눅스의 컨테이너 기술이다. 위의 이미지는 도커의 상표인데, 고래 등에 층층이 올라가 있는 것이 컨테이너! 우리가 평소에 알고있는 그 컨테이너와 같은 역할을 한다. 다만 차이가 있다면 각각의 컨테이너에는 하나의 소프트웨어 단위가 들어가서 실행된다. 예를들면, mysql이 실행되고 있는 컨테이너나 ubuntu 18.04가 실행되고 있는 컨테이너 등등. docker hub은 도커의 원격 저장소 개념이다. 나의 로컬에 mysql이 실행중인 컨테이너를 만들고싶다면, 도커헙에서 mysql 이미지를 다운로드해서 실행을 해야 한다. 혹은 내가 만든 이미지를 doc..
-
[Git] error: failed to push some refs to ... / fatal: refusing to merge unrelated histories 에러가 났을 때 해결방법IT/개발 관련(DB, Git, Docker, Blockchain 등) 2019. 9. 1. 16:03
상황 설명. 1. 깃헙에 원격 저장소 생성 후 initial commit 2. intellij에 프로젝트 생성 후 깃 로컬 저장소로 만듦. 커밋. $ git init $git commit -am "commit msg" 3. 로컬에서 작업하고 원격으로 push하기 위해 원격 저장소 추가 $ git remote add origin {내 원격 저장소 주소} 4. 로컬에 원격 저장소 추가했으니까 pull / push 할 수 있겠지 룰루랄라~~ 하며 push했지만.. 실패. $ git push origin master To {내 원격 repository 주소} ! [rejected] master -> master (non-fast-forward) error: failed to push some refs to {내..