Python 웹프레임워크 Django
설명 자세히 나와있는 위키 http://kwon37xi.springnote.com/pages/209851
동영상 설명 http://www.showmedo.com/videos/video?name=1100000&fromSeriesID=110
"The Web framework for perfectionists with deadlines"
'Django makes it easier to build better Web apps more quickly and with less code.'
Django( http://www.djangoproject.com Django ) 는 웹기반의 뉴스사이트를 위해 시작한 python 웹 프레임워크입니다. 물론 현재의 Django는 범용적인 웹 프레임워크입니다.
2003년 부터 시작하여 2005년 여름에 오픈소스로 공개된 Django는 TurboGears( http://www.turbogears.org )와 더블어 현재 python 기반 웹 프레임워크의 쌍두마차입니다.
Guido가 "My personal favorite -- and I expect that that will remain a personal favorite for a long time -- is something named Django. ... I highly recommend it." ( http://www.twit.tv/floss11 )로 극찬하기도 했습니다.
Django의 특징은 다음과 같습니다.
- (ORM) Object-relational mapper : Hibernate( http://www.hibernate.org/ )처럼 데이터베이스를 Object로 접근할 수 있게 합니다. SQL을 사용할 수 있지만 python 코드로 모두 표현 가능합니다. 현재는 PostgreSQL, MySql, sqlite를 지원합니다.
- 자동화된 관리 사이트 : ORM을 사용할 경우 자동 또는 조금의 메타 정보 만으로 별도의 프로그래밍 없이 유저관리, 컨텐츠 관리 등을 웹 UI로 할 수 있습니다.
- 우아한 URL 설계 : 제약 없이 멋지게 URL을 설계할 수 있습니다. 블로그의 경우 /blog/2006/10, /blog/2006/10/1/this_is_test 와 같이도 할 수 있습니다. URL과 로직이 1:1 로 관리되는 것이 아닌, 의미를 같는 URL입니다.
- 캐시 시스템 : 변경보다 조회가 많은 사이트의 경우 뛰어난 성능을 얻을 수 있습니다. 조회 시점마다 페이지가 동적으로 생성되는 것이 아니라 일정 주기마다 메모리에 캐싱할 수 있습니다.
- 국제화 : gettext를 이용하여 여러 언어에 대응할 수 있습니다.
http://code.djangoproject.com/wiki/DjangoPoweredSites 에 나열된 것처럼 많은 국제적인 사이트와 개인 사이트가 Django를 이용해서 개발되었습니다.
Django는 신속하면서도 깔끔하고 실용적인 설계를 돕는 좀 더 추상적인 웹 프레임워크입니다.
'Python' 카테고리의 다른 글
운영체제 두번째 과제 메인메모리 교체기법 (3) | 2008.06.05 |
---|---|
Python에서 bmp 크기 변경하기 (0) | 2008.05.28 |
운영체제 과제 프로세스 스케쥴링 시뮬레이션 (2) | 2008.05.12 |