본문 바로가기
반응형

분류 전체보기294

[재테크] 적금 풍차돌리기 활용법 적금 풍차돌리기란?? 말 그대로 풍차 돌리듯 적금을 운용하는 방법입니다. 1년간 매달 한 개의 적금을 일정금액을 정하여 가입하시면 됩니다. 예를 들어 1월 10만원 1년만기 적금에 가입합니다. 2월에도 10만원, 1년만기 적금에 가입합니다. 이렇게 12월까지 가입을 완료 합니다. 그 다음 달 부터 한 적금씩 만기가 채워지게 되는데 그때부터 원금 + 이자를 받게 됩니다. 이는 물론 조금 번거롭고 이러한 번거로움에 비해 시중 금리가 매우 낮기때문에 이윤이 크지 않습니다. 돈을 크게 모으기 보다 지출 통제 및 저축하는 습관을 만드는 장점이 있습니다. 사견 - 적금 풍차돌리기는 투자성향이 매우 안정적이며, 돈관리를 해본 적 없는 사회 초년생일에게 적합한 방법이라 생각합니다. 적금풍차돌리기의 또다른 장점의 사례를.. 2016. 2. 23.
NodeJS와 HTTP HTTP 모듈 - Node.js는 HTTP 모듈을 기본 내장 - HTTP 기반 웹 어플리케이션을 쉽게 개발하게 도와줌. - HTTP 모듈을 사용하기 위해서는 반드시 require(‘http’)로 모듈을 불러와서 사용해야 한다. SERVER 객체 - http 모듈에서 가장 중요한 객체는 server 객체 - http 모듈의 createServer() 메서드를 사용하면 server 객체 생성가능 - Server 객체의 메서드(예) 1) listen(port[, callback]) : 서버를 실행한다. 2) close() : 서버를 종료한다. - 코드(예) // 모듈을 실행. var http = require(‘http’); // 웹 서버를 생성. var server = http.createServer(); .. 2016. 2. 22.
DAO 분리와 확장(4/4) - 네번째, 원칙과 패턴 초난감 DAO 코드를 개선해온 결과를 객체지향 기술의 여러 가지 이론을 통해 설명한다. 개방 폐쇄 원칙 (OCP. Open-Closed Principle) - 깔끔한 설계를 위해 적용 가능한 객체지향 설계 원칙 중의 하나다. ‘클래스나 모률은 확장에는 열려 있어야 하고 변경에는 닫혀있어야 한다’라고 할 수 있다. 객체지향 설계 원칙(SOLID) 객체지향 기술은 어느 날 한 번에 만들어진 것이라기보다는 오랜 시간에 걸쳐 점진적으로 발전해온 기술이라고 볼 수 있다. 그렇기 때문에 객체지향 프로그래밍 언어의 종류도 다양하고 객체지향 기술을 받아들이고 적용하는 관점과 기법도 조금씩 차이가 있다. 그럼에도 객체지향이라는 이름으로 묶을 수 있는 분명한 특징이 있다. 객체지향 설계 원칙은 객체지향의 특징을 잘 살릴 .. 2016. 2. 19.
DAO 분리와 확장(3/4) - 세번째, DAO의 확장 1. 클래스의 분리 관심사의 분리보다 더 화끈하게 분리를 해보자. DB커넥션과 관련된 부분을 서브클래스가 아니라 아예 별도의 클래스에 담는다. 이 클래스를 UserDao가 이용하게 한다. 예를 들어 별도의 SimpleConnectionMaker 클래스에 DB커넥션 코드를 작성하고 상속이 아닌 생성자를 통해 각 메소드에서 DB 커넥션을 가져오게 한다. public class SimpleConnectionMaker { public Connection makeNewConnection() throws ClassNotFoundException, SQLException { Class.forName("com.mysql.jdbc.Driver"); Connection c = DriverManager.getConnecti.. 2016. 2. 19.
DAO 분리와 확장(2/4) - 두번째, DAO의 분리 DAO의 분리 1. 관심사의 분리 - 관심이 같은 것끼리 하나의 객체 안으로 또는 모이게 하고, 관심이 다른 것은 가능한 따로 떨어져서 서로 영향을 주지 않도록 분리한다. 2. 커넥션 만들기의 추출 - 전편의 DAO 예제를 살펴 보면 메소드 안에 커넥션 정보가 담겨 있기 때문에 수백, 수천 개의 DAO 메소드를 만들게 된다면 코드가 여기저기 중복 될 뿐만 아니라 향후 다른 커넥션 정보를 사용 할 경우 이 모든 DAO 메소드를 수정해야 한다. 즉, 커넥션 가져오는 중복 코드를 분리해야 한다. 중복된 DB 연결 코드를 getConnection() 이라는 메소드로 분리 한다면 커넥션 정보가 변경된다 하더라도 한 메소드의 코드만 수정하면 된다. 리펙토링 리펙토링은 기존의 코드를 외부의 동작방식에는 변화 없이 내.. 2016. 2. 12.
DAO 분리와 확장(1/4) - 첫번째. 마구잡이 DAO 생성 DAO 분리와 확장 (1/3) - 첫번째. 마구잡이 DAO 생성 DAO(Data Access Object)는 DB를 사용해 데이터를 조회하거나 조작하는 기능을 전담하도록 만든 오브젝트를 말한다. 1. User 클래스 생성 - 사용자 정보 저장 시 자바빈 규약을 따르는 오브젝트를 이용하면 편리하다. 사용자 정보를 저장할 User 클래스를 만든다. public class User { String id; String name; String password; public String getld() ( return id; } public void setld(String id) ( this.id = id; } public String getName() { return name; } public void setNam.. 2016. 2. 1.
NodeJS 설치 Node JS 설치 - [다운로드] - http://nodejs.org/en/ - [참고] Windows Binary(.exe)파일은 npm 명령이 들어가 있지 않아 불편하다. [설치경로 추천] - C:\nodejs [설치후 환경변수 셋팅] - path에 C:\nodejs; 추가 [설치확인방법] - cmd에서 C:\User\사용자이름\ > node - 간단한 웹서버 만들기 var http = require('http'); http.createServer(function(request, response) {response.writeHead(200); response.write("Hello, this is dog."); response.end();}).listen(3000); console.log('List.. 2016. 1. 27.
Node JS란? Node JS 개요 - 확장성 있는 네트워크 애플리케이션(특히 서버 사이드) 개발에 사용되는 소프트웨어 플래폼 - Node.js는 작성 언어로 자바스크립트를 활용하며 Non-blocking I/O와 단일 스레드 이벤트 루프를 통한 높은 처리 성능을 가지고 있다 - Node.js는 내장 HTTP 서버 라이브러리를 포함하고 있어 웹 서버에서 아파치 등의 별도의 소프트웨어 없이 동작하는 것이 가능하며 이를 통해 웹서버의 동작에 있어 더 많은 통제를 가능케 한다. Node JS 장점 - 빠른 성능, 월등한 속도 - 단일 스레드 - 배우기 쉬움 - Node.js는 자바 스크립트로 작성되어 배우기 쉽다. - 한가지 언어로 전체 웹페이지를 만들 수 있다. Node JS 단점 - 동기적 코드 사용으로 인한 급격한 성능.. 2016. 1. 27.
[Spring] 스프링 이란? 스프링이란? - 자바 엔터프라이즈 애플리케이션 개발에 사용되는 애플리케이션 프레임워크 스프링 컨테이너 스프링 컨테이너는 설정정보를 참고로 하여 애플리케이션을 구성하는 오브젝트를 생성 & 관리한다. 독립적으로 동작 가능하지만 보통 웹 모듈에서 동작하는 서비스나 서블릿으로 등록하여 사용한다. 스프링이 제공하는 세가지 핵심 프로그래밍 모델 1. IoC / DI 오브젝트의 생명주기와 의존관꼐에 대한 프로그래밍 모델. 객체지향 설계 원칙과 디자인 패턴의 핵심 원리를 담고 있으며 프레임 워크의 근간으로 삼고 있다. 스프링이 직적 제공하는 모든 기술과 API, 심지어 컨테이너도 IoC/DI 방식으로 작성되어 있다. 2. 서비스 추상화 이식성이 뛰어나다.(서버, 특정 기술에 종속 되지 않는다.) 3. AOP 애플리케이.. 2016. 1. 27.
반응형