
gxwin
20.09.2017
09:03:23

Глеб
20.09.2017
09:03:35
А потом заходишь в код проектов на этих динамических языках и тянешься за веревкой с мылом, особенно, если эта борода падает тебе на поддержку

? animufag ?
20.09.2017
09:04:33

Митко Соловец?
20.09.2017
09:04:56

Google

Митко Соловец?
20.09.2017
09:05:22
выросла нагрузка - у тебя автоматически по твоим правилам поднимаются дополнительные ресурсы

gxwin
20.09.2017
09:06:50

Митко Соловец?
20.09.2017
09:07:22
если вы боитесь легаси, вы не ту профессию выбрали)

gxwin
20.09.2017
09:08:23

Глеб
20.09.2017
09:08:23
Словари в динамических языках хуже. Никогда не знаешь что является ключом на этот раз - 1 или "1"

gxwin
20.09.2017
09:10:44

Quantum Harmonizer
20.09.2017
09:19:35

gxwin
20.09.2017
09:20:33
по моим наблюдениям, пока джависты решают проблемы созданные им самим (оборачивая в оборачивание), какой-нибудь питонщик, решает ту задачу кратно проще (тупо объединив данные, потому что все данные у него подобие словаря). Вопрос в том, что на джаве действительно можно написать модульный код, то есть буквально слоями за слоями положить его (как бы в противовес спаггети коду, когда меняя состояния в одном слое падает другой). Но так писать еще надо уметь и это не фишка джавы, а фишка ООП и IoC
То есть на динам языках решается проще и быстрее, но порой ценной спаггети кода
Те же задачи
Кроме архитектурных задач, например мультипоточности

guga
20.09.2017
09:26:18

Quantum Harmonizer
20.09.2017
09:26:24
Динамические языки не дают гарантий, что такое-то свойство и такой-то метод вообще существует.

Google

Fedor
20.09.2017
09:27:27
А разве не на любом языке можно писать спагетти? Такое чувство, что вы все в стартимах сидите с идеальным заказчиками и менеджментом

Митко Соловец?
20.09.2017
09:28:08

guga
20.09.2017
09:29:10
О_О
где?

Quantum Harmonizer
20.09.2017
09:29:43
гыы, @kotlin_lang превращается в @jvmchat :)

guga
20.09.2017
09:29:52

gxwin
20.09.2017
09:30:00

Fedor
20.09.2017
09:30:00
Ну ладно ладно, не в тему разговора, просто как-то архитектура языка, как по мне, обычно меньшая из проблем.

Митко Соловец?
20.09.2017
09:30:16

Fedor
20.09.2017
09:30:41
Корпоративщики должны страдать, да

Митко Соловец?
20.09.2017
09:31:01
где?
да те же сервера распределенных транзакций

Quantum Harmonizer
20.09.2017
09:31:16

gxwin
20.09.2017
09:32:28

John
20.09.2017
09:32:37

Quantum Harmonizer
20.09.2017
09:33:28

gxwin
20.09.2017
09:33:31
с рефакторингом печалька, да и с автокомплитом порой

Митко Соловец?
20.09.2017
09:33:36

Глеб
20.09.2017
09:34:17

guga
20.09.2017
09:35:52

Google

gxwin
20.09.2017
09:36:57


John
20.09.2017
09:37:00
с рефакторингом печалька, да и с автокомплитом порой
я когда начинал после жавы писать на жс (реакт+редукс), было так приятно писать код "с нуля", быстро, четко, минимум бойлерплейта. но потом понадобилось поддерживать и рефакторить уже написанный код, и, в силу слабого опыта разработки на динамических языках, это была настоящая боль, когда ты правишь что-то в одном месте, и у тебя отваливается часть функционала в другом, при этом это все только тестами можно выяснить, а если их нет или они не учитывают конкретный случай - только в рантайме можно узнать, что ты забыл проперти переименовать


Quantum Harmonizer
20.09.2017
09:38:14
я когда начинал после жавы писать на жс (реакт+редукс), было так приятно писать код "с нуля", быстро, четко, минимум бойлерплейта. но потом понадобилось поддерживать и рефакторить уже написанный код, и, в силу слабого опыта разработки на динамических языках, это была настоящая боль, когда ты правишь что-то в одном месте, и у тебя отваливается часть функционала в другом, при этом это все только тестами можно выяснить, а если их нет или они не учитывают конкретный случай - только в рантайме можно узнать, что ты забыл проперти переименовать
вообще, по JS-коду порой видно, что его писал джавист ?


Митко Соловец?
20.09.2017
09:39:25

guga
20.09.2017
09:40:29

John
20.09.2017
09:41:10
ну, я думаю тут со мной согласяться, что писать на js сколько нибудь сложное приложение, не покрывая всё и вся тестами - сулит огромными проблемами в будущем. при этом на Java, что уж там, можно подзабить и ничего страшного не случится

Anton
20.09.2017
09:43:12
поэтому будущее джава энтерпрайза за бутом, за вертиксом, за бутиком, спаркаджава и т..д.
но каким образом? одна из основ ЕЕ - это жирные и доргие сервера приложений, которые вендоры впаривают тырпрайзу. всякие вертиксы и соверменные решения, не подразумевают вообще что они будт запускать в каком-то бесполезном контейнере. т.е. все эти аппсервера преполагается выкидывать, а вендоры на такое не пойдут.
опенс-сорс... большие корпорации доверяют проудктам больших корпораций, кровавый тырпрайз очень настороженно к нему отсносится.

Konstantine
20.09.2017
09:43:40
Писать на джеэс вообще сулит проблемы

Митко Соловец?
20.09.2017
09:43:53


gxwin
20.09.2017
09:44:23
я когда начинал после жавы писать на жс (реакт+редукс), было так приятно писать код "с нуля", быстро, четко, минимум бойлерплейта. но потом понадобилось поддерживать и рефакторить уже написанный код, и, в силу слабого опыта разработки на динамических языках, это была настоящая боль, когда ты правишь что-то в одном месте, и у тебя отваливается часть функционала в другом, при этом это все только тестами можно выяснить, а если их нет или они не учитывают конкретный случай - только в рантайме можно узнать, что ты забыл проперти переименовать
На динам языках надо уметь писать, ты получаешь более простое решение чем в статик языках, ценой контроля кода (самому). На самом деле, что в тех языках придется тесты писать, что в тех. Реальная проблема, кроме ужасов рефакторинга и отсутствия автокомплита это производительность и порой отсутствие вменяемой многопоточности. Ставя противовес джавы и питона, я скажу что без IDE на джаве вообще попаболь писать. Так что весь этот рефакторинг превращается в тыкву, если в этот момент нет норм IDE.
А вот динамизм (рефлексия) она всегда нужна, даже спринг делает прокси-обертки, чтобы достичь уровня мета-программирования динам языков.


Митко Соловец?
20.09.2017
09:44:37

gxwin
20.09.2017
09:50:01
и да, нод.жс это же адок

DarkMentat
20.09.2017
09:50:58
Ну учитывая, насколько двигаютсья всякие ts и flow в js, и то, что в питоне думают про анотации типов, походу уже всем ясно, что без типов никуда. И чем они строже, тем лучше. Про скорость на дин. языках - миф, на стат. языках можно так же бысть писать, если посадить макаку и отключить ей моск

Quantum Harmonizer
20.09.2017
09:51:52


Anton
20.09.2017
09:52:45
Pivotal, создатель Spring - чем не серьезная компания?
тем что основной продукт опенсорс, нужная развитая платная поддержка решения. основная задача, которую решают ЕЕ-сревера - стратегическое прикрытие задницы. вот наковнокодили что-то, например, в типичной конторе с жесткой вертикальной иерархией и хуевой тучей обязатесльтв (госконтора, банк, например) - и оно ебанулось. если это опенс-сорс - все получают пизды "- вы чо сука нахуй! - да тут спринг-микросервис не так настроили! - да у нас убытки, блеать. пермии лишу!". а теперь та же самая сиутация с жирным и дорогим апп.севером "- вы чо сука нахуй! - аяй ая яй, это же вебсфера упала, оркал, купленная за миллионы! как же так, как же так... - да ладно! мы же за миллионы эту хуйню купили, как же так?!". и пока все устравиают длинное разбирательство, ссылаются на вендора, все стороны успевают прикрыть задницу, а если не получается - вызывают вендора


Митко Соловец?
20.09.2017
09:53:57
цены видел на продукты? даже консерваторы смотрят в сторону опенсорса

Quantum Harmonizer
20.09.2017
09:54:07
рефлексия нужна в довольно узком круге задач
Вообще, я выделил для себя «мягкую рефлексию» (скажем, прочитать аннотации на параметрах чтобы передать что-нибудь) и «жёсткую» — выставить значения приватных полей, создать экземпляр в обход конструктора, и т. п..
Вот последняя ведёт к проблемам.

Митко Соловец?
20.09.2017
09:54:27
дешевле нанять профи, которую будут разрабатывать на опен-сорс стеке. чем платить вендору миллиарды

Google

gxwin
20.09.2017
09:54:53

Quantum Harmonizer
20.09.2017
09:55:10

Anton
20.09.2017
09:56:11

gxwin
20.09.2017
09:56:18
если уровень разработчика норм и он не ставит целей гадить, то красиво == надежно, и поддерживаемо

Митко Соловец?
20.09.2017
09:56:59
веблоджик тонны нефти стоит

Anton
20.09.2017
09:57:46
вилдфлай бесплатный
они его с платной поддержской берут. там томката достаточно было, проедложили - сказали томкат нельзя, потому-что нет платной поддержки

gxwin
20.09.2017
09:57:50
Ну никто не будет удалять в структуре важные данные, так же как и никто не будет делать приватные поля публичными. Беря в руки динам язык и самому вставлять палки и потом возмущаться, что компилятор тут бы мне помог - это глупо слегка

Митко Соловец?
20.09.2017
09:58:25

Anton
20.09.2017
09:58:33

Митко Соловец?
20.09.2017
09:58:43
оооооо
у вас же есть вроде проекты с упором в опенсорс
даже скала есть
видимо проект у тебя старый или..?

Fedor
20.09.2017
10:00:14
хех)

Anton
20.09.2017
10:02:00
у вас же есть вроде проекты с упором в опенсорс
сбт очень большой, может и где-то реально есть. но сколько не встречал, ситуация такая:
если АС будет торчать во внешний мир - то сразу жесткая технологическая карта, с вендорскими решениями. если внутренний проект - то можно и опенсорсится и вообще разные решения использовать, свободы гораздо больше

Митко Соловец?
20.09.2017
10:02:38
АС - это что?

Anton
20.09.2017
10:03:13
автоматизированная система. в ТЗ так называют почти любую систему, сервис

Sergey
20.09.2017
10:04:46

Anton
20.09.2017
10:06:11

Google

Митко Соловец?
20.09.2017
10:07:46

DarkMentat
20.09.2017
10:08:16

Quantum Harmonizer
20.09.2017
10:08:16
быстрее разрабатывать, но дольше проверять, не поломал ли чего

Sergey
20.09.2017
10:08:22
четкие контракты в сигнатурах и вывод типов, вот что быстро
мы в пхп тайпхинтами упарываемся не от хорошей жизни с динамическим языком

Quantum Harmonizer
20.09.2017
10:11:45
by the way, динамический шаблонизатор — не так уж и плохо

Anton
20.09.2017
10:12:31

Sergey
20.09.2017
10:12:38
пхп как шаблонизатор в пхпшных приложухах тоже не используется) для этого отдельные темплейтовые фреймы есть

Quantum Harmonizer
20.09.2017
10:13:15

gxwin
20.09.2017
10:13:21
чем на динамических языках решения будут проще чем на статических?
Если по питоняче:
за счет утиной типизации (не важное что это главное чтобы крякало - имело метод тот или иной). Все есть объект, полная рефлексия, мета-программирование, все данные есть последовательности, данные контекста - обычный словарь и чаще отделены от исполнения.
Пока твоя программа компилируется, скриптовой язык уже исполнился.
Ну и меньше кода, намного его меньше. Меньше кода - качественней бизнес логика программы и меньше ошибок.

Руслан
20.09.2017
10:13:28
Так гайз, особенно Дима, оффтоп такой лучше для jvmchat подходит

DarkMentat
20.09.2017
10:13:49

Quantum Harmonizer
20.09.2017
10:13:55
сравнить PHP-код с Kotlin-кодом — разница будет в изящности, надёжности, но никак не в размере

Sergey
20.09.2017
10:14:34
на котлине будет в разы меньше кода