Регистрация  |  Вход

Осваиваем AngularJS

я потихоньку ковыряюсь в теме,

и пока прихожу ко мнению, что в случае, например, с разработкой одной страницы, даже довольно сложной, нет смысла использовать AngularJS и переходить на полностью кастомную разметку. Проще обойтитсь стнадратной ВФ разметкой, компонентами и конечно AJAX ререндерингом.

Все это имеет смысл только в случае, если ВСЕ приложение делается на AngularJS. Тогда труды окупаются.

и возможные плюсы в том, что если все приложение работает на AngularJS, общаясь с сервером в РЕСТ режиме, то его не составит большого труда перенести на другую платформу. Плюс програмистские скилсы по фронту в целом и AngularJS в частности - они не Salesforce-related, а совершенно универсальны, что может иметь значение лично для для програмиста.

я потихоньку ковыряюсь в теме,

и пока прихожу ко мнению, что в случае, например, с разработкой одной страницы, даже довольно сложной, нет смысла использовать AngularJS и переходить на полностью кастомную разметку. Проще обойтитсь стнадратной ВФ разметкой, компонентами и конечно AJAX ререндерингом.

Все это имеет смысл  только в случае, если ВСЕ приложение делается на AngularJS. Тогда труды окупаются.

и возможные плюсы в том, что если все приложение работает на AngularJS, общаясь с сервером в РЕСТ режиме, то его не составит большого труда перенести на другую платформу. Плюс програмистские скилсы по фронту в целом и  AngularJS в частности - они не Salesforce-related, а совершенно универсальны, что может иметь значение лично для для програмиста.

Как раз все не так. Да, ангуляр сделан под одно большое SPA и он именно тогда проявляет себя. Но в этом случае его надо уметь "варить" правильно. А для небольших одностраничников тоже отлично подходит. Это когда все хранится прямо на странице - и разметка и логика. Для SF это даже больше подходит потому что упрощает разработку для остальной комманды (не надо всем сидеть в рамках одной страницы и становиться чистыми js разрабами). Я так начинал и долго работал в такой манере - под каждую страницу свое маленькое SPA на ангуляре. Принцип ничем не отличается от того что подключаешь jQuery и используешь его. Так же подключил Ангуляр на страницу, сделал контейнер, подключил к нему контроллер - и радуйся жизни.

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

Так что любую VF страницу можно переписать под ангуляр и она будет отлично работать, просто по началу много лишней работы.
Я к примеру вообще уже не могу разрабатывать на VF - я просто уже не помню что там куда нужно использовать. Беру любой проект, открываю любой старый, нахожу страницу + контроллер с remote actions - удаляю всю логику - оставляю только каркас и пилю новую страницу. Занимает наверное минут 10.

Как раз все не так. Да, ангуляр сделан под одно большое SPA и он именно тогда проявляет себя. Но в этом случае его надо уметь "варить" правильно. А для небольших одностраничников тоже отлично подходит. Это когда все хранится прямо на странице - и разметка и логика. Для SF это даже больше подходит потому что упрощает разработку для остальной комманды (не надо всем сидеть в рамках одной страницы и становиться чистыми js разрабами). Я так начинал и долго работал в такой манере - под каждую страницу свое маленькое SPA на ангуляре. Принцип ничем не отличается от того что подключаешь jQuery и используешь его. Так же подключил Ангуляр на страницу, сделал контейнер, подключил к нему контроллер - и радуйся жизни.

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

Так что любую VF страницу можно переписать под ангуляр и она будет отлично работать, просто по началу много лишней работы.
Я к примеру вообще уже не могу разрабатывать на VF - я просто уже не помню что там куда нужно использовать. Беру любой проект, открываю любой старый, нахожу страницу + контроллер с remote actions - удаляю всю логику - оставляю только каркас и пилю новую страницу. Занимает наверное минут 10.

ну ладно, тогда буду продолжать изучение. ту как раз и выходные подошли...

ну ладно, тогда буду продолжать изучение. ту как раз и выходные подошли...

Вот наконец-то и у меня дошли руки до ангуляр 2.
Пришлось выделить время на его углубленное изучение (за свой счет).
Есть небольшой временной промежуток перед поиском нового работодателя.

В общем давно меня беспокоил вопрос слишком огромного размера скомпилированного приложения на втором ангуляре. Ну не могу я спокойно спать видя что мой hello world занимает 5 метров.

Наводку дал angular-cli который собрал в себя самые лучшие практики и который на выходе выдает буквально сотни килобайт приложения с реально полезной нагрузкой. Но он работает по принципу черного ящика это раз и второе не позволяет (пока не позволяет) создавать "multiple apps" проекты. Поэтому я продолжил изучать все с нуля.

Вот нашел интереснейшую статья с отличным решением
http://blog.rangle.io/optimize-your-angular2-application-with-tree-shaking/

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

Вот наконец-то и у меня дошли руки до ангуляр 2.
Пришлось выделить время на его углубленное изучение (за свой счет).
Есть небольшой временной промежуток перед поиском нового работодателя.

В общем давно меня беспокоил вопрос слишком огромного размера скомпилированного приложения на втором ангуляре. Ну не могу я спокойно спать видя что мой hello world занимает 5 метров. 

Наводку дал angular-cli который собрал в себя самые лучшие практики и который на выходе выдает буквально сотни килобайт приложения с реально полезной нагрузкой. Но он работает по принципу черного ящика это раз и второе не позволяет (пока не позволяет) создавать "multiple apps" проекты. Поэтому я продолжил изучать все с нуля. 

Вот нашел интереснейшую статья с отличным решением
http://blog.rangle.io/optimize-your-angular2-application-with-tree-shaking/

[b]Tree Shaking[/b] - пока толком не понял что за хрень, но по инструкции из статьи получилось уменьшить размер скомпилированного приложения од пары сотен килобайт.

What is Tree Shaking? Tree shaking is the ability to remove any code that we are not actually using in our application from the final bundle. It's one of the most effective techniques to reduce the footprint of an application.

What is [b]Tree Shaking[/b]? Tree shaking is the ability to remove any code that we are not actually using in our application from the final bundle. It's one of the most effective techniques to reduce the footprint of an application.

Тоже положу эту ссылку в копилку знаний
https://www.phase2technology.com/blog/bundle-your-front-end-with-webpack/

Тоже положу эту ссылку в копилку знаний
https://www.phase2technology.com/blog/bundle-your-front-end-with-webpack/
Вот еще в копилку
[url=http://blog.mgechev.com/2016/06/26/tree-shaking-angular2-production-build-rollup-javascript/]Building an Angular 2 Application for Production[/url]

Еще интересная ссылка в копилку

Создаем шаблонизируемые переиспользуемые компоненты в Angular 2

Решения конечно == вывих мозга

Еще интересная ссылка в копилку

[url=https://habrahabr.ru/post/320414/]Создаем шаблонизируемые переиспользуемые компоненты в Angular 2[/url]

Решения конечно == вывих мозга :)