MAKE JAVA GREAT AGAIN
Мемы: @java_memes
Post #697
4.48K
— Плюсы и минусы SalesForce
Платформа позволяет сосредотачиваться на бизнес проблемах за счет кучи коробочного функционала и всякого low-code, но ограничений масса. И еще из-за низкого порога вхождения количество говнокода просто зашкаливает. Более менее внятные тесты, которые писал не я или не моя команда, я не видел ни разу.
Короче, из плюсов:
• Неплохие возможности для лоу-код решений
• Обширная платформа с кучей всяких интересностей из коробки (IoT, computer vision, аналог kafka, serverless должны завезти скоро)
• Быстрое вхождение, собственная платформа для обучения, отзывчивое коммьюнити
• Работа близко к бизнесу. Решаешь сразу бизнес проблемы, а не абстрактные какие-то задачи. В адекватных компаниях бывает даже отсутствие проксей между разработкой и бизнесом.
• SFDX CLI довольно мощная тулза, которую легко расширять.
• На западе рынок очень большой и часто приходят вакансии с релокацией. В России так же рынок развивается, но медленно из-за стоимости решения. В основном это крупные энтерпрайзы или консалтеры, работающие на зарубеж.
Из минусов
• Salesforce Apex - абсолютно невыразительный язык. Нет рефлексии толком, много вещей которые есть в каком-то удобном виде из коробки в других языках приходится либо костылять, либо вообще нереально воспроизвести.
• Пакетирование в зачаточной стадии. Хорошо, что оно есть, но оно ужасно. Неймспейсы прикручивать это вообще отдельная грустная песня
• Frontend тоже печаль-беда. Прикрутить что-то с npm можно только через шаманство. При этом современные фреймворки заюзать для внутренних пользователей - близко к невозможному. Для внешних сильно проще.
• Качество кода на большинстве проектов - просто ужас
• Время отклика от тестов. Если в Джаве это почти мгновенно, то тут секунд 10 - это вообще топ скорость, поскольку все в облаке. Очень усложняет TDD
• Цены вопроса. Стоят лицензии Sf как чугунный мост. А лицензий там всяких разных полно, практически на каждую фичу отдельная лицуха. Чтобы понимать порядок цифр, полноценная лицензия стоит 100$ на пользователя в месяц. Только с этой лицензии открывается возможность настраивать орг как хочешь, разработка, вот это вот всё.
Палка о двух концах:
• Ограничения. Форс - платформа, где вы шарите мощности с другими клиентами. Соответственно нужно, чтобы ваш код не уронил всё. Для этого форс вводит искусственные ограничения. Например, не больше 150 запросов в базу за транзакцию или не больше 10к записей на апдейт. И таких ограничений, которые надо учитывать при разработке, довольно много.
В общем, штука интересная и хороша для бизнеса, но только если её по назначению использовать. На старой работе одному заказчику делали проект на форсе просто ради того чтобы на форсе, хотя на Java+Angular можно было бы сделать тоже самое в разы быстрее, дешевле, качественнее и без проблем со стороны платформы. Справедливости ради - такой бред редко происходит. В общем, как и везде, Sf - это инструмент, и надо смотреть подходит ли он в каждом конкретном случае.
Платформа позволяет сосредотачиваться на бизнес проблемах за счет кучи коробочного функционала и всякого low-code, но ограничений масса. И еще из-за низкого порога вхождения количество говнокода просто зашкаливает. Более менее внятные тесты, которые писал не я или не моя команда, я не видел ни разу.
Короче, из плюсов:
• Неплохие возможности для лоу-код решений
• Обширная платформа с кучей всяких интересностей из коробки (IoT, computer vision, аналог kafka, serverless должны завезти скоро)
• Быстрое вхождение, собственная платформа для обучения, отзывчивое коммьюнити
• Работа близко к бизнесу. Решаешь сразу бизнес проблемы, а не абстрактные какие-то задачи. В адекватных компаниях бывает даже отсутствие проксей между разработкой и бизнесом.
• SFDX CLI довольно мощная тулза, которую легко расширять.
• На западе рынок очень большой и часто приходят вакансии с релокацией. В России так же рынок развивается, но медленно из-за стоимости решения. В основном это крупные энтерпрайзы или консалтеры, работающие на зарубеж.
Из минусов
• Salesforce Apex - абсолютно невыразительный язык. Нет рефлексии толком, много вещей которые есть в каком-то удобном виде из коробки в других языках приходится либо костылять, либо вообще нереально воспроизвести.
• Пакетирование в зачаточной стадии. Хорошо, что оно есть, но оно ужасно. Неймспейсы прикручивать это вообще отдельная грустная песня
• Frontend тоже печаль-беда. Прикрутить что-то с npm можно только через шаманство. При этом современные фреймворки заюзать для внутренних пользователей - близко к невозможному. Для внешних сильно проще.
• Качество кода на большинстве проектов - просто ужас
• Время отклика от тестов. Если в Джаве это почти мгновенно, то тут секунд 10 - это вообще топ скорость, поскольку все в облаке. Очень усложняет TDD
• Цены вопроса. Стоят лицензии Sf как чугунный мост. А лицензий там всяких разных полно, практически на каждую фичу отдельная лицуха. Чтобы понимать порядок цифр, полноценная лицензия стоит 100$ на пользователя в месяц. Только с этой лицензии открывается возможность настраивать орг как хочешь, разработка, вот это вот всё.
Палка о двух концах:
• Ограничения. Форс - платформа, где вы шарите мощности с другими клиентами. Соответственно нужно, чтобы ваш код не уронил всё. Для этого форс вводит искусственные ограничения. Например, не больше 150 запросов в базу за транзакцию или не больше 10к записей на апдейт. И таких ограничений, которые надо учитывать при разработке, довольно много.
В общем, штука интересная и хороша для бизнеса, но только если её по назначению использовать. На старой работе одному заказчику делали проект на форсе просто ради того чтобы на форсе, хотя на Java+Angular можно было бы сделать тоже самое в разы быстрее, дешевле, качественнее и без проблем со стороны платформы. Справедливости ради - такой бред редко происходит. В общем, как и везде, Sf - это инструмент, и надо смотреть подходит ли он в каждом конкретном случае.






