2022.09.07 ~ 2022.12.16 까지 약 3개월동안 진행한 "메이플스토리 월드 X 슈퍼해커톤 2022" 프로젝트에 대해서 회고를 작성하고자 한다. 어릴 때부터 '플래시게임' 등을 만들고 친구나 가족에게 소개하며 반응을 보는 것을 즐겼었다. 이 때문인지 개발을 공부해오면서 언젠가 게임개발을 한번 해보고 싶다는 생각을 항상 하기도 하였다. 개발관련하여 더 공부할 수 있고 경험하면 좋을 프로젝트를 찾아보다가 '멋쟁이사자처럼 (코드라이언)과 넥슨 코리아'에서 주최하는 '메이플스토리 월드 X 슈퍼해커톤 2022' 프로젝트를 알 수 있게되었다. 고민하다가 개발 + 기획 트랙으로 지원하였고 경쟁률을 뚫고 합격할 수 있었다. 대학생 + 전공 관련 없이 자기소개서를 기반으로 선발하였기때문에 처음 디스코드 채널..
4주차 회고가 작성이 많이 늦어졌다. 1~3주차까지 많은 어려움이 있었지만 해결되는 과정에 큰 배움을 느꼈다면, 4주차의 과제는 모든 어려움의 집합체였다. 막막하기도 하였고, 다리 건너는 과정을 print문으로 보여주기도 해야해서 기능으로 구현할 것이 한 둘이 아니었다. 미뤄놓고 가끔 찾아보며 코드를 리팩토링해보기도 하였지만 프리코스를 진행할 당시의 느낀점과 그 코드를 토대로 회고를 하는게 맞다고 생각되어 작성하게 되었다. 4주차에서는 객체지향설계를 지향하는만큼 게임을 관리하는 클래스와, 각 클래스에서 기능적으로 원활한 코드를 작성하는 것이 우선적인 목표였다. 1) 기능 요구 사항 2) 프로그래밍 요구 사항 3) 과제 진행 요구 사항 기준으로 과제를 수행하였다. 기능 요구 사항 입출력 요구 사항 프로그래..
이번에는 전역변수를 만들었을때의 T 메모리의 구조 변화이다. 전역변수는 static 예약어를 통해 접근할 수 있는데, 이 값은 전역변수 즉 클래스 안에서 어떠한 메서드에서든지 접근이 가능하다는 의미이다. public class test_static { static int share; public static void main(String[] args) { share = 55; int k = fun(5, 7); System.out.println(share); } private static int fun(int m, int p) { share = m + p; return m - p; } } 여기서 share = m + p; 부분에 breakpoint를 걸고 Debug해보았다. 먼저 Window -> Show..
스프링을 공부하면서 STS (Spring Tool Suite)라는 것을 알게 되었다. 스프링 프레임워크 (Spring Framework)를 공부하면서 스프링 프레임워크는 Java Web Application 개발을 위한 경량 프레임워크라고 알 수 있었다. 자바를 이용해 Web을 개발하기 위한 도구인 것이다. 그만큼 스프링 프레임워크는 방대하고, 복잡하기 때문에, 사용자가 편하게 사용할 수 있도록 도와주는 것이 "스프링 부트 (Spring Boot)" 인 것이다. 자바의 IDE라면 IntelliJ 말고도 이클립스가 대표적일 것이다. 이클립스에서는 STS(Spring Tool Suite)를 제공하는데, 이는 스프링 개발에 최적화된 이클립스이다. 이클립스에 스프링 프레임워크 플러그인 (Spring Framew..
1. 등차수열 혹은 등비수열이 배열로 주어질 때 2. 주어진 배열의 마지막 원소 다음에 올 숫자를 return >> Point - 배열의 끝원소 접근 = array[array.length - 1] 등차수열은 증가값이 +로 이루어진 수열이다. 등비수열은 증가값이 *으로 이루어진 수열이다. 결국 마지막 원소에서 이어나가 그 다음 원소를 맞추는 문제이다. 규칙을 먼저 찾는 것이 중요했다. 등차수열인지 등비수열인지부터 알기 위해서 원소의 값들을 비교해야했다. int answer = 0; int diff = 0; if((common[1] - common[0]) == (common[2] - common[1])){ diff = common[1] - common[0]; answer = common[common.leng..
최빈값은 주어진 값 중에서 가장 자주 나오는 값을 의미합니다. 정수 배열 array가 매개변수로 주어질 때, 최빈값을 return 하도록 solution 함수를 완성해보세요. 최빈값이 여러 개면 -1을 return 합니다. Try 1) 테스트케이스는 통과했지만 런타임 에러가 발생하여 전체 케이스를 통과하진 못하였다. public static int solution(int[] array) { int answer = 0; int length = array.length; int[] index = new int[length + 1]; int temp = 0; int max = Integer.MIN_VALUE; for(int i = 0; i < length; i++) { index[array[i]]++; } fo..