일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- MariaDB #DB #기본쿼리 #select
- 데이터베이스
- Bridge Pattern #구조패턴 #Structure Pattern
- GoF #빌더패턴 #Builder Pattern
- 자바 #인터페이스 #추상클래스 #abstract #
- GOF #
- PostgreSQL
- 프록시패턴 #Gof #ProxyPattern #Proxy
- CentOS
- Today
- Total
목록2019/05 (7)
개발자 기초부터 시작하기
구조패턴(Structural Pattern) - Bridge Pattern 목적 여러 클래스 간의 강한 결합을 제거하기 위해 구현부와 추상층을 분리하여 각자 독립적으로 변형할 수 있게 하는 패턴. UML Diagram Abstraction : 추상적 개념에 대한 인터페이스를 제공하고 객체 구현자(Implementator)에 대한 참조자를 관리합니다. = (MorseCode) RefinedAbstraction : 추상적 개념에 정의된 인터페이스를 확장합니다.(=PrintMorseCode) Implementor : 구현 클래스에 대한 인터페이스를 제공합니다. Implementor는 기본적인 구현 연산을 수행하고, Abstraction은 더 추상화된 서비스 관점의 인터페이스를 제공합니다.(=DefaultMSF..
생성패턴(Creational Pattern) - Builder Pattern 목적 객체의 construction 과정과 객체의 representation을 분리 이렇게 분리함으로 하나의 construction 과정을 이용해 서로 다른 형태의 representation 을 이용할 수 있음 => 하나의 Director로 상위 Builder에 표현된 다른 하위 Builder를 이용할 수 있음. 복잡한 객체의 단계별 생성 각기 다른 능력을 가진 객체를 생성하는데 있어서 통일 된 방식을 제공한다는 것. UML Diagram Builder Product 객체의 부분을 생성하기위한 추상 인터페이스를 지정합니다. ConcreteBuilder Builder 인터페이스를 구현하여 제품의 일부를 구성하고 어셈블합니다. 작성..
-- to_date 가 9999년 인건 null임 따로 처리를 해주어야함. select * from salaries where emp_no = 11007 order by to_date desc; -- 예제 1 : 각 사원별로 평균연봉 출력 및 내림차순 정렬. select emp_no, avg(salary) from salaries group by emp_no order by avg(salary) desc; -- 예제 2 : 각 현재 Manager 직책 사원에 대한 평균 연봉은 ? select emp_no, title from titles where title='manager'; select distinct title from titles; -- 예제 3 : 사원별 몇 번의 직책 변경이 있었는지 selec..
-- 날짜형 함수 select CURDATE(), CURRENT_DATE; -- 년월일 select CURTIME(), CURRENT_TIME; -- 시분초 select now(), sysdate(), current_timestamp(); -- 년월일 시분초 -- now 와 sysdate의 차이 select now(), sleep(2), now(); -- now는 결과의 변화가 없음 ( now() 는 상수) select sysdate(), sleep(2), sysdate(); -- sysdate는 2초 뒤의 시간을 반환함. -- date_format .. 되게 다양한 포맷팅들을 지원함.. select date_format( now(), '%Y년 %m월 %d일 %h시 %i분 %s초'); -- '2019년 ..
CentOS에 깃헙 설치해보기 VirtualBox에 깔아놨던 CentOS 6.9 버전에 깃허브를 설치하고 원격저장소와 로컬저장소를 연결해 커밋과 푸쉬를 해보겠습니다. 천천히 따라오시면 어렵지 않게 하실수 있으실거에요! 의존성 라이브러리 설치 $ yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel Perl-devel 설치 xxxxxxxxxx $ yum install perl-devel 소스 다운로드 하기 원하는 버전이 있으면 버전 확인 xxxxxxxxxx $ https://mirrors.edge.kernel.org/pub/software/scm/git/ wget 으로 tar.gz 파일을 설치합니다 xxxxxxxxxx $ wge..
구조패턴(Structural Pattern) - 프록시 패턴 목적 다른 객체에 대한 접근을 제어하기 위한 대리자 또는 자리채움자 역할을 하는 객체를 둡니다. 프록시는 실제 객체를 대신하여 어떤 일을 대신하게 되는 것입니다. 이때 중요한것은 흐름제어만을 할 뿐 결과값을 조작하거나 변경을 해서는 안된다는 점과 큰 작업과 작은 작업중 작은 작업을 프록시가 처리하게 하는것입니다. 활용성 원격지 프록시 서로 다른 주소 공간에 존재하는 객체를 가리키는 대표 객체.(대표적으로 JAVA의 RMI) 가상 프록시 요청이 있을때만 필요한 고비용의 객체를 생성하게 함. 꼭 필요로 하는 시점까지 객체의 생성을 연기하고, 해당 객체가 생성된 것처럼 동작하게 함 보호용 프록시 객체에 대한 접근 권한을 제어하거나 객체마다 접근 권한..
데이터베이스 및 테이블은 MariaDB 깔면 기본적으로 제공되던 데이터셋을 활용했습니다. -- select 기본 select * from departments; select first_name, gender, hire_date from employees; -- alias (별명) 미활용. select concat(first_name, ' ', last_name), gender,hire_date from employees; -- alias (별명) 활용 select concat(first_name, ' ', last_name) as '이름', gender as '성별', hire_date as '입사일' from employees; -- titles 테이블안의 title 컬럼의 중복값을 제거하고 보여줌. ..