На главную
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
! Правила раздела:
1. Название темы - краткое описание кто/что против кого/чего
2. В первом сообщении - список параметров, по которым идет сравнение.
3. Старайтесь аргументировать свои высказывания. Фразы типа "Венда/Слюникс - ацтой" считаются флудом.
4. Давайте жить дружно и не доводить обсуждение до маразма и личных оскорблений.
Модераторы: Модераторы, Комодераторы
Страницы: (4) 1 2 [3] 4  все  ( Перейти к последнему сообщению )  
> Меня бесят ламеры, class vs Interface
    Цитата korvin @
    Цитата D_KEY @
    Ну я тут имел в виду, что оно ещё и во время компиляции гарантировано вычисляется

    В смысле? А если вместо ключевого слова const в языке используется val — то всё, приплыли?

    Ну val по мне уже должно быть в рантайме. Даже если оно неизменяемое.
      Цитата D_KEY @
      Ну val по мне уже должно быть в рантайме. Даже если оно неизменяемое.

      С чего ты это взял? )
        Цитата korvin @
        Цитата D_KEY @
        Ну val по мне уже должно быть в рантайме. Даже если оно неизменяемое.

        С чего ты это взял? )

        Ну хз :) Мне кажется логичным наличие в языке механизма для работы со значениями во время компиляции и так же логичным кажется использовать ключевое слово const.
          Цитата D_KEY @
          Мне кажется логичным наличие в языке механизма для работы со значениями во время компиляции и так же логичным кажется использовать ключевое слово const.

          Это в тебе профдеформация говорит.
            Цитата korvin @
            Цитата D_KEY @
            Мне кажется логичным наличие в языке механизма для работы со значениями во время компиляции и так же логичным кажется использовать ключевое слово const.

            Это в тебе профдеформация говорит.

            Возможно. Но ты раскрой мысль-то про константы.
              Цитата D_KEY @
              Но ты раскрой мысль-то про константы.

              А что там раскрывать? Нет никакой разницы, как называется ключевое слово, хоть const, хоть val, хоть let, хоть def. Возможность работать со значениями во время компиляции от этого никак не зависит.
              Сообщение отредактировано: korvin -
                Цитата korvin @
                Нет никакой разницы, как называется ключевое слово, хоть const, хоть val, хоть let, хоть def. Возможность работать со значениями во время компиляции от этого никак не зависит.

                Суть не в названии, а в наличии возможности. Т.е. смогу ли я потом воспользоваться значением константы для условной компиляции, например? Или для определения размеров массива, хотя бы.
                Можешь погуглить про constexpr в C++ или про то, что в D есть.
                  Цитата D_KEY @
                  Суть не в названии, а в наличии возможности.

                  Ну раз суть не в названии, то почему ты докопался до названия? )

                  Цитата D_KEY @
                  Т.е. смогу ли я потом воспользоваться значением константы для условной компиляции, например?

                  Условная компиляция — зло. )

                  Цитата D_KEY @
                  Или для определения размеров массива, хотя бы.

                  Сможешь.

                  Цитата D_KEY @
                  Можешь погуглить про constexpr в C++ или про то, что в D есть.

                  Спасибо, я знаю про constexpr. При чём тут это, не совсем понятно, но можешь тоже погуглить про eval-when в Common Lisp, например. )

                  Добавлено
                  Или вот.
                    Цитата korvin @
                    Цитата D_KEY @
                    Суть не в названии, а в наличии возможности.

                    Ну раз суть не в названии, то почему ты докопался до названия? )

                    Да я ж просто сказал, что предпочел бы const для констант :D

                    Цитата
                    Условная компиляция — зло. )

                    В общем случае нет.

                    Цитата
                    Спасибо, я знаю про constexpr. При чём тут это, не совсем понятно

                    Ну мой const это что-то близкое к constexpr.

                    По поводу template haskell смотрел когда-то, что-то слабее даже плюсовых шаблонов показалось. Но я подзабыл уже.

                    Добавлено
                    В любом случае мы отделяем то, что происходит во время компиляции. О чем я и говорю.
                      Цитата D_KEY @
                      В общем случае нет.

                      Да. В том числе и в общем случае. )

                      Добавлено
                      Цитата D_KEY @
                      По поводу template haskell смотрел когда-то, что-то слабее даже плюсовых шаблонов показалось.

                      Оно не совсем прямо соотносится с плюсовыми шаблонами, скорее ближе к макросам лиспа.
                        Цитата korvin @
                        Цитата D_KEY @
                        В общем случае нет.

                        Да. В том числе и в общем случае.

                        Аргументы-то есть?
                          Цитата korvin @
                          Цитата sergioK @
                          Покажи не велосипед

                          ExpandedWrap disabled
                            val resultCode = -1

                          не val а var и начиная с 10 версии, которая не LTS, с 11 пока мало где можно выходить в продакшен,
                          ждем 17 вроде до сентября ,

                          А ты Я давно заметил крутой спец в Яве, раньше стеснялся говорить, ;)
                            Цитата sergioK @
                            не val а var и начиная с 10 версии, которая не LTS, с 11 пока мало где можно выходить в продакшен,
                            ждем 17 вроде до сентября ,

                            Не Java, а любой нормальный язык, начиная с… 1970-х примерно.
                              Вроде не протухла же тема? :)

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

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

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

                              Ну и с архитекторской т.з. это все выглядит немного криво, потому что они в диаграммах в основном сидят. А тут прямоугольничек, который вроде как и можно использовать определенным способом, но никогда не нужно. Людей с ОКР это раздражает, я знаю :)
                                Цитата Felan @
                                Вроде не протухла же тема? :)

                                Ой как раз в тему,
                                У меня command pattern и при инициализация я свои классы с ключами гружу в map ,
                                И все бы хорошо, но вдруг главный индус архитектор мне его убирает - аргументация
                                у них есть fresh developers и им тяжело использовать фабрику , обычный switch
                                лучше

                                ExpandedWrap disabled
                                       switch key {
                                    
                                       case 1:
                                           return channel1Service.download(..)
                                      case 2:
                                          return channel2Service.download(..)
                                   
                                        и т,д
                                  }


                                У было

                                ExpandedWrap disabled
                                    IService service = factory.getService(int key )


                                И тут Я понимаю что по неволе становлюсь расистом ;) Эти индусы вообще реальные системы
                                писали ? И только схемы рисовали ? Если у них fresh developer и счас не умеет работать паттернами ,
                                так как он научиться тогда , мои джуны прекрасно с фабрикой работали.
                                1 пользователей читают эту тему (1 гостей и 0 скрытых пользователей)
                                0 пользователей:
                                Страницы: (4) 1 2 [3] 4  все


                                Рейтинг@Mail.ru
                                [ Script execution time: 0,0525 ]   [ 14 queries used ]   [ Generated: 2.08.21, 06:03 GMT ]