Объединение Lisp и PHP кодирует в том же приложении

Многие объяснения уже присутствуют, чтобы объяснить, как это происходит и как это исправить, но вы также должны следовать рекомендациям, чтобы избежать NullPointerException вообще.

См. также: A хороший список лучших практик

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

Сводка:

  1. Используйте модификатор final для обеспечения хорошей инициализации.
  2. Избегайте возврата null в методы, например, при возврате пустых коллекций.
  3. Использовать аннотации @NotNull и @Nullable
  4. Быстрое завершение работы и использование утверждений, чтобы избежать распространения нулевых объектов через все приложение, когда они не должен быть пустым.
  5. Сначала используйте значения с известным объектом: if("knownObject".equals(unknownObject)
  6. Предпочитают valueOf() поверх toString ().
  7. Используйте null safe StringUtils StringUtils.isEmpty(null).

17
задан Gordon Gustafson 26 January 2012 в 01:10
поделиться

6 ответов

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

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

, Если Вы хотите пойти PHP<-> маршрут Lisp самая легкая вещь сделать состояла бы в том, чтобы заставить PHP связаться с Вашим процессом Lisp с помощью сокетов.

http://php.net/manual/en/ref.sockets.php

http://www.sbcl.org/manual/Networking.html

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

9
ответ дан 30 November 2019 в 14:01
поделиться

Вы, скорее всего, не хотели бы писать код в PHP, как только Вы начали разрабатывать в Lisp. (Новая капитализация с тех пор приблизительно 80-е, между прочим)

Hunchentoot является популярным сервером, который дает Вам основы с точки зрения соединяющихся диспетчеров к запросам. Существует серия экранные демонстрации при записи клона reddit по LispCast.com

сеть UnCommon (походит на игру слов на описании Peter Norvig Схемы в PAIP), от того, что я могу сказать более полной платформе, базирующейся в большой степени на идее продолжений, во многом как Побережье для Smalltalk.

Weblocks является еще одной основанной на продолжении веб-платформой, которая выглядит хорошей. Автор (в defmacro.org) пишет хорошие статьи, и мне нравится то, что я видел в демонстрационном приложении для Weblocks.

5
ответ дан 30 November 2019 в 14:01
поделиться

Я нахожусь в в значительной степени той же ситуации в данный момент. У меня есть много PHP под моим поясом, но язык действительно начинает раздражать меня. Я экспериментировал с различными языками, но чинил много со схемой недавно, и я рассматриваю постепенный переключатель. Возможно, мы должны запустить группу пользователей или что-то?

Происхождение из среды PHP, Вы, вероятно, привыкли к работе с тонким уровнем абстракции к протоколу HTTP. Я думаю, что это - что-то, что на самом деле облегчает переходить на новый язык; Особенно один, где нет одной доминирующей платформы. Таким образом у PHP и сообщества Lisp есть некоторые общие черты (Но также - другие фрагментированные платформы с открытым исходным кодом, такие как Python и Perl).

Одна проблема с Lisp состоит в том, что существуют так многие для выбора из. Я решил, что предпочитаю Схему по языку Common LISP, так, чтобы сузил его немного. После некоторого экспериментирования я теперь фокусируюсь на plt-схема , которая, кажется, одна Схема с большей частью импульса. Среди других вещей этому связали веб-сервер им.

2
ответ дан 30 November 2019 в 14:01
поделиться

К сожалению, я не могу придумать ни одной библиотеки для этого, однако я находился в аналогичной ситуации, когда у меня был PHP-код, но я устал от «попыток» кодировать логику (игровую логику) в PHP, поэтому я использовал PHP сокеты для подключения к Lua, таким образом, теперь я программирую всю серверную логику на Lua и использую PHP (настройка LAMP) в качестве внешнего сервера.

Надеюсь, что это помогает.

1
ответ дан 30 November 2019 в 14:01
поделиться

Я рекомендую Вам дать попытку в Weblocks.

1
ответ дан 30 November 2019 в 14:01
поделиться

Для нормальной разработки веб-страниц на PHP, Айв создал библиотеку под названием xilla_tags.

Обзор здесь

На сайте программных программ Jacob Hanssens также есть несколько хороших методов.

0
ответ дан 30 November 2019 в 14:01
поделиться
Другие вопросы по тегам:

Похожие вопросы: