반응형

분류 전체보기 98

[데이터베이스 개론] 데이터베이스 설계

데이터베이스 설계  데이터베이스 설계 단계 1단계  : 요구 사항 분석 수집한 요구 사항을 분석하여 그 결과를 요구 사항 명세서로 작성하는 단계 2단계 : 개념적 설계 명세서를 바탕으로 DBMS에 독립적인 개념적 데이터 모델으로 표현하는 단계일반적으로 E-R 모델을 많이 사용한다개체와 속성, 관계를 추출하고 E-R 다이어그램을 작성한다 3단계 : 논리적 설계 개념적 구조를 기반으로 적합한 DBMS를 선정하는 단계관계 데이터 모델을 사용한다면 E-R 다이어그램을 릴레이션 스키마로 변환하는 작업을 수행한다릴레이션 스키마 변환 규칙규칙 1. 모든 개체는 릴레이션으로 변환한다규칙 2. 다대다 관계는 릴레이션으로 변환한다규칙 3. 일대다 관계는 외래키로 표현한다          - 일반적인 일대다 관계는 외래키로..

독서 2022.03.15

[데이터베이스 개론] 데이터베이스 언어 SQL

SQL의 소개 정의 : SQL (Structured Query Language)은 관계 데이터베이스를 위한 표준 질의어로 많이 사용되는 언어  기능에 따른 분류데이터 정의어 : 테이블을 생성하고, 변경 제거하는 기능을 제공데이터 조작어 : 테이블에 새 데이터를 삽입하거나, 테이블에 저장된 데이터를 수정, 삭제, 검색하는 기능 제공데이터 제어어 : 보안을 위해 데이터에 대한 접근 및 사용 권한을 사용자별로 부여하거나 취소하는 기능을 제공하는 언어  SQL을 이용한 데이터 정의 테이블 생성 CREATE TABLE 테이블_이름 ( 속성_이름 데이터_타입 [NOT NULL] [DEFAULT 기본_값] [PRIMARY KEY (속성_리스트)] // 기본키는 NOT NULL 표기해주는 것..

독서 2022.03.11

[데이터베이스 개론] 데이터 모델과 연산

데이터 모델링  데이터 모델링과 데이터 모델의 개념 데이터 모델링 : 현실 세계에 존재하는 데이터를 컴퓨터 세계의 데이터베이스로 옮기는 변환 과정, 추상화 작업이 필요하다 개념적 모델링 : 현실 세계의 중요 데이터를 추출하여 개념 세계로 옮기는 작업논리적 모델링 : 개념 세계의 데이터를 데이터베이스에 저장할 구조를 결정하고 이 구조로 표현하는 작업  데이터 모델 : 데이터 모델링의 결과물을 표현하는 도구로 개념적 데이터 모델과 논리적 데이터 모델이 있다 구성 요소- 데이터 구조 : 자주 변하지 않고 정적이다- 연산 : 값이 연산에 의해 변경될 수 있어 동적이다- 제약조건 : 구조적 측면의 제약 사항과 연산을 적용하는 경우 허용할 수 있는 의미적 측면의 제약 사항이 있다 데이터베이스 설계 = 개념적 데이터..

독서 2022.03.07

[데이터베이스 개론] 데이터베이스 기초 이론

데이터베이스 기본 개념  데이터베이스의 필요성 데이터 VS 정보데이터 : 현실 세계에서 단순히 관찰하거나 측정하여 수집한 값정보 : 데이터를 의사 결정에 유용하게 활용할 수 있도록 처리하여 체계적으로 저직한 결과물    데이터베이스의 정의와 특징 정의특정 조직의 여러 사용자가 '공유'하여 사용할 수 있도록 '통합'해서 '저장'한 '운영' 데이터의 집합공유 : 여러 사용자가 함께 이용통합 : 데이터 중복성을 허용하지 않는다저장 : 컴퓨터가 접근할 수 있는 매체에 저장운영 : 지속적으로 유지 특징실시간 접근 가능계속 변화동적인 특징이 있어 계속 CRUD하여 정확한 데이터를 유지동시 공유 가능같은 데이터를 동시에 사용하는 것도 지원, 다만 처리가 복잡내용으로 참조 가능주소나 위치가 아닌 데이터의 값으로 참조 ..

독서 2022.03.06

[열거 타입] Enum 공부하다 생긴 의문점 2가지

Enum 클래스 먼저 Enum 클래스의 코드를 살펴보겠습니다 public abstract class Enum implements Comparable, Serializable { private final String name; private final int ordinal; public final String name() { return this.name; } public final int ordinal() { return this.ordinal; } protected Enum(String name, int ordinal) { this.name = name; this.ordinal = ordinal; } public String toString() { return this.name; } public fin..

개발 2022.03.02

[SSAFY/싸피] 2월 교육 회고록

한 달 간의 회고 2월 15일에 첫 교육 지원금을 받게 되었습니다. 1월 5일부터 스타트 캠프를 시작했기 때문에 매월 말이 아닌 매월 15일에 지원금을 보내주는 것 같습니다. 1월 한달동안 제 자신을 극한으로 몰아 붙여 공부를 했었고, 그로 인해 2월 한달 동안은 체력적 한계와 더불어 번아웃이 자주 왔습니다. 사실상 자바 스프링을 배우기 시작한 시점이 작년 여름이었는데, 비전공자인 제가 다른 학생들은 4년간 스펙 쌓고 실력도 갖춰서 취업하는 IT 서비스 회사를 목표로 한 것이 그 이유 아닐까 합니다. 그래도 내가 하고 싶은 일, 내가 다니고 싶은 회사에 가기 위해 힘들어도 포기하지 않고 끝까지 공부할 생각입니다. 일주일 전부터 취업 공고가 하나 둘씩 나오고 있는데 최근 알고리즘을 빡세게 준비한 만큼, 코..

교육 2022.03.01

[Google HashCode] 2022 구글 해시코드 참가 후기

결론부터 말하자면.. 전 세계 10177팀 중에서 663등, 한국 54팀 중에서 15등을 했습니다. 첫 출전이고 준비 기간이 2일이었던 것을 생각해보면 정말 좋은 성과를 거두었다고 생각합니다. 대회 소개 Hash Code - Google’s Coding Competitions A team programming competition — you pick your team and coding language to solve an engineering problem. Are you up for the challenge? codingcompetitions.withgoogle.com 구글의 팀 기반 프로그래밍 경연 대회이며, 구글에서 실제로 직면했던 문제들을 간단하게 모델링한 상황을 해결하는 알고리즘을 구성하는 대..

대회 2022.02.25

[제네릭] 타입 안전 이종 컨테이너.. 이거 어디에 사용할까?

궁금증 이펙티브 자바 "아이템 33 - 타입 안전 이종 컨테이너를 고려하라"를 읽으면서 든 궁금증이다. 그래... 다양한 타입을 하나의 컬렉션 등에 넣기 위해, 예를 들어 Map의 key에는 클래스 리터럴 값을 넣고 value에는 Object를 받는다고 치자. 저 map에서 put과 get을 할때 메서드를 직접 구현해서 type.cast() 등을 활용해서 타입 안전하게 여러 타입을 넣을 수 있게 되었다. 교재에서는 이러한 동적 형변환으로 런타임 타입 안전성을 확보하는 방식을 java.util.Collections에 있는 checkedSet, checkedList, checkedMap 같은 메서드를 만들 때 적용했다고 한다. 그래 알겠다.. 이 래퍼들은 제네릭과 로 타입을 섞어 사용하는 애플리케이션에서 클..

개발 2022.02.21

[제네릭] 컬렉션이나 단일 원소 컨테이너에서 매개변수화 되는 대상은 무엇일까?

이펙티브 자바 "아이템 33 - 타입 안전 이종 컨테이너를 고려하라"를 읽는 도중, 한 구문이 이해가 되지 않았습니다. 다음은 이펙티브 자바 198쪽에 나오는 문단입니다. 제네릭은 Set, Map 등의 컬렉션과 ThreadLocal, AtomicReference 등의 단일원소 컨테이너에도 흔히 쓰인다. 이런 모든 쓰임에서 매개변수화되는 대상은 (원소가 아닌) 컨테이너 자신이다. 따라서 하나의 컨테이너에서 매개변수화할 수 있는 타입의 수가 제한된다. 컨테이너의 일반적인 용도에 맞게 설계된 것이니 문제될 건 없다. 예컨대 Set에는 원소의 타입을 뜻하는 단 하나의 타입 매개변수만 있으면 되며, Map에는 키와 값의 타입을 뜻하는 2개만 필요한 식이다. 저는 2번째 줄인 "이런 모든 쓰임에서 매개변수화되는 대..

개발 2022.02.20
반응형