Чем тебе не нравится? Плюсы хорошеют же с каждым новым стандартом. Хотя, уже не известно, есть ли от этого какой-то толк - всё равно плюсари на новые стандарты забивают и пишут на жутком Си с классами, да и Раст взлетает стремительно.
Нет, это значит, что так принято, чтобы человек под 40 и тем более за, работал больше с людьми, а не кодом. И не важно, что ему хочется просто программировать.
Да, и того, кто постарше сложнее смотивировать на пустом месте поработать сверхурочно или «ускориться в интересах проекта». Поэтому и не берут. Ну и чистая вкусовщина, если в таком возрасте идёт на простую вакансию кодера, что-то с ним не так, не добился, не нашёл своего места в жизни и т.п.
Не спроста наверно пишут на «Си с классами». Типичное время компиляции типичного проекта на современном Си++ (aka Си не только с классами) – час на хорошем железе. И это считается нормальным. И после этого эти люди смеют заявлять, что с этим языком всё так. Ну ок.
Тащат всякое говно из различных языков и технологий, причем при затаскивании калечат так, что пользоваться этим всё равно нельзя. Например, future/promise в плюсах уже починили или как всегда?
На «Си с классами» пишут либо те, кому нужна совместимость с экзотическими компиляторами, либо те, кто пишет вместе с макаками, которым тоже нужно читать код. Никаких больше причин писать на си с классами нет – это хуже чистого си и хуже чистых крестов.
час на хорошем железе. И это считается нормальным.
Покажите язык с такими же возможностями, компилирующийся быстрее.
что они были «есть» ими нужно регулярно каждодневно пользоваться. чего все твои годы опыта не могут продемонстрировать. речь конечно в контексте вакансии жабакодера.
Программа/приложение пишутся ради выполнения своей задачи, а не ради использования библиотеки. Интерфейс используемых библиотек не может принудить писать код в стиле си с классами где-то кроме клея к нему.
Тем не менее, использование уже готовых библиотек вполне может ускорять реализацию, поскольку при их использовании не надо переизобретать велосипеды. Всё уже написано, достаточно лишь подключить в проект.
Кратко: статический полиморфизм (как по типу, так и по compiletime/runtime) уровня языка.
Этого нет нигде. Наиболее близкий по этим параметрам раст получает статику только на уровне кодогенерации. Языки с завтипами вообще можно пересчитать по пальцам. Нигде нет возможности статически выразить то, что элементарно выражается в крестах.
Покажите язык с такими же возможностями, компилирующийся быстрее.
С «такими» это какими? Когда в C++ начинают использовать «такие» возможности, то программы начинают работать медленнее чем на java, компилироваться в 10 раз медленнее чем на java да и «такие» возможности очень бедны по сравнению с java :)
Компиляцию в С++ замедляет использование вычислений в компайл-тайме (под вычислениями понимаем как вычисления над типами, так и над значениями), например, вывод типов. Выразительность языка достигается именно возможностью осуществлять эти вычисления. Любой язык, пытающийся быть выразительным, обречен компилироваться долго.
Когда в C++ начинают использовать «такие» возможности, то программы начинают работать медленнее чем на java
да и «такие» возможности очень бедны по сравнению с java :)
4.2
Это приводит к бессмысленному раздуванию бинарей и времени компиляции, а выигрыш в производительности обычно не получается.
Начнем с того, что про размер бинарей и производительность никто не говорил. Разговор шел о возможностях языка. Раздувание бинарей не бессмысленное, оно происходит вследствие мономорфизации кода, которая код замедлять будет только тогда, когда цена постоянного бранчинга и виртуальных вызовов становится меньше цены подгрузки новых инструкций, т.е. крайне редко и на очень специфичных примерах.
макаки пишут нечитабельные простыни с использованием шаблонов, компайлтайм вычислений и прочих бустов.
Макаки не могут их писать по определению. Вычисления времени компиляции необходимы для написания чистого и надежного кода. Если вы когда-нибудь отлаживали код на gobject’ах, вы знаете, насколько даже джавовская объектная модель лучше голой сишной динамики.
без всякого новомодного говна типа бустов и stl.
Буст и stl это как раз древнее говно, которое вынуждено хранить совместимость с древними стандартами крестов.
Никому не нужно считать факториал на шаблонах, потому что это неполиморфный код. Факториалы на шаблонах это порождение С++98/03, когда другого способа что-то посчитать в компайл-тайме просто не было.
Догоняющего кого? Java тоже не в лидерах и гонится за Скалой, но Скала тоже говно (за имплиситы и относительные импорты расстреливать нужно).
Можешь раскрыть тему о говнище в современном C++?
Тянут буст в стандарт, кромсая его возможности. Этого достаточно для говнистости. В серьезный проектах, кстати, буст (и подобная лапша) запрещен под угрозой увольнения.
Ту же Java, например. Всё никак нормальные стринги не завезут, но прогресс в этом направлении идёт. Авось в C++23 уже доделают. Тогда же обещают рефлексию из коробки, как в той же Java.
Тянут буст в стандарт, кромсая его возможности. Этого достаточно для говнистости. В серьезный проектах, кстати, буст (и подобная лапша) запрещен под угрозой увольнения.
Что не так с Бустом, что за него увольняют? На сколько я понимаю это некий аналог библиотек Apache Commons в мире Java, расширяющих стандартную библиотеку.