Private 와 Public 의 차이 Private 멤버는 class 외부에서 접근할 수 없는 변수를 Public 멤버는 class 외부에서 접근할 수 있는 변수를 의미합니다. 이 말이 어떤내용을 의미하는지는 아래에서 설명드리겠습니다. Public 멤버일 때의 문제점 Car 클래스 fuel 은 Public 멤버로 선언이 되어 있습니다. 위에서도 설명드렸다시피, Public 멤버는 class 외부에서 값을 직접 바라볼 수 있다는 점입니다. 따라서 자동차의 연료는 음수가 될 수 없는데도, 음수를 직접 대입하여 설정할 수 있습니다. 클래스는 '사물' 과 '특성' 에 보다 근접한 코드를 만들기 위해 설계됩니다. 그러므로 예외에 대한 처리를 해야 할 필요가 있습니다. 왜냐하면 예외처리를 클래스 외부에서 하는 경..
분류 전체보기
프로시저란? DBMS 에서 제공하는 프로그램 SQL 를 의미합니다. DB 기능이지만 프로그램이기 때문에 간단한 문법인 IF, WHILE 등 프로그래밍 문법을 사용할 수 있고, 프로시저를 호출할 때 매개변수를 받거나 전달해 줄 수 있습니다. DB 객체로 생성할 수 있고 여러 프로그래밍 문법과 SQL 을 하나의 객체내로 묶어서 사용할 수 있습니다. 따라서 개발에서 코드의 복잡도를 줄여줄 수 있습니다. 프로시저 생성하는 방법 기본 문법 제일 기본이 되는 문법입니다. CREATE PROCEDURE 프로시저 명으로 시작하고, AS BEGIN 과 END 사이에 원하는 쿼리를 입력하는 방식입니다. 1 2 3 4 5 6 CREATE PROCEDURE Schema_Name.Procedure_Name AS BEGIN SE..
이슈 상황 OPENROWSET 을 사용하여 실행계획 XML 타입을 수집하려고 하는 상황에서 오류가 발생하였습니다. 오류내용 [ErrorCode]9514 [ErrorMessage] 분산 쿼리에서 Xml 데이터 형식을 사용할 수 없습니다. 원격 개체 'a'에 xml 열이 있습니다. 쿼리 9번째 라인을 보면 XML 타입인 query_plan 을 OPENROWSET 을 사용하여 조회하려고 하고 있습니다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 set @query = 'SELECT @@SERVERNAME AS [ServerName], DB_NAME(t.[dbid]) AS [DBName], qs.plan_handle AS [PlanHandle], CASE WHEN ob..
후기에 들어가기 앞서 제가 다니는 회사는 복지가 좋지만, 아쉬운 부분 하나 있습니다. 그건바로 의자. 의자에 돈을 투자를 안했는지 허리에 좋지는 않더라구요. 그래서 장시간 앉아 일을 하다가 보면 허리가 뻐근할때가 있었는데 우연치 않게 저에게 딱맞는 의자 허리받침쿠션을 겟하게 되어서 추천포스팅을 작성하였습니다. 겟하게 되었다고 표현했지만 내돈내산 후기입니다. 우선의자 허리받침을 했을 때, 허리가 쭉 펴진다는 느낌을 받을 수 있습니다. 그럼 지금부터 후기에 대해 작성해 보겠습니다. 씨가드 룸바 의사 허리등받이쿠션 포인트 4가지 제품명은 '씨가드 룸바'(C-Guard LUMBA) 입니다. 의사가 직접 만든 의자 허리등받이 쿠션으로 의자에 장착하면 허리가 쭉쭉 펴지게 됩니다. 등받이 쿠션 포인트 4가지 1. 인..
객체 지향 프로그램 SET, GET 메소드에서 갑자기 왠 객체 지향 프로그램이냐구요? 모든 프로그램이 그렇겠지만 외부로부터 변수값에 직접적으로 접근하는 것을 막고있습니다. 직접 접근하게 되면 무결성이 깨질 수 있기 때문입니다. 자바에서는 함수를 통해 값을 전달받고, 전달하고 방식을 권장하고 있습니다. 또한 클래스 내에서 변수는 private(캡슐화, 정보은닉)로 선언하여 외부에서 바라볼 수 없도록 해야 합니다. 아래에서 사용하는 방법과, 왜 사용을 해야하는지에 대해 알아보겠습니다. SET, GET 메소드를 사용하는 방법 클래스 내에 SET, GET 메소드를 선언합니다. SET 은 변수값을 할당하는 목적의 함수이기 때문에 인자를 받아야 하고 GET 은 변수값을 반환하는 목적이기 때문에 return 이 필요..
전 포스팅에서 클래스선언 / 클래스객체 생성 / 클래스변수 조회를 다뤄봤습니다. 클래스 변수에 값을 대입할 수 없으면 여러개의 객체에서 하나의 값만 조회할 수밖에 없습니다. 이번에는 클래스변수에 값을 대입하여 객체별로 서로 다른 변수를 사용하도록 해보려고 합니다. 클래스 변수에 값을 대입하기 위해서는, 생성한 객체에서 변수값을 입력해 주면 됩니다. 생성한 객체가 2개라면 같은 변수라고 하더라도 객체별로 다른 값을 사용할 수 있습니다. 메소드 또한 동일합니다. 클래스 내에서 선언한 함수는 객체에서 사용할 수 있습니다. 클래스 변수에 값 할당, 클래스 메소드 호출하는 코드 클래스 메소드 호출방법 1. 메소드를 호출하는 부분의 코드가 실행됩니다. 2. 메소드 내부로 흐름이 옮겨가고 메소드 내부의 코드가 실행됩..
클래스란 클래스는 프로그램을 효율적으로 작성하도록 도와주는 개념입니다. 모든 자바 소스는 클래스를 포함하고 있고, 반드시 하나 이상의 클래스가 존재해야 합니다. 클래스는 클래스가 표현하는 사물의 일반적인 요소에서 출발하는 것이 좋습니다. 예를들면 자동차의 경우 차량번호와 연료량을 항상 가지고 있어야 합니다. 이렇게 자동차의 특성과 기능들을 정리하여 하나의 클래스로 묶어서 표현할 수 있습니다. '차량 번호는 ㅇㅇㅇ입니다.' '남은 연료량은 ㅇㅇ입니다.' 1 2 3 4 5 6 7 8 9 class 자동차 { 차량번호; 남은연료량; 차량번호결정하기; 연료를 넣기; 차량번호와 남은연료 양을 표시하기 } cs 클래스 선언하기 물건의 상태 특성, 기능을 정리한 클래스를 작성하는 작업을 '클래스 선언' 이라고 합니다..
구글 크롬 버전을 업그레이드 하면서 백스페이스 키를 이용한 뒤로가기 기능을 제거하였습니다. 구글에서는 기능 제거에 대해서 아래처럼 언급을 했는데요. 사용자가 타이핑을 하다가 잘못 입력하여 백스페이스 키를 눌러 뒤로가게 되면 그동안 작성했던 기록들이 사라지기 때문에 불편함을 느낄 수 있다. 그렇게 해서 백스페이스 대신 나온 단축키가 [ Alt + 화살표() ] 앞으로가기 입니다. 이미 백스페이스에 익숙해져 있기도 하지만, 두번의 단축키를 눌러야 하는 측면에서는 불편하지 아니할 수가 없습니다. 그래서 많은 개발자(?) 사이에서 백스페이스를 뒤로가기로 적용하는 확장 프로그램을 배포하였습니다. 저희는 고맙게도 확장프로그램을 크롬에 설치만 하면 되는거죠. 백스페이스키를 뒤로가기로 적용하는 방법 1. 확장 프로그램..
EC2 프리티어란 AWS 에서 제공하는 무료로 사용가능한 EC2 인스턴스입니다. 이 프리티어는 제공되는 고정스펙으로 1년간 무료로 사용이 가능합니다. 그러나 1년이 지난다고 해서 메일이나 알람이 오는 것도 아니고, 인스턴스가 종료되는것도 아닙니다. 1년이 지난시점부터 자동으로 비용이 청구되기 시작합니다. 따라서 프리티어의 남은 기간을 확실하게 알아둘 필요가 있습니다. 프리티어 사용 가능 여부를 확인하는 방법 1. 내 결제 대시보드 - 알람 '경고 및 알람' 에서 '프리티어를 사용할 수 있습니다' 알람이 있는지 확인합니다. 만약 해당 문구가 없다면 프리티어를 다시구성하더라도 비용이 부과됩니다. (AWS 는 바보가 아니었습니다.) 프리티어 사용이 가능하다면, 아래처럼 'AWS 프리 티어를 사용할 수 있습니다..
EC2 인스턴스 인스턴스 생성은 컴퓨터 한대를 구성한다의 의미가 됩니다. 인스턴스 생성시 다양한 컴퓨터 스펙과 운영체제를 설정할 수 있는 옵션을 제공하고 있습니다. 또한 생성하면서 저장공간, 네트워크 IP 주소, 보안 등을 함께 설정할 수 있습니다. 참고로 저장공간과 고정된 네트워크IP 를 사용하기 위해서는 추가 비용이 부과될 수 있습니다. 인스턴스 생성은 아래의 단계로 진행 1. AMI 선택 2. 인스턴스 유형 선택 3. 인스턴스 구성 4. 스토리지 추가 5. 태그 추가 6. 보안 그룹 구성 7. 검토 EC2 인스턴스 생성하기 1. 리전 선택 후 인스턴스 시작 클릭 리전을 선택하는 이유는 내가 접속하는 서버가 거리상 가까이 있어야 더 빠른게 작업할 수 있기 때문입니다. 예를들면 미국과 한국 리전에 인스..