Этого треда уже нет.
Это копия, сохраненная 9 января 2021 года.

Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
image.png1,1 Мб, 840x559
Обзор языков по состоянию 2020 для бэкенда (дискуссионный тред) 1736839 В конец треда | Веб
И так, появилась возможность для своего стартапчика пет проекта, выбрать технологию с нуля. Бэграунд моих знаний не важен (и он есть), важно то, правильно ли я рассуждаю и поправьте меня где нужно.
Бэкенд, естественно, на линуксе, но разрабатывать хочу на винде.

C# (.NET core) - неплохой язык, на самом деле, единственное пока копался, не понял где вообще core (кроссплатформенный), где framework (виндовый стек). Чувствую пятым глазом, что буду натыкаться только на виндовые решения и постоянно путаться.
Из плюсов, язык реально занимает второе место в вебе за пхп. Что весьма достойно, хотя думаю сейчас вряд ли кто на нем стартапы пилит, просто MVC легаси.
Ну и стратегия EEE, есть мнение что все это с опенсорсом, это реализация именно этой стратегия. И что пока кормят конфетами нас. Ну хз.

Kotlin - хороший язык, на хорошей платформе. Удобнее, современнее (молодежнее) даже C#. Но минус, это сомнение есть ли у него будущее. Не будет ли это вторым груви или скалой. Не хотелось бы потом, в многолетнем проекте все переписывать на очередную джаву версии 332. Ну и в целом джава - это наследие фреймворков - это порой жрущие и неповоротливое гуано для тырпрайза (как мне видится), а не шустрые легкие решения для анона (а если и встречаются, то порой глючное как npm-пакеты)

Python - не самый приятный для меня язык и динамико-зло во всей красе. Язык имеет хайп, именно хайп в первоначальном смысле слова, то есть его раздули совершенно искусственно на фоне машинного обучения, а инфоцыгани просто подхватили и вывели в топ. Многие решения в языке мне не нравятся, какое-то догматическое восхваление поверх костылей и попыток сделать все по своему в сравнение с другими языками. Гвидо гений, что нам до него.

Ruby - в сравнение с питоном, мне нравится больше. Хз почему не выстрелил именно он. По некоторым показателям жизнь его затухает и, как слышал, есть проблемы с кроссплатформенностью (хоть и крутиться у меня он будет на линуксе, но разрабатывать я хочу на винде). Развивается крайне медленно, хотя обещают многое, даже jit (зачем он динамическим языкам и как там поможет?). Если у котлина под боком есть JVM и есть куда спрыгнуть в момент потопления. То тут все очень туманно.

JavaScript - если с фронтендом я еще смирился и с новыми версиями даже полюбил немного (стокгольмским синдромом, не иначе), то вот сам node.js мне очень не нравится. Мне даже кажется, разработка на node.js с этой всей асинхронностью будет проблемой для меня. Я уверен что смогу каким-нибудь "HTTP compression" положить процесс и скорее всего окажется, что мне надо было знать какие-то подводные камни, о которых, конечно, хер где кто напишет в своем маня-бложиках. Но в целом, язык сейчас везде и вот это желание писать на одном языке и фронт и бэкенд и даже где-то там на мобилках, это очень греет (хотя понятно, что в целом это сова на глобусе).

PHP - дико не нравится стандартная библиотека. И это ООП-головного мозга в динамическом языке (зачем, кто принес туда эту моду??). Но в тоже время, на нем можно вообще без фреймворков собрать себе что-то путное для веба, правда только для статичного. Очень быстр для динамического языка, несмотря на количество синтаксического сахара. Особенно очень быстрый БД драйвер. Хз, может он стал лучше, не знаю.

Go - не очень удобный язык, его надо прям любить, чтобы не уставать с него. Я полюбить не смог. Хотя мне стала нравится тенденция, отказа наследования в сторону агрегации объектов. Наследование, как момент архитектуры приложения, это все же зло. Также, асинхронная технология несет в себе как плюсы, так и минусы. Думаю, мне удастся повесить целый поток как и в node.js (там процесс)

Rust - это видимо что-то для системщиков. По коду приходится заниматься такими вещами, которые мне и не снились (фу, не осилил).
2 1736844
>>36839 (OP)

> .NET core


Скоро в этот тред придёт толпа сектантов, устроит срач, здравый смысл будет уничтожен, и конкретики можно не ждать. Просто из-за факта упоминания этой технологии.
sage 3 1736847
>>36839 (OP)

>И так


В рот тебе елдак. Дальше не читал.
4 1736851
>>36847
Молодца!
5 1736853
>>36844
Это говорит о его популярности или невменяемости? Самое убогое сообщество я встречал на го, где-то несколько лет назад.
sage 6 1736863
>>36851
Сорян Вася, но если ты даже русский язык не смог осилить, разговаривать о языках программирования с тобой бессмысленно.
7 1736866
Ну тут очевидная Java
8 1736876
>>36853
Без понятия, может, сам стек и неплохой. Но вот местные неткорщики совершенно невыносимы, от их постов так и исходит максимализмом и категоричностью, граничащими с борщехлёбством.
О стеке в общем случае нельзя судить по его сообществу, но если и использовать, то в одиночку, не вступая с ними в контакт.
9 1736877
>>36863
Ты меня победил в орфографическом войне на дваче, теперь твоя жизнь имеет значение. Ты стал кем-то. Вот я говорю, молодец, возьми конфетку с полки. Как же вы заебали, иди уже компенсируй чувство собственной важности на пикабу, никто не будет на дваче для тебя полноценные статьи без ошибок писать
10 1736880
>>36866
Аргументируй.
11 1736892
>>36876
Сначала, по заголовку их треда, я подумал что они так шутят:

Существует множество различных платформ и языков программирования, однако среди них нет более элитного, чем C#. Это поистине язык богов, сочетающий в себе простоту использования с поистине неограниченными возможностями. Знание C# — прекрасный детектор современного, умного и успешного человека. Изучение платформы .NET безошибочно указывает на успешного в будущем человека.
ITT элита продолжает обсуждает будущее этого прекрасного и современного продукта компании Microsoft. Только в этом треде элитные разработчики ответят на самые острые вопросы индустрии.


Звучит как психологическая проблема в личности этого героя.
sage 12 1736909
хорошие примеры серьёзной бекенд архитектуры в 2020:
запрос (rest http/amqp/rpc/etc) -> контроллер -> сервис -> бизнесс логика -> бизнес события -> трансляция бизнес событий в запросы к DB/MQ -> контроллер/возврат

хорошие примеры языков для реализации архитектур:
13 1736929
>>36909
Старый дедовский способ сделать лучшую архитектуру, нужно всего лишь взять...
14 1737057

> C# (.NET core) - неплохой язык, на самом деле, единственное пока копался, не понял где вообще core (кроссплатформенный), где framework (виндовый стек). Чувствую пятым глазом, что буду натыкаться только на виндовые решения и постоянно путаться.



На линуксе ни один белый человек эту хуйню не запустит.

> Kotlin - хороший язык, на хорошей платформе



Выйдет новая версия явы, заимплементит большую часть функционала и Kotlin забудут

> Python - не самый приятный для меня язык и динамико-зло во всей красе.



Что ж у вас всех так срака бомбит от динамической типизации?

> Ruby - в сравнение с питоном, мне нравится больше. Хз почему не выстрелил именно он.



Медленный калл, просто добавь ларавель

> JavaScript - если с фронтендом я еще смирился и с новыми версиями даже полюбил немного (стокгольмским синдромом, не иначе), то вот сам node.js мне очень не нравится.



Типы не завезли, да?

> PHP - дико не нравится стандартная библиотека. И это ООП-головного мозга в динамическом языке (зачем, кто принес туда эту моду??)



Чё плохого в ООП в динамическом языке? Наоборот, по логике ООП как раз РУБИ это правильный ООП, там всё объект.

> Go - не очень удобный язык, его надо прям любить, чтобы не уставать с него. Я полюбить не смог. Хотя мне стала нравится тенденция, отказа наследования в сторону агрегации объектов.



Говно говна

> Rust - это видимо что-то для системщиков. По коду приходится заниматься такими вещами, которые мне и не снились (фу, не осилил).



Был шанс стать годнотой, но ждет то же что и котлин. В C++ перенесут всё что есть хорошего в расте и усё.
14 1737057

> C# (.NET core) - неплохой язык, на самом деле, единственное пока копался, не понял где вообще core (кроссплатформенный), где framework (виндовый стек). Чувствую пятым глазом, что буду натыкаться только на виндовые решения и постоянно путаться.



На линуксе ни один белый человек эту хуйню не запустит.

> Kotlin - хороший язык, на хорошей платформе



Выйдет новая версия явы, заимплементит большую часть функционала и Kotlin забудут

> Python - не самый приятный для меня язык и динамико-зло во всей красе.



Что ж у вас всех так срака бомбит от динамической типизации?

> Ruby - в сравнение с питоном, мне нравится больше. Хз почему не выстрелил именно он.



Медленный калл, просто добавь ларавель

> JavaScript - если с фронтендом я еще смирился и с новыми версиями даже полюбил немного (стокгольмским синдромом, не иначе), то вот сам node.js мне очень не нравится.



Типы не завезли, да?

> PHP - дико не нравится стандартная библиотека. И это ООП-головного мозга в динамическом языке (зачем, кто принес туда эту моду??)



Чё плохого в ООП в динамическом языке? Наоборот, по логике ООП как раз РУБИ это правильный ООП, там всё объект.

> Go - не очень удобный язык, его надо прям любить, чтобы не уставать с него. Я полюбить не смог. Хотя мне стала нравится тенденция, отказа наследования в сторону агрегации объектов.



Говно говна

> Rust - это видимо что-то для системщиков. По коду приходится заниматься такими вещами, которые мне и не снились (фу, не осилил).



Был шанс стать годнотой, но ждет то же что и котлин. В C++ перенесут всё что есть хорошего в расте и усё.
15 1737091
>>36839 (OP)
про ноду прям жиза. Как при всей крутости js (тоже стокгольмский синдром) да да, по сравнению с другими яп, например java, я считаю его синтаксис гораздо круче и продвинутее, не понимаю как нода может быть настолько убогой. Очень надеялся на дено, но он чет не взлетает, хотя ещё не вечер
16 1737094
>>37091
кстати некоторые минусы (а для кого-то это могут быть плюсы) решаются ts, так что + в копилочку js
17 1737124
>>36839 (OP)
А какая разница на какой ОС разрабатывать? На это точно завязываться не желателтно при проектировании, и выбирать технологию реализации в зависимости от этого. Если интерфейс виндовый тебе болле близок - то запусти IDE в винде и натрави на удаленный linux сервак для сборок/тестов/компиляций чтобы эта среда соотвествовала той среде, на которой будет работать бэк.
Ну а сам язык следует выбирать в зависимости от требований к разрабатываемой системе, ее быстродействию, размера кодовой базы, логической сложности.
По самим языкам не скажу, большей частью из них не пользовался. Но для простых вещей использовал python, для более сложных систем java, где кодовая база побольше. Если архитектура позволяет выделить узкие места в отдельные компоненты, то их потом можно заменить С-шными либами
18 1737128
>>37057

>Медленный калл, просто добавь ларавель


Все динамико-языки - медленный калл, даже js сосет, хотя и носились с нодой в свое время.

>Выйдет новая версия явы, заимплементит большую часть функционала и Kotlin забудут


Уже видно что получается говно какое-то, трудно налезает сова на глобус. Ну и не думаю что функции завезут.

>Что ж у вас всех так срака бомбит от динамической типизации?


Все что больше хеллоу ворда превращается в боль, особенно если команда большая. Для хуяк-хуяк в одиночку, быть может еще терпимо.

>Чё плохого в ООП в динамическом языке?


Основная концепция ООП, это то что она дает возможность создавать типы (то есть, классы, например String) и устанавливать разного рода контракты (начиная от интерфейсов, заканчивая сигнатурой функциипараметры + возвр. значение). Понятно, если типов нет, а все объекты полиморфны, то смысл ООП нет. Тем более нет смысла в наследование (да и уже давно поняли что агрегация/композиция практичнее наследования).
Когда в пхп использовали классы для группировки функций - это было нормально, но когда стали играть в джаву, это стало идиотизмом. Причем не стоит забывать что уровень пхп программистов ниже и порой они пишут не модульный код, а еще более запутанный.
19 1737130
>>37128
И да, пхп не джава, она перерождается каждый раз и каждый раз лопатит ООП снова снова.
20 1737165
>>36839 (OP)
C++ забыл.
21 1737170
>>36839 (OP)

>но разрабатывать хочу на винде


Это уже приговор.

>Python - не самый приятный для меня язык


Пожалуйста, не лезь в него. Не хватало тебя ещё в питон-треде.

>то вот сам node.js мне очень не нравится. Мне даже кажется, разработка на node.js с этой всей асинхронностью будет проблемой для меня.


Программирование вообще будет проблемой для тебя, если ты не в состоянии разобраться ни с callback-based асинхронностью, ни с промисами и async-await.

>важно то, правильно ли я рассуждаю и поправьте меня где нужно.


Нет, ты неправильно рассуждаешь с самого-самого начала, поскольку у тебя язык и платформа оторваны от задач. А вообще язык и платформа выбираются под задачу с поправкой на свои вкусы. А задачи принципиально разные бывают. Если ты этого не понимаешь, то ты просто не дорос ещё.
22 1737175
>>36839 (OP)

>C# (.NET core) - неплохой язык, на самом деле, единственное пока копался, не понял где вообще core (кроссплатформенный)


https://docs.microsoft.com/ru-ru/dotnet/core/
Юзаю на линуксе, проблем нет. На мой взгляд одна из самых продвинутых платформ на данный момент.
23 1737197
>>37170

>поскольку у тебя язык и платформа оторваны от задач


Разработка под линукс - платформа
Разработка на винде - кроссплатформенность
Бэкенд - пласт четких задач

Я смотрю, среднестатистический питонист отупел еще сильнее, в принципе ожидаемо, виду такого хайпа.
24 1737200
>>37175
Что значит продвинутая в твоем понимание? Звучит как-то голословно.
25 1737201
>>37130

>fix


пхп не джава, пхп перерождается
26 1737202
>>37197

>Бэкенд - пласт четких задач


Ты какой-то грёбаный менеджер-гуманитарий, а не разраб.

Иди учи свой C#, чего хочешь учи.

Задачи бэкенда абсолютно разные. И архитектура бэканда не ограничивается ЯП.
27 1737206
>>37202
Да все, ты слился уже.
мимо
28 1737209
>>37200
Современная крутая экосистема. Объединяет плюсы других языков и экосистем в одном. Например: поддерживает ФП язык F#, можно писать на C# в браузере, много тулзов разных, высокий перформанс.
29 1737217
>>37209

>можно писать на C# в браузере


Про веб ассемблер или про "компиляцию" в js?

Просто если второй вариант, то он есть у многих языков и нигде толком не выстрелил.
30 1737243
>>37217

>Про веб ассемблер или про "компиляцию" в js?


Webassembly. Гугли Blazor
31 1737414
>>37243
Кроме кликера и прогноза погоды на нем че-то можно уже нормальное сделать или нет?
32 1737474
>>37057
Лол, голанг у него говно, а пхп, питон, жс и руби — нет. Толстый ты такой, анончик
sage 33 1737515
>>36877
Понимаешь, школьник, если ты не в состоянии распарсить русский язык, язык, с которым ты прожил всю свою жалкую жизнь до сего момента, на уровне рефлекса, это означает, что к теме компиляторов и интерпретаторов ты близко и не подходил, а значит о реализации языков и их плюсах и минусах ты имеешь представление исключительно поверхностное, основанное на хайпе среди твоего низкоинтеллектуального окружения из зумеров-хайпожоров. Почему ты не рассматриваешь Racket в качестве языка для бэкэнда? Потому что ты посредственный питух, который не видит разницы между

>И так порвалась твоя неграмотная жопа


и

>Итак, порвалась твоя неграмотная жопа

34 1737625
>>37474

>Лол, голанг у него говно, а пхп, питон, жс и руби — нет. Толстый ты такой, анончик


В голанге даже банальных исключений нет, в отличии от остальных в списке. В 2020 обрабатывать исключительные ситуации в стиле, как это было на сишечке в 90-е принято, ну не пиздец ли это?
35 1737636
>>37474
голанг это же процедурная параша из 80х без ничего, реально урезанный паскаль
36 1737638
>>37636
Там есть встроенная и очень удобная поддержка конкурентности, каналов и т.п., что реально очень круто. В остальном говно.
37 1737639
>>37638
OK, урезанный паскаль с корутинами.
38 1737650
>>37636
Там есть анонимные функции и функции высшего порядка.
39 1737674
>>37639
Так больше ничего и не нужно
40 1737675
>>37515
О, ботаны с лиспом подъехали.
мимокакер
41 1737728
>>37243
Сейчас все кому не лень пытаются присосаться к WebAssembly. Но пока там ГЦ не завезут, половину языков делать нечего.

И да, я не вижу у них в приоритете работу с DOM, что говорит о том, что они пилят какую-то сомнительную херню под веб приложения. Не удивлюсь что веб в 2040 будет состоять из приложений с очередного маркета, а про открытый интернет будут помнить только олды (нынешние зумеры).
42 1737730
>>37474
Я тот еще жиробас, но не на словах. Я действительно полюбил js, после того как 5 месяцев пописал на го.
43 1737736
>>37515
Нефига он тебе пердак раздуплил. Я даже не дочитал этот маняманевр. Иди уже на пикабу, как тебе сказали.
44 1737737
>>37128

> Все динамико-языки - медленный калл, даже js сосет, хотя и носились с нодой в свое время.



Я думаю ты хотел сказать "интерпретируемые". Но тут особый случай. Ruby медленнее PHP где-то в 5 раз. Ruby отстает от php больше, чем php от java. Это я ещё не привожу kphp или hhvm

> Основная концепция ООП, это то что она дает возможность создавать типы (то есть, классы, например String) и устанавливать разного рода контракты (начиная от интерфейсов, заканчивая сигнатурой функциипараметры + возвр. значение). Понятно, если типов нет, а все объекты полиморфны, то смысл ООП нет.



Как раз таки нет. C++-ный ООП например это не совсем ООП. Там есть примитивные типы типа int, float, bool, а есть объекты с методами. В той же джаве чтобы округлить флоат надо писать Math.round(f), а не f.round(как в рабби). А это уже не ООП подход.

Как раз с точки зрения ООП хороший язык это РАББИ. Там всё объект. И функция объект, и циферка объект, и литерал объект. Даже puts "Ruby".reverse можно.

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



Не правда. На PHP пишется много реально хорошего кода.

>>37474

> Лол, голанг у него говно, а пхп, питон, жс и руби — нет. Толстый ты такой, анончик



Голанг это просто плохой Rust. Я не имею ничего против процедурных языков, но надо же иметь вкус. В принципе я могу допустить что Go станет хорошим, но на сегодняшний день калл
45 1737738
>>37638
асинк авей сегодня есть даже на говно-питоне. зачем они этому тормозному языку, я конечно, не понимаю
46 1737741
>>37650
Там нет даже перегрузки функций, лол
47 1737753
>>37737
Если уж смотреть на ООП как на его первоначальную идею. То ООП нигде нет, кроме смоллтока и еще там чего-то. Я знаю, что в сети есть бараны, которые нахватались с ютуба идеи, мол динамические языки наиболее подходят для ООП. Но в реале, если система типов не видит разницу между User и числом 5, то никакого понятие классов там вообще и нет. и вообще срать, объект это по синтаксису, или примитивный тип, система разницы не видит, до выражений
48 1737768
>>37753

>Если уж смотреть на ООП как на его первоначальную идею. То ООП нигде нет, кроме смоллтока и еще там чего-то.



Ну почему, в ruby вполне аутентичный OOP, близкий к smalltalk. Ну, конечно, есть различия. Например в Ruby if/else это языковая конструкция, а в smalltalk это тоже объекты =)

А так да, вполне ООП язык.

> Я знаю, что в сети есть бараны, которые нахватались с ютуба идеи, мол динамические языки наиболее подходят для ООП



Не совсем так. Ruby, несмотря на то что динамический, ближе к ООП чем какой-нибудь Java или C++. Но C++ ладно, они вообще никогда не претендавали, у них язык мультипарадигменный. А вот явочка - да.

> система типов не видит разницу между User и числом 5, то никакого понятие классов там вообще и нет



Как это не видит? У модели User есть active record метод save, который его в базу кладет. А в пятёрке нет такого метода. Разные объекты реализуют разные интерфейсы. Тебе не должно быть важно какой тип у объекта, тебе важно поддерживает ли он интерфейс X или нет.

> и вообще срать, объект это по синтаксису, или примитивный тип, система разницы не видит, до выражений



Так нет примитивных типов, всё объект. Даже небо, даже аллах. Это и есть ООП по-рубевски. Int это тоже объект.
49 1737777
>>37768
Что там у тебя ближе в рубях, когда нет системы типов. То что ты можешь сложить гуся с собакой, это делает руби ближе к ООП?
ООП изначально проектировался по подобию биологической системой (авто биолог). Основной поинт там в сообщениях между объектами.
То что на процедурщину натянули идею посыла сообщения, не делает язык ООП.
50 1737779
>>37777

>fix


Что там у тебя ближе в рубях, когда нет системы типов? То что ты можешь сложить гуся с собакой, это делает руби ближе к ООП? ООП изначально проектировался по подобию биологической системы (автор биолог). Основной поинт там в сообщениях между объектами. То что на процедурщину (функции) натянули идею посыла сообщения, не делает язык ООП.
51 1737784
>>37777

> Что там у тебя ближе в рубях, когда нет системы типов



Кто тебе сказал что ты можешь сложить гуся с собакой? Кто сказал что в ruby нет типов?

Ты наверно не знаешь что такое динамическая типизация в принципе.

variable = 'keklol'.reverse
И в переменной будет строка. А потом ниже в коде можно написать
variable = 42 и в ней будет уже не строка.

В том же С++ так нельзя, если уж написал auto variable = 'KEK'; то строкой это будет всегда, и инт ты туда уже не впихнёшь. Вот и вся разница.

А гуся с собакой сложить тебе никто как раз не даст.

> Основной поинт там в сообщениях между объектами.



А в рабби объекты через сообщения коммуницируют, всё нормально.
52 1737792
>>37784

>Ты наверно не знаешь что такое динамическая типизация в принципе.


То что типы проявляются только тогда, когда мне не нужно, в момент исполнения, не делает систему типизированной. Это лишь говорит о том, что платформа где она исполняется, написана на том, где есть типы (чаще это си).

То что у тебя есть числа и строки, это издержки платформы, а не попытка типизации.
53 1737795
>>37792

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



Что значит "в момент исполнения"? Это интерпретируемый язык, там всё в рантайме и кроме рантайма ничего нет.

> То что у тебя есть числа и строки, это издержки платформы, а не попытка типизации.



Не издержки это, а именно ТИПИЗАЦИЯ. В ООП тип определяется тем какие он интерфейсы реализует, и у чисел, моделей, строк они будут разные.

Просто поскольку типизация динамическая(изменяемая), тип переменной может поменяться. В отличаи от статической типизации, где если инт то уже инт.
54 1737796
в отличие

fix
55 1737802
>>37779

>ООП изначально проектировался по подобию биологической системы (автор биолог)


О каком авторе идёт речь?
56 1737808
>>37802
Алан Кёртис Кэй. Джазовый исполнитель, молекулярный биолог, лжец, девственник, который хорошо знал математику, но никогда не работал в IT =/
57 1737811
>>36839 (OP)
C L O J U R E
L
O
J
U
R
E
58 1737821
>>37808
Мне кажется, что дело не столько в биологии, сколько в наложении философско-конструктивистских идей на прикладные знания. а он баловался марксизмом и философскими концепциями такого вот толка Отсюда и искусственное(и речь идёт именно об искусственном) прототипирование и интерпретация поведения объектов, ведь всё это постулируется чуть ли не в ключе основ мироздания. хоть где-то эти идеи нашли отклик Интересный персонаж, конечно.
59 1737828
>>37821

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



Ну так да, я ж про это и говорю. Берёшь себе классификацию из молекулярной биологии и натягиваешь его на промышленную область никак с этим делом не связанное потому что потому. А если разработчики пишущие реальный код плюются, значит они неправильные. Это как посмотреть видео профессора Попова про "движение исчезновение бытия в ничто, а ничто в бытии" и про "два логических шага", а потом на основе этой маняфилософии создавать ЯП, где логика будет не формальная - а диалектическая. И у тебя отрицание отрицания синтезис даёт.

Алан Кэй конеш няшный чел, но вот как я выше сказал, он крудики не шлёпал, он у себя в облаках витает.
60 1737829
>>37795

>Что значит "в момент исполнения"? Это интерпретируемый язык


Я тебе это и говорю, эти языки не могут быть ООП технически.

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

Нет и не может быть там никакого ООП, есть только симуляция и маркетинг.
61 1737839
>>37802
Alan Kay же, он там вдохновился клетками живого организма.
image.png38 Кб, 1789x230
62 1737844
>>37829

> Я тебе это и говорю, эти языки не могут быть ООП технически.



Да почему же блять не могут? Кто тебе такое сказал?
Вот тебе код на рабби. Смотришь какой тип по тому, может ли объект сделать X или не может. У циферки есть times, у строки нету.

> Нет и не может быть там никакого ООП, есть только симуляция и маркетинг.



Лол, как раз именно что ООП. Твоя хуйня про то что интик это 4 байтика, лежат они себе в ячейке, закодированы бинарным кодом, где первый буйтик означает знак. Или не означает. А вот флоатик, тоже 4 байта занимает, но там первый байтик это флаг, потом 8 байт экспонента, потом 23 байта мантиса и тд.

Это как раз структурный подход, где ты не абстрагируешься от байтиков и того как это хранится в памяти. А в ООП ты как раз думаешь на уровне объектов, и тебе интересно не то как эта хуйня в своих ячейках хранится и сколько их занимает, а реализует ли она интерфейс abs или нет. В этом плане инт и флоат равны.
63 1737849
>>37625
Дело в том, что Си это лучший язык. Го это Си с хорошей поддержкой многопоточности, синтаксическим сахаром и сборкой мусора. Это просто Си на стероидах, то есть ещё более лучший язык.
ООП-враньё, исключения и прочая неявная хуета просто не нужна
64 1737854
>>37828
Согласен. Забавно и то, что те, кто создаёт что-либо, руководствуясь данным подходом, ожидают, что их идеи будут столь же гибки и изменчивы, как сама возможность интерсекции разных областей применения и слияния системообразующих идей, но на деле всё совершенно не так и подобные "технологии" оказываются на стыке формальной допустимости и относительной практической пригодности, что усложняет процесс их развития и пересмотра подхода как такового, ведь первоначальная мысль может быть искажена, а неких достойных аналогов может и не быть(либо они могут не рассматриваться в качестве равных). Это не говорит о качественной ценности той или иной технологии, потому что она определяется иными критериями, лежащими в прикладной плоскости в большей степени, но является интересным фактом.
65 1737871
>>36839 (OP)
Требуется качественная аналитика для языка Scala
66 1737885
>>37871
Один из "непрактичных" языков (как и идея чистого ФП).
То есть, язык создавался ради самого языка. Математическо-академический онанизм в чистом виде. Очередной язык гения, или узкой толпы мечтателей. Ничего общего с реальным рынком программирования.
67 1737891
>>37885
Ты че дурак чтоли?
68 1737897
>>37854

Ну ООП не так плох, вернее некоторые вариации. MVC и все производные рока взлетели, а чё бы нет. Когда последний раз кабинетные учёные сделали что-то лучше, чем крупные корпорации?
69 1737911
>>36839 (OP)

Аналитика уровня /b
70 1737917
>>37885
Как так вышло, что JetBrains всрало более 11 лет на разработку плагина для поддержки "непрактичной" Scala?
71 1737925
>>37885

Не, как раз таки нихуя. Scala - это не идея чистого ФП, Scala это мультипарадигменный язык, там можно на чистом ООП писать, законом не запрещено. Просто в Скале фишечки из ФП завезли. На скале можно писать на чистом FP, и это прекрасно. Весь код ты так не напишешь, это невозможно.

А иногда можно ввести state и ускорить работу в разы.
72 1737938
>>37891
Нет, а Вы доктор?
73 1737942
>>37938
А это вроде и не диагноз, в отличие от "идиот" и "дебил".
74 1737943
>>37917
Это называется бизнес. Давай я тебя научу.
1. Твой бизнес основан на IDE,
2. Смотришь рынок.
3. Устраивает?
4. Делаешь плагин.
5. Профит.

Непрактичный не значит, что на нем никто не пишет.
75 1737945
>>37943
Как непрактичная Scala заняла рынок?
76 1737949
>>37925

>это не идея чистого ФП


А чистого ФП и нет. Да и дело не в фп, зря я его упомянул. Тут я про дизайн языка.
77 1737950
>>37942
Вам виднее, я в таком говне не разбираюсь.
78 1737951
>>37945

>Как непрактичная Scala заняла рынок?


Слабовато.
79 1737956
>>37949

Ну как да, чёт хуйню спизданул.

>>37951

Смотря какой рынок. Если крупные компании - в принципе хорошо. Вон Свитер на скале. А если веб-сайтики на вордпрессе, говнокруды на ларавеле, или апишки на node, то тут да, скала тебе не нужна.
80 1737961
>>37943
Почему не пишут? Пишут, конечно же. Только вот незадача - над плагином работает полторы калеки, которые каждый "ночной" релиз ломают уже реализованный функционал. Из-за этого народ сидит на EAP релизе IDEA, которая распространяется бесплатно и ставят ночные сборки плагина (тоже бесплатно). Так в чем здесь выигрыш для JB?
81 1737965
>>37956

>Вон Свитер на скале


Абсолютно не показатель успешности языка. Если что, то свитер, за все время существования, показал прибыль лишь однажды, когда уволил несколько сотен разработчиков одним махом. В остальное время они просто проедают очередной раунд инвестиций от доверчивых инвесторов.
Ну и на Scala они переползли только из-за того, что он был похож на Ruby и работал быстрее из-за JVM.
82 1737970
>>37956

>Вон Свитер на скале


Сейчас бы сравнивать по крупным компаниям у которых 100500 языков. Иногда даже кажется, они берут какой-то го или раст или другой новый язык, чтобы только в комьюнити попиариться.
83 1737975
>>36839 (OP)

> Ruby - в сравнение с питоном, мне нравится больше.


Интересно, чем же?
84 1737980
>>37961
Ну как видишь они особо и не тратятся на него.
Профит тут - удерживать рынок. Когда чела со скалы спросят на чем он пишет, он скажет идея, чем сделает мини-рекламу.
Я уже молчу что это около-джавовская тусовка со всеми вытекающими.

Или ты веришь в добрые дела?
85 1737982
>>37975
В более продуманном дизайне, на первый взгляд сильно не надкусывал, вдруг там под глазурью какашка.
86 1737996
>>37980
Джавовая тусовка ненавидит Scala. На Scala приходят либо отщепенцы с Java, либо какие-нибудь ололо-датасаентисты с питона.
Есть всякие психопаты, которые пытаются пилить схожие с Java проекты на Akka/Play Framework/Slick или typelevel стеке, но выходит из рук вон плохо и очень медленно.
87 1738014
>>37982
я пробовал писать на руби, сложилось впечатление, что это write-only ЯП
88 1738034
>>37950
А пациентам лучше и не знать многих вещей.
89 1738040
>>37965
ЖВМ лучше руби.
https://youtu.be/uq25JnHrF14
90 1738054
>>36839 (OP)
Или делаешь на пайтоне, или никогда не сделаешь.
91 1738108
>>37970
Да, всё так, но с руби пришлось съехать. Всё-таки первым делом самолёты, а потом уже понты. У больших компаний есть ресурсы пробовать что-то новое, а у маленьких нет. Им надо крудец, то ты будешь ставить ларавель и не будешь выёбываться.

>>37965

>похож на Ruby



Не похож(
92 1738149
>>38054
Ты на пайтоне хотя бы 100.000 строк писал? Там потом даже с IDE ногу сломишь.
93 1738202
>>36839 (OP)
Очевидный C++, не увидел в списке.
94 1738248
В 2020 есть только 4 языка:
- rust
- go
- typescript
- kotlin
95 1738249
>>38149

100к строк кода не пишутся в одиночку
96 1738252
>>38248
Где swift?
97 1738253
>>38149

>Ты на пайтоне хотя бы 100.000 строк писал?


А что не 10 миллионов сразу?
98 1738260
>>38054
Двачую этого. Питон, все остальное - прокрастинация, как, собственно, и весь оппост
99 1738282
>>38249
Примерно год работы
100 1738284
>>38252
Вот именно, где этот свиффт то??
101 1738292
>>38284
На яблодевайсах. А где ещё? Там больше ничего нет.
102 1738302
>>38282
Это галимое теоретизирование. Или это не код, а пустая вода.

Я просто ради интереса глянул, проект django-2, это 122 тысячи строк, sqlalchemy 137 тысяч. aiohttp меньше 20 тысяч. jinja2 это 13 тысяч.

Django это очень серьёзный проект, многолетний, с огромной командой разработчиков. Но даже проекты вроде aiohttp и jinja2 довольно серьёзные, и там больше человека-года, причём серьёзного уровня.

Можешь пиздеть дальше, очевидно, что ты сам никогда ничего серьёзного не писал. И поэтому не понимаешь, чем твоя поделка на 300 строчек, что за день слепить можно не думая, потому что код такой, отличается от серьёзного проекта.
103 1738317
>>38302
За день 300 строчек * 365 как раз 100к+
104 1738326
>>38302
Фред Брукс: То что один программист может сделать за месяц, два могут сделать за два

500 строк в день (среднее, будет больше, будет меньше),
~20 рабочих дней в месяце, рабочих месяцев у нас в году 11
5002011 ~ 110.000

Ты можешь за рабочий день написать 500 строк кода?
105 1738330
>>38326
Ой, какая жопа с вакабой
500 x 20 x 11 = 110.000
106 1738336
>>38326
Вообще, сложность кода возрастает минимум квадратично. То есть если ты N строк пишешь за неделю, то 2N строк будешь писать уже 4 недели. Это при условии, что логика не очень сложная и спроектировано хорошо, иначе там как экспонента пойдёт.

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

500 строк питона за день сложно написать. Это возможно только или если код слишком тупой, или ты хорошо знаешь, что писать, но это значит, что ты это уже писал и повторно код не используешь, или скорее всего уже для этого либы есть и ты изобретаешь велосипед.
107 1738338
>>38326
500 строк отлаженного оттестированного кода в день это дохуя. Если ты можешь столько написать, значит скорее всего работаешь ты каким-то производителем бойлерплейта и тебе лучше посидеть и подумать, как это автоматизировать и писать поменьше.
108 1738339
>>38336
И если сравнивать питон с c/c++, то в последних сильно больше воды, одна и та же логика обычно сильно больше места занимает, поэтому 100 строк на питоне больше делают, чем 100 строк на плюсах, и писать их дольше.
109 1738344
>>38336
Это уже менеджеру расскажешь. В первый день я могу и 5000 написать. Одно дело когда яйца проветриваешь и сидишь хабр читаешь. Другое целенаправленная работа.
110 1738349
>>38339
Пруфаника мне сынок, где 100 строк питонобляди делают больше, чем 100 строк отложенного кода на ++!
111 1738358
>>38339
Где-то я такую херню уже слышал. Откуда эта маняфантазия пошла?
112 1738365
>>38344
Проблема больше в том, что у меня не будет столько объема работ, а не то что 500 строк за 7 часов это недостижимое.

Правда в том, что на динамическом языке, ты быстрее достигаешь трудно-сопровождаемого кода. И поэтому твои 500 в день и падают.

А с типами тебе IDE хорошо помогает.
113 1738372
>>36839 (OP)

> Ruby - в сравнение с питоном, мне нравится больше. Хз почему не выстрелил именно он.


Производительность.

> разрабатывать хочу на винде


И кста, с этим будут проблемы
114 1738373
>>38372

>И кста, с этим будут проблемы


У джавы, нет.
115 1738376
>>36866
Оракл превратил жаву в гуано. А вот майкрософт выебал бы из за уебищную винду возродили шарп, сделав его опенсорсным и кроссплатф.

> современного продукта компании Microsoft


Продукт майкрософт - это обоссаный .net framework и шиндос сервер, .net core - продукт .net foundation, а так же всего сообщества
116 1738378
>>38373
При чем тут это говно, я про руби писал.
А еще проблем не будет у C#, Go, Rust, C, C++
117 1738379
>>38358

>Где-то я такую херню уже слышал. Откуда эта маняфантазия пошла?


Любой, кто на нескольких языках писал, согласится. Я писал. В C++ много воды.

>>36839 (OP)

>Ruby - в сравнение с питоном, мне нравится больше. Хз почему не выстрелил именно он.


Руби слабо выстрелил, потому что автор помешан был на одной парадигме, которую возвёл в культ. Это не работает. Работает многосторонний подход. Как в питоне или как в C++.

>>38344
Если ты пишешь очень много кода в день, то значит твой код лишён какой-то значимой логики. У тебя вода, а не код.
118 1738382
>>38376

> Оракл превратил жаву в гуано


Тоже скучаешь по временам без аннотаций и с сотнями xml-файлов?
119 1738383
>>38378
Ну поэтому руби и говно.
120 1738387
>>38382
Нет, по свободной лицензии конечно, сейчас есть опен ждк, но настрой у оракл ебанутый, такое ощущение, что скоро компилятор или жвм закроют и все, пизда
121 1738390
>>38383
Лол, вообще похуй, сижу на линуксе, для разработки он намного удобнее. А вот производительность хуевая, да. Но есть и плюсы: на руби самая быстрая разработка.
122 1738396
>>38390
Потому что типы писать не нужно? Или потому что есть фасады для работы со строками, массивами и файлами?
Или потому что надо на каждый чих лезть в документацию, потому что забыл какой тип возвращает?

Почему там разработка то быстрее?? Я сейчас не про скрипты-утилитки, которые правда из-за фасадов на рубях и питоне будут удобнее (что там, input() написать), а про реальную разработку приложения, где фасады кончаются?
123 1738400
>>38387
Так-то джаву берут не от большой любви к опенсорсу. Тырпрайз как жил во времена проприетарной джавы, так и живёт.
124 1738413
>>38396

>фасады


Ещё один, кто вчера прочитал книжку по паттернам и теперь пытается за умного закосить.
125 1738421
>>38413
input() - сюда, сука, пиши
126 1738532
>>38400
А почему почти все инструменты в ее экосистеме попенсорс?
127 1738629
>>37515
Сикпогоспод не спрашивали. Аутируйте в своём личном загоне, пожалуйста.
128 1738639
>>38532
Потому что в ней очень много инструментов вообще, поэтому попенсорса тоже будет много.
image.png186 Кб, 700x336
129 1738641
>>38248
Го остался в семидесятых.
130 1738645
>>38248
Какое-то говно для детей.
131 1738669
>>38645
Из всего там норм только котлин, но лишь потому что жаба настолько убогая, что тут просто удобнее писать.
JS уже "пропатчили" до вменяемого уровня. А С++ не победить.
132 1738698
>>38639
Ну там подавляющее большинство свободные. Кроме weblogic websphere всяких.
133 1738741
>>38349
Задача примитивная, ну да похуй
Сделать массив/список из чисел от 1 до 10

Питон:
list(range(1, 11))

C++:
#include <vector>
std::vector<int> vec;
for (auto i = 1; i <= 10; ++i) {
vec.push_back(i);
}

Суть в том, что С++ больше вещей нужно указывать и описывать.
134 1738746
>>38741
int arr[10]
135 1738790
>>38746
int arr[10];
for (int i = 1; i <= 10; ++i) {
arr = i;
}
На строку меньше стало, но всё равно больше.
136 1738792
>>38790

>arr[i - 1] = i;


быстрофикс
137 1738807
>>38149
С аннотациями всё прикрасно работает
138 1738835
>>38790
Да похуй, это вообще неважная хрень.
139 1738836
>>38807
Ты что-то путаешь. Аннотации - это из джавы.
140 1738852
>>38741

>range(1, 11)


Лол, ты же понимаешь, что сишник напишет тебе сейчас такую же функцию и будет один в один?

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

Что касается С++, то там конечно нет таких батареек, там придется прикрутить какой-нибудь boost и тогда жизнь наладиться.

Питон весь такой детский, как только тебе понадобиться что-то гибче того же input, полезешь уже кишки в кишки по уровню как С++ или java.
141 1738875
>>38248
насчет go не уверен
142 1738889
>>38852
>>38741

std::vector<int> array(boost::counting_iterator<int>(1), boost::counting_iterator<int>(12));

Мимокрок, не удержался.
143 1738890
>>38852

Только тебе не понадобится.
Питон - удивительно продуманный язык, в стд которого 5сть что угодно, что может пригодится в разработке. Осталось лишь сложить кирпичики и получится вполне лаконичное решение. А если подложить фреймворк - вообще замечательно.
В ваши плюсы пакетный менеджер завезли? Как самое лучшее, что у вас есть сраный Конан? Неужели плюсовики не способны написать нормальную утилиту для зависимостей?
144 1738924
>>38889

>std::vector<int> array(boost::counting_iterator<int>(1), boost::counting_iterator<int>(12));


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

Есть, конечно, и у питона несовершенство. Например, из-за принципа отступов в него заложено, что нормально делать анонимные callback функции нельзя, в отличии от многих языков.

Или в аннотациях аргументов какой-то лютый адъ в стиле С++, хотя пока пытаются как-то прилизать. Сколько времени сопротивлялись добавлению оператора "сравнение с присваиванием", из-за чего код с последовательным сравнениям по регуляркам превращался в какое-то кривое убожество (добавили только в 3.8).
145 1738931
>>38890

>Питон - удивительно продуманный язык


-Кривая реализация множественного наследования, там жесть просто как костылить надо для родительских классов.
-Инкапсуляции нет (есть какой-то бред с подстановкой имени), да вообще имитация ООП в целом.
-self - очень продумано.
-это блядская генерации в [...] где умудряются в строку засунуть все что можно (да да, программисты плохие)
-оператор целочисленного деления, округляет
-костыли с циклическим импортом (привет фласк!)
-эта жопа с virtevn или как она там? Это просто эталон костылестроения.
-если у тебя есть внешние либы, то хера ты так просто ком-то скрипт передашь, надо реально делать скрипт инициализации, чтобы человек твой скрипт запустил.

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

И это поверхностное что я вспомнил, там реально полно говна, на которое закрывают глаза, потому что фанбои все.
146 1738946
>>38931

>-Инкапсуляции нет (есть какой-то бред с подстановкой имени), да вообще имитация ООП в целом.


Инкапсуляция о другом, она о том, чтобы пользователь не должен был погружаться в ненужные детали реализации. Классы на уровне питона эту возможность дают. Подстановка имени гарантирует, что не будет сбоя из-за конфликтов имён.

>-self - очень продумано.


Было два подхода, в одних языках использовали this, в других self. В основном победили языки с this. Это чисто стилевой вопрос. В принципе не запрещено this и в питоне использовать, я даже такое встречал на практике. Чисто соглашение

>-это блядская генерации в [...]


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

>-оператор целочисленного деления, округляет


wtf?
10 // 3 = 3
11 // 3 = 3 # как и ожидается от целочисленного деления
12 // 3 = 4
11.8 // 3 = 3.0 # вот это не нравится?

>-эта жопа с virtevn или как она там?


Одна из крутых возможностей платформы, возможность виртуализации без дополнительных системных инструментов.
147 1738951
>>38924
К крестов не то что бы синтаксис сложный и непонятный, просто писать надо больше. Мне наоборот это больше нравится, я не против напечатать больше.
148 1738970
>>38951
Значит ты ноулайфер!
149 1738974
>>38946
-5 // 2
150 1738975
>>38946

>Одна из крутейших возможностей питона, которой не хватает в других языках.


Лол, восхищение, когда в твоем языке нет нормальных лямбд, но придумали костыль.
151 1738976
>>38946

>Инкапсуляция о другом, она о том


Да там весь язык о другом, о своем каком.
153 1738988
>>38975
тебе ничего не мешает объявить функцию, которую ты потом можешь использовать как лямбду
да, костыль, но работает
154 1738992
>>38975

Это было хорошее решение.
Так питон проскочил ужас коллбэк Хэлла.
155 1739011
>>38931

> Кривая реализация множественного наследования


расскажи подробнее

> Инкапсуляции нет


> есть какой-то бред с подстановкой имени


инкапсуляция тут на уровне конвенции

> костыли с циклическим импортом


легко фиксится
в том же C/C++ тоже может проблем доставить

> self - очень продумано.


явное лучше неявного (с) дзен питона

> эта жопа с virtevn или как она там? Это просто эталон костылестроения.


почему?

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


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

> заканчивая джангой у которой вьюхи это контроллеры


у джанго не MVC, а MVT
156 1739020
>>38975
>>38992
Как вы себе представляете многострочные лямбды в питоне? Так что ли?
filter(lambda x:
____if x >= 5 and x <= 10:
______return True
____return False
__, my_list
)

Я уверен, что единственная причина, почему такого нет в питоне - уебанский синтаксис с отступами. По той же причине нет do-while и break label.
157 1739022
Хочу, чтобы вызов приватных методов в крестах успешно компилировался, но при этом это было бы UB.
158 1739027
>>39020
Ну чел, пайтон это скриптовый язык программирования. Может ещё пожалуешься что в bash нет поддержки лямбд?
159 1739028
>>36839 (OP)
Пока вы сретесь, я продолжаю писать на рельсах & ТС, попивая смузи.
160 1739033
>>39028

Ну дак ларавель же есть уже, зачем рельсы твои?
161 1739037
>>39027

> в bash нет поддержки лямбд


Через eval можно накостылять.
162 1739041
>>39037
А с асинком там как дела?
163 1739045
>>39041
Вообще не вопрос, есть jobs:
command &
164 1739058
>>39045
Бля, получается на баше писать не хуже чем на питоне? Там ж ещё есть curl, можно restapi-ху дёргать...
165 1739069
>>39058
Многие одноразовые скрипты на нём действительно неплохо пишутся - переименовать сотню файлов там, что-то отфильтровать и сохранить. "Библиотек" только не хватает.

> restapi-ху дёргать


Можно даже свою написать через netcat.
166 1739080
>>39020
только так
def filter_func(x):
____if x >= 5 and x <= 10:
______return True
____return False
filter(filter_func, my_list)

> do-while


он очень редко нужен, и ради этого вводить новое ключевое слово?

> break label


аналогично, обычно вложенные циклы разбивают на отдельные методы/функции
167 1739084
>>39080

> только так


а вообще почему нельзя так?
filter(lambda x: x >= 5 and x <= 10, my_list)
168 1739085
>>39020
Я в петухоне вообще боюсь что-то представлять.
169 1739087
>>39011

>дзен питона


Звиздень это.
170 1739095
>>39080

> он очень редко нужен, и ради этого вводить новое ключевое слово?


В других языках ввели ведь.

> вложенные циклы разбивают на отдельные методы/функции


Или вводят флаги и на каждой итерации во внешних циклах их проверяют, что бывает чаще.

>>39084
Это просто пример был. Но многострочные лямбды я стараюсь не писать даже на тех языках, где можно.
171 1739098
>>39095

> вложенные циклы разбивают на отдельные методы/функции


>Или вводят флаги и на каждой итерации во внешних циклах их проверяют, что бывает чаще.


Жесть какая.
172 1739106
>>39098
Выход из вложенных циклов это реально частая задача для скриптов. И как вы петухоне называете функции?

def break_1:
pass

def break_2:
pass

Каково это замусоривать пространство имен ненужными абстракциями? Кстати, у вас еще из-за непродуманного импорта реально в пространство имен может вывалится куча фигни.
173 1739119
>>39106
Функцию можно объявить внутри другой функции, замусоривания будет меньше. Но основную проблему это хуёво решает.
174 1739121
>>39087
У каждого языка своя философия, тут уж на любителя.
>>39095

> В других языках ввели ведь.


А в питоне не ввели.

> Или вводят флаги и на каждой итерации во внешних циклах их проверяют, что бывает чаще.


break label тоже сомнительное решение.
>>39106

>Кстати, у вас еще из-за непродуманного импорта реально в пространство имен может вывалится куча фигни.


Ты просто from ... import * не юзай и будет тебе счастье. ещё есть __all__
175 1739138
>>39121

>Ты просто from ... import * не юзай и будет тебе счастье.


Почаще смотри dir, удивишься.

>ещё есть __all__


Очень весело имена ручками переписывать снова и снова. Модификатор было что ли трудно придумать? Хотя да, "говнище лучше чем говненное"

>явное лучше неявного


>У каждого языка своя философия


Никакого там следования философии и нет, все это маркетинговый булшит, когда видишь self и рядом множественное наследование, сразу понимаешь что тебя где-то наебали. полно там такого говна, ваннаби-программисты этого просто не видят

И да, self, тупо остался по дизайну, потому что в питоне можно дернуть метод как функцию и гвидо, видимо, посчитал, что это будет круто.
Жалко что так посчитал только Гвидо.
176 1739154
>>39106

>Выход из вложенных циклов это реально частая задача для скриптов


Типичной ход в холиваре, найти какую-то идиотскую фичу и объявить ее супер-обязательной. Собственно, и в других языках подобная хуйня появилась только из-за подобных холиваров.
177 1739157
>>39154

> подобная хуйня появилась только из-за подобных холиваров.


Ага, наверное, умные дядьки и тётьки зашли на двач, поучаствовали в нескольких срачах и поняли свою неправоту, не иначе.
178 1739177
>>39027

>Ну чел, пайтон это скриптовый язык программирования. Может ещё пожалуешься что в bash нет поддержки лямбд?


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

У питона исключительно из-за его специфики, где отступы вместо скобок. Неоднозначное решение.
179 1739184
>>39058

>Бля, получается на баше писать не хуже чем на питоне?


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

В этом принципиальное ограничение. А наркоманский синтаксис уже просто дело вкуса.
180 1739188
>>39157
Что для тебя здесь удивительного?
В этом ответе весь питон тащемта:
https://mail.python.org/pipermail/python-3000/2007-July/008663.html
Это язык, который за 30 лет сущестования не превратился в разжиревший кусок говна, и при этом умудряющийся развиваться. В том числе и благодаря таким решениям
181 1739198
>>39184

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


Так и появился Perl.
182 1739204
>>39154

>Собственно, и в других языках подобная хуйня появилась только из-за подобных холиваров.


История появления такая, что была в древние годы регилиозная борьба с оператором goto. Оператор действительно тот ещё, если им где попало пользоваться, ад для разработчиков компиляторов в том числе - ты можешь так переходить из тела одного вложенного цикла в тело другого, а если там переменные уровня блоков и т.п.?

Фактически разумное и стройное применение у goto в трёх случаях:
1) выход из вложенных циклов
2) классические машины состояний
3) переход к finally части функции, когда надо перед выходом обязательно какую-то работу проделать.

Вот для первой, очень частой задачи, и придумали break label, по-моему это было придумано для джавы.
183 1739205
>>39188

>Python-3000


Как же я проигрываю с этой фигни.
Как вообще людей с вот таким восприятием, в 2007, можно было подпускать к языку??
Теперь понятно почему там наркоманский синтаксис
184 1739210
>>39205
Синтаксис очень хороший, во много благодаря вот такой вот упёртости. Иногда упёртость мешает, но иногда она и помогает.

Вот сейчас довольно много тяжеловесных решений в духе C++ и Perl пришло в язык. И смотрятся они иногда недоделанными.
185 1739227
>>39205
Надо было тебя допустить, чтобы вместо хорошего языка мы имели очередной говнолисп с кучей идиотских фич
186 1739231
>>39177

Джаваскрипт это язык для фронтенда, там должно быть всё на ивентлупах и таймерах, это ж интерфейс.

А питон это язык для математики и для скриптиков. Кто ж виноват что на нем люди решили бэк писать.
187 1739232
>>39205
Бля, кто-нибудь переделайте цитату про Сталин 3000
188 1739278
>>39227
Я бы выкакал процедурный язык нового поколения. За реабилитацию процедурного программирования.
189 1739286
>>39278
Голанг уже высрали.
190 1739299
>>39286
Не, я бы не возложил переброску ошибок на юзера, тем более без стектрейса. Ну и дженерики бы осилил.
191 1739314
>>36839 (OP)
спор не имеющий смысла ни на скейле пет проектах, ни на скейле половины стартапов. Берёшь то, на чём можешь решать задачи и решаешь их. ОП стал долбоёбом включив Rust и Ruby в один список.
192 1739317
>>39299
А там и до полиморфизма с наследованием недалеко.
193 1739324
>>39317
Вообще это противоположные направления, перегрузка это статическая операция, а полиморфизм динамический.

>>39299

>я бы не возложил переброску ошибок на юзера


Гугол их просто не осилил, они и из Далвика вроде исключения выпиливали. Исключения на самом деле сложная и неочевидная вещь, как только ты начинаешь работать с тредами и корутинами. А го именно на это направление прицелен.

Сам подумай, вот ты стрельнул горутину, пошёл дальше. Где ты будешь исключение из неё ловить?

Само собой бывает и синхронный код. Но как минимум асинхронная часть много вопросов оставляет по исключениям.
194 1739330
>>39317
Честные структуры.
Никаких методов, только функции которые принимают структуры или другие функции.

Может какой-то сахар типа mystruct.foo() если первый аргумент структура.

Полиморфизм только на структурах, если B содержит себе A, то можно передать где B.
195 1739333
>>39324
Это они тебе так рассказали. Вон котлин и корутины и исключения. Не плакали.
b0f7380d926595cc1b5662ab9222e183.png213 Кб, 700x439
196 1739443
Реквеструю относительно подробную экспертную аналитику локальных senior software engineers, principal engineers, software architects и прочих солидных сэров на тему языка Golang. Чем он плох, чем он хорош, зачем он нужен либл почему он не нужен, какие у него перспективы, с чем он конкурирует?

>>38875
Почему?
197 1739496
>>39443
Язык который во время ошибки не предоставляет стекстрейс, в принцепи плохо пригоден для крупной разработки. Я уже не говорю что они там руками пробрасывают ошибки, лол.

/thread
198 1739506
>>39496
Неужели отсутствие эксепшенов так сильно ухудшает язык? Но почему он стабильно набирает популярность?
199 1739508
>>39506

Потому что простой лаконичный язык без наворотов с превосходной производительностью, идеально подходящий под микросервисы.
200 1739522
>>39506

>Неужели отсутствие эксепшенов так сильно ухудшает язык?


Прикладной язык ухудшает очень сильно. Большой шаг назад.

Но на си ведь пишут и довольно серьёзные вещи. А го это скорее замена си, но с некоторыми наворотами важными. С теми же горутинами.

Для сетевых задач и сервисных задач удобнее Си. Собирать и запускать удобнее, чем java-программы. Это довольно большой класс задач.
201 1739585
>>38248

>В 2020 есть только 4 языка:



-ANSI C
-C99
-C11
-C18
202 1739601
>>39585

> -C99


> -C11


> -C18


Это всё для хипсторков, нормальные люди используют только ANSI C.
203 1739759
К чему все эти споры, когда есть котлин?
204 1739824
Наткнулся тут на Poco для C++. По ощущениям, будто пишешь на джаве - такие же огромные названия классов и фабрики, и есть вообще всё - БД, HTTP-сервер, логгер, TLS, JSON/XML. Даже аналог JSP есть.
205 1740066
>>39759
Зашкварен близостью к джаве
206 1740246
>>40066
Ты путаешь с жабаскрипт
207 1740256
>>40246
Котлин близок именно к джаве, тем самым он крайне зашкварен. Или ты думаешь, что джава это меньший зашквар нежели джаваскрипт?
image.png45 Кб, 400x400
208 1740282

> Или ты думаешь, что джава это меньший зашквар нежели джаваскрипт?


Джава Зашквар Джаваскриптович, для друзей дарт, знакомьтесь
209 1740335
>>40282
Двачую, это ещё зашкванее Котлина.
php.jpg62 Кб, 450x335
210 1740417
>>40256

>зашкварен


У нас тут представители php культуры?
211 1740572
>>40256
В чём зашкварность? Расскажи-ка.
212 1740735
>>40417
У нас тут /зк/ вообще-то.
213 1740787
Чисто на всякий случай напомню: Python — тупое говно тупого говна. Почему? Одни и те же программы на нём потребляют в дохуялион раз больше, чем на любом другом языке программирования. Такое говно надо гнать ссаными тряпками из ИТ.
214 1740803
>>40787
Руби тоже?
215 1740805
>>40787
Потому что петухон надо использовать по назначению - скриптота и glue code. Никаких тяжёлой логики и вычислений, тупо сразу после запуска скрипта последовательно вызывать сишные функции.
изображение.png22 Кб, 738x461
216 1740830
>>38741
Один раз описываешь функцию и используешь в одну строку.
217 1740840
>>40830
# include <1с.хпп>
218 1740852
>>40840

># подключить <1с.хпп>


Поправил тебя.
219 1740864
>>40852
Жаль, что # define подключить include не работает.
220 1740865
>>40864
Каждый день из-за этого убиваюсь.
изображение.png23 Кб, 735x483
221 1740875
>>38741
А вот тут я одну ошибку исправил.
222 1740883
>>38741
Чел ну ты жжошь конечно, свое незнание языка выдавать как страшилку.
Там будет что то вроде
print_sequence(std::make_index_sequence<11>{});
1523543635642.webm13,6 Мб, webm,
1920x1080, 3:35
223 1740891
>>36839 (OP)
Бери c++, не даром на нем весь веб работает еще со времен cgi
224 1741128
>>36839 (OP)

>Из плюсов, язык реально занимает второе место в вебе за пхп.


Я хз как считают эту статистику, но подозреваю, что смотрят на чем крутится CMS-ки миллионов гостевух. Только это не значит, что весь веб написан на PHP или C#.

Миллион визиток на вордпрессе (или что там у дотнетчиков) хоть и занимают миллион доменов, но не потребовали на свою разработку ни одного человека часа полноценного программиста, максимум верстальщика без знания JS. Да и денег весь этот миллион сайтов приносит меньше, чем инстаграмм одной условной Бузовой.

Такие недосайты не влияют на твой спрос на рынке труда. Смотри, что используется в отрасли. Смотри на что спрос на рынке труда. Смотри на парадигмы, вокруг которых построен ЯП и фреймворки на нём и насколько они тебе близки. На число гостевух не смотри.
225 1741223
>>36839 (OP)
сразу видно что ты ровным счетом нихуя не шаришь.

C# очень удобен для создания ПО для своих задач с GUI под винду.
Все чрезвычайно просто и удобно на самом деле. Нет ебли с памятью. Нет ебли с указателями, динамическими массивами, и прочим низкоуровневым говном. Можно попробовать пописать программки на заказ. Но не факт что будут нужны. Конкуренция дикая.

JAVA/Kotlin - enterprise only, я не видел ни одного не enterprise проекта.
Ни одного. Вообще. Ноль. Ну и мобилки конечно же. Говнокода овердохуя.

Python - быстро сморганить какие-то примитивные логики, и реализовать для разовых задач где впадлу ебаться ручками.
Ох как бы я поспорил с его легкостью освоения, уууу.
Да, отсутствие ебли с типами, памятью, это большой плюс.
Но мне не зашел ниразу. Плюсь от python, но не говорю что плохо.

Ruby - хипстерская никому нахуй не нужная хуйня.
Видел проекты на Ruby, пытался ставить, пользоваться - хуйня хуйнёй.

JavaScript - смотря какой. Подразумеваются framework? typescript? Dart? Что конкретно? Крайне популярный и чрезвычайно мощный инструмент для деланья чего угодно в браузере. Node.js туда же.
Мне лично не зашел, для меня это сложно. Но возможности поражают воображение. https://github.com/VadimDez/Counter-Strike-JS

php / html / css/less + базовый js / jquerry / bootstrap и так далее. То, что помогает выживать. Задач и рынок невероятно большой. Всем нужны сайты, решения багов и проблем с ними, презентации сайтов, а лендинги по 20к - это святая святых. То, что делает со временем и опытом и полученными деньгами из макаки либо хипстера, либо чмоху-сыча, либо человека который набирается ресурсов для реализации себя в чем-либо.
Крайне сложно. Много времени нужно для вкатывания для создания чего-то пригодного, и то, не без помощи frameworkов.

Go - моя няшка. Самый логичный, удобный, масштабируемый, без мозгоебли язык который приятно читать и писать. Обожаю няку :3

Rust - 1000ликий дракон Go. Вроде делали лучшую альтернативу C++, в результате читать говнокод высранный этими даунами просто невозможно. Я на дах не перевариваю код типа:
https://github.com/Luminarys/synapse/blob/master/src/torrent/mod.rs

Я в душе не ебу, как это говно можно читать, понимать, дебажить, вносить правки... Рили...

C - моя первая и крайне трудная няшка. чрезвычайно помогли индусы и скриптовые языки построенные на С с Си синтаксисом.
Не могу сказать что имею достаточно опыта писанины чего-то крутого с нуля, но с уверенностью могу сказать что без проблем принимал участие много лет в написании говнокода для разных проектов. Точно не язык для изучения в первую очередь. Только по надобности когда уже ЯП знакомы, и понятно устройство памяти на низком уровне, когда попутно изучаешь ASM, не более того.

D - упущенный и не взлетевший ЯП, синтаксис нравится, удобно, прикольно, но инфраструктуры нихуя нет.

Что лично предпочитаю?
go / php / C#, кушать хочется...
225 1741223
>>36839 (OP)
сразу видно что ты ровным счетом нихуя не шаришь.

C# очень удобен для создания ПО для своих задач с GUI под винду.
Все чрезвычайно просто и удобно на самом деле. Нет ебли с памятью. Нет ебли с указателями, динамическими массивами, и прочим низкоуровневым говном. Можно попробовать пописать программки на заказ. Но не факт что будут нужны. Конкуренция дикая.

JAVA/Kotlin - enterprise only, я не видел ни одного не enterprise проекта.
Ни одного. Вообще. Ноль. Ну и мобилки конечно же. Говнокода овердохуя.

Python - быстро сморганить какие-то примитивные логики, и реализовать для разовых задач где впадлу ебаться ручками.
Ох как бы я поспорил с его легкостью освоения, уууу.
Да, отсутствие ебли с типами, памятью, это большой плюс.
Но мне не зашел ниразу. Плюсь от python, но не говорю что плохо.

Ruby - хипстерская никому нахуй не нужная хуйня.
Видел проекты на Ruby, пытался ставить, пользоваться - хуйня хуйнёй.

JavaScript - смотря какой. Подразумеваются framework? typescript? Dart? Что конкретно? Крайне популярный и чрезвычайно мощный инструмент для деланья чего угодно в браузере. Node.js туда же.
Мне лично не зашел, для меня это сложно. Но возможности поражают воображение. https://github.com/VadimDez/Counter-Strike-JS

php / html / css/less + базовый js / jquerry / bootstrap и так далее. То, что помогает выживать. Задач и рынок невероятно большой. Всем нужны сайты, решения багов и проблем с ними, презентации сайтов, а лендинги по 20к - это святая святых. То, что делает со временем и опытом и полученными деньгами из макаки либо хипстера, либо чмоху-сыча, либо человека который набирается ресурсов для реализации себя в чем-либо.
Крайне сложно. Много времени нужно для вкатывания для создания чего-то пригодного, и то, не без помощи frameworkов.

Go - моя няшка. Самый логичный, удобный, масштабируемый, без мозгоебли язык который приятно читать и писать. Обожаю няку :3

Rust - 1000ликий дракон Go. Вроде делали лучшую альтернативу C++, в результате читать говнокод высранный этими даунами просто невозможно. Я на дах не перевариваю код типа:
https://github.com/Luminarys/synapse/blob/master/src/torrent/mod.rs

Я в душе не ебу, как это говно можно читать, понимать, дебажить, вносить правки... Рили...

C - моя первая и крайне трудная няшка. чрезвычайно помогли индусы и скриптовые языки построенные на С с Си синтаксисом.
Не могу сказать что имею достаточно опыта писанины чего-то крутого с нуля, но с уверенностью могу сказать что без проблем принимал участие много лет в написании говнокода для разных проектов. Точно не язык для изучения в первую очередь. Только по надобности когда уже ЯП знакомы, и понятно устройство памяти на низком уровне, когда попутно изучаешь ASM, не более того.

D - упущенный и не взлетевший ЯП, синтаксис нравится, удобно, прикольно, но инфраструктуры нихуя нет.

Что лично предпочитаю?
go / php / C#, кушать хочется...
226 1741234
Ору кстати с того, что макакены либо недовкатывальщики рассказывают, что "Линух нинужон", тогда как 100% серверов внезапно работают на Линухе...
227 1741262
>>41234
Нет, к сожалению, не 100%, есть некий процент упоротых, у которых IIS и прочая хуита. И их далеко не единицы.
228 1741310
>>40572
private final native public volatile static transient synchronized protected abstract class FactoryFactoryFactoryFacade extends AbstractBuilderIteratorBeanDecoratorInterceptorFactoryFactory implements AbstractFactoryStrategyIteratorProxy, AbstractFactoryFactoryListener {

SingletonDecoratorAdapter singletonDecoratorAdapter = new SingletonDecoratorAdapter();

AbstractFactoryFactorySingletonBuilderProxy abstractFactoryFactorySingletonBuilderProxy = new AbstractFactoryFactorySingletonBuilderProxy();

VisitorBeanSingletonProxyAdvisorBuilderFactoryFactory visitorBeanSingletonProxyAdvisorBuilderFactoryFactory = new VisitorBeanSingletonProxyAdvisorBuilderFactoryFactory();

IteratorListenerBean iteratorListenerBean = new IteratorListenerBean();

AbstractAdvisorBuilderIteratorInterceptorSingletonFacadeStrategyDecorator abstractAdvisorBuilderIteratorInterceptorSingletonFacadeStrategyDecorator = new AbstractAdvisorBuilderIteratorInterceptorSingletonFacadeStrategyDecorator();

synchronized final private protected void setAdvisorFacadeObserverFactorySingletonBeanProxy(AdvisorFacadeObserverFactorySingletonBeanProxy advisorFacadeObserverFactorySingletonBeanProxy) {
this.advisorFacadeObserverFactorySingletonBeanProxy = advisorFacadeObserverFactorySingletonBeanProxy;
}

public synchronized static protected native volatile transient private void setAbstractIteratorFactoryFactoryFactoryBuilderSingletonInterceptorFacadeProxy(AbstractIteratorFactoryFactoryFactoryBuilderSingletonInterceptorFacadeProxy abstractIteratorFactoryFactoryFactoryBuilderSingletonInterceptorFacadeProxy) {
this.abstractIteratorFactoryFactoryFactoryBuilderSingletonInterceptorFacadeProxy = abstractIteratorFactoryFactoryFactoryBuilderSingletonInterceptorFacadeProxy;
}

native public static synchronized protected private transient final void setAbstractObserverAdvisorBeanStrategyAdapterListenerBuilderIterator(AbstractObserverAdvisorBeanStrategyAdapterListenerBuilderIterator abstractObserverAdvisorBeanStrategyAdapterListenerBuilderIterator) {
this.abstractObserverAdvisorBeanStrategyAdapterListenerBuilderIterator = abstractObserverAdvisorBeanStrategyAdapterListenerBuilderIterator;
}

protected public native synchronized final void setAbstractBuilderFactoryFactory(AbstractBuilderFactoryFactory abstractBuilderFactoryFactory) {
this.abstractBuilderFactoryFactory = abstractBuilderFactoryFactory;
}

static private protected volatile transient SingletonInterceptorAdvisorListenerBuilderFactoryFactoryFactory getSingletonInterceptorAdvisorListenerBuilderFactoryFactoryFactory() {
return this.singletonInterceptorAdvisorListenerBuilderFactoryFactoryFactory;
}

transient private final static public VisitorAdvisorFactoryAdapterProxy getVisitorAdvisorFactoryAdapterProxy() {
return this.visitorAdvisorFactoryAdapterProxy;
}

synchronized protected public final volatile private AbstractAdapterSingletonStrategyProxyBuilderInterceptorDecoratorListener getAbstractAdapterSingletonStrategyProxyBuilderInterceptorDecoratorListener() {
return this.abstractAdapterSingletonStrategyProxyBuilderInterceptorDecoratorListener;
}

public transient private AbstractListenerAdvisor getAbstractListenerAdvisor() {
return this.abstractListenerAdvisor;
}

public protected transient final synchronized volatile static native private AbstractListenerAdvisorProxySingletonFacadeStrategyFactoryAdapter abstractListenerAdvisorProxySingletonFacadeStrategyFactoryAdapter(ObserverDecoratorAdvisorAdapterBuilderSingletonFacade observerDecoratorAdvisorAdapterBuilderSingletonFacade, AbstractBeanInterceptor abstractBeanInterceptor, AdvisorFacadeSingletonDecoratorListener advisorFacadeSingletonDecoratorListener, AbstractAdapterAdvisorObserverListenerFactoryStrategyBeanBuilder abstractAdapterAdvisorObserverListenerFactoryStrategyBeanBuilder, AbstractBeanSingletonInterceptorDecoratorFactoryFactoryFactoryProxyObserver abstractBeanSingletonInterceptorDecoratorFactoryFactoryFactoryProxyObserver) {
decoratorProxyBean.setProxyAdvisorStrategyFactoryFactoryInterceptorFactoryAdapter(this.proxyAdvisorStrategyFactoryFactoryInterceptorFactoryAdapter);

return new AbstractListenerAdvisorProxySingletonFacadeStrategyFactoryAdapter();
}

transient native private final synchronized volatile protected static DecoratorSingletonIterator decoratorSingletonIterator(ObserverSingletonListenerFactoryFactoryBuilder observerSingletonListenerFactoryFactoryBuilder, VisitorDecoratorSingletonObserverFactory visitorDecoratorSingletonObserverFactory, AbstractFacadeBeanAdvisorAdapterSingletonProxyListenerFactoryFactory abstractFacadeBeanAdvisorAdapterSingletonProxyListenerFactoryFactory, FactoryVisitorProxyDecoratorListener factoryVisitorProxyDecoratorListener) {
factoryInterceptorListenerSingletonFacadeDecoratorAdapter.setAbstractBuilderDecorator(this.abstractBuilderDecorator);
InterceptorProxyFacade interceptorProxyFacade = new InterceptorProxyFacade();
abstractAdvisorAdapterVisitorBean.setAbstractAdapterObserver(this.abstractAdapterObserver);
abstractInterceptorListenerBuilderSingletonAdapterStrategyFactoryAdvisor.setAdvisorStrategyDecorator(this.advisorStrategyDecorator);

return new DecoratorSingletonIterator();
}

synchronized volatile private final protected public static native transient AbstractListenerFactoryFactoryDecoratorAdapterProxyInterceptorObserverFacade abstractListenerFactoryFactoryDecoratorAdapterProxyInterceptorObserverFacade(ObserverListenerBeanFactoryFactoryAdvisor observerListenerBeanFactoryFactoryAdvisor, ProxyObserverVisitorFactoryBuilderDecoratorStrategy proxyObserverVisitorFactoryBuilderDecoratorStrategy, AbstractBeanInterceptorObserverAdvisor abstractBeanInterceptorObserverAdvisor) {
abstractStrategyFactoryFactoryBeanVisitorBuilderSingleton.setAbstractIteratorVisitor(this.abstractIteratorVisitor);
AbstractListenerAdvisorSingletonObserver abstractListenerAdvisorSingletonObserver = abstractBuilderDecoratorVisitorFactoryBeanProxyFacadeSingleton.getAbstractAdapterProxyBuilderFacadeListenerAdvisorInterceptorFactory().getAbstractListenerAdvisorSingletonObserver();

return new AbstractListenerFactoryFactoryDecoratorAdapterProxyInterceptorObserverFacade();
}

volatile static transient public native protected AbstractListenerBuilderAdvisorProxyVisitorFacade abstractListenerBuilderAdvisorProxyVisitorFacade(DecoratorSingletonAdvisorFactoryInterceptorListenerBuilder decoratorSingletonAdvisorFactoryInterceptorListenerBuilder, AbstractDecoratorBuilderBeanListenerSingletonObserver abstractDecoratorBuilderBeanListenerSingletonObserver) {
AbstractObserverAdvisorBuilderIteratorFacadeFactoryFactoryFactoryAdapter abstractObserverAdvisorBuilderIteratorFacadeFactoryFactoryFactoryAdapter = new AbstractObserverAdvisorBuilderIteratorFacadeFactoryFactoryFactoryAdapter();
adapterAdvisorDecoratorFacadeProxy.setAbstractAdapterBeanDecoratorStrategySingletonFacadeListenerFactory(this.abstractAdapterBeanDecoratorStrategySingletonFacadeListenerFactory);

return new AbstractListenerBuilderAdvisorProxyVisitorFacade();
}

private final public static volatile transient synchronized protected InterceptorSingletonVisitor interceptorSingletonVisitor(AbstractDecoratorStrategyProxyObserverInterceptorBuilder abstractDecoratorStrategyProxyObserverInterceptorBuilder, AbstractVisitorAdvisorFacadeListener abstractVisitorAdvisorFacadeListener, VisitorFactoryFactoryBuilder visitorFactoryFactoryBuilder, VisitorProxyFacadeFactoryFactorySingletonAdvisorDecorator visitorProxyFacadeFactoryFactorySingletonAdvisorDecorator, AbstractAdvisorBuilderDecoratorInterceptor abstractAdvisorBuilderDecoratorInterceptor) {
AbstractProxyAdvisor abstractProxyAdvisor = abstractFactoryFactoryDecorator.getListenerInterceptorFactoryFactory().getAbstractProxyAdvisor();
AbstractVisitorAdvisorListenerStrategySingletonIteratorAdapterFactory abstractVisitorAdvisorListenerStrategySingletonIteratorAdapterFactory = new AbstractVisitorAdvisorListenerStrategySingletonIteratorAdapterFactory();
abstractBeanAdvisorSingletonInterceptor.setAbstractFactoryFactoryAdvisorFacadeStrategy(this.abstractFactoryFactoryAdvisorFacadeStrategy);
AbstractAdvisorProxyStrategyIteratorVisitorObserver abstractAdvisorProxyStrategyIteratorVisitorObserver = new AbstractAdvisorProxyStrategyIteratorVisitorObserver();

if (abstractSingletonFacadeFactoryObserver.isInterceptorListenerFacade()) {
iteratorProxyListenerFacadeBean.setAbstractStrategyBean(this.abstractStrategyBean);
AbstractFactoryDecoratorBeanFacadeAdapterProxyAdvisorVisitor abstractFactoryDecoratorBeanFacadeAdapterProxyAdvisorVisitor = abstractBeanInterceptorIteratorListenerFactoryFactoryStrategyProxyObserver.getAbstractObserverFacadeListenerSingletonProxyAdvisorStrategyVisitor().getAbstractFactoryDecoratorBeanFacadeAdapterProxyAdvisorVisitor();
abstractProxyBuilderVisitorSingleton.setIteratorAdvisorProxySingletonAdapter(this.iteratorAdvisorProxySingletonAdapter);

if (abstractDecoratorAdapterVisitorProxyObserverIteratorBuilderFactory.isDecoratorFactoryFactoryFacade()) {
visitorIteratorObserverProxyAdvisor.setAbstractObserverSingletonProxyAdvisorBuilderDecorator(this.abstractObserverSingletonProxyAdvisorBuilderDecorator);
singletonFacadeAdapterListenerFactory.setAbstractIteratorInterceptorSingletonListenerAdvisorDecoratorBuilderFactoryFactory(this.abstractIteratorInterceptorSingletonListenerAdvisorDecoratorBuilderFactoryFactory);

while (abstractFactoryAdapterSingletonFactoryFactory.isAbstractStrategyFactory()) {
abstractAdapterBeanStrategySingletonAdvisorBuilderListenerFactory.setAbstractStrategyFactoryFactoryFacadeBuilderFactoryIteratorProxyObserver(this.abstractStrategyFactoryFactoryFacadeBuilderFactoryIteratorProxyObserver);
abstractObserverAdapterFactoryFacadeDecoratorBuilderInterceptorFactoryFactory.setAdvisorIteratorFactoryProxyDecorator(this.advisorIteratorFactoryProxyDecorator);

while (abstractFacadeListenerStrategyIteratorAdvisorSingletonProxyObserver.isVisitorDecoratorInterceptorIteratorAdapter()) {
abstractProxyAdapterInterceptorObserverFactoryFactoryIterator.setSingletonFactoryFactoryProxyIteratorStrategy(this.singletonFactoryFactoryProxyIteratorStrategy);
singletonInterceptorDecorator.setAbstractFactoryFactoryListenerBuilderAdvisorDecoratorFacade(this.abstractFactoryFactoryListenerBuilderAdvisorDecoratorFacade);
visitorFactoryFactoryAdapterIteratorInterceptor.setAbstractIteratorVisitor(this.abstractIteratorVisitor);
}
}
} else {
abstractListenerInterceptorStrategyVisitorBeanFactorySingletonIterator.setAbstractProxyStrategy(this.abstractProxyStrategy);
abstractProxyInterceptorSingletonFactoryFactory.setAbstractSingletonIterator(this.abstractSingletonIterator);
}
} else {
singletonListenerFactoryFactoryIteratorProxy.setAbstractObserverProxyIteratorVisitor(this.abstractObserverProxyIteratorVisitor);
}

return new InterceptorSingletonVisitor();
}

native volatile static final public AbstractSingletonObserver abstractSingletonObserver(AbstractBuilderFacade abstractBuilderFacade, ListenerBuilderVisitorFactoryStrategyAdvisorFacade listenerBuilderVisitorFactoryStrategyAdvisorFacade) {
builderObserverIterator.setAbstractProxyBuilder(this.abstractProxyBuilder);
AbstractInterceptorAdapterFactoryAdvisorStrategyProxy abstractInterceptorAdapterFactoryAdvisorStrategyProxy = abstractDecoratorInterceptor.getStrategyObserverListenerVisitorBean().getAbstractInterceptorAdapterFactoryAdvisorStrategyProxy();
AbstractInterceptorListenerAdvisorVisitorProxyObserverStrategyIterator abstractInterceptorListenerAdvisorVisitorProxyObserverStrategyIterator = abstractFactoryIteratorStrategyVisitor.getAdvisorBuilderVisitorBeanIterator().getAbstractInterceptorListenerAdvisorVisitorProxyObserverStrategyIterator();

while (facadeStrategyObserver.isAbstractFactoryFactoryFactoryListenerVisitorIteratorSingletonBeanAdvisor()) {
abstractFactoryFactoryAdvisorFactoryInterceptorIteratorObserverProxyBuilder.setIteratorAdvisorBeanBuilderProxy(this.iteratorAdvisorBeanBuilderProxy);
AbstractIteratorFactoryFactoryFacadeObserverVisitorAdapter abstractIteratorFactoryFactoryFacadeObserverVisitorAdapter = new AbstractIteratorFactoryFactoryFacadeObserverVisitorAdapter();
abstractVisitorObserverBeanSingletonBuilderProxyFacadeIterator.setAbstractProxyFactoryAdapterFactoryFactoryInterceptorIterator(this.abstractProxyFactoryAdapterFactoryFactoryInterceptorIterator);
}

return new AbstractSingletonObserver();
}

transient volatile static private synchronized AbstractFactorySingletonFacadeProxyFactoryFactoryIterator abstractFactorySingletonFacadeProxyFactoryFactoryIterator(ObserverInterceptorAdapter observerInterceptorAdapter, AbstractInterceptorIteratorListenerFacadeDecoratorVisitor abstractInterceptorIteratorListenerFacadeDecoratorVisitor, FactoryDecoratorBeanAdapterProxy factoryDecoratorBeanAdapterProxy, SingletonAdvisorFacadeBuilderStrategy singletonAdvisorFacadeBuilderStrategy) {
AbstractBuilderIterator abstractBuilderIterator = new AbstractBuilderIterator();
iteratorSingletonDecoratorVisitorAdvisorFactoryFacade.setAbstractDecoratorAdapterListenerBuilderFacadeIterator(this.abstractDecoratorAdapterListenerBuilderFacadeIterator);

return new AbstractFactorySingletonFacadeProxyFactoryFactoryIterator();
}

synchronized volatile protected native private DecoratorStrategyBuilderListenerSingleton decoratorStrategyBuilderListenerSingleton(ObserverBuilderFactoryFactory observerBuilderFactoryFactory, AbstractStrategyDecoratorFacadeVisitor abstractStrategyDecoratorFacadeVisitor, AbstractAdapterIteratorListenerBuilderFactoryVisitor abstractAdapterIteratorListenerBuilderFactoryVisitor, AbstractVisitorObserverBuilderSingletonProxyIteratorListenerDecorator abstractVisitorObserverBuilderSingletonProxyIteratorListenerDecorator, AbstractStrategyFactoryFacadeVisitorListenerBean abstractStrategyFactoryFacadeVisitorListenerBean) {
advisorStrategySingleton.setAbstractSingletonObserverAdapterDecorator(this.abstractSingletonObserverAdapterDecorator);

return new DecoratorStrategyBuilderListenerSingleton();
}

}
228 1741310
>>40572
private final native public volatile static transient synchronized protected abstract class FactoryFactoryFactoryFacade extends AbstractBuilderIteratorBeanDecoratorInterceptorFactoryFactory implements AbstractFactoryStrategyIteratorProxy, AbstractFactoryFactoryListener {

SingletonDecoratorAdapter singletonDecoratorAdapter = new SingletonDecoratorAdapter();

AbstractFactoryFactorySingletonBuilderProxy abstractFactoryFactorySingletonBuilderProxy = new AbstractFactoryFactorySingletonBuilderProxy();

VisitorBeanSingletonProxyAdvisorBuilderFactoryFactory visitorBeanSingletonProxyAdvisorBuilderFactoryFactory = new VisitorBeanSingletonProxyAdvisorBuilderFactoryFactory();

IteratorListenerBean iteratorListenerBean = new IteratorListenerBean();

AbstractAdvisorBuilderIteratorInterceptorSingletonFacadeStrategyDecorator abstractAdvisorBuilderIteratorInterceptorSingletonFacadeStrategyDecorator = new AbstractAdvisorBuilderIteratorInterceptorSingletonFacadeStrategyDecorator();

synchronized final private protected void setAdvisorFacadeObserverFactorySingletonBeanProxy(AdvisorFacadeObserverFactorySingletonBeanProxy advisorFacadeObserverFactorySingletonBeanProxy) {
this.advisorFacadeObserverFactorySingletonBeanProxy = advisorFacadeObserverFactorySingletonBeanProxy;
}

public synchronized static protected native volatile transient private void setAbstractIteratorFactoryFactoryFactoryBuilderSingletonInterceptorFacadeProxy(AbstractIteratorFactoryFactoryFactoryBuilderSingletonInterceptorFacadeProxy abstractIteratorFactoryFactoryFactoryBuilderSingletonInterceptorFacadeProxy) {
this.abstractIteratorFactoryFactoryFactoryBuilderSingletonInterceptorFacadeProxy = abstractIteratorFactoryFactoryFactoryBuilderSingletonInterceptorFacadeProxy;
}

native public static synchronized protected private transient final void setAbstractObserverAdvisorBeanStrategyAdapterListenerBuilderIterator(AbstractObserverAdvisorBeanStrategyAdapterListenerBuilderIterator abstractObserverAdvisorBeanStrategyAdapterListenerBuilderIterator) {
this.abstractObserverAdvisorBeanStrategyAdapterListenerBuilderIterator = abstractObserverAdvisorBeanStrategyAdapterListenerBuilderIterator;
}

protected public native synchronized final void setAbstractBuilderFactoryFactory(AbstractBuilderFactoryFactory abstractBuilderFactoryFactory) {
this.abstractBuilderFactoryFactory = abstractBuilderFactoryFactory;
}

static private protected volatile transient SingletonInterceptorAdvisorListenerBuilderFactoryFactoryFactory getSingletonInterceptorAdvisorListenerBuilderFactoryFactoryFactory() {
return this.singletonInterceptorAdvisorListenerBuilderFactoryFactoryFactory;
}

transient private final static public VisitorAdvisorFactoryAdapterProxy getVisitorAdvisorFactoryAdapterProxy() {
return this.visitorAdvisorFactoryAdapterProxy;
}

synchronized protected public final volatile private AbstractAdapterSingletonStrategyProxyBuilderInterceptorDecoratorListener getAbstractAdapterSingletonStrategyProxyBuilderInterceptorDecoratorListener() {
return this.abstractAdapterSingletonStrategyProxyBuilderInterceptorDecoratorListener;
}

public transient private AbstractListenerAdvisor getAbstractListenerAdvisor() {
return this.abstractListenerAdvisor;
}

public protected transient final synchronized volatile static native private AbstractListenerAdvisorProxySingletonFacadeStrategyFactoryAdapter abstractListenerAdvisorProxySingletonFacadeStrategyFactoryAdapter(ObserverDecoratorAdvisorAdapterBuilderSingletonFacade observerDecoratorAdvisorAdapterBuilderSingletonFacade, AbstractBeanInterceptor abstractBeanInterceptor, AdvisorFacadeSingletonDecoratorListener advisorFacadeSingletonDecoratorListener, AbstractAdapterAdvisorObserverListenerFactoryStrategyBeanBuilder abstractAdapterAdvisorObserverListenerFactoryStrategyBeanBuilder, AbstractBeanSingletonInterceptorDecoratorFactoryFactoryFactoryProxyObserver abstractBeanSingletonInterceptorDecoratorFactoryFactoryFactoryProxyObserver) {
decoratorProxyBean.setProxyAdvisorStrategyFactoryFactoryInterceptorFactoryAdapter(this.proxyAdvisorStrategyFactoryFactoryInterceptorFactoryAdapter);

return new AbstractListenerAdvisorProxySingletonFacadeStrategyFactoryAdapter();
}

transient native private final synchronized volatile protected static DecoratorSingletonIterator decoratorSingletonIterator(ObserverSingletonListenerFactoryFactoryBuilder observerSingletonListenerFactoryFactoryBuilder, VisitorDecoratorSingletonObserverFactory visitorDecoratorSingletonObserverFactory, AbstractFacadeBeanAdvisorAdapterSingletonProxyListenerFactoryFactory abstractFacadeBeanAdvisorAdapterSingletonProxyListenerFactoryFactory, FactoryVisitorProxyDecoratorListener factoryVisitorProxyDecoratorListener) {
factoryInterceptorListenerSingletonFacadeDecoratorAdapter.setAbstractBuilderDecorator(this.abstractBuilderDecorator);
InterceptorProxyFacade interceptorProxyFacade = new InterceptorProxyFacade();
abstractAdvisorAdapterVisitorBean.setAbstractAdapterObserver(this.abstractAdapterObserver);
abstractInterceptorListenerBuilderSingletonAdapterStrategyFactoryAdvisor.setAdvisorStrategyDecorator(this.advisorStrategyDecorator);

return new DecoratorSingletonIterator();
}

synchronized volatile private final protected public static native transient AbstractListenerFactoryFactoryDecoratorAdapterProxyInterceptorObserverFacade abstractListenerFactoryFactoryDecoratorAdapterProxyInterceptorObserverFacade(ObserverListenerBeanFactoryFactoryAdvisor observerListenerBeanFactoryFactoryAdvisor, ProxyObserverVisitorFactoryBuilderDecoratorStrategy proxyObserverVisitorFactoryBuilderDecoratorStrategy, AbstractBeanInterceptorObserverAdvisor abstractBeanInterceptorObserverAdvisor) {
abstractStrategyFactoryFactoryBeanVisitorBuilderSingleton.setAbstractIteratorVisitor(this.abstractIteratorVisitor);
AbstractListenerAdvisorSingletonObserver abstractListenerAdvisorSingletonObserver = abstractBuilderDecoratorVisitorFactoryBeanProxyFacadeSingleton.getAbstractAdapterProxyBuilderFacadeListenerAdvisorInterceptorFactory().getAbstractListenerAdvisorSingletonObserver();

return new AbstractListenerFactoryFactoryDecoratorAdapterProxyInterceptorObserverFacade();
}

volatile static transient public native protected AbstractListenerBuilderAdvisorProxyVisitorFacade abstractListenerBuilderAdvisorProxyVisitorFacade(DecoratorSingletonAdvisorFactoryInterceptorListenerBuilder decoratorSingletonAdvisorFactoryInterceptorListenerBuilder, AbstractDecoratorBuilderBeanListenerSingletonObserver abstractDecoratorBuilderBeanListenerSingletonObserver) {
AbstractObserverAdvisorBuilderIteratorFacadeFactoryFactoryFactoryAdapter abstractObserverAdvisorBuilderIteratorFacadeFactoryFactoryFactoryAdapter = new AbstractObserverAdvisorBuilderIteratorFacadeFactoryFactoryFactoryAdapter();
adapterAdvisorDecoratorFacadeProxy.setAbstractAdapterBeanDecoratorStrategySingletonFacadeListenerFactory(this.abstractAdapterBeanDecoratorStrategySingletonFacadeListenerFactory);

return new AbstractListenerBuilderAdvisorProxyVisitorFacade();
}

private final public static volatile transient synchronized protected InterceptorSingletonVisitor interceptorSingletonVisitor(AbstractDecoratorStrategyProxyObserverInterceptorBuilder abstractDecoratorStrategyProxyObserverInterceptorBuilder, AbstractVisitorAdvisorFacadeListener abstractVisitorAdvisorFacadeListener, VisitorFactoryFactoryBuilder visitorFactoryFactoryBuilder, VisitorProxyFacadeFactoryFactorySingletonAdvisorDecorator visitorProxyFacadeFactoryFactorySingletonAdvisorDecorator, AbstractAdvisorBuilderDecoratorInterceptor abstractAdvisorBuilderDecoratorInterceptor) {
AbstractProxyAdvisor abstractProxyAdvisor = abstractFactoryFactoryDecorator.getListenerInterceptorFactoryFactory().getAbstractProxyAdvisor();
AbstractVisitorAdvisorListenerStrategySingletonIteratorAdapterFactory abstractVisitorAdvisorListenerStrategySingletonIteratorAdapterFactory = new AbstractVisitorAdvisorListenerStrategySingletonIteratorAdapterFactory();
abstractBeanAdvisorSingletonInterceptor.setAbstractFactoryFactoryAdvisorFacadeStrategy(this.abstractFactoryFactoryAdvisorFacadeStrategy);
AbstractAdvisorProxyStrategyIteratorVisitorObserver abstractAdvisorProxyStrategyIteratorVisitorObserver = new AbstractAdvisorProxyStrategyIteratorVisitorObserver();

if (abstractSingletonFacadeFactoryObserver.isInterceptorListenerFacade()) {
iteratorProxyListenerFacadeBean.setAbstractStrategyBean(this.abstractStrategyBean);
AbstractFactoryDecoratorBeanFacadeAdapterProxyAdvisorVisitor abstractFactoryDecoratorBeanFacadeAdapterProxyAdvisorVisitor = abstractBeanInterceptorIteratorListenerFactoryFactoryStrategyProxyObserver.getAbstractObserverFacadeListenerSingletonProxyAdvisorStrategyVisitor().getAbstractFactoryDecoratorBeanFacadeAdapterProxyAdvisorVisitor();
abstractProxyBuilderVisitorSingleton.setIteratorAdvisorProxySingletonAdapter(this.iteratorAdvisorProxySingletonAdapter);

if (abstractDecoratorAdapterVisitorProxyObserverIteratorBuilderFactory.isDecoratorFactoryFactoryFacade()) {
visitorIteratorObserverProxyAdvisor.setAbstractObserverSingletonProxyAdvisorBuilderDecorator(this.abstractObserverSingletonProxyAdvisorBuilderDecorator);
singletonFacadeAdapterListenerFactory.setAbstractIteratorInterceptorSingletonListenerAdvisorDecoratorBuilderFactoryFactory(this.abstractIteratorInterceptorSingletonListenerAdvisorDecoratorBuilderFactoryFactory);

while (abstractFactoryAdapterSingletonFactoryFactory.isAbstractStrategyFactory()) {
abstractAdapterBeanStrategySingletonAdvisorBuilderListenerFactory.setAbstractStrategyFactoryFactoryFacadeBuilderFactoryIteratorProxyObserver(this.abstractStrategyFactoryFactoryFacadeBuilderFactoryIteratorProxyObserver);
abstractObserverAdapterFactoryFacadeDecoratorBuilderInterceptorFactoryFactory.setAdvisorIteratorFactoryProxyDecorator(this.advisorIteratorFactoryProxyDecorator);

while (abstractFacadeListenerStrategyIteratorAdvisorSingletonProxyObserver.isVisitorDecoratorInterceptorIteratorAdapter()) {
abstractProxyAdapterInterceptorObserverFactoryFactoryIterator.setSingletonFactoryFactoryProxyIteratorStrategy(this.singletonFactoryFactoryProxyIteratorStrategy);
singletonInterceptorDecorator.setAbstractFactoryFactoryListenerBuilderAdvisorDecoratorFacade(this.abstractFactoryFactoryListenerBuilderAdvisorDecoratorFacade);
visitorFactoryFactoryAdapterIteratorInterceptor.setAbstractIteratorVisitor(this.abstractIteratorVisitor);
}
}
} else {
abstractListenerInterceptorStrategyVisitorBeanFactorySingletonIterator.setAbstractProxyStrategy(this.abstractProxyStrategy);
abstractProxyInterceptorSingletonFactoryFactory.setAbstractSingletonIterator(this.abstractSingletonIterator);
}
} else {
singletonListenerFactoryFactoryIteratorProxy.setAbstractObserverProxyIteratorVisitor(this.abstractObserverProxyIteratorVisitor);
}

return new InterceptorSingletonVisitor();
}

native volatile static final public AbstractSingletonObserver abstractSingletonObserver(AbstractBuilderFacade abstractBuilderFacade, ListenerBuilderVisitorFactoryStrategyAdvisorFacade listenerBuilderVisitorFactoryStrategyAdvisorFacade) {
builderObserverIterator.setAbstractProxyBuilder(this.abstractProxyBuilder);
AbstractInterceptorAdapterFactoryAdvisorStrategyProxy abstractInterceptorAdapterFactoryAdvisorStrategyProxy = abstractDecoratorInterceptor.getStrategyObserverListenerVisitorBean().getAbstractInterceptorAdapterFactoryAdvisorStrategyProxy();
AbstractInterceptorListenerAdvisorVisitorProxyObserverStrategyIterator abstractInterceptorListenerAdvisorVisitorProxyObserverStrategyIterator = abstractFactoryIteratorStrategyVisitor.getAdvisorBuilderVisitorBeanIterator().getAbstractInterceptorListenerAdvisorVisitorProxyObserverStrategyIterator();

while (facadeStrategyObserver.isAbstractFactoryFactoryFactoryListenerVisitorIteratorSingletonBeanAdvisor()) {
abstractFactoryFactoryAdvisorFactoryInterceptorIteratorObserverProxyBuilder.setIteratorAdvisorBeanBuilderProxy(this.iteratorAdvisorBeanBuilderProxy);
AbstractIteratorFactoryFactoryFacadeObserverVisitorAdapter abstractIteratorFactoryFactoryFacadeObserverVisitorAdapter = new AbstractIteratorFactoryFactoryFacadeObserverVisitorAdapter();
abstractVisitorObserverBeanSingletonBuilderProxyFacadeIterator.setAbstractProxyFactoryAdapterFactoryFactoryInterceptorIterator(this.abstractProxyFactoryAdapterFactoryFactoryInterceptorIterator);
}

return new AbstractSingletonObserver();
}

transient volatile static private synchronized AbstractFactorySingletonFacadeProxyFactoryFactoryIterator abstractFactorySingletonFacadeProxyFactoryFactoryIterator(ObserverInterceptorAdapter observerInterceptorAdapter, AbstractInterceptorIteratorListenerFacadeDecoratorVisitor abstractInterceptorIteratorListenerFacadeDecoratorVisitor, FactoryDecoratorBeanAdapterProxy factoryDecoratorBeanAdapterProxy, SingletonAdvisorFacadeBuilderStrategy singletonAdvisorFacadeBuilderStrategy) {
AbstractBuilderIterator abstractBuilderIterator = new AbstractBuilderIterator();
iteratorSingletonDecoratorVisitorAdvisorFactoryFacade.setAbstractDecoratorAdapterListenerBuilderFacadeIterator(this.abstractDecoratorAdapterListenerBuilderFacadeIterator);

return new AbstractFactorySingletonFacadeProxyFactoryFactoryIterator();
}

synchronized volatile protected native private DecoratorStrategyBuilderListenerSingleton decoratorStrategyBuilderListenerSingleton(ObserverBuilderFactoryFactory observerBuilderFactoryFactory, AbstractStrategyDecoratorFacadeVisitor abstractStrategyDecoratorFacadeVisitor, AbstractAdapterIteratorListenerBuilderFactoryVisitor abstractAdapterIteratorListenerBuilderFactoryVisitor, AbstractVisitorObserverBuilderSingletonProxyIteratorListenerDecorator abstractVisitorObserverBuilderSingletonProxyIteratorListenerDecorator, AbstractStrategyFactoryFacadeVisitorListenerBean abstractStrategyFactoryFacadeVisitorListenerBean) {
advisorStrategySingleton.setAbstractSingletonObserverAdapterDecorator(this.abstractSingletonObserverAdapterDecorator);

return new DecoratorStrategyBuilderListenerSingleton();
}

}
229 1741320
>>41310
А strictfp забыл у класса.
230 1741378
>>41223
Ловите Goвноеда.
231 1741408
>>41223

>Видел проекты на Ruby, пытался ставить, пользоваться - хуйня хуйнёй.


И какой пакетный менеджер под маоксь ты используешь говноед?
232 1741429
>>41310
Смешно, но высрать подобное можно на чём угодно, так что это проблема высирающего.
233 1741452
>>41429
Покажи на пайтоне такое.
234 1741610
>>41452
На пайтоне проще говнокодить, так-то, потому что ты сам должен следить за тем, чтобы код был правильно структурирован.

>Покажи на пайтоне такое.


Покажи что-то более-менее сложное, стабильное и используемое в проде, где нет бесконечных elifов. Тебя не туда понесло.
235 1741661
>>41223
Что не так с кодом по ссылке? Пролистал, вроде обычный код.
Структура
поле1
поле2
поле3...

Действие1
для всех икс в списке
посчитать икгрек

Действие2
если а то б
иначе ц

Действие3
флаг = не флаг
236 1741822
>>41610

>где нет бесконечных elifов


Покажи сперва эти самые "бесконечные elif-ы". В том же пистоне ветвящиеся if считаются зашкварным способом организации логики (вкатывадьщиков в ML мы сейчас в расчет не берем, разгово рименно про бэк). Там будет либо словарь, либо декораторы, либо подобие паттерна State

мимо
237 1741905
>>41822
Речь вообще не об этом. Чел считает jvm-языка зашкварными, потому что "они не пайтон". Аргумент уровня амбициозного вкотика.
238 1742284
>>41310
Нечто такое же я видел и на питоне. Просто на питоне тырпрайз не пишут нормальные люди, а когда пишут, там еще хуже из-за отсутствия типов.
15938708573030.jpg55 Кб, 679x516
239 1742323
Почитал тред, так и не понял куда вкатываться нубу. во фронт
240 1742324
>>42323
В кобол.
241 1742326
>>42324
1c круче
242 1742363
243 1742380
>>42363
На js никто не будет писать бэкэнд.
244 1742442
>>42380
Прям щас на ноде пишем лол
245 1742505
>>42380
Скажи это куче крупных (и не очень компаний), а также статистике стековерфлоу https://softwarebrothers.co/blog/companies-that-use-node-js/
246 1742587
>>42505
Клиника.
247 1742594
>>42505
Тут явно есть подвох...
248 1742695
>>42594
Бэк весьма разношерстен на самом деле. Но большая его часть внезапно под php по причине легаси-параши
У ноды есть свои подвохи канешн. Отсутствие адекватного ООП, прототипирование и местами нелогичное поведение (в наследство от жс) делают ее более ебанутой чем тот же .NET и уж тем более Питон. Нода и экспресс под нее были весьма кстати в свое время, но многие компании решают писать на ней по банальной возможности нанять побольше жс-макак вот и все. Точно так же как некоторые ебанутые пишут свои мобилки на жс просто потому что на рынке можно весьма быстро наполнить свою галеру гребцами (круче только на питоне такое писать). О качестве продукта задумываются в последнюю очередь
249 1743430
>>39020

>лямбды


Блять, лямбда это просто синтаксический сахар
И все нахуй, это не какая-то особая фича
250 1743435
>>43430
Покажи лямбду в ассемблере.
251 1743442
>>43435
Двоечник, синтаксический сахар это простые расширения над языком. Можно объявить функцию и засунуть ее в коллбек, а можно сэкономить пару строк и описать ее в лямбде, вот и вся разница. Это тебе не асинхронный код против синхронного
252 1743456
>>43442
Хуеичник, я и говорю покажи на асме с макросами лямбды. Это же просто сахар.

>Это тебе не асинхронный код


Это просто сахар над коллбеками.
253 1743464
>>43456
Пиздец ты бесноватый ребенок... Все равно что пистонист копротивлялся бы за list/dict comprehension, обсираясь в ярых попытках доказать, что если в языке X их нет, то значит его создатель даун
254 1743469
>>43464

> list/dict comprehension, обсираясь в ярых попытках доказать, что если в языке X их нет, то значит его создатель даун


Действительно, ведь так и есть (в плюсы добавили)
255 1743535
>>43430

Хороший троллинг функциональщиков
256 1743576
>>43535
Но это так и есть
Ссаться кипятком от лямб когда это просто сахар - тот еще ор
Безусловно, в функциональщине без них было б запарно, просто потому что архитектура приложений сама того требует
257 1743608
>>43430
Синтаксический сахар над чем?
Напиши лямбду без синтаксиса лямбд.
258 1743653
>>43608
def my_lambda(body: str = '', kwargs):
return eval(body.format(
kwargs))

my_lambda('{x} + {y}', x=1, y=2)
259 1743657
>>43653
А теперь без кавычек, с непосредственным кодом.
260 1743929
>>43657
(defun my-lambda (body) (eval body))
(my-lambda '(concatenate 'string "ты" " хуй бля"))
261 1743978
>>43929
Во, это уже больше похоже.
Оказывается нужен язык с first-class функциями.
262 1743992
Как же люди сопротивляются, лишь бы не писать на богоподобном javascript
263 1744035
>>43992
У нас дотнетчики сопротивлялись до последнего, но перед короной их всей командой на улицу выкинули. Теперь все продукты написаны на жс+тайпскрипт. И всем хорошо.
264 1744080
>>44035
Надо быть очень способным, что выгнать более квалифицированных работников.
265 1744092
>>44035
""""продукты""""
266 1744115
>>44080

Шарп слишком поздно стал кроссплатформенным.
Теперь он накуй никому не нужен, кроме дремучего Легаси.
267 1744195
>>43608
Бля, да как же ты заебал
"напиши comprehension без синтаксиса comprehension"
Начинай.

И держи в уме, что это не более чем сахар для уменьшения бойлерплейта - ровно ту же функцию преследуют лямбды
268 1744209
>>44195
У тебя какое то альтернативное определение синтаксического сахара?
Синтаксический сахар означает, что то же самое (с таким же бинарником на выходе) можно написать без синтаксического сахара.
Как ты собрался писать лямбды, если например в твоем языке нельзя передавать функции? Или объявлять вложенные функции внутри других функций?
269 1744216
>>43992
2 самые отбитые группировки животин в современном айти это жс-еры и питонисты
Ебучие дети, изучившие 1 единственный язык и парадигму и не желающие узнавать что-то иное. Сующие свою херню везде, где надо и где не надо. Работодатели порой им и потакают, отсюда столько говноваканский с питоном или жс, где они максимально нахуй не всрались
270 1744274
>>44209
Для тебя и оператор := добавленный в недавний питон тоже нихуя не сахар, ага. Нельзя ж написать точно так же значит, не сахар нихуя, железная логика. и декораторы через @ тоже не сахар...

>если например в твоем языке нельзя передавать функции


Это вопрос совсем иной плоскости. Лямбда - это сахар. И точка. Функции как объекты первого класса это уже к вопросу парадигм программирования
271 1744327
>>44216
Ну с питоном уже доигрались, что для вкатышей 5 вакансий на Москву висит )))
272 1744331
>>44274
Декораторы абсолютный сахар. Оператор := уже позволяет от лишних переменных избавиться, но по сути сахар. Впрочем как и лямбды.

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

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

А когда надо лепить десятиэтажные выражения, как в C++, или вводить кучу дополнительных переменных, это уже отстой.
273 1744342
>>43456

>>Это тебе не асинхронный код


>Это просто сахар над коллбеками.


ХЗ кто этот бред выдумал, а потом копипастят. Ты в JS не сможешь переделать код async-await в обычный код на коллбэках без радикальной переделки логики. Там и внутри на уровне машины это иначе работает. Ни разу не сахар вообще.
274 1744348
>>44274
Ты читать не пробовал на что отвечаешь? Я не сказал "написать точно так же", я сказал чтобы бинарник вышел таким же.
Ну, это чтобы не было дрисни типа "а я указатель на *void передам".

> Лямбда - это сахар. И точка. Функции как объекты первого класса это уже к вопросу парадигм программирования


Жду пример лямбды без функий как первого класса.
275 1744354
>>44342
Заменить await на что то вроде (псевдокод)
var thread = new Thread(function, parameters...)
thread.start()
while(thread.working()) {}
276 1744361
>>44348
Жду пример питонячьего декоратора при объявлении функции без @
277 1744363
>>44361
препроцессор
278 1744364
>>44361
Не понял, почему ты требуешь примеры от меня? Ты пукнул про синтаксический сахар лямбд, ты и доказывай.
279 1744366
https://www.techempower.com/benchmarks/
Вы че дебилы? Все выбирают фреймворки, библиотеки и либы по бенчмаркам. А не вот это ваше.
280 1744368
>>44364
Забавно что ты кудахчешь что-то про всемогущие лямбы которые ни разу не сахар, но повторить декоратор при объявлении в говнопитоне, несущий абсолютно ту же функцию что и многострочные лямбы ты не могешь

>>44363
Какой нахрен препроцессор? Ты на питоне его напиши. А не скомпиль С-либу в питонообертке
281 1744370
>>36839 (OP)
ОП ты для начала опиши какую лычку носишь сколько лет в ИТ, сколько лет кодишь? Кто ты по масти? А то чую ты чушок и нюбара, фраер залётный. Я вот миддл разработчик, до этого ещё лет 10 работал системным администратором, в ИТ уже 12 лет, и скажу что суждения твои хуйня. Питон например позволяет сделать что-нибудь очень быстро и проверить это в работе, там где мы на джаве будешь писать двести строк на питоне это займет строк десять максимум. У каждого языка программирования свое применение, каждый по своему хорош, а ты да соси бибу
282 1744371
>>44366
Очень легко просунуть неправильный бенчмарк с неправильным использованием либы, чтобы он проиграл "правильному".
283 1744372
>>44366
Судя по российским "бенчмаркам" рейтинг мистера Пу может колебаться от 30% до 80%, в зависимости от формулировки вопроса
Твои "бенчмарки" идут туда же. Всегда надо ниибацки въедлево рассматривать любой бенч, брать их на веру - удел дауна
284 1744373
>>44368
Причем тут питон? Мне питон идти учить что ли ради тебя? Жду твоих пруфов. Сначала ты, потом я.
285 1744377
>>44361
@deco
def func():
____pass

полностью эквивалентно
def func():
____pass
func = deco(func)

Если это не просто сахар, то что такое сахар вообще?
286 1744382
>>44377
Это и есть сахар чистой воды

Однако стоило заделать декоратор при объявлении а не мутить func = deco(func). Судя по логике чела вверху, раз такое на чистом питоне невозможно без @, то стало быть это никакой не сахар, а самый настоящий прорыв в парадигмах программирования
287 1744383
>>44366
Там сплошь синтетические тесты и некорректные сравнения. Вообще ни о чём.

Надо на каких-то более близких к жизни и к конкретной задаче мерить.

Очень сложно сделать объективный бенчмарк. Вот представть фреймворк какой-нибудь, ты меряешь количество запросов в секунду в настройках по-умолчанию. Но при этом в одном у тебя сессии не подключены, а во втором каждый раз запускается механизм сессий, авторизации, логирования и т.п. Естественно будет огромная разница. Хотя эти механизмы лишние при желании можно отключить.
288 1744386
>>44366
Ну вот хер знает
https://github.com/TechEmpower/FrameworkBenchmarks/blob/ff3876acf1211c0c2074e3ae6e0b181e02ef112f/frameworks/Kotlin/kooby/src/main/kotlin/kooby/App.kt#L159

Авто по исключению (вместо условия) задает значение. Это нереальный медленный способ, который я только у юных питонистов видел.
289 1744387
>>44386

>Автор*

290 1744391
Предлагаю задепрекейтить термин "синтаксический сахар" и больше никогда не задумываться об этом аспекте языков. Он даже ещё более размытый, чем "ООП" (этот термин тоже пора задепрекейтить).
291 1744394
>>36839 (OP)
А почему вы джаву даже не рассматриваете то?
292 1744398
>>44394
Зачем когда есть котлин?
293 1744399
>>44394
В комментарии про котлин написано же почему.

> жрущие и неповоротливое гуано для тырпрайза (как мне видится), а не шустрые легкие решения для анона



мимо
294 1744429
>>44386

Так поправь.

>>44383

Там тесты как раз реалистичные, большая часть кодинга - сходить в бд, отдать JSON.
295 1744431
>>44371
>>44372

> врёти, неправильно всё это, статистика неправильная, наврали вы всё, говна в штаны наложили, а мы всё делаем правильно 30 лет подряд всё правильно делаем


Где-то я эту аргументацию слышал... ксожилению, эти тесты можно и у себя на пк проводить все тесты

>>44383

> Там сплошь синтетические тесты


> и к конкретной задаче мерить.


Сделай свои, покажи.

>>44386

> Это нереальный медленный способ, который я только у юных питонистов видел.


Сделай свой и запости. Эра гитхаба. Пиздежь проверяем. Вилять жопой не получится.
296 1744434
>>44431

> Эра гита.


слоуфикс
заранее прошу прощения опенсор-сообщества
297 1744452
>>44431
Зачем?
Чтобы доказать шизику что исключение из-за генерации стектрейся - дорогая штука?

Мое время денег стоит, мне самоутверждаться за счет школьников не нужно.
298 1744456
>>44452

> ну я делать конечно ничего не буду


> но поверьте мне на слово


Спасибо, я как-нибудь без веры обойдусь.

> Мое время денег стоит


Да ладно тебе, просри еще два часа на харкаче. Давай, хочешь? Тут мемы есть. Оставайся!
299 1744474
>>44456

>Спасибо, я как-нибудь без веры обойдусь.



Ты дебил. Вот что ты написал:
>>44366

>Вы че дебилы? Все выбирают фреймворки, библиотеки и либы по бенчмаркам. А не вот это ваше.


Что пиздёшь, потому что тесты очень синтетическая хрень, мало имеющая отношение к реальности, и зачастую они некорректно сделаны. Тупо в фреймворке подключены middleware, которые отъедают много ресурсов, но при этом в тесте не применяются. А в конкурирующих тестах на них и намёка нет, и даже хрен встроишь, если потребуется. И куча другой некорректности.

Как ты выбираешь что-то, это твоё личное дело. Всем похуй, а ты не все. Не уверен, что ты что-то выбираешь вообще, кроме как для тестов.

Под свои нужны всегда можно свой тест составить, на своих стеках, под свои задачи, и проанализировать, что конкретно там затык даёт.
300 1744501
>>44452

> Чтобы доказать шизику


>>44474

> Ты дебил


> мне самоутверждаться за счет школьников не нужно.


> Мое время денег стоит


Да, я тебя предельно ясно понял. Можешь не продолжать, пожалей своё время.

> И куча другой некорректности.


А еще в штаны твоему фреймворку насрали, падлы какие, тц!
301 1744509
>>44501
Скажи, на каком языке ты пишешь? Или какой язык тебе нравится если вкатываешься?
2020-07-08025935.png16 Кб, 662x579
302 1744541
303 1744551
>>44541
Если писать на питоне в стиле хаскелля, то хоть всю программу в одно выражение делай.

https://www.reddit.com/r/programminghorror/comments/bkdolz/a_game_of_2048_in_one_line_which_i_made_for/
304 1744585
>>44366
Лол блядь, во времена настали, охуеть похапэ быстрый стал если верить этим полосочкам
305 1744593
>>36839 (OP)
Зависит от предметной оласти. Если дата майнинг, машин лёнинг и всякие парсеры и краулеры, то однозначно пайтон.
Го вроде для скорости используют, хотя зачем пет проекту скорость.
306 1744825
>>44509

> на каком языке ты пишешь?


Жс, хакс, жаба, питон. Раст, си кресты немношк и остальная мелочь.

> Или какой язык тебе нравится если вкатываешься?


Мне нужен качественный бэк для игрогодноты, считай что вкатываюсь.
Скорее всего выберу раст, тому что скорость. Смущает что раст от мозилы, а мозила дэбилы, не очень хочятся. Но кресты 100% протекут и проебутся, а поддержка этого говна просто пиздец. На си вообще ужось будет, хотя и очень красиво. Неприятная ситуация конечно. Как вариант - cython и похуй на всё.
Клиенты на жс, жабе, крестах и хаксе.

>>44585
Он еще 5 лет назад был быстрый, хз когда там семерка вышла. Помню на хабре доклад, мол, лол смотрите пхп стало на уровне крестов, классно мы ебали свои команды разработки
Его из легаси и не выпиливают из-за этого, только переписывают.
307 1744836
>>44431

>ксожилению, эти тесты можно


Эти тесты. Тебе и написали, что проблема с этими.
308 1744839
>>44541

>klass


7-й?
309 1744840
>>44836
Ну так напиши свои, все поцаны посмотрят, увидят и оценят. Не хочешь писать - не кукарекай. Всё очень просто.
310 1744844
>>44840
Написал. Проверяй.
311 1744845
>>36839 (OP)

>Не будет ли это вторым груви или скалой.



такой ты долбаеб конечно
312 1744847
>>44844
Нах ты в своей голове написал тесты, чел?
313 1744866
>>44845
Котлин нужен был гуглу во время терок с сан насчет жабы в андроиде, в качестве плана /b/. С выходом фуксии, где все будет писаться на дарте, котлин отправится на парашу к жабе и прочей дрисне.
314 1744878
>>44866
Так терки в процессе, и если договорятся то так и оставят котел
315 1744902
>>44866

> во время терок с сан насчет жабы в андроиде


Но ведь там срач из-за JVM, а не самих языков, и никакой котлин ситуацию не спасёт.

> С выходом фуксии


Ну и когда она выйдет, лет через 5-10? И много ли людей сразу перейдёт на хуиту, где нет софта?

> котлин отправится на парашу


Да.
316 1744909

> Автор написанного на языке Rust web-фреймворка actix-web удалил репозиторий после того, как на него обрушилась критика за "неправильное использование" языка Rust.


Ору нах
317 1744929
>>44825
Одумайся, выбери языки элиты Common Lisp и Haskell
318 1744935
>>44909
Он написал хуево, а когда ему на это указали (опенсорс же), ныл "ну не начинайте".
319 1744937
>>44929
Какая же это илита. Илита это адга, идрис, сок из кок
320 1744938
>>44929

> (Одумайся, выбери языки (((элиты))) Common Lisp и Haskell)


Ну хуй знает.
321 1744960
>>44935
Он написал ради производительности же, не?
И что за ансейф вообще там был, я нихуя не понял и почему он нужен.
322 1744964
>>44960
Можешь почитать,
https://github.com/actix/actix-web/pull/968
имхо автор ебанашка, который написал так потому что ему так понятнее, и уверял всех что ub это хорошо и ниче не будет. Даже после того как ему показали с пруфами.
323 1744969
>>36839 (OP)
Elixir
Более можного и современного просто не найдешь!
324 1744972
>>44969
Как там в 2007?
325 1744975
>>44972
Да ты ахуел, он в 2012 только появился
326 1744981
>>44975
Слушай, прости брат, с Эрлангом попутал, посыпаю голову пеплом
327 1744990
>>44964
Хуйня какая-то, там ничего нет даже.
Типо че-то там с датой связано, типо DateServiceInner на сервере может поменяться атакующим и можно отхлебнуть чужой памяти из-за хуевой типизации? Или че?
Короче, шиза ебаня и растоистерика, еще меньше раст стал нравится.
328 1744991
>>44585
Он и был быстрым всегда.
329 1744999
>>44964
https://gist.github.com/pcr910303/d7722a26499d0e9d2f9034a06f2433b4
пусть ref1 = mysell. get_mut ();
пусть ref2 = mysell. get_mut ();
Вот это лучше показывает, бля я аж хрюкнул когда увидел.

> топовый веб фреймворк по версии хуибенча


@

> ref1 ref2

image.png17 Кб, 817x160
330 1745000
>>44969
Жесть какая, вы там совсем от скуки пизданулись?
331 1745011
>>45000
Да я по приколу его скинул, дажен е кодил на нем

Это макрос какой то на пикче?
Во всех языках макросы нечитаемые
332 1745018
>>45011
Хз, из вики что-то
333 1745021
>>45000
Сегодня эрланг/хаскель учат даже в 9-11 классах лицеев, если что
334 1745031
>>45021
Чтобы в зачатке отбить любовь к программированию?
335 1745032
>>45018

>Внутреннее представление кода:


Так это не Elixir получается

>>45021

>эрланг/хаскель


Их реально в лицеях учат? Ладно С плюсы или питон
Но зачем хаскель?
А ерланг кому нужен оказался?
336 1745033
>>45021
Эти языки, как и все ФП, используется взрослыми дядками, чтобы самоутверждаться как личности. Зачем детей этим мучить?
337 1745044
>>45033
Так самоутверждаются те, кто пытается этим языкам кого-то учить.
338 1745045
>>45032

>Так это не Elixir получается


Да, я проебался, это представление на эрланге. Да все равно не лучшая йоба там:
https://github.com/phoenixframework/phoenix/blob/master/lib/phoenix/code_reloader.ex
https://github.com/phoenixframework/phoenix/blob/master/lib/phoenix/socket/pool_supervisor.ex

:reloader эти двоеточие там везде, видимо тоска по php c $
|> halt()
#{inspect(name)}
339 1745046
>>45033
>>45032
>>45031
Перепись 18 летних экспертов, лол.
340 1745053
>>45046
У борщехлёба припекло?
haskell.jpg246 Кб, 1024x768
341 1745067
342 1745153
>>44866
Котлин изначально парашерождённый, не светит ему
15904335213600.jpg51 Кб, 540x960
343 1745157
>>44991

>php был быстрым всегда

344 1745158
>>45046
Но зачем чистую функциональщину в школе давать?
Максимум если в классе где 100% по направлению ит учаться
345 1745160
Не хочу раст. Но кроме раста нихуя нет быстрого хотя бы немного безопасного. Шо делать? Раст пидоры делают, вдруг пидоризмом зарожусь?
346 1745161
>>45160
Кста, а это правда что компенлятор раста занимает 30гб? Они там порно с жопоеблей засунули в компилятор?
347 1745166
>>45161
Впервые такое слышу

>>45160
Ну пробуй плюсы, на них вполне возможно писать безопасно, но больно
хотя в расте тоже больно

А вобще если у тебя не супер хайлоад, то те нахуй быстрый яп не нужен
348 1745169
>>45160
Есть ещё пщ (в некоторых задачах), его тоже делают пидорасы, но в плохом смысле.
349 1745184
>>45166

> Ну пробуй плюсы, на них вполне возможно писать безопасно, но больно


> хотя в расте тоже больно


Разве раст не уменьшает боль по сранвению с плюсами?

> А вобще если у тебя не супер хайлоад, то те нахуй быстрый яп не нужен


Игрулька с тысячами векторов онлайн без смс. Нужно быстро.
>>45169
Не, это гугл, это уже совсем плохо, так нельзя.
350 1745186
>>45184

>Разве раст не уменьшает боль по сранвению с плюсами?


Ну как бы да, но и как бы нет
351 1745194
>>45158
Дают и не чистую и не функциональщину
В программировании нет каких-то сложных направлений; школьники в принципе осиливают практически всё
352 1745196
>>45186
Даже небольшое уменьшение боли имеет значение.
Возможно можно обёртку над си/плюсами нужно посмотреть, вроде хорошая идея.
353 1745197
>>45196

>Возможно можно обёртку над си/плюсами нужно посмотреть


Python

>>45194

>В программировании нет каких-то сложных направлений


Только хаскель
354 1745198
>>45197

> Python


Хайлоад нужен.
355 1745201
>>45197
Не знаю что в хаскеле можно натянуть на "сложно". Даже если в шутку
356 1745212
>>45194
Чел, потоньше.
357 1745214
>>45212
А что не так? Сложного же ничего нет. Просто читаешь доки и просто пишешь. Просто тестируешь.
358 1745236
>>45198
Чем го не устраивает?
359 1745252
>>45236
Гугл же. Ладно там стандалон v8 и прочая хуйня. Но го это уже серьезный пиар гугла.
360 1745285
>>45252
Так в чём проблема? Сирожа Брин лично серит в штаны разработчикам?
361 1745302
Ну как там оп, уже пишешь на божественном питончике или все мнешься?
362 1745401
>>45285
Да ни в чем. Пиар говна делать не собираюсь.
363 1745500
>>45401
При чём тут пиар? Есть удобный инструмент, его берут и решают задачи, при чём здесь какой-то пиар? Шиз, ты?
364 1745506
>>45500
Лол, ну так бери и решай, нахуй ты мне сейчас высказываешь эту хуйню? Совсем поехал?
365 1745609
>>45506
Ну так тебе хайлоад нужен, не брать удобный для, этого инструмент просто потому что тебе какой-то мифический пиар плохой корпорации мерещиться равно быть шизом
366 1745719
>>45609
Лол, в случае чего всегда есть кресты/си для реального хайлоада. Го в списке хайлоада занимает далеко не первую строчку, с учетом говна - последнюю.
367 1745835
>>45719

>хайлод


>си/кресты



Надо бы найти источник это дезинформации и выжечь на корню.
Хотя с другой стороны хорошо детектит нюбов, которые любят говорить о вещах с которыми никогда не сталкивались.
368 1746257
>>45835
Сьеби уже от меня со своим го и фантазиями о сях. Иди проповедуй кому-нибудь другому. Пиздец поехавший.
369 1746267
>>46257
Но я адепт JVM, а не го...
370 1746328
>>45719

> Лол, в случае чего всегда есть кресты/си для реального хайлоада


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

> Го в списке хайлоада занимает далеко не первую строчку


Он среди первых. Единого первого места нету, есть набор разных инструментов и разных языков.

>с учетом говна - последнюю.


Не понимаю, как же так вышло, что тебе гугел-то в штаны серит?
1522807202846.png334 Кб, 480x380
371 1746336
>>46267
Другое дело!

>>46328

> поехашвий шизик толкает проповедь

372 1746514
>>46336
Нечего ответить @ назови собеседника поехавшим проповедником
373 1746564
>>45835

>Надо бы найти источник это дезинформации


Яндекс!
374 1746578
>>46514
А что не так? Почему-то считаешь что кресты не хайлоад, какое-то насильное пропихивание го.
375 1746587
>>44370

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



Пиздец ты даже наверно в Spring не заглядывал, да чел? Два декоратора и твой питон ебани обосрался
376 1746598
>>45236 Нет генериков.
377 1746612
>>46598
ну они на самом деле не очень-то нужны
378 1746824
>>46612

>Не так уж и больно, если расслабиться то даже уже приятно. Мы привыкли.

379 1746993
И че? К какому мнению-то пришли?
380 1747017
>>46993
Как обычно. Кругом одно говнецо.
image.png1,2 Мб, 1280x720
381 1747057
>>46993
Есть только котлин и шарп, все остальное говно.

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

Го - то же самое, нет контроля потоков, нельзя сделать пул корутин. Ошибки без стектрейса - язык непригоден для большой разработки.

Раст - как пишут в раст-треде, очень сырая асинхронщина с 6% багом зависания. А топовый хттп-фрейм течет как деревенская девушка при виде москвича.

Пхп - страничник без состояния, но с упоротым ООП комьюнити. Анонче говорил, скрипам ООП не нужон.

Петухон - игрушка инфоциган для зарабатывания бабла. Дизайн либ и языка выполнен через жопу, то есть гением. От чего все по своему и необычно нетакой как все.
Все что сложнее пропарсить файл превращается в обычную рутину, что как бы намекает, никакого прироста скорости разработки нет, наоборот динамическая природа тормозит.
Про костыли ввиде virtulenv я молчу. Даже JS сейчас более модульный чем петухон.

Руби - магия и бестолковая кроссплатформенность. Кому это надо, непонятно.
382 1747072
>>47057
Причем, если бы шарп сделали в 2010 кроссплатформенным, сейчас бы был только один язык программирования. Но они опоздали, поэтому он нахер уже не нужен, когда есть современный котлин, с офигенскими лямбдами
image.jpg35 Кб, 1280x720
sage 383 1747075
>>47072

>шарп


>кроссплатформенным


>был только один язык программирования


>котлин


>современный


>офигенские лямбды

384 1747077
>>47057

>костыли ввиде virtulenv


Как нихуя не понять и скорчить умное ебало.
385 1747102
>>47017
Как же заебало это говно.

>>47057

> котлин


Бля хватит уже с этим котлином. Ну нельзя же так! Он медленный. Жаба медленная. Натив тоже медленный должен быть.
Оно подойдет если только писать медленные апликухи и ЖРАТ ресурсы. Так нельзя и неприятно.
И он не ерланг, хоть и архитектура под это дело есть

> шарп


Моно тащить на ленукс. Нахуй такое.

Ящитаю лучший выход - крестовая либа на сервисы и вычисления и что-то вроде еликсира/ерланга/хаскеля или что там можно нахуярить как оркестровку. Больше я нихуя не нашел.
386 1747130
>>47102
Лол, жаба у него медленная
https://www.techempower.com/benchmarks/#section=data-r19&hw=ph&test=plaintext

Как там в 95 то, дедуль? Все еще ждете новый стандарт С++ и боретесь с тормозной джавой??
387 1747132
>>47102

> что-то вроде еликсира/ерланга/хаскеля


Чуть борщом не поперхнулся.
388 1747137
>>47102
Джава настолько медленная, особенно работая с базой, что специально завершается по-быстрее, чтобы подождать и посмотреть как работают другие быстрые языки.
https://www.techempower.com/benchmarks/#section=data-r19&hw=ph&test=query
image.png54 Кб, 1300x232
389 1747143
>>47102

>Моно


Лол, как там в 2010?
390 1747154
>>47130
>>47137
Математику она считать будет медленнее плюсов и натива. Я хз, может у жвм появились привязки к железу?

>>47132
Зато не падает!

>>47143
А оно компенлирует? Он же вроде не компенлирует. А значит будет медленно.
391 1747159
>>47154

>Математику она считать будет медленнее плюсов и натива


Потому что ты так придумал? Или тебе так на ютубе сказали?
Как видишь, сам факт что возьмешь С++ или тем более борщовые языки, не сделает твой код быстрее. Более того, ты можешь оказаться даже где-то на уровне питона.
Качественные либы решают. Прогретая джава очень шустрая. Там в JIT такие оптимизации, о которых ты даже еще не знаешь.

>Я хз, может у жвм появились привязки к железу?


Скорее это ты отстал от IT индустрии и так себе технический спец. ламер
392 1747161
>>47159
И да, котлин из-за полного интеропа работает так же как жаба (за редкими микро исключениями)
393 1747170
>>47159

> Потому что ты так придумал? Или тебе так на ютубе сказали?


Сам тестировал матан, вектора и геометрию всякую ептоу. Я хз, может как-то хуево оптимизировал под жаву.

> сам факт что возьмешь С++ или тем более борщовые языки, не сделает твой код быстрее.


Сделает конечно.

> Качественные либы решают.


Ктож спорит. На плюсах есть бустасио и качественные либы матана.

> Прогретая джава очень шустрая.


Что значит прогретая? Зачем её прогревать нужно?

> Там в JIT такие оптимизации, о которых ты даже еще не знаешь.


Какие?

> Скорее это ты отстал от IT индустрии и так себе технический спец. ламер


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

> И да, котлин из-за полного интеропа работает так же как жаба (за редкими микро исключениями)


Т.е. котлин натив бессмысленен? Чот нихуя нипанятна.
394 1747181
>>47170
С твоими знаниями лучше вообще не тестить. А то вечно джаву не прогреют, или испугается что ГЦ зарезервировал много памяти.

>Сделает конечно.


У тебя там факт на лицо. Языки с байткодом не устуют или в ровень неуправляемых.

>Что значит прогретая? Зачем её прогревать нужно?


Ясно с тобой, тестировщик.

>Т.е. котлин натив бессмысленен?


А он тут причем?

Я думал ты тролль, но ты просто туп. Ссорян, больше не развлекаю
395 1747185
>>47170

>Что значит прогретая? Зачем её прогревать нужно?


Джава по-началу работает медленнее, с течением времени там начинаются йоба-оптимизации и она начинает работать быстро.
396 1747188
>>47185
Нефига волшебники.

Джава по дефолту интерпретирует байт код, а JIT наблюдает за всем этим и если видит, скажем, что твое приложение дергаешь участок кода (метод) 10.000 раз, он возьмет тебе с компилирует этот код со спекулятивной оптимизацией и теперь код будет работать как сишачке сразу в процессор.

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

Тем временем, сборщик мусора уже тоже поймет, какие объекты дольше живут, и он их сложит рядышком, упакует удобненько и будет меньше дергать сборку в этом месте.
Где программа на С++ за неделю наделает такую фрагментацию в памяти, что будет тормозить, аки осел (если не упадет), джава приложение будет еще работать быстрее (кому интересно читаем про поколения в ГЦ)
397 1747189
>>47188
Пока борщихлёбы мерились байтами, джава и тырпрайз мир сделал удобный инструмент для бизнеса и веб-приложений.

А котлин еще дает корутины на халяву, от чего всякие Го становятся не нужны. Потому что ты теперь сам контролишь где у тебя и какого размера пул с корутинами (и например http запросы ты не будешь мешать с парсингом картинки, и у тебя не зависнет http сервер)
398 1747191
Пока дядька пьян и у него выходной, можете спрашивать, будем развенчивать мифы борщехлёбов и байтоёбов.
399 1747240
хочу денях, чо учить после синтаксиса?
400 1747245
>>47181

> вы врёти всё, брешите, жава это почти как си, только жава


Ага, ага. Только почему-то FPS сервера с тикрейтом в 60+ делают не на жаве. До сих пор.

>>47185
Это жит оптимизирует. Можно и без "прогрева".

>>47188

> кажем, что твое приложение дергаешь участок кода (метод) 10.000 раз, он возьмет тебе с компилирует этот код со спекулятивной оптимизацией и теперь код будет работать как сишачке сразу в процессор.


И оптимизирует он не всё, а только конструкции которые могут оптимизироваться в рамках жвм.
401 1747250
>>47240
SQL базу данных, фреймворк и алгоритмы.
402 1747254
>>47245

>Ага, ага. Только почему-то FPS сервера с тикрейтом в 60+ делают не на жаве. До сих пор.


GC

>Это жит оптимизирует. Можно и без "прогрева".


Что??
403 1747260
>>47254

> gc


Кстати да. Нинужна.

> Что??


Шо шо? Кэш можно делать заранее, в функциях где это можно.

Кстоти если gc отключить и всякие такие примочки, то нормас на котлине катать будет? У меня до сих пор СМУЩЕНИЕ от этого.
404 1747265
>>47260
Какой нафиг кэш, не тупи.
405 1747274
>>47265
https://docs.oracle.com/javase/8/embedded/develop-apps-platforms/codecache.htm#A1095915
Этот блядь. Нах ты сражаешься за жабу и нихуя в ней не знаешь, долбик?
406 1747288
>>47274
Я тебя не понимаю, додик.
407 1747310
>>47288
https://docs.oracle.com/en/java/javase/11/vm/java-hotspot-virtual-machine-performance-enhancements.html#GUID-F33D8BD0-5C4A-4CE8-8259-FD9D73C7C7C6
Неслабо ты разорвался. Держи последнюю версию, посмотри там что как, узнаешь что можно jaotc юзать.

Но по прежнему это кэш в жвм, хоть и байткод, да. Чувствуются проблемы.
408 1747321
>>47310
Пьяный тут я, а плохо формируешь мысль ты.
Сначала принес кэш, а теперь разродился до AOT. Такое ощущение что полез в манулы читать.

AOT != JIT и вообще для других вещей оно нужно.
409 1747368
>>47321
Какие нахуй мысли, поехавший? Кэшируется это всё при первом запуске и аот и жит.
Пиздец блядь, не знать что у жвм кэши байткода есть и подрываться.
410 1747378
>>47368

>Кэшируется


Блин, а куда еще по твоему девается компиляция JIT? В соседнюю комнату?
411 1747404
>>47245

>FPS сервера с тикрейтом в 60+ делают не на жаве. До сих пор


А на чём?
412 1747427
>>47057

>Го - ... нельзя сделать пул корутин.


Можно, почему нельзя-то

>Ошибки без стектрейса - язык непригоден для большой разработки.


Работаю в большой разработке на го, зависимость есть
413 1747429
>>47378
Мы говорим про функции, которые кэшируются надолго. Заранее созданный кэш - это просто пропук функций, которые оптимизированы под кэш и не_вытесняются другим байткодом из кэша.

>>47404
Плюсы, что ж еще. На чистом си еще.
Хотя и жабу там используют, для всяких важных целей. И питон и го.
image.png62 Кб, 200x151
414 1747437
>>47429
Какие блядь функции ты кэшируешь? Зачем ты их кэшируешь? Ты говоришь про компиляцию? Ты компиляцию JIT называешь кэшированием?
415 1747444
>>47429

>Плюсы, что ж еще. На чистом си еще


Ну вот и разобрались наконец-то.
416 1747471
>>47437
Ты поехавший или как? У жита есть кэш. Туда функции кэшируются. Иногда они там остаются, иногда нет.

>>47444
Кровью срать будешь же. Подумой еще.
417 1747474
>>47404
Сервера с 16мс на тик. Так влажно, что аж можно подскользнуться. Зачем тебе сервера с тиком 16мс, если у тебя пинг 20?
418 1747486
>>47471
>>47474
Я не ОП, расслабьтесь, но игровые серверы действительно хороший пример. Десятки игроков генерируют события каждую секунду, часть из которых нужно вовремя отослать другим игрокам, часть записать базу.
419 1747495
>>47474
Лол
420 1747723
>>36839 (OP)
Для стартапчика:
1. Язык и Фреймворк, который ты уже отлично знаешь
2. Руби
/тред
421 1747745
>>47471

> У жвм есть кэш.


слоу-слоу фикс
422 1747825
>>46587
Совсем долбаёб? Декораторы так то и в питоне есть.
423 1748114
>>47825
А спринг в питоне есть, или только вордпресс джанга?
424 1748123
>>48114
А расскажи что спринг умеет в сравнении с другими веб врефмворками
425 1748192
>>48114
Но спринг это же говно ебаное, главная причина почему джява полностью проебала в области веб бекендов. Хотя она и так бы проебала, потому что это устаревший язык для умственных инвалидов, кобол нашего времени.
426 1748205
>>48123
То же самое + DI + фичи для интеграции со стеком джава-мирка + модульность/очереди/вебсервисы/вебсокеты/навороченные транзакции/AOP, много ORM и шаблонизаторов на выборк, HTTP-сервер из коробки, интеграционные тесты, всё легко и прозрачно конфигурируется.

>>48192
Да, жирное неповоротливое нечто, запускается в лучшем случае полминуты (а то и больше), много легаси, сложное в изучении.
427 1748277
>>48192

>джява полностью проебала в области веб бекендов


Попробуй потоньше.
428 1748366
>>48277
Банки и легасиЗаводМухосрань != веб бэкэнд. Больше джаву нигде не встретишь.
изображение.png6 Кб, 566x145
429 1748415
>>48366

>веб бэкэнд


А на чем тогда пишут бек сейчас? Вроде бы как раз на джаве, шарпе, пхп, жс и го?

Кстати вот выдача вакансий по москве. Не думаю, что все это - только лишь банки.
430 1748422
>>48415
В рф кстати дотнета мало очень, меньше чем спринга. Еще к списку можно добавить питон.
431 1748427
>>48422
Лол, по количеству доступной работы джава остается на первом месте, в том числе и в бекенде. Шарп менее популярен, но работы тоже достаточно. На тот же жс, питон и го попасть куда сложнее.
432 1748506
>>48422

>дотнета


Все еще живете в 2010? Ну поигрались и забыли.
1482236009429.png317 Кб, 540x371
433 1748589
Короче, экспертное заключение нах.

Кресты для сервера/серверов. Часть логики на крестах. Тому что там можно аппаратные хаки делать, управлять памятью короче ебать производительность по полной и быть в почете у бородатых прогеров.
Для оставшейся логики и управления серверами - елексир.
Прототипы (и даже прод, если поебать на ультрабыстродействие) можно хуярить на елексире, у него нормас биба, полная кокомпиляция в байткод, есть куча либ для какого-нибудь взаимодействия с v8 (чтобы ssr делать на жс).

Только так можно обеспечить нормас качество риальне прода и ультрабыстродействие. Лучшего варианта нет. Просто нет. Базарю, я всё проверил.
434 1748668
>>48192

> проебала в области веб бекендов


Какая жалость, на джаве не пишут визитки и интернет-магазины. Вот Область так Область, всем преклониться перед Пыхоплеядой.

> устаревший язык


Да, устаревший, это все знают. Альтернативы? Только без динамико-дрисни, борщехлёбства и нулевой экосистемы.
435 1748720
>>48668

>Область так Область


Именно. Веб это интерфейс ко всему и единственный по-настоящему кросс-платформенный.
436 1748731
>>48720
Согласен, однако.
437 1748763
>>48668

> на джаве не пишут интернет-магазины


Да вообще даже пишут. Только скорее крупные, ближе к озонам-амазонам
438 1748887
>>48668

>борщехлёбства


Каво?
439 1748901
>>37128

>Все динамико-языки - медленный калл, даже js сосет


Ну вот зачем ты пиздишь.
https://benchmarksgame-team.pages.debian.net/benchmarksgame/fastest/javascript.html
441 1748948
>>48901
Одно дело дергать сишную либу через js. Другое дело когда у тебя код на самом JS - и эта интерпретация медленная.
То есть, чем больше кода на жопаскрипте, тем сильнее будет проявляться реальность.
442 1749248
>>46578
Да они хайлоад, разумеется. Но их нечасто для этого используют, всё-таки они не очень-то удобные Обычно только во всяких критических случаях, где требуется максимально высокая производительность, типа серверов для онлайн-игр или обработки видео.

>>46598
>>46612
>>46824
Они будут через год.
443 1749283
>>47132
На эликсире вполне можно найти работу
444 1749322
>>49283
Но не стоит :)
445 1749327
>>49322
Почему нет?
446 1749362
>>49248

> Но их нечасто для этого используют


Часто.

> всё-таки они не очень-то удобные


Ну только если для сойбоев.

>>49322
Стоит конечно, всё лучше мейнстрима. Есльи цель работать на дядю - непопулярное оплачивается больше чем популярное.
447 1749381
>>49362

>непопулярное оплачивается больше чем популярное


Скажи это каким-нибудь крестовикам с зп меньше более чем в два раза меньше, по сравнению с фронтендерами и джавистами
448 1749397
>>49362

> Часто


Хватит лукавить, анон. Кресты редкие даже на хайлоад на бекендах, это факт.
1463610499236.png432 Кб, 800x863
449 1749504
>>49381

> Скажи это каким-нибудь крестовикам с зп меньше более чем в два раза меньше, по сравнению с фронтендерами и джавистами


Хуя магическое мышление у тебя.

>>49397
Чаще чем ты думаешь. На любом говне есть парочка пиздатых либ на крестах, либо парочка либ рассчетов какой-нибудь хуйни.
Всё остальное, уровня "хуякс-хуякс-продакшн@инвестиции@слив@новый проект" в етот существующий кризис жидко оподливилось.
450 1749676
>>49504

>пик


Ну и зачем ты показываешь американские зарплаты? Показывай реалии российского рынка, где С++ традиционно используется в геймдеве, ембеддеде, на заводах и иногда в машобе/компьютерном зрении.

Так вот геймдев - традиционно наихудшая отрасль для карьеры, постоянные увольнения, постоянное наебалово со стороны партнеров и работодателей, но оно и понятно, монетизировать очередное говно иногда бывает намного сложнее, чем обычно и как следствие разрабы идут на мороз, а студия закрывается.
Ембеддед - просто низкие зп по рынку. Разработка полностью ориентирована на российский рынок, нужно плотно работать с железками, поэтому никаких удаленок нет.
Заводы - ну тут все понятно, очень редко встречаются интересные задачи автоматизации, но промышленность РФ находится в полной жопе, поэтому вменяемого рынка труда здесь нет
Компьютерное зрение и машоб - годнота, здесь как раз есть деньги, правда конкуренция большая. И нужно еще хорошее математическое образование, желательно магистр или пхд, вкатиться сложно.

>>49504

>Всё остальное, уровня "хуякс-хуякс-продакшн@инвестиции@слив@новый проект" в етот существующий кризис жидко оподливилось



Я не про хайлоад, но джава энтерпрайз по ощущениям вполне норм себя чувствует в этот кризис, если не учитывать тех, кто работал на авиаперевозчиков, у них совсем все грустно.
1502494003520.png398 Кб, 1433x1600
451 1749715
>>49676

> Ну и зачем ты показываешь американские зарплаты?


Зачем я вообще показываю зарплаты. Выбирать язык по условиям труда - ебланство.

> где С++ традиционно используется в геймдеве, ембеддеде, на заводах и иногда в машобе/компьютерном зрении.


Плюсы и си используются везде.

> энтерпрайз


Всегда имеет либы на крестах и часто переписывает либы/скрипты на кресты.
452 1749721
>>49715

>Выбирать язык по условиям труда - ебланство


Как раз таки нет. То есть если просто хочешь научиться прогать, то да. Если собираешься работать, то нужно выбирать как раз то, что нужно в твоем регионе. Иначе есть риск вкатиться в какое-нибудь говно, а потом удивляться, чому же это я в 30 лет пердолю говно на MFC 20 летней давности. трустори для С++ zamkadsk edition.

>>49715

>Плюсы и си используются везде


Мобилки и веб - практически отсутствуют. А ведь это 90% рынка СНГ.

>имеет либы на крестах и часто переписывает либы/скрипты на кресты


Такое встречается, но далеко не везде. И вообще, что-то переписывать в энтерпрайзе очень не любят, там годами и десятилетиями будет крутиться один и тот же код на джаве, если он не сильно критичен в плане производительности. Но и настолько критичных моментов в энтерпрайзе обычно не так уж и много, обычно все решается более детальным осмыслением того, что уже написано и как это можно улучшить.
453 1749727
>>49676
про РФ да, с ембеддом все хуево

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

еще есть IoT
454 1749731
>>49727

>там с руками оторвут ебанаого джуна на крестах, так как задач по автоматизации просто дохуя


В Германии да, но нужно учитывать, что на зп джуна прожить сложновато, 50к евро в год - чуть больше 4к в месяц, из которых половина уйдет на налоги - итого 2к евро в месяц. Учитывая, что джунам в москве платят примерно 80-100 за 40 часов в неделю, а цены ниже, то смысла смысла в переезде как таковом и нет.
Плюс нужно немецкий нахрюк учить, ибо без него все равно что быть совсем уж чуркой в чужой стране.

>IoT


Хуйня, про которую говорят еще аж чуть ли не с 2015 на 2 курсе тогда активно пытался вкатиться туда, а в итоге так и не взлетело.
455 1749764
>>49731
НУ ЗАТО ПОТОМ СТАНЕШЬ МИДДЛОМ и жить будешь в ес
456 1749982
>>49721

> Если собираешься работать, то нужно выбирать как раз то, что нужно в твоем регионе.


Хуета. Если ты хочешь прогать - то в итоге ты будешь мидлом-сынёром, которому платят больше чем жс сеньру. Вот и всё.
Хочешь просто работать - иди гейшлюхой.

> zamkadsk


Удалёнку фриланса берешь на 2-4к и всё.

> Мобилки и веб - практически отсутствуют. А ведь это 90% рынка СНГ.


Не, на мобилках как раз кресты дохуя юзают.
457 1750000
>>49982

>будешь мидлом-сынёром, которому платят больше чем жс сеньру


Это так рыночек порешал? Я к тому, что если нормальной работы на C++ в твоем городе/области нет, то и зп у тебя будет ниже, чем у аналогичных жс сеньеров из твоего региона. Ну и у крестовиков в России зп в среднем явно ниже, чем у фронтендеров.

>Удалёнку фриланса


>C++


Фриланса на С++ почти нет. Удаленка есть, но тоже куда меньше, чем на жс или даже пыхе. А если нужно работать с железками, то какая же тут удаленка?

>>49982

>Не, на мобилках как раз кресты дохуя юзают


Сомневаюсь, что чаще чем Kotlin/Java/Swift/JS
458 1750062
>>50000

> Фриланса на С++ почти нет


ЛАБЫ @ КУРСАЧИ @ ДИПЛОМЫ
459 1750101
>>50000

> Я к тому, что если нормальной работы на C++ в твоем городе/области нет


Иди гейшлюхой, заебал кудахтать блядь, если тебе настолько деньги нужны.

> Удаленка есть, но тоже куда меньше,


Какая блядь удалёнка, устроился на галлеру и впахиваешь, получая свои 3-4к, складируя на счете в иностранном банке.
460 1750135
>>50062
Какие галеры? Где их найти в замкадске?

>заебал кудахтать блядь, если тебе настолько деньги нужны


Ну так и скажи что жидко обосрался. В российском C++ денег почти нет, это глупо отрицать.
461 1750169
>>50135

>Где их найти в замкадске


Например:
https://www.epam-group.ru/about/who-we-are/epam-russia
462 1750181
>>50169
Ну и? Моего города здесь нет. Ближайшего областного города тоже нет. В Москву теперь ехать? То-то и оно, у нас работа с крестами есть только на заводе и в НИИ.
463 1750183
>>50135

>в замкадске?


Чекнул свой город кстати, 99 вакансий погромиста на 550к населения.

Превалирует сишарп, жс/хтмл/цсс, ява ну и приправленные щепоткой пхп и 1с(видимо быстро пхп с 1с разбирают). На весь город полторы вакансии с крестами.

Такие дела.
464 1750186
>>49727

>так как задач по автоматизации просто дохуя



Эмм, ты ничего не путаешь? Просто задачи по автоматизации это вот:

https://2ch.hk/wrk/res/1998066.html (М)
1514284721113.png398 Кб, 1433x1600
465 1750257
>>50135

> Какие галеры?


Онлайн галлеры.

> Где их найти в замкадске?


Сначала тебе начальную школу нужно закончить.

> Ну так и скажи что жидко обосрался. В российском C++ денег почти нет, это глупо отрицать.


Ты ебанутый? Я тебе кидал блядь графики, глаза раскрой.

Нахуй ты реальность-то отрицаешь со своим жс?
466 1750264
>>50257

>Онлайн галлеры


Ну а где, где они? Покажи пример, ссылку на хх кинь.

>Я тебе кидал блядь графики, глаза раскрой


Один график был забугорный. Про этот график ничего сказать не могу. В моем городе почему-то ситуация другая.
467 1750319
Два года работаю джавистом, делаю доработки для клауда и поддерживаю всякую хуйню.

думаю перекатиться в хаскел или го, хотя работы по ним намного меньше (но по бабкам поссут в ротешники всем)
468 1750341
>>50264

> Ну а где, где они?


Там где тебя нет.

> Покажи пример


Нет, тебе не покажу.
Страдай на своей работе в своём районе и городе, пока галерные рабы получают по 8к/мес.

> Один график был забугорный.


Я тебе запостил график второй раз. Раскрой зенки.
469 1750343
>>50257
Плюсы это в основном заводы, обороночка, нии. Это дохуя специалистов-старперов, чеей стаж пограммирования выше чем возраст большинства вкатывальщиков с зэкача. Часто это довольно узкоспециализированная область типа байтоебства, сеточек или маняматики, а зекачерам маняматика и алгоритмы НИНУЖНЫ!!!.
При этом зарплата плюсовика даже по твоим картиночкам (которые имхо выглядят не очень правдоподобно) зарплата подобного специалиста совпадает с зарплатой жавадебила и мепньше чем у смуззихлеба-рубиста.
Итого: сложный вкат, жопные задачи, никчемный выхлоп.
И нахуй оно надо? если ты не сорокалетний бородач в застиранном свитере
470 1750386
>>50343
Ну не хочешь как хочешь, так и быть, разрешаю тебе не писать на плюсах.
471 1750388
>>50341

>Нет, тебе не покажу


Ну можно же как-то грамотнее сливаться?
472 1750435
>>50388

> эта боль жс-шизика работающего в мухосране

473 1750470
>>50319
По го достаточно, а вот с хаскеллем реально борщи хлебать придётся
474 1750472
>>50343
В чем проблема просто взять и устроиться в Nvidia чтобы без задней мысли зарабатывать 450к в месяц на плюсах?
475 1750486
>>50472
Не всем дано быть сыном маминой подруги.
476 1750487
>>50470
Бля
С другой стороны, я с горем пополам вкатился в джаву с наставником-другом и курсами, так что думаю, го банально не потяну
В рот ебал линукс вдобавок

Для таких тупых, наверное, ios будет самое то
477 1750488
>>50472
Слишком влажная фантазия

Хотя, вот ебать, я вот не погромист, но сука, как же хочется заниматься такими штуками, как у них.
Мимо аналитик, оптимизировал кое-какие процессы у них
478 1750613
>>48589
Кажется, с елексиром поспешил.
Таки нужен питон, ситон, си и кресты. Елексир всё же обсирается в тестах производительности и довольно сильно. Cython потанцевально не имеет проблем в производительности и работает на уровне си, плюс имеет скриптовые плюшки в виде питона и питонячих мат.либ.
479 1750632
>>50488
А чего влажного? Учишь плюсы с универа, конпунктер вижен, устраиваешься. Не на завод/НИИ идти же. Тут на дваче анон несколько раз пруфал что в ДС офисе Нвидии работает
480 1750633
>>50632

>Тут на дваче анон несколько раз пруфал что в ДС офисе Нвидии работает


Выходит нужно уволить того анона, место-то занято.
481 1750635
>>50613
Эликсир не создан для производительности, ни один хороший разработчик не будет смотреть как там он себя в бенчмарках показывает. Он создан чтобы держать охулиард одновременных соединений и чтобы это все было distributed без какого-либо гемора, и максимально отказоустойчиво. Идеально для сокетов. Тот же голанг тоже можно сделать distributed, но для этого придется сделать дип дайв в вонючие канализационные воды кубернетеса. А в эликсире из коробки всё. Просто апи шлюзы пишем на го/джаве/да хоть питоне, а у эликсира свои задачи будут
482 1750657
>>50635
Через него же будут идти вообще все соединения с серверами и дб, не? И если он будет где-то проебывать производительность в запросах, то будет оче неприятно.
483 1751220
Короче, чтобы быть мастером на все руки, надо знать:
1. JS (Node (Express, Koa, ...)). Подойдёт для не сильно нагруженных сервисов/сайтов. + Если знать Angular/React/Vue + CSS + либы, можно самому написать веб-клиент.
2. Java/Kotlin (Spring). Для любого нагруженного бэка. Если знать Android API, можно самому написать мобильный клиент. Но на жаве бэкэнд-фриланса нет.
Ну и SQL, само собой.

Всё остальное НИНУЖНО.
484 1751227
>>51220

> Java/Kotlin


> SQL


> Для любого нагруженного бэка


лол
485 1751251
>>51227
Кресты и раст, да?
486 1751265
>>51251
Без раста, но с любым скриптовым луа
487 1751275
>>51220
Поправлю, все кроме ноды не нужно, нода это настоящее и будущее. При желании можно го прикрепить, но жто уж слишком.
488 1751296
>>51275
JS нода уже прошлое. Все ровные челики переписали на TS
489 1751315
>>51275

>все кроме ноды не нужно


Это перебор, конечно. Но современный бэк на ноде пишется довольно быстро, да.
Ещё бы сделали, наконец, возможным быстро передавать сокеты в воркеры.
490 1751320
>>51315
>>51296
>>51275
Нода нахуй нинужна для бек прода.
Прототипы и обслуживание ssr - это да, заебись. В остальных случаях наступает полный пиздец как по прозвиодительности, так и по функционалу.
491 1751336
>>51320
А що тогда юзать?
492 1751350
>>49731

>IoT


> не взлетело


Ну не знаю, у меня дома робот-пылесос, умная лампа, мультиварка с wi-fi - чем не IoT?
493 1751361
>>51336
пых
494 1751437
>>51350

>умная лампа


Так скоро окажется, что единственно тупой вещью в квартире окажешься ты.
495 1751439
Вам этот говнотред перекатывать?
496 1751446
>>51439
Не надо, пусть сдохнет, и о нём все забудут.
497 1751456
>>51439
Нет, выбор совершен всем кто хотел его совершить.
15944499530870.jpg121 Кб, 952x1024
498 1751458
Через три года на ноде будут писать больше, чем на пыхе и жабе. Запомните этот пост.
499 1751459
>>51458

> на ноде


На v8. Нода умрёт.
500 1751460
>>51459
Но это же и есть нода
501 1751461
>>51458
Скоро проекты на веб-ассембли потеснят вообще весь DOM, и о жопоскрипте никто не вспомнит. Про ноду вообще молчу, кто вообще в здравом техническом уме возьмет это эвент говно?? Толку что и там и там жопоскрипт. Дегроты не могли сразу нормально сделать на корутинах.
502 1751464
>>51458

> жабе


Смешно.

>>51461
Ждём, когда в вебассембли завезут DOM.
503 1751466
Вебасембли это как фингербокс, ничего толкового не получится.
504 1751475
>>51460
Скрипторебёнок, ты?
505 1751476
>>51466
Я минут 5 читал статью на луркоморье, чтобы понять, что это такое, но так нихуя и не понял. Какая-то хкйня для аутистов типа спиннера? И при чём тут webassembly? Твоя аналогия непонятна. Тип поиграться и забыть что ли?
506 1751478
>>51464

> когда в вебассембли завезут DOM.


И рендер свой.

>>51466
Получилось тащемта, можно шиндовс95 прямо браузере запускать.
image.png23 Кб, 801x336
507 1751500
508 1751519
>>51500
Нода это обёртка над v8
509 1751529
перекатываемся, макаки.
>>1751525 (OP)
>>1751525 (OP)
>>1751525 (OP)
>>1751525 (OP)
510 1751530
>>51464

>Ждём, когда в вебассембли завезут DOM.


Зачем тебе устаревший HTML??
511 1751538
>>51530
Альтернативу завезли? inb4: Canvas
512 1751627
>>51466
Автодеск например своего двадцатилетнего монстра на плюсах портировало и берёт плату, но харкачеру, конечно, виднее.
513 1751629
>>51627
*сороколетнего
514 1751756
>>51437

>тупой


доска pr
515 1751817
>>51529
Перекатились, слоупоки!
EU8z3LZUEAE2pOm.png120 Кб, 564x534
517 1752027
>>52019
Лол, кто бы мог подумать, что анальное сканирование это не мем с пораши.
518 1752978
>>50343
Ты не найдешь работу рубистом.
519 1757569
>>51461
вебассембли будет развит лет через 20
Тред утонул или удален.
Это копия, сохраненная 9 января 2021 года.

Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
« /pr/В начало тредаВеб-версияНастройки
/a//b//mu//s//vg/Все доски