728x90 반응형 131 데이터모델링의 3가지 요소 : 관계(Relationship)에 대한 이해 1. 관계(Relationship) 관계는 하나의 엔터티가 다른 엔터티와 상호 연관성이 있는 상태를 말한다. 단순히 관계에 대해 예를 들자면, 가게는 상품을 판매한다. 상품은 가게에서 판매된다. 가게와 상품은 판매라는 관계를 갖게 된다. 2. 관계의 분류 관계는 존재에 의한 관계와 행위에 의한 관계로 구분될 수 있으며, 이것은 관계가 어떤 목적으로 연결되었는지에 따라 분류된다. 직원은 부서에 소속된다. '소속된다'는 의미는 어떤 행위에 따라 이벤트가 발생하는 것이 아니라, 그냥 소속되어 있는 현상이라고 할 수 있다. 이런 관계가 존재에 의한 관계이다. (소속으로는 이벤트 발생 X) 고객은 상품을 주문한다. '주문한다'는 의미는 고객이 어떤 행위를 함으로써 이벤트를 발생시킨다. 주문함으로써 주문번호가 생성.. 2021. 2. 10. 데이터모델링의 3가지 요소 : 속성(Attribute)에 대한 이해 1. 속성(Attribute) 속성은 더 이상 쪼개지지 않는 최소의 데이터 단위라고 할 수 있다. 업무에 필요한 데이터이며, 의미상 더 이상 분리되지 않고, 엔터티를 설명하는 인스턴스의 구성요소가 된다. 예를 들자면 등록일시는 등록일(Date) - 등록시(Hour) - 등록분(Minute)으로 쪼개서 관리할 수 있다. 등록일시라는 하나의 데이터를 일, 시, 분으로 구분한 것이다. 직접적인 관련이 있다면 다시 합쳐서 사용이 가능할 것이다. 그러나 반대로 서로 관련이 없는 속성을 하나로 합칠 수는 없다. 이름과 주소를 합쳐 하나의 데이터인 "이름주소"로 만들면 하나의 속성이 이름과 주소라는 두가지의 의미를 갖기 때문에, 기본 속성으로 성립할 수 없다. 2. 속성의 특징 (엔터티의 특징과 흡사) 시스템을 구축.. 2021. 2. 7. 데이터모델링의 3가지 요소 : 엔터티(Entity)에 대한 이해 책에는 엔터티라고 나와있는데, 나는 이때까지 엔티티라고 불러와서 그런가 엔티티가 더 편하다... 1. 엔터티와 인스턴스 엔터티는 ERD에서 사각형으로 표현되는, 업무프로세스에 사용되는 "어떤 것"이다. 어떤 것이라고 부르는 만큼 엔터티는 학교나 학생처럼 현실 세계에서 눈에 보이는 개념일 수도 있고, 주문이나 결제처럼 눈에 보이지 않는 개념일 수도 있다. 엔터티가 인스턴스의 집합이라면, 반대로 인스턴스는 엔터티 안의 하나의 값에 해당한다. 엔터티가 테이블이라면, 인스턴스는 테이블 안 하나의 행(row)을 의미한다고 볼 수 있다. 2. 적절한 엔터티의 특징 시스템을 구축하려는 회사 업무 프로세스에 필요한 정보로 구성되어야 한다. 유일한 식별자에 의한 식별이 가능해야 한다. (예 - 사원번호 O, 사원이름 X.. 2021. 2. 7. 데이터 모델링에 대한 이해 1. 데이터 모델링이란? 누가 데이터 모델링에 대해 학습해야 하는가? 데이터 모델링은 많은 정의가 있지만! 나는 이 정의가 제일 와닿는 것 같다. 현실 세계의 데이터를 약속된 표기법으로 표현하는 과정. 데이터 구조에 대한 이해는 개발자로 하여금 업무 프로세스에 대한 이해도를 높인다. 어떤 데이터가 중요한지, 어떻게 참조 될 수 있는지 등등 필요한 데이터에 대해 잘 파악할 수 있다면 당연하게도 어떤 방향으로 코딩을 하고 데이터를 가져올 수 있는 지 유추할 수 있을 것이다. 이는 비단 개발자 직군에만 해당되는 이야기가 아니라고 생각한다. 그래서 나는 업무에서 정보화나 고도화를 추진하는 경우가 아니더라도, 또한 본인이 개발자가 아니더라도 데이터 구조나 모델링에 대한 학습을 할 만한 가치가 있다고 생각한다. 2.. 2021. 2. 7. [front] HTML form - onsubmit 속성 오늘 onsubmit이라는 것에 대해 처음 접해봤다. 이전까지 view보다는 java단에 치중했기 때문이다. 데이터를 보다 더 원활하게 주고받기 위해 front 공부를 더 열심히 해야한다! 오늘의 주제는 복붙한 코드에서 아무리 submit을 눌러도 전송이 되지 않아 삽질을 4시간 한 후 작성하게 되었다. onclick이나 onchange의 존재에 대해서는 알고 있었지만, 왜 onsubmit 속성은 몰랐는지,,, 반성하자 태그에서는 onsubmit을 통해 submit을 제어할 수 있다. 그래서 대개 form 전송 직전에 form 태그 안의 데이터의 유효성을 검사하기 위해 사용한다. 위의 코드는 내가 임시로 작성해 본 코드이다. 잘 보면 자바스크립트 부분에서 false를 리턴하고 있는 것을 볼 수 있다. o.. 2021. 2. 2. String, StringBuffer, StringBuilder 이전 프로젝트에서 별 생각없이 "Text1" + "Text2" 형태로 +연산자를 통해 문자열을 합치곤 했다. 그러나 String 이외에도 StringBuilder, StringBuffer 클래스가 있다는 것을 알게 되었고 각 클래스의 차이점이 궁금해졌다. StringBuilder나 StringBuffur, String이 따로 있는 이유가 있지 않을까? 우선, String 과 StringBuffer/StringBuilder 클래스의 가장 큰 차이점은 String 은 불변(immutable), StringBuffer/StringBuilder 은 가변(mutable)의 속성을 가진다는 점이다. 1. String String 은 불변 객체다. String 은 리터럴(literal), 또는 new 생성자를 통해 .. 2020. 11. 28. java의 문자열 포맷 : String.format() 과 System.out.printf() 서식문자 관련 문제를 풀다가, 다른 사람들이 해결한 방법을 찾던 중 System.out.println(String.format(format,args)); 형태의 코드를 보게 되었다. 이때까지 printf()로 풀고 있었는데 뭐가 다른가? 하고 궁금해서 찾아보게 되었는데, f3과 번역 콤보, 구글링으로 공부해 본 결과 변수를 정렬하여 출력할 수 있는 메소드로 printf()와 동일한 것 같다. (설명 주석으로 C의 printf()의 영향을 크게 받았다고 되어 있다.) 나는 예전에 c를 해본 적도 있고, java를 맨 처음 배웠을 때 서식문자를 사용해 출력하는 방법에 대해 printf()를 접해본 적이 있었는데 그 때 가르쳐주셨던 교수님께서 java의 printf()는 c언어 개발자의 접근성을 높이는 하나의.. 2020. 11. 25. [JAVA]18일차 이때까지 우리가 배우면서 코드를 입력 했을 때, 잘못 코드를 짰거나 이상한 값을 입력한 경우 에러가 발생하면서 프로그램이 애초에 진행되지 않거나, 진행되다가도 잘못된 코드를 만나면 빨간 에러 문구가 출력되면서 프로그램이 종료되었다. 이처럼 자바 가상머신은 예외적인 상황을 처리할 때, 간단한 예외 정보를 출력하고 프로그램을 종료해버린다. 그런데 우리가 상용화된 어플을 쓸 때는 무언가를 잘못 입력할 경우 잘못 입력했다는 메시지만 떴지 어플은 종료되지 않는다. 왜 상용화된 어플은 값이 잘못 입력되었는데도 우리가 짜는 코드처럼 종료되지 않고 계속 실행을 유지했을까? 이것을 처리하는 것이 바로 오늘 배운 예외 처리이다. 0. 예외(Exception)와 오류(Error) 프로그램을 돌렸을 때 .. 2020. 6. 3. DLL 이란? 1. DLL이란? DLL을 설명하기 전에 먼저 라이브러리(Library)라는 것이 있다. 라이브러리는 여러 프로그램에서 동시에 사용할 수 있는 코드와 데이터를 포함하는, 일종의 단편화된 프로그램이다. DLL은 다이나믹(Dynamic) 링크(Link) 라이브러리(Library)를 줄인 말이다. 라이브러리는 소프트웨어를 개발할 때 자주 쓰거나 기초적인 함수들을 중복개발하는 수고스러움을 피하기 위해, 표준화된 함수나 데이터 타입을 모아놓은 것이다. 이러한 라이브러리는 언제 메인 프로그램에 연결하느냐에 따라서 Static Link와 Dynamic Link로 나뉘며, DLL은 이 중 후자를 뜻한다. 스태틱 링크(Static Link = 정적 링크)는 컴파일 시점에 라이브러리가 링커에 의해 연결되어 실행 파일의 일.. 2020. 6. 2. [JAVA]17일차 어제 수업에 이어서, 인터페이스와 비슷한 추상클래스를 배웠다. 먼저 예제를 연습하다가 발견 한 것들 0. Exception in thread "main" java.lang.ArrayStoreException 배열과 맞지 않는 데이터를 저장하려고 하면 이 에러가 발생 ㅡ 예를 들어 자료형이 맞지 않거나, 상속하는 클래스가 아닌 다른 객체를 저장하려고 하면 이 오류가 뜬다. 0-1. public String toString() 자바의 조상격 클래스인 Object의 함수는 오버라이딩 할 때 접근제어자 범위를 축소할 수 없다. Object 객체에서 접근 제어자를 public으로 지정해줬기때문에 (전체 공개를 원칙으로 하기때문에) 바꾸는 것을 허용하지 않는다. 1. 추상클래스 추상클래스는 일.. 2020. 6. 2. 이전 1 ··· 8 9 10 11 12 13 14 다음 728x90 반응형