2008.05.09 10:32

포토갤러리 오픈소스(PHP)

괜찮은 포토갤러리 오픈 소스
플래쉬로 만들어진 간단한 그렇지만 역동적인(?) 구조가 맘에 듬

사용법은 http://www.photogallery.pe.kr/photo2/ 여길 참조
초간단 사용 가능

신고
Trackback 0 Comment 0
2007.08.29 18:32

PHP DB PoolManage

http://sqlrelay.sourceforge.net/

SQL Relay
신고
Trackback 0 Comment 0
2007.02.07 14:11

Framework in PHP

 현재 어플리케이션 개발뿐만 아니라 웹 개발에서도 프레임워크의 활용에 대해 많은 의견이 오가고 있다.

자바에 이미 많은 기능을 제공하는 성숙한 프레임워크가 존재하여 사람을 뽑을때도 자바언어보다는 프레임워크를 써본 사용자를 찾는 경향이 있다.

또한 루비(Ruby) 를 휙기적인 언어로 자리매김한 일등공신이 Ruby on the rails 라는 프레임워크라는 것은 이제 웹 개발쪽에 있는 사람이라면 대부분 알고 있는 사실일것이다.

하지만 유난히 PHP 쪽에는 그렇다할 프레임워크가 나오지 않고 있다.
가장 다양하게 이용되고, 많은 사이트에서 이용되고 있는 php가 프레임워크는 존재 하지 않는것일까?

검색결과 php에 프레임워크가 70개 이상 존재 한다. 헉.. 엄청나다..
오히려 그 개방성의 성격답게 많은 양의 프레임워크가 존재 했던것이다.

각종 php 포럼 사이트등에도 프레임워크에 대한 글이 요즘 자주 올라오며, 다양한 토론을 벌이는 모습을 심심치 않게 볼 수 있다.

그렇다면 프레임워크는 무엇일까?

혹자는 그냥 다양하게 쓸수 있는 라이브러리의 집합, 함수의 집합이라하고,
다른이는 품질을 급격하게 상승 시킬수 있는 툴이라고 한다.

음..
모 두 맞는 말이라 생각한다. 프렘임워크를 들여다 보면 개발에 필요한 다양한 함수들이 존재하고 그 함수들이 용도에 맞게 잘 클래스화되어 정리 되어있다. 또한 요즘 개발 트렌드인 MVC 구조를 기본으로 하고 있어서 개발및 수정, 업데이트가 아주 편리하게 되어있다. 기본적인 기능들이 라이브러리화 되어있고, 핵심적인 비즈니스 로직만 개발을 하기 때문에 특히 여러명이 한꺼번에 개발을 해야할때 각자 다른 개발 스킬을 어느정도 통일시켜 추후 다른 사람이 봐도 수정을 용이하게 만든다.

또한 가장 중요한점이 소스의 재사용성이다. 이미 개인 개발자들은 자신들만의 라이브러리를 만들어 재사용을 하고 있지만.. 이건 순전히 자신만의 라이브러리다. 다른 사람이 보면 또 분석하고 테스트 해봐야하고.. 시간이 걸린다. 한 프레임워크에 익숙해지면 그에 관련된 라이브러리는 여러사람이 알고 있을것이고 또한 더욱 빠르게 개발이 진행될것은 뻔하다.

그래서 뭐라는건가?
이글의 목적은 아직 그렇다할 프레임워크가 존재하지 않는 php의 프레임워크를 간단히 소개 할려고 한다.

너무 다양해 다 볼수 없지만 그중 가장 많이 쓰인다는 4가지를 소개할까 한다.


젠드 프레임워크
젠드 프레임워크
php계의 거의 유일한(?) 수익을 내는 업체로 젠드 옵티마이져로 유명한 업체에서 내놓은 프레임워크이다. 많은 이들이 앞으로 php 프레임워크의 대세가 될것이라는 예상을 하고 그에 못지 않게 다양한 DB및 기능을 지원하고 있다.
Pear 를 베이스로 사용하고 있어, 기본적으로 안정적이지만 우리나라에서는 pear를 싫어하는 사람이 생각외로 많아서 어떨지는 모르겠다.

개 인적은 테스트를 해봤는데.. 유난히 용량이 크고 그래서 무겁게 느껴지며, 속도도 약간 처지는 느낌이 든다. 또한 한 서버에 여러명이 사용하는 호스팅 환경이 발달한 우리나라에서는 젠드를 쓰기위해서는 루트가 각 웹서버 설정을 해줘야하기 때문에 사용에 제약이 많다.
앗 그리고 php 5에서만 돌아간다.
cakephp
cakePHP
cakePHP 는 루비온더레일즈를 기본틀로 만든 프레임워크다. 때문에 레일즈를 써본 사람은 딱 그 구조를 알고 익숙하게 사용할수 있을것같다. 홈페이지에서 제공하는 각종 강좌도 레일즈랑 비슷하게 블로그 만들기나 플릭커사이트 만들기가 제공되고 제작 방법도 아주 비슷하다.

개인적으로 맘에 드는 프레임워크다. 이유는 용량이 아주 가볍다. 또한 굳이 최고 관리자가 설치할 필요없이 개인 유저가 바로 업로드하여 설치 사용이 가능하다.
속도면에서도 그나마 php 용에서는 빠른편이다. 또한 php4, 5 모두 돌아간다.
하지만 아직 문서가 많치 않아 개발에 약간의 어려움이 따른다.
zoop framework
Zoop
역시나 가볍게 쓸수 있는 괜찮은 프레임워크다. 다양한 UI 라이브러리를 제공하는게 구미가 간다.
하지만 설치시에 몇가지 Pear 모듈을 기본적으로 설치 해야 하기에 개인 사용자가 설치를 못하는 단점이 있다. 물론 pear 화일을 직접 업로드해 설치 할 수 있지만..약간 불편한게 사실이다.
역시나 문서화가 안된게 많아 힘들다.
symfony
symfony
cakePHP 다음로 인기 있는 프레임워크다. 문서화도 꽤 잘되어있고, 다양한 예제도 있다. 거의 기본적인 프레임워크 기능은 다 들어 있지만 큰 단점으로는 PHP5에서만 돌아간다. 또한 설치도 최고 관리자가 설치해야하고, pear를 이용해야한다.
아직 php4주류인 한국에서는 사용이 힘들지 않을까 한다.

이상 몇가지 프레밍워크를 테스트 해본후 개인 느낌을 적어 봤는데..
cakePHP가 웬지 정이 간다.
신고
Trackback 0 Comment 0
2007.02.02 12:07

php개발을 위한 eclipse 환경설정

다운로드 파일
   Eclipse Platform SDK 3.0.1
   Language Pack    3.0.1_Translations
 
1. eclipse 파일 다운로드
    http://eclipse.org 에 접속한다.
    좌측 메뉴의 download 메뉴를 선택 한후
    Eclipse Platform SDK 3.0.1  다운로드 한다.
    받은 파일을 압축을 해제하면 elipse 라는 폴더가 생성되는데 이폴더를 설치할 곳으로 옮겨 놓으면 Elipse는 설치 완료!!
    여기서 저자는 C:eclipse 에 설치
 
2.  elispe 에서 한글 환경 셋팅
    eplise sdk를 다운로드한  페이지에서
    Looking for the old Eclipse downloads page? 에 걸린링크로 이동한다.
   
    이동한페이지에서 언어팩을 다운로드
    Language Pack    3.0.1_Translations 걸린링크로 언어팩을 다운로드한다.
    다운로드 완료된 파일도 임의의 디렉토리에 압축을 해제하면
    eclispe - features, plugins 의 폴더가 생성되는데, 이 모든 폴더를 elipse를 설치한 디렉토리(예: C:eclipse)에 복사해 넣는다.
    여기까지 하면 언어팩 설치 완료!!
 
3.  실행
     C:eclipseeclipse.exe 실행하면
    작업한 데이타가 저장될 공간을 지정하고 나면

 
 
 
다음과 같이 처음 시작화면이 나온다.
   

 
 
 
 
 
▶ eclipse 기반 PHP 개발 환경설정
 
다운로드 파일
1. eclipse PHP 플러그인 다운로드
    eclipse 관련 플러그인들은 eclipse 사이트 메인화면 왼쪽 메뉴 > community >  open source Project 메뉴에서 찾아볼 수 있다.
   여기서 공개프로젝트인 phpEclipse 다운로드 페이지로 이동하자.
   여기서 PHPEclipse1.1.3-2005-01-29.zip 다운로드
   임의의 디렉토리에 압축을 해제하면 features, plugins 폴더가 나타나는데 이 폴더를 모두 eclipse 설치 디렉토리 안으로 복사한다.
   eclipse 을 재시작 하면

 
그림에서 처럼 HTML_Tidy, PHP/Apache 메뉴가 추가된것을 볼 수 있다.
PHP/Apache 메뉴에서는 로컬에 설치된 Apache을 eclipse 메뉴 창 > 환경설정 > PHPeclipse WebDevelpment 에서 Apache 서버관련 사항을 설정하면 Apache 기동, 재시작, 중지 등의 기능을 바로 적용 가능하다.
 
2. APM 개발환경구축
   여기서는   Apache, php, Mysql 을 기본환경으로 가정하고  apm설치 관련은
    http://apmsetup.com/ 을 이용하기로 하자.
    apmsetup 설치및 설정은 해당 사이트의 설명을 참조.
         - 질문과 답변 : http://www.apmsetup.com/qa.html
         - 공부하기 : http://www.apmsetup.com/Tutorials/
 
   다운로드 파일 : APM_Setup5_2004_12_25.exe
 
  [ APM_Setup 모니터가 정상적으로 실행된 화면]

 
   [ apm 정상동작 확인 화면]
 

 
3. eclipse에 Apache 서버 환경 설정값 지정
 

 
  그림에서처럼 Apache 실행파일과 PHP실행파일의 위치를 수정해준다.
 

 

▶ eclipse 기반 PHP 프로젝트 샘플 작성
 
이제 elipse 기반에서 php 프로젝트를 작성해 보자.
1. 신규작성시 php 관련 항목 추가하기
    메뉴 > 창 > Perseptive 사용자 정의에서 PHP 관련항목들을 체크 상태로 바꾼 후 확인단추를 누른다.

 
2. 파일 > 신규 > PHP프로젝트 을 선택하면
    프로젝트 이름을 입력하는 대화상자에 원하는 프로젝트 이름을 입력하면된다.
 

 
 완료 단추를 누르면 PHP 프로젝트 생성이 완료된다.


 
3. php소스작성
php 소스 파일을 생성해보자.
 
 
 

※ 이때 PHP파일은 C:/eclipse/workspace/donBoard/phpinfo.php 로 위치하게 된다.
브라우져에서 확인시 http://localhost/donBoard/phpinfo.php 로 연결되므로 설치된 Apache 서버의 환경값을 수정해줘야 한다.
C:APM_SetupServerApacheconf 디렉토리의 httpd.conf 파일을 열어
DocumentRoot "C:APM_Setuphtdocs"   >>
DocumentRoot "C:eclipseworkspace"   로 수정해준다.
그런다음 Apache 서버를 Apm_moniter 등을 이용하여 재시작 해준다.
phpinfo.php
 
 
<?
echo "서버환경 테스트중<BR>";
phpino();
?>
4. 실행결과 확인
실행되었을때 화면에서 소스를 작성하면서 PHP Browser 창으로 바로 확인해 볼수 있다.
신고
Trackback 0 Comment 1


티스토리 툴바