Я изобрел ClayforSalesforce.com, чтобы создавать приложения для Salesforce. Для их создания мы используем Vanilla Javascript, модули NPM и автоматизацию GULP. Это открытые отраслевые стандарты.

Мы разработали модели и коннекторы таким образом, что разработчикам нужно было только написать «Account.create({ ….»), чтобы использовать данные Salesforce в реальном времени. Мы даже автоматизировали управление и интеграцию со статическими ресурсами и страницами Visualforce.

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

Одной из наиболее эффективных функций Clay является преодоление принципа ожидания и сохранения Salesforce. Salesforce заставляет разработчиков ждать 20–50 секунд каждый раз, когда они сохраняют свою работу.

Представьте, что для каждого абзаца, который вы сохраняете в Word, вам приходится ждать 50 секунд.

Если разработчики делают «орфографическую» ошибку, у них есть 50 секунд, чтобы это выяснить.

Clay сокращает эти 50 секунд — мы убиваем сохранение и ожидание, потому что это пустая трата времени, и мы все делаем для производительности и любви разработчиков.

Тем не менее Clay занимает около 5 секунд, поскольку мы вводим код внутри Salesforce, поэтому нам нужно дождаться загрузки внешнего скелета; Использование глины использует живые данные, поэтому мы должны дождаться их загрузки. Эти 5 секунд, умноженные на бесконечное количество изменений в день, дают большую трату времени.

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

Когда приложения публикуются, они должны существовать внутри Salesforce Safety of Visualforce Pages, что также является большим плюсом, поскольку они не требуют ограниченных вызовов API.

Но это не значит, что вначале они должны быть страницами Visualforce!

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

Одним из основных компонентов Clay является Clay Model, созданная по образцу двух лучших фреймворков Javascript. BackboneJS и SpineJS. Мы разработали соединители, чтобы эти улучшенные модели подключались к данным Salesforce.

Мы сделали так, чтобы их можно было заменить. Например, у нас есть Clay-Model-VFR, который работает внутри Visualforce (он же: внутри Salesforce без использования вызовов API), и у нас есть Clay-Model-Salesforce-API, который работает для автономных приложений (например, для их использования в автономном режиме или на мобильных устройствах). .

Поэтому наш совет — прототипировать ваши приложения как автономные приложения Clay с помощью Clay-Model-Salesforce-Api. Поскольку модели Visualforce и Standalone взаимозаменяемы, это имеет смысл.

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

Для еще большей производительности вы можете автоматически «мокать» свои данные!

Вот хитрость:

  1. Запрашивайте ваши данные в обычном режиме

2. Найдите Http-вызов в Network Inspector для запроса и скопируйте (ctrl-c) ответ.

3. Наконец, вместо того, чтобы запрашивать данные, просто введите их с помощью Model.refresh.

Теперь — это даст 100-кратное улучшение производительности разработки.

Дайте мне знать, что вы думаете @rodriguezartav в твиттере.