일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Bridge Pattern #구조패턴 #Structure Pattern
- GoF #빌더패턴 #Builder Pattern
- MariaDB #DB #기본쿼리 #select
- 자바 #인터페이스 #추상클래스 #abstract #
- 프록시패턴 #Gof #ProxyPattern #Proxy
- GOF #
- CentOS
- PostgreSQL
- 데이터베이스
- Today
- Total
목록분류 전체보기 (11)
개발자 기초부터 시작하기
CentOS에 PostgreSQL 설치 후 접속해보기. 다운로드 https://www.postgresql.org/ftp/source 에 접속하여 원하는 버전 다운로드 저는 10.8 버전을 다운로드 하였습니다. $ wget https://ftp.postgresql.org/pub/source/v10.8/postgresql-10.8.tar.gz 빌드환경 구성 및 빌드 configure / make / make install (간단 설명) 로 환경을 구성해줍니다. xxxxxxxxxx $ ./configure --prefix=/usr/local/cafe24/pgsql --with-python --with-openssl --enable-nls=ko -- prefix 부분은 수정해서 사용하시면 됩니다 xxxxxxxx..
구조패턴(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 컬럼의 중복값을 제거하고 보여줌. ..
자바 기본 개념서를 보면 추상클래스(Abstract Class)와 인터페이스에 대해 공부할때 애매하게 설명하고 어떻게 쓰는지, 왜 비슷한 용도의 두개가 나뉘어 쓰이는지에 대한 설명이 부족했다 이번글의 목표는 다음과 같다. - 인터페이스란 무엇인지 - 추상클래스란 무엇인지 - 각각의 사용 이유 및 차이점 인터페이스란 ? - 클래스의 설계도 혹은 명세서이다. - 모든 메소드는 public abstract (생략가능) 메소드들이며 일반 변수는 가질 수 없다. - interface 키워드를 통해 생성된다. 인터페이스의 모양 public interface Vehicle { public abstract void move(); } 인터페이스를 구현한 클래스 public class Car implements Vehic..
단순하게 웹은 클라이언트-서버가 요청하고 응답하는 구조라는 단순한 개념만 가지고 있다가 웹 구동 원리에 대한 전반적인 개념과 웹 서버와 웹 어플리케이션 서버의 차이가 있다는 것을 알고 정리 해보고자 합니다. 목표웹 구동 원리웹 서버와 웹 어플리케이션의 차이점 여기서 클라이언트와 서버에 대해서 간단하게 정리하고 넘어가자면 클라이언트는 일반적인 웹 사용자의 인터넷이 연결된 장치들(스마트폰, 노트북, 컴퓨터 등)과 이런 장치들에서 이용가능한 웹에 접근하는 소프트웨어 (일반적으로 파이어폭스 또는 크롬 과 같은 웹 브라우저) 입니다.서버는 웹페이지, 사이트, 또는 앱을 저장하는 컴퓨터입니다. 클라이언트의 장비가 웹페이지에 접근하길 원할 때, 서버로부터 클라이언트의 장치로 사용자의 웹 브라우저에서 보여지기 위한 웹..