[CSS] 스프라이트 만들어서 이미지 관리하기 - N-MET 웹사이트를 만들때 아이콘을 사용할 때 용량이 아무리 작더라도 한번 요청하는데 시간이 들기때문에 많은 그림파일을 로딩해야한다면 느려질수 밖에 없다.따라서 웹사이트 로딩속도를 빠르게 하는 여러방법이 있는데 그 중에 CSS Sprites라는것에 대해 알아보고자 한다.스프라이트는 이미지를 최소화하여 사용하는 것으로 다음처럼 아이콘을 한 이미지에 모두 몰아 넣고, CSS로 한 아이콘 부분만 잘라(?) 보여주는 식을 말한다. (혹여나 이미지 도용방지를 위해 빨간색으로 칠한점 참고해주세요) 그렇다면, 저렇게 만들기위해서 이미지 편집 툴을이용해 아이콘들을 하나하나 붙이고,CSS로 또 하나하나 위치를 찾아 아이콘을 표현할것인가? 우리에겐 네이버에서 만든 N-MET이 있다.아이콘들을 모두 불러오면 저렇게 자동으로 아이콘들.. Helloworld!/CSS 2013. 10. 25. 18:14
Strategy Pattern( 스트래티지 패턴 ) 1. 정의 - 알고리즘군을 정의하고 각각을 캡슐화하여 교환해서 사용할 수 있도록 만든다. - 또한, 알고리즘을 사용하는 클라이언트와는 독립적으로 알고리즘을 변경할 수 있다. 2. 클래스다이어그램 참고 : UML 설명 (http://hongjinhyeon.tistory.com/25) 3. 디자인 원칙 - 애플리케이션에서 달라지는 부분을 찾아내고 달라지지 않는 부분으로 부터 분리시켜 캡슐화 한다. - 구현이 아닌 인터페이스에 맞쳐서 프로그래밍한다. - 상속보다 구성을 활용한다. ("A는 B이다" 보다 "A에는 B가 있다"가 나을 수 있다) - 구성을 이용하여 시스템을 만들면 유연성을 크게 향상시킬 수 있다. - 알고리즘군을 별도의 클래스의 집합으로 캡슐화할 수 있도록 만들어 줄 뿐만 아니라, 실행시 행동을 .. Helloworld!/Design Pattern & Algorithm 2013. 10. 23. 22:57
Template method pattern template(틀) pattern 상황 : 쉐킹이라는 까페에서는 커피와 홍차를 만들 때 다음과 같은 레시피를 사용한다. 1. 커피를 만들때 - 물을 끓인다 - 끓는 물에 커피를 우려낸다 - 커피를 컵에 따른다 - 설탕과 우유를 추가한다 2. 홍차를 만들때 - 물을 끓인다 - 끓는 물에 차를 우려낸다 - 차를 컵에 따른다 - 레몬을 추가한다 이 두개의 레시피의차이점 : 무슨 음료를 만들지, 마지막으로 어떤 재료를 추가할지만 다르고공통점 : 물을 끓이고, 음료(커피나 차)를 컵에 따르는 것은 같은 방법을 사용 따라서, 어떤 음료를 우려내는지(brew), 마지막에 어떤 재료를 추가할지(addCondiments)는추상메소드로 선언하고 서브클래스에서 알아서 하도록 함 template.php abstract cl.. Helloworld!/Design Pattern & Algorithm 2013. 10. 20. 23:32
Linux상에서 파일입출력 [ 파일 처리 작업 순서 ] 1. 파일 포인터(표준입출력) 또는 파일지시자(저수준입출력) 변수 선언 2. 작업 대상 파일을 연다 (open) : 파일 포인터 또는 파일 지시자가 대상 파일의 주소 또는 정보를 참조하게 됨 3. 파일 안의 내용 입력(read) 또는 출력(write) 처리함 4. 작업이 끝나면 반드시 대상 파일을 닫는다. (close) [ 표준 입출력 함수 ] - open(), read(), write(), sleek(), close()함수 - #include #include #include 필요 1. FILE * fopen(const char * path, const char * mode) : 파일 열기 함수 - 사용법 : 파일 포인터 = fopen("파일명", "열기모드") - fopen.. Helloworld! 2013. 10. 20. 17:06
[PHP] 파일 입출력 fopen, fwrtie, fclose php언어의 단점. 디버깅하기가 어렵다. 매번 echo 찍어가며 에러찾기도 힘들고.. 특히나 echo로 출력해서 확인 할 수 있는 페이지 같은 경우는 테스트를 어떻게 하지? 그럴 경우를 위해 pear log를 사용해보라고 권유받았지만 우선 파일 입출력으로 해결하는 방법부터 알아보자. 그냥 간단하게, 로컬에 txt파일을 생성해서 그곳에 에러 로그 찍히듯이 브라우저에 echo 찍을 내용을 파일에 입력하여 확인하는 것. 파일 입출력으로 사용되는 함수 중 딱 세개만 알면된다. fopen("파일이름", "파일 입출력 속성") //파일을 열음 또는 생성 fwirte("파일이름", "입력할문자열") //파일에 내용 입력 fclose("파일이름") //열었던 파일을 종료 그리고 fopen에 파일 입출력 속성은 다음과 .. Helloworld!/PHP 2013. 10. 20. 00:26
[PHP] warning timezone 세팅하기 Mac에서 php 세팅하고 date함수를 사용했는데 다음과 같은 warning이 뜬다. phpinfo로 정보를 확인하면 date.timezone이 no value라고 나오는데 이 경우 php.ini에서 timezone을 세팅해줘야한다. 터미널에서 cd /etc/ 한 후 vi php.ini 검색 키워드로 date.timezone부분을 찾아 다음을 입력해준다.만약 주석 처리 되어있으면 주석도 제거해주고 (;을 제거하면 된다) ;;;;;;;;;;;;;;;;;;; ; Module Settings ; ;;;;;;;;;;;;;;;;;;; [Date] ; Defines the default timezone used by the date functions ; http://www.php.net/manual/en/date.. Helloworld!/PHP 2013. 10. 18. 23:49
[MAC] MAC에서 PHP 개발환경 갖추기 OSX 10.8 Mountain Lion 부터는 Apahce를 Windows에서 처럼 따로 설치할 필요가 없다.httpd.conf file를 수정하기만 하면 바로 로컬에서 사용 가능하다.방법은 다음과 같다. [ Apache / PHP 활성화 ] 1. 우선 터미널 키기 2. 터미널에서 다음과같이 httpd.conf를 찾아 들어간다. sudo nano /etc/apache2/httpd.conf 그럼 httpd.conf를 수정할 수 있도록 httpd.conf가 열리는데 여기서 3. "control" + "w" 를 하서 'php' 라는 단어를 검색한다. 4. 그럼 다음 문장이 바로 검색되는데 앞의 #(샵)을 지워준다. #LoadModule php5_module libexec/apache2/libphp5.so 이.. Helloworld!/MAC 2013. 10. 18. 23:41
[MYSQL] SUBSTRING substring(대상문자, 시작인덱스, 읽어들일 길이) ex) CODE가 DB-001-000-M 일때 SELECT CODE, SUBSTRING(CODE, 8, 3), SUBSTRING(CODE, 12, 1) FROM 테이블명; //결과 //CODE : DB-001-000-M //SUBSTRING(CODE, 8, 3) : 000 //SUBSTRING(CODE, 12, 1) : M Helloworld!/MySql 2013. 10. 17. 14:51
[MYSQL] DATE_SUB, CURDATE CURDATE()는 현재 일자를 알려주는 메소드DATE_SUB()은 DATE 타입의 날짜를 감산할 때 사용하는 메소드 INSERT INTO 테이블2 SELECT * FORM 테이블1 WHERE DATE < DATE_SUB(CURDATE(), INTERVAL 14 DAY) 2주전까지 데이터를 "테이블2"로 옮기고 싶으면 위 같이 사용한다. Helloworld!/MySql 2013. 10. 17. 14:44
[MAC] mac에서 숨김파일 보는 방법 터미널에서 다음 명령어 실행하면 숨김파일이 보인다 defaults write com.apple.Finder AppleShowAllFiles YES 반대로 숨김파일을 다시 안보이게 하고싶다면 다음처럼 끝에 NO라고 바꿔주기만 하면 됨 defaults write com.apple.Finder AppleShowAllFiles NO Helloworld!/MAC 2013. 10. 14. 20:50