YoshkinKot

ъ

Регистрация: 20.06.2016

Сообщения: 14507

Рейтинг: 5675

YoshkinKot

Регистрация: 20.06.2016

Сообщения: 14507

Рейтинг: 5675

Pudgewerksaw сказал(а):

Да и компилить его ещё под всевозможные платформы спс говна пожрал.

Легче питон 40мб вместе со скриптом отправить. 

Не говоря уже о том что эти бинарные личности которые не терпят никакие среды выполнения объективно шизы. Ведь они живут в 91 году видимо

Нажмите, чтобы раскрыть...

не, бинарники это удобно

еще лучше статически упакованные бинари

Pudgewerksaw

Пользователь

Регистрация: 06.01.2021

Сообщения: 2413

Рейтинг: 1005

Нарушения: 109

Pudgewerksaw

Регистрация: 06.01.2021

Сообщения: 2413

Рейтинг: 1005

Нарушения: 109

YoshkinKot сказал(а):

не, бинарники это удобно

еще лучше статически упакованные portable-бинари

Нажмите, чтобы раскрыть...

Только нафиг не нужно 2020 год на дворе. 

Конечно это приятный бонус. Но называть это серьезным плюсом когда у языка кроме этого исключительно только минусы это преступление. 

YoshkinKot

ъ

Регистрация: 20.06.2016

Сообщения: 14507

Рейтинг: 5675

YoshkinKot

Регистрация: 20.06.2016

Сообщения: 14507

Рейтинг: 5675

Pudgewerksaw сказал(а):

Только нафиг не нужно 2020 год на дворе. 

Конечно это приятный бонус. Но называть это плюсом когда у языка кроме этого исключительно минусы это преступление. 

Нажмите, чтобы раскрыть...

ну для меня это deal-breaker

 

я не хочу ждать когда JVM запустится или CLR, Node и прочий ужас, как пользователь

 

я не хочу знать как ваш там язык устроен, какая там система сборки и что за интерпретатор там используется

я не хочу это ставить себе на компьютер и возиться с тем, что оно чего-то там не видит

весь этот киберсекс, который вы устраиваете пользователям, отказываясь от бинарей

 

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

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

и забыть о вашем существовании

 

в худшем случае должна быть инструкция как это скомпилировать руками

с Go я как пользователь, который на этом языке не писал, не встречал проблем so far

я делал git clone, go чёт там и вот мои бинарники — красота

я всё это сношу с компа и кидаю на флешку

Funcrusher Plus

Пользователь

Регистрация: 22.08.2012

Сообщения: 2329

Рейтинг: 1137

Funcrusher Plus

Регистрация: 22.08.2012

Сообщения: 2329

Рейтинг: 1137

YoshkinKot сказал(а):

https://github.com/gokcehan/lf/blob/master/app.go

 

ну вот посмотри

ну вроде выглядит как типичная C-подобная ботва

Нажмите, чтобы раскрыть...

Да вопрос даже не про то, как код выглядит, а скорее как язык на практике применяется.

 

Типа, написать обработку огромной кучи текста на питоне - это дело пары вечеров, да, он будет дико медленным, поэтому ещё пару вечеров потребуется, чтобы задачу распараллелить каким-то околооптимальным способом, и он останется все равно довольно медленным.

 

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

 

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

 

Pudgewerksaw

Пользователь

Регистрация: 06.01.2021

Сообщения: 2413

Рейтинг: 1005

Нарушения: 109

Pudgewerksaw

Регистрация: 06.01.2021

Сообщения: 2413

Рейтинг: 1005

Нарушения: 109

YoshkinKot сказал(а):

ну для меня это deal-breaker

 

я не хочу ждать когда JVM запустится или CLR, Node и прочий ужас, как пользователь

 

я не хочу знать как ваш там язык устроен, какая там система сборки и что за интерпретатор там используется

я не хочу это ставить себе на компьютер и возиться с тем, что оно чего-то там не видит

весь этот киберсекс, который вы устраиваете пользователям, отказываясь от бинарей

 

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

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

и забыть о вашем существовании

Нажмите, чтобы раскрыть...

Обычно секс с бинарями и происходит из-за миллиарда архитектур платформочпецифичного кода и так далее. А остальные минусы не критичны. 

Да и aot так и так уже везде внедряются, в c# например уже есть aot. 

Это к тому что не надо популизировать GOвно из-за одной незначительной фичи, иначе это останется с нами навсегда как джава и с++ из-за бесконечно легаси. Гоу надо запретить на международном уровне

Funcrusher Plus

Пользователь

Регистрация: 22.08.2012

Сообщения: 2329

Рейтинг: 1137

Funcrusher Plus

Регистрация: 22.08.2012

Сообщения: 2329

Рейтинг: 1137

YoshkinKot сказал(а):

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

Нажмите, чтобы раскрыть...

Вооо, вот в чём и вопрос.

 

А мне как программисту должно быть насрать, что находится на удалённом сервере моей компании, я не хочу лишний раз общаться с админами и секьюритиsammyyPepekek.png?1598626065 питон есть в любом дистрибутиве RHEL и в нём из коробки есть довольно много, а вот про Go я не думаю, что такое можно сказать

 

YoshkinKot

ъ

Регистрация: 20.06.2016

Сообщения: 14507

Рейтинг: 5675

YoshkinKot

Регистрация: 20.06.2016

Сообщения: 14507

Рейтинг: 5675

Funcrusher Plus сказал(а):

Вооо, вот в чём и вопрос.

 

А мне как программисту должно быть насрать, что находится на удалённом сервере моей компании, я не хочу лишний раз общаться с админами и секьюритиsammyyPepekek.png?1598626065 питон есть в любом дистрибутиве RHEL и в нём из коробки есть довольно много, а вот про Go я не думаю, что такое можно сказать

 

Нажмите, чтобы раскрыть...

ну я-то про CLI тулзы говорю

типа lf, lazygit, vim, btop, tmux и всё в таком духе

 

приложения которые многократно ежедневно используются в комбинациях друг с другом обмазанных башем

 

kiesel

Пользователь

Регистрация: 19.10.2023

Сообщения: 1810

Рейтинг: 629

Нарушения: 30

kiesel

Регистрация: 19.10.2023

Сообщения: 1810

Рейтинг: 629

Нарушения: 30

y6ejushe сказал(а):

Можешь поделиться, это тип чат какой то или просто книги и статьи?

Нажмите, чтобы раскрыть...

книги и чатики тг типа @oop_ru 

ttutiki

Пользователь

Регистрация: 28.09.2013

Сообщения: 1816

Рейтинг: 618

ttutiki

Регистрация: 28.09.2013

Сообщения: 1816

Рейтинг: 618

kiesel сказал(а):

ддд поэтому нужно пилить и построить норм модели через ивент шторминг.

Нажмите, чтобы раскрыть...

да, давайте наинженерим че-нибудь чтобы потом на развитие рандомного портала набирали людей от 300к 

зато код хороший 

Salovar

Пользователь

Регистрация: 12.07.2017

Сообщения: 4806

Рейтинг: 1027

Salovar

Регистрация: 12.07.2017

Сообщения: 4806

Рейтинг: 1027

QlyouQwa сказал(а):

он не говорил что это плохо, он сказал что без этого спокойно делаются задачи

 

для чего мне наследоваться от базового абстрактного класса допустим? чтобы получить базовые методы? так это можно сделать и без наследования от этого класса

 

он об этом и говорит, не пойму че тебе смешно)

Нажмите, чтобы раскрыть...

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

QlyouQwa

Пользователь

Регистрация: 19.08.2015

Сообщения: 354

Рейтинг: 253

QlyouQwa

Регистрация: 19.08.2015

Сообщения: 354

Рейтинг: 253

Salovar сказал(а):

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

Нажмите, чтобы раскрыть...

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

 

В смысле делать все с нуля, ты понимаешь вообще чем наследование отличается от композиции? Зачем мне что-то писать с нуля и наследоваться, если я эту модель могу встроить там где мне нужны поля и методы этой модели? Зачем мне что-то переопределять для своей реализации, если я могу просто дополнить? А если придется полностью переопределять конкретные методы, то это по-моему говно, а не модель.

kiesel

Пользователь

Регистрация: 19.10.2023

Сообщения: 1810

Рейтинг: 629

Нарушения: 30

kiesel

Регистрация: 19.10.2023

Сообщения: 1810

Рейтинг: 629

Нарушения: 30

Salovar сказал(а):

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

Нажмите, чтобы раскрыть...

Жесть ты говно пилишь

haHAA

Пользователь

Регистрация: 25.03.2017

Сообщения: 1148

Рейтинг: 750

haHAA

Регистрация: 25.03.2017

Сообщения: 1148

Рейтинг: 750

img
Salovar сказал(а):

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

Нажмите, чтобы раскрыть...

В ГО это спокойно решается

 

Встроил класс А в класс Б

Переопределил в Б то, что тебя неустраивает из А

Salovar

Пользователь

Регистрация: 12.07.2017

Сообщения: 4806

Рейтинг: 1027

Salovar

Регистрация: 12.07.2017

Сообщения: 4806

Рейтинг: 1027

kiesel сказал(а):

Жесть ты говно пилишь

Нажмите, чтобы раскрыть...

поподробнее) расскажи, что ты пилишь)

 

haHAA сказал(а):

В ГО это спокойно решается

 

Встроил класс А в класс Б

Переопределил в Б то, что тебя неустраивает из А

Нажмите, чтобы раскрыть...

а давай скажем это другими словами. пронаследовался Б от А, переопределил что не устраивает. и в чем отличие от наследования?) в названиях?)

 

QlyouQwa сказал(а):

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

 

В смысле делать все с нуля, ты понимаешь вообще чем наследование отличается от композиции? Зачем мне что-то писать с нуля и наследоваться, если я эту модель могу встроить там где мне нужны поля и методы этой модели? Зачем мне что-то переопределять для своей реализации, если я могу просто дополнить? А если придется полностью переопределять конкретные методы, то это по-моему говно, а не модель.

Нажмите, чтобы раскрыть...

в курсе. а вот зачем ты наследование и композицию ставишь в один ряд - хз. точно у меня каша в голове? щас бы принципиально разные вещи зачем-то сравнивать.

haHAA

Пользователь

Регистрация: 25.03.2017

Сообщения: 1148

Рейтинг: 750

haHAA

Регистрация: 25.03.2017

Сообщения: 1148

Рейтинг: 750

img
Salovar сказал(а):

а давай скажем это другими словами. пронаследовался Б от А, переопределил что не устраивает. и в чем отличие от наследования?) в названиях?)

Нажмите, чтобы раскрыть...

Наследование это отношение классов Б и А в формате "является". Б является А, поэтому в функцию, где аргумент типа А, прокинуть объект типа Б

 

Композиция это отношение классов Б и А в формате "есть/имеет". У класса Б есть внутри объект А, который можно использовать. Условно у класса А есть метод "абоба": в ГО при анонимном встраивании (композиции) можно встроить в Б класс А и вызывать метод "абоба" таким образом: б.Абоба, а не б.а.Абоба

 

Ну и очевидно ты из-за формата "еcть/имеет" не можешь прокидывать в функцию, как в первом абзаце

 

Мне нравится, что язык не дает тебе высирать огромные иерархии классов, как в джаве

Salovar

Пользователь

Регистрация: 12.07.2017

Сообщения: 4806

Рейтинг: 1027

Salovar

Регистрация: 12.07.2017

Сообщения: 4806

Рейтинг: 1027

haHAA сказал(а):

Наследование это отношение классов Б и А в формате "является". Б является А, поэтому в функцию, где аргумент типа А, прокинуть объект типа Б

 

Композиция это отношение классов Б и А в формате "есть/имеет". У класса Б есть внутри объект А, который можно использовать. Условно у класса А есть метод "абоба": в ГО при анонимном встраивании (композиции) можно встроить в Б класс А и вызывать метод "абоба" таким образом: б.Абоба, а не б.а.Абоба

 

Ну и очевидно ты из-за формата "еcть/имеет" не можешь прокидывать в функцию, как в первом абзаце

 

Мне нравится, что язык не дает тебе высирать огромные иерархии классов, как в джаве

Нажмите, чтобы раскрыть...

что тебе мешает создать класс с двумя объектами классов Б и А? ничего.

YoshkinKot

ъ

Регистрация: 20.06.2016

Сообщения: 14507

Рейтинг: 5675

YoshkinKot

Регистрация: 20.06.2016

Сообщения: 14507

Рейтинг: 5675

Salovar сказал(а):

а давай скажем это другими словами. пронаследовался Б от А, переопределил что не устраивает. и в чем отличие от наследования?) в названиях?)

Нажмите, чтобы раскрыть...

в том что в композиции ты не можешь на это смотреть полиморфно  

 

ну условно class Derived : class Base  

Base* ptr = new Derived{чот там};  

 

ну и это короче проблема, потому что часто ты конечно не хочешь ничего подобного

 

потому что это означает, что ты теперь всё должен поддерживать, что поддерживает Base

а ты не хочешь эт делать ваще

haHAA

Пользователь

Регистрация: 25.03.2017

Сообщения: 1148

Рейтинг: 750

haHAA

Регистрация: 25.03.2017

Сообщения: 1148

Рейтинг: 750

img
Salovar сказал(а):

что тебе мешает создать класс с двумя объектами классов Б и А? ничего.

Нажмите, чтобы раскрыть...

Ну в ГО - язык 

Насколько я помню он не скомпилирует код

Скажет "я не знаю какой метод будет результирующим, из класса А или из класса Б"

Конфликт имён будет короче

Artikon90

Пользователь

Регистрация: 29.10.2016

Сообщения: 2334

Рейтинг: 915

Artikon90

Регистрация: 29.10.2016

Сообщения: 2334

Рейтинг: 915

Salovar сказал(а):

ахахахах. то есть наследование от абстрактного базового класса это плохо?) мда))) дай угадаю, зп 300к в секунду?)

Нажмите, чтобы раскрыть...

Если ты поподдерживаешь лютейшее легаси (а ты, я так понял, джавист) потом поймешь, какая же жопная боль с этим наследованием

 

А вообще никто не говорит, что это плохо, везде свои издержки. Всякие Мартины Фаулеры могут идти лесом со своими советами, когда у тебя сроки сгорели еще неделю назад) 

 

Но на интерфейсах и утиной типизации оч приятно писать код, без этих ваших наследований)

 

 

Tor4illa

Пользователь

Регистрация: 26.04.2020

Сообщения: 1068

Рейтинг: 219

Tor4illa

Регистрация: 26.04.2020

Сообщения: 1068

Рейтинг: 219

Pudgewerksaw сказал(а):

С++ - худший язык программирования. 

 

 

Нажмите, чтобы раскрыть...

А какой нормальный язык для ровных типов? Ну чтоб не зашквар как ГОvno

Salovar

Пользователь

Регистрация: 12.07.2017

Сообщения: 4806

Рейтинг: 1027

Salovar

Регистрация: 12.07.2017

Сообщения: 4806

Рейтинг: 1027

Artikon90 сказал(а):

Если ты поподдерживаешь лютейшее легаси (а ты, я так понял, джавист) потом поймешь, какая же жопная боль с этим наследованием

 

А вообще никто не говорит, что это плохо, везде свои издержки. Всякие Мартины Фаулеры могут идти лесом со своими советами, когда у тебя сроки сгорели еще неделю назад) 

 

Но на интерфейсах и утиной типизации оч приятно писать код, без этих ваших наследований)

 

 

Нажмите, чтобы раскрыть...

А что в моих словах заставило тебя думать, что я джавист? У меня си, с++, питон в основном. Вся библиотека qt на наследовании. TouchGFX исключительно на наследовании. А композиция как архитектурное решение исключительно может рассматриваться.

ke1evra

Пользователь

Регистрация: 25.12.2012

Сообщения: 1341

Рейтинг: 1205

ke1evra

Регистрация: 25.12.2012

Сообщения: 1341

Рейтинг: 1205

img
y6ejushe сказал(а):

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

Нажмите, чтобы раскрыть...

поэтому нужно писать на ассемблере BrainCosmic.png 

Pudgewerksaw

Пользователь

Регистрация: 06.01.2021

Сообщения: 2413

Рейтинг: 1005

Нарушения: 109

Pudgewerksaw

Регистрация: 06.01.2021

Сообщения: 2413

Рейтинг: 1005

Нарушения: 109

Tor4illa сказал(а):

А какой нормальный язык для ровных типов? Ну чтоб не зашквар как ГОvno

Нажмите, чтобы раскрыть...

С++ хоть и худший, но это все равно язык для ровных типов.

Еще языки для ровных типов известные лично мне: C#, Kotlin, Python. C.

 

C++ прощается потому что это динозавр очевидно многое из того что сделало его страшным для того времени таким не считалось. Go же уникален тем что это современный язык, но при этом такое говно.

Salovar

Пользователь

Регистрация: 12.07.2017

Сообщения: 4806

Рейтинг: 1027

Salovar

Регистрация: 12.07.2017

Сообщения: 4806

Рейтинг: 1027

ke1evra сказал(а):

поэтому нужно писать на ассемблере BrainCosmic.png 

Нажмите, чтобы раскрыть...

Как человек, который работает в эмбедед - ассемблер околомертвый. 

Pudgewerksaw сказал(а):

С++ хоть и худший, но это все равно язык для ровных типов.

Еще языки для ровных типов известные лично мне: C#, Kotlin, Python. C.

 

C++ прощается потому что это динозавр очевидно многое из того что сделало его страшным для того времени таким не считалось. Go же уникален тем что это современный язык, но при этом такое говно.

Нажмите, чтобы раскрыть...

Хз что ты называешь ровным типом, но питон и си в одном предложении выглядит дико

Pudgewerksaw

Пользователь

Регистрация: 06.01.2021

Сообщения: 2413

Рейтинг: 1005

Нарушения: 109

Pudgewerksaw

Регистрация: 06.01.2021

Сообщения: 2413

Рейтинг: 1005

Нарушения: 109

Salovar сказал(а):

Как человек, который работает в эмбедед - ассемблер околомертвый. 

 

Хз что ты называешь ровным типом, но питон и си в одном предложении выглядит дико

Нажмите, чтобы раскрыть...

Ровный тип не будет писать на GOвне и Java добровольно.