Как приятно Python 'течет' с HTML по сравнению с PHP?

Изучите лучшие практики и разработку программного обеспечения и как применить их к C#.

Изучают Управление версиями, TDD, Доменную Управляемую Разработку, Непрерывную Интеграцию, MVC, MVP, Горстку шаблонов: фасад, фабрика, репозиторий по сравнению с активной записью, и т.д.

инструменты Learn, которые помогут Вам постараться не изобретать велосипед: Блок приложений Проверки, NHibernate, и т.д.

я нашел эту свободную электронную книгу от парней в CodeBetter несколько дней назад: текст ссылки

я не считал все это, но он похож на хорошее чтение.

11
задан Tony Stark 21 August 2009 в 13:27
поделиться

5 ответов

Невозможно легко сравнить PHP и Python.

PHP - это среда веб-обработки, разработанная специально как подключаемый модуль Apache. Он включает в себя обработку протокола HTTP, а также язык программирования.

Python - это «просто» язык программирования. Существует множество веб-фреймворков Python для подключения Python к Apache. Есть mod_wsgi , CGI, а также фреймворки веб-приложений разной степени сложности.

«Использование PHP там, где я хочу» - не совсем подходящий способ судить о Python как о языке для создания веб-сайтов.

Фреймворк (например, Pylons , Django , TurboGears и т. д.) отделяет представление (шаблоны HTML) от программирования и доступа к базе данных. PHP объединяет все три аспекта веб-приложения в одну вещь - язык PHP.

Если вы хотите переключиться с PHP на Python, вы должны сделать следующее:

  1. Начните без предубеждений, без предвзятости, ничего.

  2. Начните заново с учебника по выбранной вами структуре. Выполните все учебное пособие, не сравнивая все, что вы делаете, с PHP.

  3. Начните заново решать выбранную проблему с помощью выбранной вами структуры. Создавайте все, не сравнивая все, что вы делаете, с PHP.

После того, как вы создали что-то с использованием веб-фреймворка на основе Python - не сравнивая ничего с PHP - вы можете сделать шаг назад и сравнить и сопоставить эти две вещи .

Люди, которые задают такие вопросы, как Python - substr , java и python эквивалент php foreach ($ array as $ key => $ value) , что такое python, эквивалентный PHP $ _SERVER? иногда пытаются сопоставить свои знания PHP с Python. Не делайте этого.

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


Править

Все веб-фреймворки Python имеют некоторые возможности «логики представления» в своих механизмах шаблонов. Это «скользкая дорожка», где вы легко можете превратить простой шаблон в беспорядок. Очевидно, что простая конструкция {% if%} и {% for%} полезна для упрощения условных и повторяющихся элементов шаблона HTML.

Помимо этого, он начинает работать с становится непонятно, сколько мощности следует вложить в язык тегов.

С одной стороны, у нас есть PHP / JSP и связанные с ним технологии, в которых механизм шаблонов может (и часто делает) все. Это превращается в беспорядок. Посередине находятся Jinja и Mako , где механизм шаблонов может многое сделать. На другом конце - Django, где механизм шаблонов делает как можно меньше, чтобы избежать смешения логики представления и обработки.

25
ответ дан 3 December 2019 в 02:52
поделиться

Прежде всего: уйти в язык программирования из HTML приятно, когда вы делаете небольшие хаки. Для реального производственного веб-приложения я бы никогда не стал этого делать.

Вмешивать HTML в язык программирования непрактично. Лучше использовать какой-нибудь язык шаблонов. Отступы не являются проблемой для Python больше, чем для любого другого языка.

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

1
ответ дан 3 December 2019 в 02:52
поделиться

Хорошо. Прежде всего, вы должны знать, что смешивание кода с презентацией считается плохой практикой. Хотя вы можете использовать механизмы шаблонов, которые позволяют смешивать любой код python внутри html, например Mako , обычно веб-библиотеки и фреймворки python предпочитают писать логику в файле сценария python и отдельном шаблоне html для визуализации результаты.

Тем не менее, python намного проще, чем PHP.

Но вы можете быть продуктивными только на python Если вы готовы изучить его способ программирования.

Если вам нужен PHP, ничто не может быть больше PHP, чем сам PHP, и python использует разные подходы, так что, возможно, вы будете разочарованы, потому что все не так, как вы привыкли.

Однако, если вы это в поисках нового, лучшего способа работы, python для вас.

2
ответ дан 3 December 2019 в 02:52
поделиться

Если бы вы перешли на веб-платформу MVC, вы бы обнаружили, что на самом деле и PHP, и Python используют HTML аналогичным образом.

Работа над запросом выполняется в контроллерах. , используя модель для сбора данных. Затем результаты отправляются в представление, которое, по сути, является шаблоном HTML.

Вы можете иметь хорошо спланированный HTML-файл в качестве представления, и ваш контроллер просто скажет ему, чем заполнить себя.

В PHP это часто делается с помощью альтернативного синтаксиса PHP .

2
ответ дан 3 December 2019 в 02:52
поделиться

Да, таким образом PHP прост в использовании. Но это не рекомендуемый способ! Лучше использовать шаблоны. Фактически, то же самое можно использовать и с PHP.

0
ответ дан 3 December 2019 в 02:52
поделиться