| 
 | 
| 
 
Почему популярна 8 версия и веб использование? 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  Basil A. Sidorov Тогда я повторю вопрос - чем не устраивает то, что уже завезли в Java 8??? текстовые блоки ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 22.09.2021, 19:58 | 
  
  
  
   | 
||
| 
 
Почему популярна 8 версия и веб использование? 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  вадя, О да, текстовые блоки, интерполяторы это тоже топчик ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 22.09.2021, 19:59 | 
  
  
  
   | 
||
| 
 
Почему популярна 8 версия и веб использование? 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  забыл ник О да, текстовые блоки, интерполяторы это тоже топчик ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 22.09.2021, 20:20 | 
  
  
  
   | 
||
| 
 
Почему популярна 8 версия и веб использование? 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  забыл ник Я конечно не совсем показатель, но.. Мой вопрос к нему тоже относится сугубо (и исключительно) к возможностям Java 8 в отношении этих самых беззнаковых. Каким боком к этой узкой нише даже ваши алгебраические типы? Потому, что всё остальное - вообще никак. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 23.09.2021, 04:59 | 
  
  
  
   | 
||
| 
 
Почему популярна 8 версия и веб использование? 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  вадя текстовые блоки Беззноковые как соотносятся с текстовыми блоками??? ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 23.09.2021, 05:00 | 
  
  
  
   | 
||
| 
 
Почему популярна 8 версия и веб использование? 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
   типичный пример неумения думатьАвтор страдает ...  Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. ... и цепочка вложенных if это (действительно) ужасно. Но почему эти страдающие перфекционисты не в состоянии переписать цепочку в блок: Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. ? Оно, конечно, тоже громоздкое, но это хотя бы "Die erste Kolonne marshiert ..." и не требует ломать голову над вопросом - "А нафига тут вложенность? Оптимизация выхода? Серьёзно???" P.S. Когда я вижу аргументацию такого качества , хочется спросить: вы действительно считаете свои аргументы убедительными? ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 23.09.2021, 05:36 | 
  
  
  
   | 
||
| 
 
Почему популярна 8 версия и веб использование? 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  Basil A. Sidorov, чел приводит примитивный пример для большей наглядности. и то , что использование вложенных if , в не цепочка if не является предосудительным в данном случае - вполне возможен и более общий случай, когда после этой цепочки стоит не renurn, а продолжение кода. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 23.09.2021, 10:35 | 
  
  
  
   | 
||
| 
 
Почему популярна 8 версия и веб использование? 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  Basil A. Sidorov Ещё один чукчо-писатель ... Беззноковые как соотносятся с текстовыми блоками??? был вопрос , что нет в 8 , по сравнению с 17 - я ответил. ведь текстовые блоки намного нагляднее чем раньше было. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 23.09.2021, 10:40 | 
  
  
  
   | 
||
| 
 
Почему популярна 8 версия и веб использование? 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  забыл ник 2) отсутствие ADT - алгебраических типов данных 3) Плохой inference типов .. 10) нормальных генерикрв с ко- и контр- вариантностью. А также генерикрв на примитивах 11) аналога do- или for comprehension. В широком контексте - монадического контекста 12) нормальных лямбд чтобы можно было писать простые функции высшего порядка В глобальном масштабе. Если движенье в сторону scala это улучшение - то зачем тогда java? Это тот-же самый вопрос который говорят и про java-kotlin. Язык, если он работает более 20 лет - уже имеет свою устойчивую аудиторию разработки и поддержки. И ему (языку) может быть лучше "подлатать" свои недостатки. А фичи других языков - пусть останутся фичами других языков. По поводу строгости, inference и прочее. Мне кажется реализовать строгость в полной мере в java будет невозможно именно в связи с ее либеральной архитектурой jvm. В строгом языке мы не можем передать в функцию объект (Object) до тех пор пока компиллятор не будет видеть диапазон возможных подтипов которые потенциально туда зайдут или паттерн матчинг решит что этот код - законен и может работать. В противоположность в Java слишком популярны механики рефлексии которые откладывают принятие решения "на потом" что создает некую вольность в рантайме. Этим пользуются фреймворки. И именно такие вольности не позволяют нам постулировать строгий язык наподобие Haskell на базе java. Тут уже либо строгий вывод типов, либо - возможности рантайма. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 23.09.2021, 10:52 | 
  
  
  
   | 
||
| 
 
Почему популярна 8 версия и веб использование? 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  mayton А фичи других языков - пусть останутся фичами других языков +++ А мы мы так доиграемся и завтра кому-то захочется писать на Java без скобочек и без точек с запятыми, а блоки кода чтобы определялись по количеству пробелов от начала строки. И ведь протолкнут в релиз... хипстеры треклятые. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 23.09.2021, 11:45 | 
  
  
  
   | 
||
| 
 
Почему популярна 8 версия и веб использование? 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  вадя был вопрос Встречный вопрос - меня-то нафига цитировать? Мой вопрос относился к совершенно конкретному и очень узкому "стенанию" про отсутствие беззнаковых. P.S. Неужели так сложно понять, что если человек не поленился и вырезал из "стены текста" конкретные строки, то "это ж неспроста"? ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 23.09.2021, 12:26 | 
  
  
  
   | 
||
| 
 
Почему популярна 8 версия и веб использование? 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  вадя чел приводит примитивный пример для большей наглядности. Поэтому примитивность примера (заменяется на toString()) - вообще не оправдание.и то , что использование вложенных if , в не цепочка if не является предосудительным в данном случаеВот именно в данном конкретном случае вложенные if-ы - тупость и мракобесие. Вложенные условные операторы нужны только для того, чтобы "оптимизировать" количество сравнений. Гораздо более прямолинейный вариант оптимизации - использовать оператор return прямо там, где он требуется.вполне возможен и более общий случай, когда после этой цепочки стоит не renurn, а продолжение кода.Возможен, но не в данном конкретном случае. P.S. И мне опять приходится повторить свой вопрос: используя аргументы такого качества, вы действительно считаете их убедительными? ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 23.09.2021, 12:39 | 
  
  
  
   | 
||
| 
 
Почему популярна 8 версия и веб использование? 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  Basil A. Sidorov И мне опять приходится повторить свой вопрос: используя аргументы такого качества, вы действительно считаете их убедительными? Basil A. Sidorov Вложенные условные операторы нужны только для того, чтобы "оптимизировать" количество сравнений. Гораздо более прямолинейный вариант оптимизации - использовать оператор return прямо там, где он требуется.вполне возможен и более общий случай, когда после этой цепочки стоит не renurn, а продолжение кода. тебе нравятся if - используй , где считаешь нужно. никто не заставляет. я то же бы использовал множественные ретурны, если б это было в таком методе. но я понял мыль автора и мне этого достаточно. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 23.09.2021, 12:58 | 
  
  
  
   | 
||
| 
 
Почему популярна 8 версия и веб использование? 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  Basil A. Sidorov, ЗЫ а придраться можно и к фонарному столбу.... ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 23.09.2021, 13:00 | 
  
  
  
   | 
||
| 
 
Почему популярна 8 версия и веб использование? 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  - ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 23.09.2021, 13:00 | 
  
  
  
   | 
||
| 
 
Почему популярна 8 версия и веб использование? 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  вадя Basil A. Sidorov Тогда я повторю вопрос - чем не устраивает то, что уже завезли в Java 8??? текстовые блоки Я ворчу про знаковую арифметику уже давно. Кажется еще с Jdk 1.5 Есть пример толи от Мартына Фавлера толи от Джоша Керивского. Классика жанра. Поиск половинным делением в массиве работает. Но периодически падает с арифметикой доступа при некоторых условиях. Пример достаточно экзотичен и воспроизвести его нелегко. Нужен толстый массив. Код: java 1. 2. 3. 4. Арифметика доступа к массиву требует гарантий. Гарантий того что мы не выскочим за разрядную сетку. Будучи портированным с С++ или "C" где элемент mid имел запас по прочности в виде unsigned int, алгоритм работает. На тех же объемах в Java он может не работать. Есть умный рефакторинг который позволяет уменьшить риски переполнений так Код: java 1. но не все это делают. Вообще сложно портировать C/C++ код с сохранением поведения арифметики точно. Это - тривиальный пример. А есть еще и операции умножения. Коробочное решение - использовать strict-арифметику из пакета Math. В этом случае переполнение сетки мы задетектим исключением. Это не всегда удобно. Ведь вам придется инфиксную операцию "+" переписывать на вызов методов. И разумеется после такого рефакторинга читаемость кода пострадает. Он уже не выглядит портом с С++. Он - уродлив как бухгалтерия с BigDecimal. Можно также на уровне контрактов ограничить входные параметры. Тоесть заручится что размер массива будет всегда не более чем четверть диапазона int к примеру. Но это всё такие условности. 99% даю что разработчик это не проверяет. И бинарный поиск (просто как наивный пример) будет протестирован поверхностно и на малых объемах. Некоторые возразят дескыть мы и так получаем исключение класса IndexOutOf... но я отвечу что это просто частный пример. Алгоритм мог быть другой (не поисковый) и мы могли попасть в некорректный индекс в позитивном диапазоне. Такое не детектировалось бы. И что я хочу? Я от восьмерки ничего не хочу. Я просто говорил что было-бы неплохо в Java-18 иметь беззнаковую арифметику. Microsoft.Net внедрил беззнаковые типы? Внедрил. Такой проблемы у него нет. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 23.09.2021, 14:43 | 
  
  
  
   | 
||
| 
 
Почему популярна 8 версия и веб использование? 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  mayton, Увы. Мейнстрим идет в уход от арифметики. Например в итераторы.... Коллекции, контейнеры ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 23.09.2021, 15:17 | 
  
  
  
   | 
||
| 
 
Почему популярна 8 версия и веб использование? 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  PetroNotC Sharp mayton, Увы. Мейнстрим идет в уход от арифметики. Например в итераторы.... Коллекции, контейнеры А как коллекции, контейнеры связаны с арифметикой? 1) Полностью поддержку mayton'а. Вместо синтаксической патоки (т.к. даже сахаром ее не назвать), лучше бы типы расширили. Безнаковые, арифметика с фиксированной точкой (number), обработка null'а (синтаксис Kotlin'а), выкинуть get'ры/set'ы (property в Delphi), добавить нормальные коллекции на примитивные типы и так далее и тому подобное. 2) Что if, что switch - на мой взгяд, одинаковая помойка. Ну а if/switch'и с instanceof - явное нарушение базовых принципов ООП. Т.к., по "обычному" ООП, такое поведение должно было бы не if/switch'а кодироваться, а виртуальной функцией. В результате появляется "новая" фича, которая будет учить "новых" программистов кодировать в стиле Basic'а 80'х годов прошлого века. Когда 90% программы: If, substr, instr'ы.... а слов "парсер", "синтаксический разбор" программисты даже и не знают. IMHO ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 23.09.2021, 15:31 | 
  
  
  
   | 
||
| 
 
Почему популярна 8 версия и веб использование? 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  P.S. по хорошему, нужно было бы нормальные ссылки на функцию + HashTable с описанием: тип параметра = функция форматирования Ну и вся ф-ция String formatter(Object o) должна была бы выглядить (без всяких switch): return formatFunctions.get( o.getType() ).format( o ); + код на проверку null ))) Но в "классической" Java такое можно изобразить только через 100500 строк кода с порождением безумного кол-ва классов или, скорее всего, в "современной" Java через лямбды. IMHO ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 23.09.2021, 15:36 | 
  
  
  
   | 
||
| 
 
Почему популярна 8 версия и веб использование? 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  вадя https://habr.com/ru/post/579178/ текстовые блоки 1. посмотрел в проекте текущем, слово switch встречается аж 8 раз и везде enum 2. текстовые блоки и интерполяция не нужна: с "длинным" текстом приходится напрягаться разве что при написании текста исключений, а все остальное лежит в ресурсах, а интерполяция она вещь такая, что завтра тебе будут в нее вставлять "rm -rf /" и будет весело, здесь твое рвение вызвано исключительно тем, что ты любишь писать SQL-лапшу ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 23.09.2021, 15:36 | 
  
  
  
   | 
||
| 
 
Почему популярна 8 версия и веб использование? 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  mayton Есть умный рефакторинг который позволяет уменьшить риски переполнений так Код: java 1. чет вспомнил, что где-то в проекте был бинарный поиск, побежал смотреть, а там '>>> 1' ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 23.09.2021, 15:38 | 
  
  
  
   | 
||
| 
 
Почему популярна 8 версия и веб использование? 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  PetroNotC Sharp mayton, Увы. Мейнстрим идет в уход от арифметики. Например в итераторы.... Коллекции, контейнеры Я-же говорю. Я рассматриваю кейс когда числовой алгоритм (криптография, численные методы, хеши) был портирован с языков имеющих unsigned. Ты говоришь мир уходит. Он уходит лишь малой частью которая никак не влияет на мой тезис. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 23.09.2021, 15:49 | 
  
  
  
   | 
||
| 
 
Почему популярна 8 версия и веб использование? 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  mayton Я ворчу про знаковую арифметику уже давно. ... И что я хочу? Я от восьмерки ничего не хочу. Именно поэтому я и хотел услышать внятное пояснение: чем, собственно, не устраивают возможности Java 8 в части беззнаковой арифметики. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 23.09.2021, 15:58 | 
  
  
  
   | 
||
| 
 
Почему популярна 8 версия и веб использование? 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  Basil A. Sidorov mayton Я ворчу про знаковую арифметику уже давно. ... И что я хочу? Я от восьмерки ничего не хочу. Именно поэтому я и хотел услышать внятное пояснение: чем, собственно, не устраивают возможности Java 8 в части беззнаковой арифметики. "завезли" это: The "new support" is the addition of the static methods in the Integer and Long classes, e.g. Integer.divideUnsigned. If you're not using those methods, your "unsigned" long above 2^63-1 is just a plain old long with a negative value. ??? ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 23.09.2021, 16:02 | 
  
  
  
   | 
||
| 
 
Почему популярна 8 версия и веб использование? 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  Leonid Kudryavtsev А как коллекции, контейнеры связаны с арифметикой? Раньше указатель++ и перешел в массиве на след кусок данных. Сейчас for (auto fille: контейнерФайлов) { ... Коллекции заменили массивы. Так как надо сдвигать, перераспределять память и блокировать автоматически и лениво. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 23.09.2021, 16:05 | 
  
  
  
   | 
||
| 
 | 

start [/forum/topic.php?fid=59&startmsg=40099400&tid=2120337]:  | 
    0ms | 
get settings:  | 
    9ms | 
get forum list:  | 
    13ms | 
check forum access:  | 
    4ms | 
check topic access:  | 
    4ms | 
track hit:  | 
    66ms | 
get topic data:  | 
    12ms | 
get forum data:  | 
    3ms | 
get page messages:  | 
    63ms | 
get tp. blocked users:  | 
    2ms | 
| others: | 12ms | 
| total: | 188ms | 

| 0 / 0 | 

    Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
    
    
    «На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
    
    
    ... ля, ля, ля ...