Oleg
Не помню чтобы в коммерции с этим были проблемы ))
У меня кореш девопс, проклинающий джаву с первых дней знакомства. Из-за того, что она всю память на машинах выжирает. Ещё знаю Немчинского на Ютубе, он джаву воспевает за то, что она едет на любом утюге и вакансий масса. Это всё, что я знаю о джаве
Vladislav
У меня кореш девопс, проклинающий джаву с первых дней знакомства. Из-за того, что она всю память на машинах выжирает. Ещё знаю Немчинского на Ютубе, он джаву воспевает за то, что она едет на любом утюге и вакансий масса. Это всё, что я знаю о джаве
Вопрос к квалификации программистов, наши девопсы наоборот джаву любят, на ней код шустрее работает, меньше нагрузка на оборудование. Можно на любом языке написать парашу которая всю память сожрет
Vladislav
в одном файле можно много классов написать
Кто так делает, без явной на то причины, тех ловят в подворотне и больно бьют ногами. А в голанг это нормальная практика
Oleg
новые версии jvm, уже обратно могут память отдавать, пусть кореш просыпается с 2010
Ну так он девопс, он на ней не пишет. Скорее всего на проекте используется старая версия джавы, которая память не отдаёт. На многих джава проектах Легаси
Sanity = nil
Это вы еще java не пробовали
Щас сижу разбираю ентити класс на 1500 строк, безудержнее веселье.
Aleksandr
Кто так делает, без явной на то причины, тех ловят в подворотне и больно бьют ногами. А в голанг это нормальная практика
а зачем вы пытаетесь стандарты ООП-языка пронести в Го? У нас код принято разделять не по сущностям а по функциональности
Aleksandr
подход принципиально разный
Aleks
Щас сижу разбираю ентити класс на 1500 строк, безудержнее веселье.
Жесткий ООП типа рич домен модел он такой может быть.
Vladislav
Нету проклятого наследования только
Aleks
в голанг нету классов, есть логические модули, на которые разбит проект
Это всеравно что сказать что если использовать в C++ struct вместо class, то классов нет. :)))
Sanity = nil
Жесткий ООП типа рич домен модел он такой может быть.
Ага, 50 статических стринг вариаблей и енумсы не импортнутые с пакета utils, а дефайнутые прям в классе.
Vladislav
структуры это какая парадигма ООП?
Это не парадигма, это аналог классов
Aleksandr
я бы скорее сказал что Го даёт плюшки ООП, но при этом сам подход как к ооп-языку не приветствует. Но я вообще ньюфаг относительно большинства в чате так что поправляйте если что
Aleks
я бы скорее сказал что Го даёт плюшки ООП, но при этом сам подход как к ооп-языку не приветствует. Но я вообще ньюфаг относительно большинства в чате так что поправляйте если что
Подход ООП нужно использовать там где удобнее, а где удобнее к примеру и функциональщину, Go дает возможность использовать и то и то.
Sanity = nil
Как делишь функционал, вокруг чего пишешь логику?
eternalfrenzy
Это всеравно что сказать что если использовать в C++ struct вместо class, то классов нет. :)))
но ведь struct и class разные ключевые слова с разным функционалом и предназначением
Aleksandr
Вот из за того что не приветствуется код и похож на нечитаемый кусок недоразумения
я думаю можно согласиться на том что это субъективщина и остановиться. Можно так же вспомнить про то что если мы микросервисы пишем то ничего не раздувается до нечитаемости
Aleks
но ведь struct и class разные ключевые слова с разным функционалом и предназначением
НЕ считая инверсии приватности нет разницы по функционалу.
Vladislav
Как делишь функционал, вокруг чего пишешь логику?
Использую di для внедрения зависимостей, как у нормальных людей принято
Aleksandr
Как делишь функционал, вокруг чего пишешь логику?
вокруг некоей общей функции которую выполняет данный пакет
Aleksandr
есть набор методов взаимодействия с бд - будет пакет db
Artem
Как Го может называться ООП, если тут 1,5 из 3 столбов ООП просто отсутствует. Вы просто привыкли мыслить классами, поэтому явно переносите эту логику на Го. Такими темпами Си можно назвать ООП языком
Sanity = nil
Ну что ты для него в го юзаешь? Интерфейсы?
Aleksandr
для di
eternalfrenzy
НЕ считая инверсии приватности нет разницы по функционалу.
эта инверсия по приватности там не просто так, это разные конструкции, struct не должен использоваться для объявления классов
Vladislav
Что за di?
dependency injection
Sanity = nil
dependency injection
Спрашиваю что юзаешь для него.
Vladislav
Спрашиваю что юзаешь для него.
Фреймворки не использую
Sanity = nil
Фреймворки не использую
Чисто сеттер/конструктор/метод инжекшены?
Vladislav
Спрашиваю что юзаешь для него.
Нативно создаю инстансы и внедряю в конструктор через интерфейсы
Aleksandr
Спрашиваю что юзаешь для него.
ну вообще не обязательно что-то юзать для di, это же паттерн-таки
Aleksandr
хотя я про di знаю примерно ничего потому что в го его не юзает никто
Artem
хотя я про di знаю примерно ничего потому что в го его не юзает никто
давно не видел кода, без di. Хотя бы примитивного
Aleksandr
только знакомые с С# жаловались что его якобы "нет"
Vladislav
хотя я про di знаю примерно ничего потому что в го его не юзает никто
Это очень печально. А как же подменять зависимости для тестов
Sanity = nil
Ну вот в спринге di сделан просто великолепно, думал в гошке тож такое есть, неудивительно что нет. Я тоже через интерфейсы в конструкторы юзаю, так что это уже дефолт что-ли.
Aleksandr
давно не видел кода, без di. Хотя бы примитивного
хз, я мб в каких-то не крутых конторах работаю. Сегодня спрошу чела из Яндекса юзают ли они DI
Artem
и как любим говорить в Го "явное лучше неявного"
Vladislav
Я уже в го наверное полгода перехожу и каждый раз сталкиваюсь с каким-нибудь бардаком и бросаю это дело
Mikhail
Не помню чтобы в коммерции с этим были проблемы ))
В биг дате есть) когда петабайты надо ворочать
Mikhail
новые версии jvm, уже обратно могут память отдавать, пусть кореш просыпается с 2010
отдавать то научились) конский футпринт никуда не делся
Vladislav
хз, я мб в каких-то не крутых конторах работаю. Сегодня спрошу чела из Яндекса юзают ли они DI
Да зачем сразу яндекс. Озон вот юзает. Другие адекватные конторы тоже
Гриша
но ведь struct и class разные ключевые слова с разным функционалом и предназначением
А в чем плюсах разница в функционале между struct и class кроме того что в структуре поля по умолчанию публичные, а в классе приватные?
Aleksandr
Да зачем сразу яндекс. Озон вот юзает. Другие адекватные конторы тоже
и оттуда тоже есть знакомые, обращусь. На сишарпе юзают точно, но юзают ли на го - проверю
Artem
структура - сложное значение класс - как класс в джаве
Aleksandr
и разберусь, мб я что-то годное упускаю
Гриша
Ну ты просто сказал что функционал разный
Vladislav
и оттуда тоже есть знакомые, обращусь. На сишарпе юзают точно, но юзают ли на го - проверю
Я вот по таким причинам каждый раз го и бросаю. Умные люди годами практики для разработки читаемого поддерживаемого кода придумывали. А потом появилось го комьюнити которым на эти практики насрать с большой колокольни. Потому что го это просто, нам не нужна эта херня и мы пишем код как хотим.
Vladislav
А нечитаемость кода можно оправдывать тем, что у нас микросервисы, а в рамках них, можно не утруждать себя усложнением
Vladislav
т.е. Роб Пайк не умный человек?
А я про роба пайка нечего и не говорил, он зайка. Я сказал про комьюнити вокруг го
Aleksandr
А я про роба пайка нечего и не говорил, он зайка. Я сказал про комьюнити вокруг го
я как-то не замечал прям расхождения между разрабами Го и комьюнити
Aleksandr
по идеологии
Artem
идеологию прописывали разрабы
Aleksandr
ну кроме известной истории с темплейтом для проектов
Vladislav
вам никто не запрещает писать хорошо
Да вот нечего, мне просто страшно стало от того с какими проектами мне придется иметь дело
Vladislav
по идеологии
Они там чтото говорили про "кладем хер на ООП, чистый код, паттерны проектирования и пишем на отъебись?"
Artem
джава просто чуть больше idiot proof. Го язык легкий, но ты должен уметь принимать решения по архитектуре. В джаве тебе просто дают всё, лишь бы писал
Aleksandr
это чистая субъективщина