자바뿐만이 아니라 모든 프로그램이 구동되기 위해서는 프로그램 구동시에 운영체제로부터 메모리(RAM) 공간을 할당받아야 합니다. 이러한 메모리는 무제한이 아니라 한정되어 있습니다. 그렇기에 한정된 메모리를 최대한 효율적으로 사용하는 프로그램을 작성해야 하고 프로그램을 잘못 작성하게되면 프로그램이 매우 느려진다던지, 프로그램이 갑자기 꺼지는등의 각종 문제가 발생할 수 있습니다. 자바로 만들어진 프로그램은 JVM을 통해 실행되고 이 JVM은 프로그램을 동작할 때 OS로부터 메모리를 할당합니다. JVM에 대해서 좀 더 자세히 알고 싶다면 아래 글을 참고해주세요. [Java] 자바 가상머신 JVM(Java Virtual Machine) 총정리 [Java] 자바 JVM 내부 구조와 메모리 구조에 대하여 자바 메모리..
가비지 컬렉션(Garbage Collection)이란? 가비지 컬렉션은 영어로 Garbeage Collection으로 줄여서 GC라고도 부릅니다. 가비지 컬렉션은 자바의 메모리 관리 방법 중의 하나로 JVM의 Heap 영역에서 동적으로 할당했던 메모리 영역 중 필요 없게 된 메모리 영역을 주기적으로 삭제하는 프로세스를 말합니다. C나 C++에서는 이러한 가비지 컬렉션이 없어 프로그래머가 수동으로 메모리 할당과 해제를 일일이 해줘야 하는 반면 Java는 JVM에 탑재되어 있는 가비지 컬렉터가 메모리 관리를 대행해주기 때문에 개발자 입장에서 메모리 관리, 메모리 누수(Memory Leak) 문제에서 대해 완벽하게 관리하지 않아도 되어 오롯이 개발에만 집중할 수 있다는 장점이 있습니다. 가비지 컬렉션의 단점 ..
저번 포스팅에서는 JVM에 대해서 간략하게 알아보는 시간을 가졌다면 이번 포스팅에서는 JVM의 내부 구조에 대해 좀 더 자세하게 알아보도록 하겠습니다. 혹시 JVM의 정의와 왜 필요한지 궁금하시다면 아래의 글을 참고하여주세요. [Java] 자바 가상 머신 JVM(Java Virtual Machine) 총정리 [Java] 자바 가상머신 JVM(Java Virtual Machine) 총정리 JVM(Java Virtual Machine)이란? 자바 가상 머신 JVM(Java Virtual Machine)은 자바 프로그램 실행환경을 만들어 주는 소프트웨어입니다. 자바 코드를 컴파일하여 .class 바이트 코드로 만들면 이 코드가 자바 coding-factory.tistory.com 자바 가상 머신(JVM)의 동..
JVM(Java Virtual Machine)이란? 자바 가상 머신 JVM(Java Virtual Machine)은 자바 프로그램 실행환경을 만들어 주는 소프트웨어입니다. 자바 코드를 컴파일하여 .class 바이트 코드로 만들면 이 코드가 자바 가상 머신 환경에서 실행됩니다. JVM은 자바 실행 환경 JRE(Java Runtime Environment)에 포함되어 있습니다. 현재 사용하는 컴퓨터의 운영체제에 맞는 자바 실행환경 (JRE)가 설치되어 있다면 자바 가상 머신이 설치되어 있다는 뜻입니다. Java는 어떠한 플랫폼에 영향을 받지 않는다. JVM을 사용함으로써 얻는 가장 큰 이점이 무엇일까요? JVM을 사용하면 하나의 바이트 코드(.class)로 모든 플랫폼에서 동작하도록 할 수 있습니다. .cl..
자바를 처음 설치하면 Java 폴더에 아래와 같이 JDK와 JRE 가 각각 설치되는 것을 보실 수 있습니다. 그렇다면 이 JDK와 JRE의 역할은 무엇일까요? 이번 포스팅에서는 JDK, JRE 용어에 대해 정리해보도록 하겠습니다. JRE, JDK 용어정리 JRE(Java Runtime Environment)란? JRE는 자바 실행 환경(Java Runtime Environment)의 약자로 자바로 만들어진 프로그램을 실행시키는데 필요한 라이브러리들과 각종 API, 그리고 자바 가상 머신 (JVM)이 포함되어 있습니다. JRE는 자바로 "개발(쓰기)은 안되고 실행(읽기)만 된다"라고 생각해주시면 될 것 같습니다. JDK(Java Development Kit)란? JDK는 자바 개발키트(Java Develo..
Java는 항상 최신의 상태를 유지하고 있는 것이 좋지만 일단 자바가 설치되어 프로그램이 정상적으로 구동만 되면 상관없다고 생각하는 경우가 많기 때문에 대부분 업데이트를 신경 쓰지 않는 경우들이 많습니다. 오히려 매번 자바의 업데이트가 생길 때마다 아래의 사진처럼 "Java Update 사용 가능 새 버전의 Java를 설치할 준비가 되었습니다. 계속하려면 여기를 누르십시오." 라는 알림이 뜨는 것이 귀찮다고 생각하는 경우가 많죠. 이럴 때는 자바의 자동 업데이트 확인 기능을 꺼서 알림이 안 오도록 해줄 수 있습니다. 아래에서 소개드리는 2가지 방법 중 하나를 선택해서 진행하시면 됩니다. 자바 자동 업데이트 사용 하지 않기 1. 윈도우 작업표시줄의 검색창에서 제어판을 검색한 뒤 실행시킵니다. 2. 제어판에..
자바로 개발되어있는 프로그램을 실행시키기 위해서는 컴퓨터에 자바가 설치되어 있어야 합니다. 하지만 가끔 구버전의 자바를 사용하고 있어 프로그램들이 정상적으로 실행되지 않는 경우들이 있습니다. 이럴때는 자바를 수동으로 업데이트 시켜주어야 합니다. 이번 포스팅에서는 자바를 최신 버전으로 수동 업데이트 하는 방법에 대해 알아보도록 하겠습니다. 자바 최신 버전 수동 업데이트 방법 1. 작업표시줄 검색창에서 제어판을 검색한 후 제어판으로 들어갑니다. 2. 제어판에서 프로그램 아이콘을 클릭합니다. 3. Java 아이콘을 클릭하여 Java 제어판으로 들어갑니다. 4. Java 제어판의 상단 업데이트 탭을 누른 뒤 지금 업데이트 버튼을 누릅니다. 5. 설치버튼을 눌러 Java 업데이트를 시작합니다. 6. 자바 최신버전..
자바 언어로 개발하는 프로젝트에서 협업을 해야 할 상황이 있다면 개발자들끼리 JDK 버전을 맞춰주셔야 합니다. JDK 버전이 다르면 컴파일의 최적화 과정에서 서로 .class파일이 다르게 생성될 수 있고 이로 인해 같은 소스코드로 작성된 프로그램이라도 다르게 동작할 수 있기 때문입니다. ※ 자신이 사용하고 있는 Java 버전을 확인하고 싶다면 아래 글을 참고해주세요. [Java] 자바(JDK) 버전 확인 방법 (cmd 명령어) [Java] 자바(JDK) 버전 확인 방법 (cmd 명령어) 자바(Java) 언어로 하나의 프로젝트를 다수의 인원이 협업을 해야하는 상황이라면 Java jdk 버전을 맞춰주시는 것이 좋습니다. 개발자마다 jdk버전이 다르면 컴파일 과정에서 .class파일을 다르게 생 coding-..
자바(Java) 언어로 하나의 프로젝트를 다수의 인원이 협업을 해야하는 상황이라면 Java jdk 버전을 맞춰주시는 것이 좋습니다. 개발자마다 jdk버전이 다르면 컴파일 과정에서 .class파일을 다르게 생성할 수 있고 이로 인해 같은 소스코드라도 동작이 상이할 수 있기 때문입니다. 자바의 버전을 맞추기 위해서는 먼저 내 PC에 설치되어 있는 자바의 버전을 아는 것이 첫 번째 순서입니다. 이번 포스팅에서는 내 PC에 설치되어있는 자바 버전을 확인하는 방법에 대해 알아보도록 하겠습니다. 윈도우에서 자바 버전 확인 방법 (간단한 cmd 명령어) 1. 윈도우 검색창에서 cmd를 입력 후 명령 프롬프트를 실행합니다. 2. 명령 프롬프트 창에서 java -version 명령어를 입력합니다. (명령어 띄워쓰기 주의..
매달 주기적으로 빠져나가야 할 아파트 관리비와 같은 공과금들은 자동이체를 설정해두는 것이 반복적인 이체를 줄일 수 있는 방법이 됩니다. 저 같은 경우에는 카카오페이를 통해서 자동이체를 걸어두고 있는데요. 이번 포스팅에서는 카카오페이를 통해서 자동이체 설정 방법과 해제 방법을 통해서 알아보도록 하겠습니다. 카카오페이 자동이체 설정하기 1. 카카오톡에서 더보기 버튼 클릭 후 카카오 페이 버튼을 눌러 카카오페이 화면으로 들어갑니다. 2. 카카오페이 화면에서 더보기 버튼을 클릭합니다. 3. 팝업창 리스트에서 예약 송금 버튼을 클릭합니다. 4. 예약송금 화면에서 등록하기 버튼을 클릭해서 예약송금을 설정해주시면 됩니다. 카카오페이 예약 송금 수정 / 삭제하기 1. 등록된 자동이체 내역을 클릭합니다. 2. 우측 상단..
저는 친구들과 더치페이 등을 할 때 송금 수단으로 카카오페이를 자주 사용하는데요. 카카오페이를 처음 사용할 때 인증 수단으로 얼굴 인식을 지정해두었더니 오류가 많이 나더라고요. 특히 요즘 같은 코로나 시기에 마스크를 쓰게 되면 거의 인식이 안됩니다. 그래서 이번에 지문 인식으로 인식 수단을 바꾸었습니다. 이번 포스팅에서는 카카오페이에서 지문을 등록하여 사용하는 방법에 대해 포스팅해보려 합니다. 카카오페이 인식 수단으로 지문 등록 사용하기 1. 우측 아래에 있는 더보기 버튼을 클릭하고 카카오 페이 버튼을 눌러 카카오페이 화면으로 들어갑니다. 2. 상단 탭에 있는 전체 메뉴로 들어갑니다. 3. 설정 버튼을 눌러 카카오페이 설정으로 들어갑니다. 4. 카카오페이 설정에서 있는 비밀번호 메뉴를 클릭합니다. 5. ..
정규표현식을 사용하다 보면 이 문법이 맞는지 아닌지 헷갈리는 경우가 있습니다. 또 언어마다 정규표현식이 조금씩 다른 부분도 있어 테스트를 많이 해야 합니다. 개발을 할 때 자체 테스트로 확인하는 방법도 있겠지만 오늘 소개해드릴 정규표현식 테스트 사이트를 사용하면 코딩 시점에서 정규식 문법이 맞는지 쉽게 체크하실 수 있습니다. 자주 사용하는 정규표현식 정규 표현식 설명 예제 ^[0-9]*$ 숫자 1234567890 ^[a-zA-Z]*$ 영문자 abcdefg... ^[가-힣]*$ 한글 가나다라마바사... \w+@\w+\.\w+(\.\w+)? E-Mail test@naver.com ^\d{2,3}-\d{3,4}-\d{4}$ 전화번호 02-1234-1234 ^[A-Za-z0-9]{6,12}$ 휴대전화번호 010..
혼자서 개인 프로젝트를 진행하다 보면 한계에 많이 부딪칩니다. 특히 디자인 부분에서 어려움을 겪는데요. 아무것도 없는 무의 상태에서 예쁘고 세련된 결과물을 만들기란 정말 어렵습니다. 게다가 하나의 기능을 만들 때마다 그에 맞는 UI / UX, 버그, 각종 이슈 등등 고려해야 할 것들도 한두가지가 아니죠. 이럴 때 남들이 이미 잘 짜 놓은 오픈소스를 잘 활용하여 조합한다면 훨씬 적은 노력으로 완성도 높은 프로젝트를 만드실 수 있으실 겁니다. 이번 포스팅에서는 오픈소스를 쉽게 다운로드 받을 수 있는 사이트에 대해서 추천해보고자 합니다. 오픈소스를 쉽게 받을 수 있는 사이트 목록 Bootstrap (https://getbootstrap.com/) Bootstrap은 세계적으로 반응형 웹 사이트 구축할때 사용되..