Skip to content

Instantly share code, notes, and snippets.

View firejune's full-sized avatar
🔥
Working from home

Joon Kyoung firejune

🔥
Working from home
View GitHub Profile

Creational Patterns (생성 패턴)

  • Abstract Factory : 구체적인 클래스를 지정하지 않고 관련성을 갖는 객체들의 집합을 생성하거나 서로 독립적인 객체들의 집합을 생성할 수 있는 인터페이스를 제공합니다.
  • Builder : 복합 객체의 생성 과정과 표현 방법을 분리함으로써 동일한 생성 공정이 서로 다른 표현을 만들 수 있게 한다.
  • Factory Method : 객체를 생성하는 인터페이스를 정의하지만, 인스턴스를 만들 클래스의 결정은 서브클래스가 한다. Factory Method 패턴에서는 클래스의 인스턴스를 만드는 시점을 서브클래스로 미룬다.
  • Prototype : 프로토타입의 인스턴스를 이용해서 생성할 객체의 종류를 명세하고 이 프로토타입을 복사해서 새로운 객체를 생성한다.
  • Singleton : 클래스의 인스턴스는 오직 하나임을 보장하며 이 인스턴스에 접근할 수 있는 방법을 제공한다.

Structural Patterns (구조 패턴)

  • Adapter : 클래스의 인터페이스를 클라이언트가 기대하는 다른 인터페이스로 변환한다. Adapter패턴은 호환성이 없는 인터페이스 때문에 함께 사용할 수 없는 클래스를 개조하여 함께 작동하도록 해준다.
  • Bridge : 추상화와 구현을 분리하여 각각을 독립적으로 변형할 수 있게 한다.
@splacentino
splacentino / jsp.md
Last active September 15, 2024 15:11
A JSP cheat sheet

Java expression evaluated at run time.

Prototype

<%=     %>

Example

@quezo
quezo / CipherTimer.js
Created June 27, 2013 20:34
This was a small test I created to determine the fastest Cipher (an algorithm used for encryption/decryption) available in NodeJS. There was a huge variation between the best (aes-128-ofb at 305.6934) and the worst (bf-ecb at 1024.3660).
var crypto = require('crypto');
var _ = require('underscore')._;
// Returns elapsed time in milliseconds
function get_elapsed_time(startTime) {
var diff = process.hrtime(startTime);
// (seconds to milliseconds) + (nanoseconds to milliseconds)
return (diff[0] * 1000) + (diff[1] / 1000000);
}
@dergachev
dergachev / GIF-Screencast-OSX.md
Last active November 5, 2024 18:44
OS X Screencast to animated GIF

OS X Screencast to animated GIF

This gist shows how to create a GIF screencast using only free OS X tools: QuickTime, ffmpeg, and gifsicle.

Screencapture GIF

Instructions

To capture the video (filesize: 19MB), using the free "QuickTime Player" application: