Я изучаю Python и мне интересно использовать его для веб-скриптинга. Какие фреймворки есть и мне они нужны? - PullRequest
1 голос
/ 13 февраля 2011

Я изучал python для использования в ArcGIS и некоторых других не-веб-приложениях. Однако теперь, когда я занялся созданием личного веб-сайта, мне интересно использовать его для веб-разработки (поскольку это единственный язык сценариев, который я знаю в настоящее время).

Я заметил, что существует множество таких вещей, называемых "фреймворками", как Django. Из того, что я понимаю, это всего лишь набор пакетов, которые помогут вам не изобретать велосипед, но я не знаю, как они работают.

Кроме того, мне не нравятся графические интерфейсы, если мне нужна среда, я хотел бы найти такую, которая могла бы использоваться через терминал, начиналась с простого и могла быть масштабирована для большей сложности, когда я буду готова. Любые советы или идеи по фреймворкам и почему я хотел бы использовать один?

Ответы [ 5 ]

2 голосов
/ 13 февраля 2011

Веб-фреймворки Python не имеют ничего общего с графическим интерфейсом и могут использоваться через терминал.

Преимущества фреймворка, как вы говорите, все в том, чтобы сделать вашу жизнь проще, предоставляя компоненты, необходимые для создания веб-сайта: основными из них являются взаимодействие с базой данных через ORM, систему шаблонов,и маршрутизация URL.Вдобавок ко всему, большие фреймворки также включали дополнительные функции, такие как аутентификация пользователя, интерфейс администрирования и т. Д.

Лично мне нравится Django, но ваш пробег может варьироваться: я бы сказал, что Что бы вы ни делали с Python и в Интернете, потребуется какая-то платформа, даже если это одна из абсолютно минимальных систем, таких как Flask, которая в основном выполняет только часть маршрутизации.Нет смысла писать все эти вещи с нуля, когда это сделано для вас.

2 голосов
/ 13 февраля 2011

Я бы остановился на посте выше: Django - это отличный фреймворк, который в конечном итоге сэкономит вам массу времени.

Практически все проблемы, с которыми вы столкнетесь при написании веб-приложения, уже будут решены, например, Как я могу отправлять электронные письма? А как насчет интерфейса администратора для редактирования данных? Безопасность пользователя?

На мой взгляд, выбор лучшей среды - это экосистема вокруг этой среды. Насколько хорошо это используется? Это широко обсуждается в интернете? Сталкивались ли и сталкивались ли другие проблемы с которыми я сталкиваюсь?

С точки зрения того, где вы начинаете, смотрите Учебное пособие по Django здесь: http://docs.djangoproject.com/en/1.2/intro/tutorial01/

Если вы думаете, что Django предлагает вам слишком много, я бы порекомендовал вам взглянуть на CherryPy, чтобы просто сравнить другой и гораздо более простой подход.

2 голосов
/ 13 февраля 2011

Я бы порекомендовал использовать Google App Engine - в нем есть все базовые компоненты фреймворка для быстрого запуска, и есть несколько книг , в которых также подробно объясняется, как его использовать. как учебники . Также вокруг него большое сообщество.

  • хостинг приложений бесплатный!

Я лично создал простой сайт после просмотра книги , и у меня практически не было опыта веб-разработки.

1 голос
/ 13 февраля 2011

С Python у вас есть много вариантов. Для начала я бы порекомендовал посмотреть здесь - он объясняет основы и предоставляет довольно полный список фреймворков.

Если вы ищете что-то простое, но также способное справиться с более сложными задачами, тогда вам стоит взглянуть на web2py . Он не требует установки или настройки, не имеет зависимостей и включает в себя веб-сервер и реляционную базу данных. Он также включает дополнительную интегрированную веб-среду разработки и интерфейс администратора, но вместо этого вы можете работать через терминал.

Это очень легко выучить и было разработано для простоты использования, ускорения разработки и безопасности . Вы можете многое сделать с помощью очень небольшого количества кода благодаря включенному приложению скаффолдинга и множеству разумных вариантов поведения по умолчанию. По мере того, как все усложняется, web2py может справиться с этим, поскольку он представляет собой хорошо интегрированную интегрированную интегрированную среду с множеством встроенных функций, включая уровень абстракции базы данных, обработку и проверку форм, управление доступом, веб-службы и простой Ajax интеграция.

0 голосов
/ 13 февраля 2011

Лично я не использую никаких фреймворков, я пишу либо с нуля на BaseHTTPServer, либо с использованием WSGI (с mod_wsgi).

Это немного долго, чтобы написать скелет, но я думаю, что этобыстрее (я имею в виду во время выполнения), меньше ограничений и меньше учиться.

...