반응형 분류 전체보기350 변수와 리터럴 변수 변수란, 단 하나의 값을 저장할 수 있는 메모리 공간이다. 변수를 선언하면, 메모리의 빈 공간에 '변수타입'에 알맞은 크기의 저장공간이 확보되고, 앞으로 이 저장공간은 '변수이름'을 통해 활용할 수 있다. 변수를 선언하면 메모리는 여러 프로그램이 공유하는 자원이므로 다른 프로그램에 의해 저장된 알 수 없는 쓰레기 값이 남아있을 수도 있다. 그래서 변수는 사용되기 전 적절한 값으로 초기화 하는 것이 좋다. 지역변수는 사용하기 전에 초기화를 반드시 하지만 클래스 변수와 인스턴스 변수는 초기화를 생략할 수 있다. 변수를 선언할 때는 저장하려는 값의 특성을 고려하여 가장 알맞은 자료형을 변수의 타입으로 선택한다. 자료형은 크게 '기본형' 변수 8가지와 그 외 '참조형' 변수로 나눈다. 그러면 기본형과 참조.. 2022. 2. 24. 영속성 관리 2023. 02.07 09:30 복습 시작 JPA 기능 JPA가 제공하는 기능은 크게 두 가지가 있다. 엔티티와 테이블을 매핑하는 설계 부분 매핑한 엔티티를 실제 사용하는 부분 매핑한 엔티티를 엔티티 매니저를 통해 어떻게 사용하는지 알아보자. 먼저 엔티티 매니저란 무엇인가? 엔티티 매니저는 엔티티를 저장하고, 수정하고, 삭제하고, 조회하는 등 엔티티와 관련된 모든 일을 처리한다. 개발자의 입장에서 엔티티 매니저는 엔티티를 저장하는 가상의 데이터베이스로 생각하면 된다. 일반적으로 데이터베이스를 하나만 사용하는 애플리케이션은 일반적으로 엔티티 매니저 팩토리를 하나만 생성한다. 엔티티 매니저 팩토리를 생성하면 필요할 때마다 엔티티 매니저를 생성하면 된다. 엔티티 매니저 팩토리는 엔티티 매니저를 만드는 공장인데.. 2022. 2. 23. Compiler와 Interpreter 차이 이번에는 Compliler와 Interpreter 차이에 대해 알아보겠습니다. 보통 프로그래머들은 프로그램을 작동시키는 소스코드를 작성할 때 고급 프로그래밍 언어로 작성한다. 고급 프로그래밍 언어는 사람의 입장에서 쉽게 이해 가능한 프로그래밍 언어다. 그러나 컴퓨터는 고급 프로그래밍 언어를 이해할 수 없다. 컴퓨터는 오직 0과 1로 구성된 바이너리 코드만 이해하는데 이를 기계어라고 이해한다. 고급 프로그래밍 언어로 작성된 소스코드를 기계어로 바꾸기 위해서 사용되는 것이 Compiler와 Interpreter이다. Compiler과 Interpreter의 큰 역할은 같지만 작동 방식에서 차이가 있다. 이제 그 차이에 대해 알아보겠다. 참고 원시 코드 - 고급 프로그래밍 언어로 작성된 소스 코드, 프로그래머.. 2022. 2. 23. JPA 2023. 02.07 09:00 복습 시작 JPA란 무엇인가? JPA는 자바 진영의 ORM 기술 표준이다. 그럼 ORM이란 무엇인가? ORM은 Object-Relational Mapping의 줄임말이다. 이름 그대로 객체와 관계형 데이터베이스를 매핑하는 것이다. 즉 SQL을 직접 짜지 않고 자바 코드로 편하게 객체를 ORM 프레임워크에 저장하면 데이터베이스에 저장할 수 있다. 예전에 Express와 Prisma를 다루어본 적이 있어서 쉽게 이해가 갔다. JPA에 대해 간단히 알아보았다. 그럼 더 중요한 궁금증이 남아있다. 우리는 왜 JPA, 즉 ORM을 사용할까? 웹 서비스를 운영하려면 고객 데이터도 저장하고 서비스 데이터도 저장해야 하고 또 이 데이터들을 사용해야 한다. 그러면 데이터를 저장하고 꺼내오.. 2022. 2. 22. 2022.02.22 클린 코드 - 3장 함수 TIL (Today I Learned) 2022.02.22 오늘 읽은 범위 3장. 함수 책에서 기억하고 싶은 내용을 써보세요. 함수를 만드는 첫째 규칙은 '작게!'다. 함수를 만드는 둘째 규칙은 '더 작게!'다. (p.43) if문 /else 문 /while 문 등에 들어가는 블록은 한 줄이어야 한다는 의미. 대개 거기서 함수를 호출(p.44) 코드로 다시 한번 상기하자. //모든 코드가 아닌 if문으로만 확인. //올바르지 못한 버전 if(isTestPage){ WikiPage testPage=pageData.getWikiPage(); StringBuffer newPageContent = new StringBuffer(); //이렇게 코드가 if문에서 계속 이어진다. } //올바른 버전 if(isTes.. 2022. 2. 22. 마구간 정하기(결정알고리즘) 문제를 풀어보려고 딱 링크에 들어간 순간...!!!! 가장 가까운 두 말의 거리가 최대가 되는 그 최댓값을 출력...??? 독해가 안돼서 엄청나게 헤맸다.. @_@ 결국 해설을 좀 보고 이해...! 개인적으로 이번 문제는 코드보다 독해가 더 어려웠다는 얘기가 ㅎㅎ 잡답은 멈추고 이제 전체 코드를 확인해보겠다! import java.io.*; import java.util.Arrays; public class Unit6 { public static int count(int[] arr, int dist){ int cnt=1;//최소 말 한마리를 배치 int ep=arr[0];//제일 작은 왼쪽 좌표에 배치 for(int i=0;i=dist){ cnt++;//말의 개수를 증가 ep=arr[i];//다음에 비교.. 2022. 2. 21. 이전 1 ··· 43 44 45 46 47 48 49 ··· 59 다음 반응형