Pull to refresh
630
0
Тагир Валеев @tagir_valeev

Программист

Send message

Вам хочется решить другую задачу. Замечательно, решайте.

Думаю, версию двухлетней давности никто уже поддерживать не будет. Попробуйте со свежей версией. Если проблема сохраняется, пишите в техническую поддержку.

Как новые возможности лишают вас тех возможностей, что были раньше?

Не ломая обратную совместимость никак не сделаете. Вот простой вопрос на подумать для затравки. Есть класс AbstractList и есть класс ArrayList, его наследник. В Java-программах есть типы AbstractList<?>, ArrayList<?>, AbstractList<String>, ArrayList<String>. Если специализировать, то в рантайме это должно быть четыре отдельных класса. Нарисуйте их иерархию.

Ждем вторую часть

Есть же уже.

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

Никогда не планируют. С type erasure вполне можно жить. Специализация будет разве что для параметризации примитивами, когда её завезут.

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

Фиговина перед точкой. Если есть в джаве a.b, то вот a - это квалификатор.

Как человек, который программирует 30 лет, начинал по книжкам на бумажке за неимением компьютера, получил профильное высшее образование, защитил кандидатскую в области IT, ответственно заявляю, что ты душнишь. Как будто, блин, коннектор к вебсокет - это какое-то мегазнание, которое надо годами осваивать. Сейчас школьники в 12-14 лет вон телеграм-ботов фигачат на питоне. Было бы желание и склонность.

Да, это синтаксический сахар! Вы так говорите будто это что-то плохое. Половина Джавы - синтаксический сахар. Кому не нужен сахар, тот на Лиспе пишет :-) Это весьма полезная возможность, особенно в отсутствии дефолт-параметров. А для конструирования объектов так вообще необходимая, так как у конструкторов нет имени.

Людей с >60 часов в неделю надо выкидывать из статистики. Они фактически работают на двух работах за $2500 каждая, чем на одной работе за $5000. Зачем на них равняться?

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

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

В данном коде вы полностью контролируете класс и можете что угодно написать в конструкторе. В моём примере вы не контролируете класс и можете модифицировать только подкласс.

Не выйдет. Если вы роняете конструктор суперкласса, то до конструктора подкласса исполнение не дойдёт. Если же вы роняете конструктор подкласса, то суперкласс будет полностью инициализирован.

Опыт подсказывает, что такие предупреждения могут выявить (в дополнение к тривиальным) исключительно нетривиальные баги в программе. Для хорошего примера могу сослаться на наших коллег из PVS-Studio: 31 февраля. Или вот моя статья Статический анализ → уязвимость → профит. Хорошо написанный анализатор не выдаёт предупреждения на константах, которые введены для понятности кода, а выдаёт только на подозрительных константах.

Вообще чем критиковать искусственные примеры, лучше бы проанализировал какой-нибудь реальный код и рассказал, что нашлось!

Ну это когда было! Тогда и гита не было. Я иногда временно отключаю ветки кода в процессе отладки, но никогда такое не коммичу. И мне нравится, что редактор подсвечивает, предупреждая, что тут вот временная штука, которую надо будет вернуть на место.

1
23 ...

Information

Rating
Does not participate
Location
Новосибирск, Новосибирская обл., Россия
Registered
Activity