본문 바로가기

프로그래밍 강의 메모

(42)
객체 생성과 관련 디자인 패턴 > 싱글톤 패턴(Singleton Pattern) https://inf.run/6Shr 코딩으로 학습하는 GoF의 디자인 패턴 - 인프런 | 강의 디자인 패턴을 알고 있다면 스프링 뿐 아니라 여러 다양한 기술 및 프로그래밍 언어도 보다 쉽게 학습할 수 있습니다. 또한, 보다 유연하고 재사용성이 뛰어난 객체 지향 소프트웨어를 개발할 www.inflearn.com 싱글톤 패턴 객체 생성 관련 디자인 패턴. 인스턴스를 오직 한 개만 제공하는 클래스. 시스템 런타임, 환경 세팅에 대한 정보 등, 인스턴스가 여러 개일 때 문제가 생기는 경우 싱글톤 패턴을 사용한다. 인스턴스를 오직 한 개만 만들어 글로벌하게 접근할 수 있는 클래스가 필요한 경우 싱글톤 패턴을 적용한다. 가장 간단하게 구현한다면 private 생성자와 public static 메서드를 사용하여 구..
GraphQL 개요 https://youtu.be/N-81mS2vldI https://graphql.org/ GraphQL | A query language for your API Evolve your APIwithout versions Add new fields and types to your GraphQL API without impacting existing queries. Aging fields can be deprecated and hidden from tools. By using a single evolving version, GraphQL APIs give apps continuous access to new featu graphql.org GraphQL이란? GraphQL은 API용 쿼리 언어. 클라이언트가 ..
MySQL 더 깊이 알아가기 > 사용자와 권한 다루기 https://inf.run/JvXX 갖고노는 MySQL 데이터베이스 by 얄코 - 인프런 | 강의 비전공자도 이해할 수 있는 MySQL! 빠른 설명으로 필수개념만 훑은 뒤 사이트의 예제들과 함께 MySQL을 ‘갖고 놀면서’ 손으로 익힐 수 있도록 만든 강좌입니다., - 강의 소개 | 인프런... www.inflearn.com 1. 사용자 -- mysql user 확인 USE mysql; SELECT * FROM user; 사용자 생성 -- CREATE USER '사용자명'@'접속위치' IDENTIFIED BY '비밀번호'; -- CREATE USER 'user_1'@'localhost' IDENTIFIED BY 'abcdefg'; -- CREATE USER 'user_1'@'12.345.678.90' ..
MySQL 더 깊이 알아가기 > 트랜잭션 - 함께가 아니면 하지 않아! https://inf.run/JvXX 갖고노는 MySQL 데이터베이스 by 얄코 - 인프런 | 강의 비전공자도 이해할 수 있는 MySQL! 빠른 설명으로 필수개념만 훑은 뒤 사이트의 예제들과 함께 MySQL을 ‘갖고 놀면서’ 손으로 익힐 수 있도록 만든 강좌입니다., - 강의 소개 | 인프런... www.inflearn.com 트랜잭션 모든 구문이 성공 OR 모든 구문 실패 은행 송금 예시 원자성 (atomicity) -- 트랜잭션 시작 START TRANSACTION; DELETE FROM sections WHERE section_id > 0; SELECT * FROM sections; -- 롤백 -- 일련의 작업들을 한다음 문제가 생겼을 때 실제로 반영하지 않고 다시 백지화 ROLLBACK; SELE..
MySQL 더 깊이 알아가기 > 인덱스 - 검색을 빠르게! https://inf.run/JvXX 갖고노는 MySQL 데이터베이스 by 얄코 - 인프런 | 강의 비전공자도 이해할 수 있는 MySQL! 빠른 설명으로 필수개념만 훑은 뒤 사이트의 예제들과 함께 MySQL을 ‘갖고 놀면서’ 손으로 익힐 수 있도록 만든 강좌입니다., - 강의 소개 | 인프런... www.inflearn.com 인덱스 특정 컬럼(들)에 대한 목차 생성 - 검색 가속화 테이블 내용변경(추가, 수정, 삭제)시 시간 더 소모 내용변경이 자주있는 테이블은 인덱스를 추가하지 않는 것이 좋다. 1. 인덱스 사용하기 -- 인덱스 생성 ALTER TABLE `mydatabase`.`businesses` ADD INDEX index_biz_name (business_name); -- 다중 컬럼 인덱스 A..
MySQL 더 깊이 알아가기 > 뷰 - 가상의 테이블 https://inf.run/JvXX 갖고노는 MySQL 데이터베이스 by 얄코 - 인프런 | 강의 비전공자도 이해할 수 있는 MySQL! 빠른 설명으로 필수개념만 훑은 뒤 사이트의 예제들과 함께 MySQL을 ‘갖고 놀면서’ 손으로 익힐 수 있도록 만든 강좌입니다., - 강의 소개 | 인프런... www.inflearn.com 뷰 실제 테이블이 아니라 SELECT문을 수행한 결과 또는 실제 테이블을 JOIN하거나 서브쿼리로 이어서 출력한 것을 테이블처럼 사용하는 가상의 테이블. -- 뷰 생성 CREATE VIEW section_view AS SELECT section_id, section_name FROM sections; -- 뷰 조회 SELECT * FROM section_view; -- 뷰 삭제 D..
MySQL 더 깊이 알아가기 > 기본키와 고유키, 그리고 외래키 https://inf.run/JvXX 갖고노는 MySQL 데이터베이스 by 얄코 - 인프런 | 강의 비전공자도 이해할 수 있는 MySQL! 빠른 설명으로 필수개념만 훑은 뒤 사이트의 예제들과 함께 MySQL을 ‘갖고 놀면서’ 손으로 익힐 수 있도록 만든 강좌입니다., - 강의 소개 | 인프런... www.inflearn.com 1. 기본키(Primary Key) 더 알기 중복되지 않는 고유값만 허용 NULL 값 허용하지 않음 테이블당 하나의 기본키만 지정 가능 -- 기본키 넣는 방법 1 CREATE TABLE people ( first_name CHAR(2) PRIMARY KEY, last_name CHAR(3), nickname VARCHAR(10) ); -- 기본키 넣는 방법 2 CREATE TABL..
데이터 조작하기 > 데이터 변경, 삭제하기 https://inf.run/JvXX 갖고노는 MySQL 데이터베이스 by 얄코 - 인프런 | 강의 비전공자도 이해할 수 있는 MySQL! 빠른 설명으로 필수개념만 훑은 뒤 사이트의 예제들과 함께 MySQL을 ‘갖고 놀면서’ 손으로 익힐 수 있도록 만든 강좌입니다., - 강의 소개 | 인프런... www.inflearn.com 1. DELETE - 주어진 조건의 행 삭제하기 DELETE FROM businesses WHERE status = 'CLS'; DELETE 문으로 행 전체 삭제 -- 조건을 정해주지 않으면 행 전체 삭제 -- 전체 행을 삭제할 의도가 없었는데, 실수할 수도 있다. DELETE FROM businesses; TRUNCATE 문으로 테이블 초기화 행 전체를 삭제하는 것이 아니라 테이..