Разница между вызовами .cfm и .cfc с помощью JQuery Ajax? - PullRequest
0 голосов
/ 29 января 2019

Я работаю над новой системой, и есть несколько вещей, которые отличаются от того, что я привык видеть.По сути, есть ajax-вызов JQuery с типом «POST» и URL-адресом, указывающим на страницу .cfm.Страница .cfm вернет таблицу html.

После разговора с ведущим разработчиком он упомянул, что этот метод более эффективен.Таким образом, вызывая .cfm, мы не создаем новый экземпляр каждый раз, когда совершаем вызов.Другой способ, если мы используем .cfc и вызываем функцию, каждый раз будет создаваться новый экземпляр.Я не знаю всего за экраном и глубокими слоями ColdFusion.

Еще одна вещь, которую он упомянул, это лучше, так как мы не используем никаких фреймворков.Я работал с ColdFusion в течение последних 4 лет, и в прошлом я видел, как JQuery Ajax вызывает component.cfc с конкретным method именем.Данные возвращаются и таблица строится динамически.Мне было интересно, если кто-то знает об этом больше и почему .cfm может быть лучше, чем звонить .cfc.

Спасибо.

1 Ответ

0 голосов
/ 30 января 2019

Чтобы получить комментарий

Я согласен с тем, что другие уже сказали.Конкретного ответа нет, потому что он всегда зависит от большего, чем этот фрагмент кода.Сказав, что ...

Я нашел это в документации Adobe здесь , которая кажется актуальной.Ниже приводится выдержка из этой документации.Я выделил жирным шрифтом ту часть, которая кажется актуальной.Обратите внимание на часть о том, как будет создан экземпляр CFC.Вы можете прочитать больше по ссылке.

Когда использовать ХФУ

Вы можете использовать ХФУ следующими способами:

  • Разработка структурированного, многократно используемого кода
  • Создание веб-сервисов
  • Создание элементов Flash Remoting
  • Использование асинхронных ХФУ

Разработка структурированного кода многократного использования

ХФУ предоставляютотличный метод для разработки структурированных приложений, которые отделяют элементы отображения от логических элементов и инкапсулируют запросы к базе данных.Вы можете использовать CFC для создания функциональности приложения, которую вы (и другие) можете использовать везде, где это необходимо, например, пользовательские функции (UDF) и пользовательские теги.Если вы хотите изменить, добавить или удалить функциональность компонента, вы вносите изменения только в один файл компонента.ХФУ имеют несколько преимуществ по сравнению с пользовательскими функциями и пользовательскими тегами.Эти преимущества, которые автоматически предоставляют CFC, включают в себя все следующее:

  • Возможность группировать связанные методы в один компонент и группировать связанные компоненты в пакет
  • Свойства, которыенесколько методов могут совместно использовать
  • Область действия This, специфичная для компонента область действия
  • Наследование методов и свойств компонента из базового компонента, включая использование ключевого слова Super
  • Accesscontrol
  • Самоанализ для методов, свойств и метаданных CFC
    ХФУ имеют одну характеристику, которая не позволяет им автоматически выбирать любой код для повторного использования.Для создания экземпляра CFC требуется относительно больше времени обработки, чем для обработки пользовательского тега.В свою очередь, обработка пользовательского тега занимает значительно больше времени, чем выполнение пользовательской функции (UDF).Однако после создания экземпляра CFC вызов метода CFC имеет примерно такие же издержки обработки, что и эквивалентная UDF.В результате не используйте CFC вместо независимых одноцелевых пользовательских тегов или пользовательских функций.Вместо этого используйте CFC для создания элементов связанных методов, особенно методов, которые совместно используют свойства.Для получения дополнительной информации о пользовательских функциях, пользовательских тегах и других методах повторного использования кода ColdFusion см. Создание элементов ColdFusion.

Создание веб-служб

ColdFusion может автоматически публиковать методы CFC как вебСервисы.Чтобы опубликовать метод CFC в качестве веб-службы, вы указываете атрибут access = "remote" в теге cffunction метода.ColdFusion генерирует весь необходимый код языка описания веб-служб (WSDL) и экспортирует методы CFC.Для получения дополнительной информации о создании веб-служб в ColdFusion см. Использование веб-служб.

Теперь я не всегда доверяю документации Adobe, поскольку у них есть неприятная привычка - просто переносить существующую документацию из версии в версию.версия.Итак, кто знает, когда это было изначально написано, и если это все еще правда.И это относится к Adobe ColdFusion, Люси, вероятно, лучше справляется с этим, но я не уверен.

Этот документ также ссылается на этот документ - Выбор среди методов повторного использования кода ColdFusion .Я включу эту информацию и здесь.

В следующей таблице перечислены распространенные причины использования методов повторного использования кода и указаны методы, которые необходимо учитывать для каждой цели.Буква P указывает, что метод является предпочтительным.(Может быть более одного предпочтительного метода.) Буква A означает, что метод предоставляет альтернативу, которая полезна в некоторых обстоятельствах.Эта таблица не включает теги CFX.Вы используете теги CFX только тогда, когда лучше всего кодировать свою функциональность в C ++ или Java.Для получения дополнительной информации об использовании тегов CFX см. Использование тегов CFX.

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...