문제

PHP 응용 프로그램을 Python으로 포팅 할 계획입니다. 응용 프로그램은 주로 데이터 수집 및 처리에 관한 것입니다. 기본 응용 프로그램은 독립형 명령 줄 응용 프로그램으로 실행됩니다. 응용 프로그램에는 웹 인터페이스가 있으며 기본적으로 매우 가벼운 가중치보고 인터페이스입니다.

나는 PHP 버전에서 프레임 워크를 사용하지 않았지만 Python을 처음 접하는 것이 Django와 같은 것을 사용하는 것이 유리한 지 궁금합니다. 경고는 응용 프로그램과 함께 배포 해야하는 프레임 워크 부품에 응용 프로그램 배포가 압도되는 것을 원하지 않는다는 것입니다.

파이썬에서 CGI 가져 오기만이 상황에서 가장 좋은 방법입니까? 나는 프레임 워크가 너무 많은 오버 헤드라고 생각하는 경향이 있지만 아마도 나는 그들에 대해 매우 "파이썬"방식으로 생각하지 않을 것입니다. 이 시나리오에서 어떤 제안이 있습니까?

도움이 되었습니까?

해결책

명령 줄 파이썬 인 IMO는 확실히 먼저 온다. 그것이 당신이하고있는 일의 핵심이기 때문에 그것을 작동 시키십시오.

문제는 명령 줄 애플리케이션에서 웹 프레임 워크의 ORM을 사용하는 것이 명확하지 않다는 것입니다. Django는 명령 줄 앱에서 ORM을 사용하기위한 특정 지침을 제공합니다. 그것들은 처음에는 성가 시지만, 나는 그들이 장기적으로 생명을 구하는 사람이라고 생각합니다. 고객이 제공하는 파일의 거대한 업로드에 크게 사용합니다.

Bare CGI를 사용하지 마십시오. 불가능하지는 않지만 너무 많은 것들이 잘못 될 수 있으며 프레임 워크에 의해 모두 해결되었습니다. 왜 뭔가 재창조됩니까? 다른 사람의 코드 만 사용하십시오.

프레임 워크에는 학습이 포함되지만 실제 "오버 헤드"는 없습니다. 느리지 않습니다. 작성하거나 디버그 할 필요가없는 코드입니다.

  1. 파이썬을 배우십시오.

  2. 그 일을한다 장고 지도 시간.

  3. 웹 앱을 구축하기 시작합니다.

    ㅏ. 장고 프로젝트를 시작하십시오. 해당 프로젝트에서 작은 응용 프로그램을 구축하십시오.

    비. Django Orm을 사용하여 새 모델을 구축하십시오. 모델에 대한 Django 장치 테스트를 만듭니다. 그것이 작동하는지 확인하십시오. 기본 관리자 페이지를 사용하고 많은 재생을 할 수 있습니다. 그냥 만들지 마세요 전체 아직 웹 사이트.

  4. django orm을 사용하여 명령 줄 앱을 작동시킵니다. 본질적 으로이 앱이 잘 작동하려면 설정 파일을 고정시켜야합니다. 참조 설정/구성 부분.

  5. 명령 줄과 기본 관리자가 실행되면 웹 앱을 완료 할 수 있습니다.

프레임 워크의 황금 규칙은 다음과 같습니다. 쓰기, 디버그 또는 유지 관리 할 필요가없는 코드입니다. 그것을 써.

다른 팁

당신은 같은 것을 사용하는 것을 고려할 수 있습니다 web.py 배포하기 쉽고 (작기 때문에) Django와 마찬가지로 프레임 워크에 제출할 필요가 없기 때문에 다른 도구를 쉽게 조정할 수 있습니다.

그러나 Python 커뮤니티에서 가장 사랑받는 프레임 워크는 아니지만, 그것은 단지 당신을위한 것일 수 있습니다. 체크 아웃 할 수도 있습니다 web2py, 그러나 나는 그것에 대해 덜 알고 있습니다.

프로젝트의 크기에 따라 다릅니다. 당신이 독립형 응용 프로그램이라고 불리는 이전의 PHP 스크립트가 몇 개 밖에 없다면 아마도 CGI-APP에 갈 것입니다.

데이터베이스, URL 재 작성, 템플릿, 사용자 관리 등을 사용하는 경우 프레임 워크를 사용하는 것이 좋습니다.

물론, 포트를 설치하기 전에 언어를 전환하는 것이 가치가 있는지 또는 필요한 특정 파이썬 기능이 있는지 고려하십시오.

행운을 빕니다!

최근에 PHP 앱을 Python을 사용하여 포팅했습니다 web.py. 프레임 워크가 진행됨에 따라 최소한의 종속성으로 매우 가벼우 며 길을 벗어나는 경향이 있으므로 원하는 타협 일 수 있습니다.

배관을 처리하는 모든 기능을 갖춘 프레임 워크를 갖는 장점은 모든 프레임 워크 코드를 드래그 해야하는 단점을 능가하는 경향이 있기 때문에 초기 응용 프로그램에 달려 있습니다.

Django는 웹 사이트를 신속하게 채찍질 할 수있게합니다. 당신은 그것을 사용하기 위해 파이썬 마스터 일 필요는 없으며, 디자인에서 매우 피스닉이기 때문에 실제로 "마법"이 없기 때문에 Python을 배우는 데 도움이 될 것입니다.

예에서 시작하여 TWID의 Django 스크린 캐스트를 확인하면 길을 갈 것입니다.

천천히 시작하고 관리자를 조정하고 쉘을 통해 가지고 노는 것이 시작하는 방법입니다. ORM을 다루고 일이 작동하는 방식을 얻으면 실제 물건을 구축하기 시작하십시오!

S. Lott가 말한 것처럼 프레임 워크는 성능 문제를 일으키지 않을 것입니다.

프레임 워크를 찾으십시오. Python이 PHP와 같은 웹 특수화되지 않기 때문에 세션 처리와 같은 기본 사항은 악몽입니다.

Django가 너무 많다고 생각되면 매우 작지만 여전히 편리한 Web.py와 같은 가벼운 것을 시도 할 수 있습니다.

피트의 사랑을 위해 프레임 워크를 사용하십시오! Cherrypy에서 Django, Albatross에 이르기까지 문자 그대로 수십 개의 프레임 워크가 있습니다. 실제로, 수많은 웹 프레임 워크는 사람들이 레일의 인기에 대해 우는 소리를지는 것입니다.

Python Web Development 커뮤니티는 단일 목소리없이 나뉘어져 있습니다. 그러나 그것은 또 다른 주제 AllTogether입니다! 요점은, 상당히 가볍지 만 하루 종일 당신을 데려 갈 수있을 정도로 강력한 "웹 툴킷"(예 : Albatross)이 있다는 것입니다 (예 : 봇을 자동 검증하는 것은 간단한 양식 제출 가짜를 사용하지 않았거나 MVC를 깨끗하게 유지하는 데 도움이되지 않았습니다. ).

"너무 많은 프레임 워크"가 아닌 것을 원한다면 여기를 살펴보십시오.

http://wiki.python.org/moin/webframeworks

"템플릿을 제공하는 기본 프레임 워크"를 살펴보십시오. 그들은 모두 가벼우 며 Mac 트럭을 강요하지 않고 "바퀴를 재발 명하지 마십시오"물건을 모두 수행합니다.

응용 프로그램을 배포하는 방법에 따라 다릅니다.
내부적으로 만 사용되는 경우 Django로 이동하십시오. 그것으로 일하는 것은 기쁨입니다. 그러나 Django는 실제로 분배 작업에 부족합니다. Django-Applications는 설치가 고통 스럽습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top