분류 전체보기 27

[Programmers] 콜라 문제

나다. 이 글이 뭐하는 글이냐면 프로그래머스라는 사이트에 있는 코딩테스트 연습 문제인 콜라 문제에 대한 풀이와 해석이다. 콜라 문제 오래전 유행했던 콜라 문제가 있습니다. 콜라 문제의 지문은 다음과 같습니다. 정답은 아무에게도 말하지 마세요. 콜라 빈 병 2개를 가져다주면 콜라 1병을 주는 마트가 있다. 빈 병 20개를 가져다주면 몇 병을 받을 수 있는가? 단, 보유 중인 빈 병이 2개 미만이면, 콜라를 받을 수 없다. 문제를 풀던 상빈이는 콜라 문제의 완벽한 해답을 찾았습니다. 상빈이가 푼 방법은 아래 그림과 같습니다. 우선 콜라 빈 병 20병을 가져가서 10병을 받습니다. 받은 10병을 모두 마신 뒤, 가져가서 5병을 받습니다. 5병 중 4병을 모두 마신 뒤 가져가서 2병을 받고, 또 2병을 모두 마..

Programmers 2023.01.28

[PC] 나이트워커 출시 / 쿠폰

나다. 이 글이 뭐하는 글이냐면 본인은 코드 짜고 있어도 모자랄 시간에 게임을 하는 병X이다. 그러나 어쩌겠는가 재미있어 보이면 해야됨. 오늘은 에이스톰에서 개발하고 넥슨이 퍼블리싱 하는 나이트워커라는 게임에 대해 소개하려 한다. 나이트워커의 전작 혹시 최강의 군단이라는 게임을 알고 있는가? 아마 나와 비슷한 세대라면 해본 적이 있을지 모르겠다. 플레이해본 결과 당시 최강의 군단이 가지고 있던 시스템을 상당수 계승한 듯 보이는데 최강의 군단은 메이플 유니온과 비슷한 시스템인 "군단 레벨"이라는 것을 가지고 있었다. 군단 레벨은 각 플레이어블 캐릭터의 레벨을 총 합산하여 유저에게 혜택 아닌 혜택을 주는 시스템 이였던 것으로 기억한다. 당시 만신전이라는 던전에 입장하기 위한 입장권과 군단 주화를 줬던 걸로 ..

게임 2023.01.26

[Spring] Spring Framework의 탄생과 기능 (下)

나다. 이 글이 뭐하는 글이냐면 [Spring] Spring Framework의 탄생과 기능 (上) 나다. 이 글이 뭐하는 글이냐면 우리는 자바를 통해 웹 프로젝트를 제작할 때 Spring이라는 프레임워크를 사용한다. 아주 오래된 시스템의 경우 스트럿츠2 라는 프레임워크를 사용하는 시스템이 no-brain-dev.tistory.com 이전 글에 이어 Spring 기능에 대해 설명하는 글임. 딱히 상편에서 하편으로 이어지는 구성은 아니기 때문에 굳이 상편으로 돌아가서 읽고 와야 할 필요는 없지만 한 번에 많이 쓰기 귀찮아서 두편으로 쪼개놨다. 상편도 궁금하면 가서 보셈. ^오^ MVC란 무엇인가. 지나가다 한 번쯤 MVC라는 말을 들어 본 적이 있는가. MVC는 (Model - View - Controll..

Spring 2023.01.26

[Spring] Spring Framework의 탄생과 기능 (上)

나다. 이 글이 뭐하는 글이냐면 우리는 자바를 통해 웹 프로젝트를 제작할 때 Spring이라는 프레임워크를 사용한다. 아주 오래된 시스템의 경우 스트럿츠2 라는 프레임워크를 사용하는 시스템이 있다고 하는데난 식견이 좁아 본 적 없음. 어쨌든 대부분 자바 진영의 경우 Spring으로 통일되어 있다 봐도 무방한 상태인데 혹자들이 "혐자정부 프레임워크"라 부르는 전자정부 프레임워크 또한 Spring을 기반으로 한다. 이번 글에서는 Spring Freamwork의 탄생 배경 기능에 대해 알아보자. BS(Before Spring) 의 시기 때는 바야흐로 2000년대 초반 Spring이 탄생하기 전 개발자들은 EJB라는 기술을 사용했다. EJB는 여러 장점을 가지고 있었으나 치명적인 단점들을 가지고 있었는데 개같이..

Spring 2023.01.23

[정보] 슬럼프, 번아웃 관리방법

나다. 이 글이 뭐하는 글이냐면 나는 요즘 번아웃에 빠져있다. 아마 애드센스 탈락 메일을 받고 나서부터 개빡친 나머지 그냥 손을 놔버린 것 같은데 애드센스 승인 메일을 받아도 크게 심경의 변화가 없는 걸로 봐서는 한 번 찾아온 번아웃이 쉽게 가지는 않는 듯하다. "그럼 번아웃으로 글 쓰면 장땡임. ㅋㅋ ㅅㄱ" 슬럼프 / 번아웃 이란 무엇인가? 기본적으로 슬럼프의 사전적 정의는 연습 효과가 올라가지 않고, 스포츠에 대한 의욕을 상실하여 성적이 저하된 시기 로 정의된다. 요즘 같은 경우 비단 스포츠에서만 사용하는 것이 아닌 일상에서도 사용하는데 주로 "번아웃"과 같이 사용된다. 번아웃 증후군 의욕적으로 일에 몰두하던 사람이 극도의 신체적, 정신적 피로감을 호소하며 무기력해지는 현상이다. 슬럼프의 경우 내 신..

Info 2023.01.23

[Adsense] 블로그 개같이 부활

나다. 이 글이 뭐하는 글이냐면 저 애듴ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ센ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ슼ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ합격함ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ 사건의 발단 때는 바야흐로 1월 5일, 시간 빌 게이츠인 나는 늘어지게 자다 일어나 메일 한 통을 받았다. 씨X 이 무슨 개X같은 시련이란 말인가. 물론 내가 글을 개떡같이 쓴 탓도 있겠지만 인간이란 존재는 무릇 개같이 아니꼬운 일이 생겼을 때외부에서 그 존X 꼬운 점을 찾기 마련이다.일종의 자기방어 기재와 같은 것이다. 나도 인간인지라 띠꺼움을 참지 못하고 "나도 안해 개X끼들아" 라는 호기로운 마음가짐으로 글을 안 써 왔다. 하지만 물욕을 버리는 것은 절간의..

Info 2023.01.21

[JPA] no entitymanager with actual transaction available for current thread

나다. 이 글이 뭐하는 글이냐면 우리는 살면서 어이없는 일들과 마주하게 된다. 그리고 대부분의 어이없는 일들은 사소한 실수에서 비롯된다. 이 글의 제목 또한 굉장히 사소한 실수에서 발생하는 개 같은 일인데 이번 글을 통해 같은 실수를 하는 사람이 적어지길 바라는 마음으로 쓴다. 왜 이 오류가 발생했냐면 우리는 어떤 코드를 완성하면 테스트를 한다. 이는 척수반사와 같은 현상인데 테스트는 무조건적으로 시행되어야만 코드에 존재하는 하자를 검증할 수 있기 때문이다. 물론 비단 테스트를 할 때뿐 아니라 어느 경우든 발생할 수 있지만 내 생각에 대부분 테스트 단계에서 어떤 것을 저장할 때 발생하게 될 텐데 이 오류는 EntityManager가 persist() 함수를 호출 받았으나 함수를 처리 할 Transacti..

JPA 2023.01.04

[Info] API란 무엇인가.

나다. 이 글이 뭐 하는 글이냐면 여러분은 "Open API"라는 말을 들어본 적이 있는가? 아마 많은 곳에서 API라는 말을 들어본 적이 있을 것이다. 그만큼 API는 대중적으로 활용되고 있으며 그 성능 또한 우수하다. 이 글에서는 API가 무엇인지와 어떤 역할을 하는지에 대해 설명한다. API란? 우리는 API라고 한다면 감을 잡기 어려워하는 경향이 있다. 그 이유를 생각해 본 결과 아마 설명이 추상적이기 때문이라는 생각에 도달했다. API란 두 애플리케이션이 서로 질문과 응답을 하기 위한 "통신 규격의 정의"를 이야기하기 때문이다. 예전 어느 글에서 아마 언급한 적이 있다. API는 중국집에 배달을 시키기 위한 메뉴판이라고. 이렇듯 API는 요청하는 쪽과 응답하는 쪽의 통신을 하기 위한 "그들만의 ..

Info 2023.01.03

[Java] HashMap이란 무엇인가.

나다. 이 글이 뭐하는 글이냐면 우리는 자료구조를 사용하며 많은 난관을 해결한다. 그 중 HashMap을 굉장히 많이 사용하게 되는데 HashMap을 가장 쉽게 이해하는 방법은 꼬리표를 붙혀 물건을 넣어놓는 하나의 "금고" 로 생각하면 아주 쉽게 이해할 수 있다. 나와 같은 세대에 학교를 다녔거나 군 복무를 했다면 휴대폰 보관함에 대해 알고 있을 확률이 높다. 휴대폰 보관함에는 각자의 이름이나 출석번호 또는 군번 등이 적혀있고 휴대폰을 해당하는 칸에 보관하게 되어있다. 다음에 해당하는 구조가 딱 위의 비유와 적절하다 생각된다. Map 휴대폰보관함 = new HashMap(); 이번 글에서는 이 휴대폰 보관함이 어떻게 만들어지고 사용되는지 알아보자. HashMap이란. HashMap은 Java의 Map 인..

Java 2023.01.01

[Java] String이란 무엇인가.

나다. 이 글이 뭐하는 글이냐면 문자는 우리가 필수적으로 사용하는 요소다. 지금 당신이 보고있는 이 글 또한 문자로 구성된 하나의 정보집합체라고 할 수 있다. 자바를 배우며 우리는 숫자만 출력하지 않고 어떤 문장 또는 문자를 표현할 때가 있다. 그런 경우 우리는 주로 String을 사용하는데 당신은 String이 어떤 방식으로 우리가 입력한 문자 또는 문자열을 저장하고 사용할 수 있게 하는지 알고있는가. 이번 글에서는 String의 개념과 작동원리에 대해 설명한다. String과 char의 차이 먼저 String은 문자열이다. 문자 여러 개 붙혀놓은거 맞음 그거 ㅇㅇ 당신은 char라는 원시타입의 문자 변수를 알고있는가. 통상 char라 함은 하나의 문자를 저장하고 사용하기위해 사용된다. public c..

Java 2022.12.31