1. JVM이란 무엇인가 2. 바이트코드란 무엇인가 3. JIT 컴파일러란 무엇이며 어떻게 동작하는지 4. JVM 구성 요소 5. JDK와 JRE의 차이 6. 프리미티브 타입 종류와 값의 범위 그리고 기본 값 7. 프리미티브 타입과 레퍼런스 타입 8. 1차 및 2차 배열 선언시 자바에선 어떤일이 벌어지는지(영역, 포인터, 주소 등) 1주차의 1~5 내용은 이전 블로그에 존재한다. https://abbiddo.tistory.com/86 Te JAVA - 1 1. JVM이란 무엇인가 2. 바이트코드란 무엇인가 3. JIT 컴파일러란 무엇이며 어떻게 동작하는지 4. JVM 구성 요소 5. JDK와 JRE의 차이 6. 프리미티브 타입 종류와 값의 범위 그리고 기본 값 7. 프리미티 abbiddo.tistory...
분류 전체보기
https://hanghaeplus-coyukdae.oopy.io/ 항해 플러스: 제1회 코육대 이번 추석, 굳어버린 코딩 근육을 깨울 코딩 육상 대회가 왔다! hanghaeplus-coyukdae.oopy.io 항해에서 진행하는 코육대에 참가했다. 세뱃돈 계산기, 행맨 게임, 송편 터뜨리기, 테트리스, 총알 피하기, 자유 종목 6가지가 있었고 행맨 게임을 선택했다. 행맨 게임은 8가지 미션과 4가지 제약사항이 존재했다. 1. 가족들이 함께 볼 수 있도록 프론트도 구현해서 배포하세요. 2. 문제를 선택할 수 있도록 영어 단어를 랜덤으로 3개 띄워주세요. 3. 선택한 문제의 단어를 글자 단위로 숨깁니다. (e.g., "apple" -> "_ _ _ _ _") 4. 화면에 26개 알파벳을 띄워주세요. 5. ..
https://www.acmicpc.net/problem/2036 2036번: 수열의 점수 n개의 정수로 이루어진 수열이 있다. 이 수열에서 한 정수를 제거하거나, 또는 두 정수를 제거할 수 있다. 한 정수를 제거하는 경우에는 그 정수가 점수가 되고, 두 정수를 제거하는 경우에는 두 www.acmicpc.net 그리디 문제다. 주어진 수열에서 최대 합을 구하는 문제다. 합을 할 수 있는 방법은 1. 한 개의 수 더하기 2. 두 수의 곱 더하기 정렬을 해서 양수와 음수를 따로 계산하는 방법을 떠올렸다. 이와 비슷한 문제를 푼 적이 있는데 https://www.acmicpc.net/problem/1461 이 문제다. 수열을 입력 받으면서 음수의 개수를 세어두고, 수열을 정렬한다. 주의해야 할 점은 1. 큰 ..
1. JVM이란 무엇인가 2. 바이트코드란 무엇인가 3. JIT 컴파일러란 무엇이며 어떻게 동작하는지 4. JVM 구성 요소 5. JDK와 JRE의 차이 6. 프리미티브 타입 종류와 값의 범위 그리고 기본 값 7. 프리미티브 타입과 레퍼런스 타입 8. 1차 및 2차 배열 선언시 자바에선 어떤일이 벌어지는지(영역, 포인터, 주소 등) 1. JVM JVM : Java Virtual Machine, 자바 가상 머신, 자바를 실행하기 위한 가상 기계 (가상 기계 : 소프트웨어로 구현된 하드웨어) Java와 OS 사이에서 중개자 역할로, Java가 OS에 구애 받지 않고 독립적으로 작동할 수 있도록 한다. 자바 바이트 코드를 실행할 수 있는 환경을 제공한다. C/C++ 언어에서는 컴파일 플랫폼과 타겟 플랫폼이 다..
https://www.acmicpc.net/problem/2665 2665번: 미로만들기 첫 줄에는 한 줄에 들어가는 방의 수 n(1 ≤ n ≤ 50)이 주어지고, 다음 n개의 줄의 각 줄마다 0과 1이 이루어진 길이가 n인 수열이 주어진다. 0은 검은 방, 1은 흰 방을 나타낸다. www.acmicpc.net BFS문제다. 일반 미로 문제에서 벽(검은방)을 부수고 갈 수 있는 미로로 생각하면 되는 문제다. 문제에서 구해야하는 건 미로의 최단 경로가 아닌 최대한 벽을 적게 만나는 경로를 찾는 것이다. 방문 배열을 이용해서 문제를 해결했다. 방문 배열에 지나간 검은 방의 개수를 저장하고 현재 이동하려는 방 까지의 검은 방의 개수가 이전에 방문했을 때의 검은 방의 개수보다 작다면 방문한다. 이 때 간과했던 ..
MVC 모델 M (Model) : 데이터와 비즈니스 로직을 관리한다. - 데이터의 상태가 변경되면 뷰 혹은 컨트롤러에게 알린다. - 리스트 항목이 포함해야 하는 데이터와 이미 졵재하는 리스트 항목이 무엇인지 지정한다. V (View) : 레이아웃과 화면을 처리한다. - 항목이 사용자에게 보여지는 방식을 정의한다. - 표시할 데이터를 모델로부터 받는다. C (Controller) : 명령을 모델과 뷰 부분으로 라우팅한다. - 클라이언트로부터의 입력에 대한 응담이다. - 입력이 컨트롤러에게 전송되고, 모델을 적당하게 처리한 다음, 업데이트 된 데이터를 뷰로 전송한다. 웹에 적용시 Controller는 사용자가 요청한 웹 페이지를 서비스하기 위해 모델 호출 Model은 데이터베이스나 파일과 같은 데이터 소스를..