На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
! Правила раздела:
1. Название темы - краткое описание кто/что против кого/чего
2. В первом сообщении - список параметров, по которым идет сравнение.
3. Старайтесь аргументировать свои высказывания. Фразы типа "Венда/Слюникс - ацтой" считаются флудом.
4. Давайте жить дружно и не доводить обсуждение до маразма и личных оскорблений.
Модераторы: Модераторы, Комодераторы
Страницы: (495) « Первая ... 329 330 [331] 332 333 ...  494 495  ( Перейти к последнему сообщению )  
> Delphi vs C++ vs C# , ну и Java немножко, где-то ближе к старшему байту номеров страниц
    Да, и в C++ на момент вызова тела конструктора объект почти готов - отработали конструкторы всех родительских объектов и полей данных.
      Цитата trainer @
      Да, и в C++ на момент вызова тела конструктора объект почти готов

      РаковоеКлючевое слово.
        Deswer, я ведь просто могу воспользоваться своим административным ресурсом. Ради многих читателей этой темы можно пожертвовать одним тобой. Имей это в виду, когда троллишь. Считай это предупреждением.

        Добавлено
        Цитата DesweR @
        Ключевое слово.
        А в Delphi на момент вызова конструктора объект полностью готов? В очередной раз вопрос: зачем в Delphi конструкторы, что они конструируют, если объект полностью готов?
        Сообщение отредактировано: trainer -
          Цитата MyNameIsIgor @
          Космическая иерархия - это бред сивой кобылы.

          нет. польза наличия одного корня описана в TAPL, позже приведу цитату
            Цитата korvin @
            нет

            Да.
            Цитата korvin @
            польза наличия одного корня описана в TAPL

            А тот недостаток, что она не нужна, там не описывается? :D
            Цитата korvin @
            позже приведу цитату

            Я просто в предвкушении :)
              Цитата DesweR @
              - виртуальные конструкторы

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

              Цитата
              - классовые методы/конструкторы/деструкторы

              Тут пожалуй, соглашусь, но это можно сделать, если захочется.

              Цитата
              - нормальное монолитное конструирование в принципе, т.е. на момент вызова конструкторов - класс де факто уже готов (а не доконструирование каждым производным классом)

              Класс в С++ тоже к этому времени уже готов. А если ты имел в виду объекты, то такое определение противоречит понятию конструктор. Так что в С++ тут все логично.

              Цитата
              - хотелось чтобы все классы порождались от единственного базового (конечно это идёт в разрез с "не использую не плачу"...)

              Зачем нужна космическая иерархия? Ведь она никак не связана с предметной областью, правда?
              В С++ есть void*, а так же библиотечные штуки, вроде boost::any, что позволяет хранить(и выполнять простейшие операции, вроде ввода-вывода) любые объекты.

              Цитата
              - ну и интерфейсы, хотя бы библиотекой стандартной.

              Чем не устраивают абстрактные классы?

              Добавлено
              Цитата DesweR @
              Цитата korvin @
              и ты забыл про языки с алгебраическими типами?

              Даже не вспоминал про них, тут кагбэ "Delphi vs C++ vs C#, ну и Java.

              В Delphi же должны быть вариантные типы, как в других паскалевских наследниках? Думаю, что над ними можно накрутить оберточки и сделать нормальные алгебр. типы, нет?

              Добавлено
              Цитата korvin @
              польза наличия одного корня описана в TAPL, позже приведу цитату

              Насколько я помню(только листал) там несколько о другом... Впрочем, могу ошибаться, так что приводи обязательно :)
              Сообщение отредактировано: D_KEY -
                Цитата MyNameIsIgor @
                А тот недостаток, что она не нужна, там не описывается? :D

                это не является недостатком, т.к. введение Top никаких негативных последствий не приносит

                user posted image

                че-то не получается сам текст скопировать, какая-то проблема с кодировкой
                  Вот, значит я правильно помню, что там о другом. korvin, обрати внимание на предложение перед выделенным ;) Это именно наш случай. И ты хочешь сказать, что наличие класса Object это хорошо, потому, что он имеется в большинстве ОО языков программирования :) ?
                  Ну и да, необходимым элементом он не является. А во многих ОО языках его наличие связано с присутствующими в этих языках ограничениями или просто с удобством использования. Но это не значит, что он нужен. В С++ тебе никто не мешает завести такой класс для своей системы ;)
                  Сообщение отредактировано: D_KEY -
                    ну, во-первых, я специально выделил красным. именно это нас интересует, потому что
                    во-вторых, "не является необходимым" и "бред сивой кобылы" -- это несколько разные по смыслу высказывания.
                    а в-третьих, "завести такой класс для своей системы" не то же самое, что и наличие типа Top/Object.
                    Сообщение отредактировано: korvin -
                      korvin, угу, аргументы прут из все щелей: это есть у всех и нам, академикам(!), так проще повествовать :lool:
                        Цитата MyNameIsIgor @
                        korvin, угу, аргументы прут из все щелей: это есть у всех и нам, академикам(!), так проще повествовать :lool:

                        т.е. ты не прочитал текст
                          Цитата korvin @
                          ну, во-первых, я специально выделил красным. именно это нас интересует.

                          Нет, нас интересует не это. Ибо тип и класс это не взаимозаменяемые понятия в данном случае. Вернее класс - это тип, но тип - это не всегда класс.
                          Речь идет о космической иерархии классов, которая не является ни следствием принципов ООП, ни средством моделирования предметной области.
                          С другой стороны, в чистых ОО-языках(где все типы - классы), такой класс, в принципе, является логичным. Но не один из перечисленных в теме языков не является чистым ОО.

                          Цитата
                          а в-третьих "завести такой класс для своей системы" не то же самое, что и наличие типа Top/Object.

                          Если ты не будешь отождествлять Top и Object, то это будет тоже самое(в рамках системы). Так, например, если я воспользуюсь библиотекой GObject и буду все свои "классы" создавать соответствующим образом, то буду иметь все тот же Object, хотя и без Top'а.

                          Добавлено
                          Цитата D_KEY @
                          о не один из перечисленных в теме языков не является чистым ОО.

                          Шарп может претендовать на такое звание, но там странная штука в плане связи встроенных типов и структур с Object'ом.
                            Цитата korvin @
                            т.е. ты не прочитал текст

                            Т.е. вы научились аргументации у авторов TAPL.
                              Цитата D_KEY @
                              Нет, нас интересует не это. Ибо тип и класс это не взаимозаменяемые понятия в данном случае. Вернее класс - это тип, но тип - это не всегда класс.
                              ...
                              Но не один из перечисленных в теме языков не является чистым ОО.

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

                              в C# думаю ситуация похожая, разве нет?

                              и тебе не кажется, что

                              Цитата D_KEY @
                              Речь идет о космической иерархии классов, которая не является ни следствием принципов ООП, ни средством моделирования предметной области.

                              и
                              Цитата D_KEY @
                              С другой стороны, в чистых ОО-языках(где все типы - классы), такой класс, в принципе, является логичным. Но не один из перечисленных в теме языков не является чистым ОО.

                              -- взаимоисключающие параграфы?
                                Цитата MyNameIsIgor @
                                Цитата korvin @
                                т.е. ты не прочитал текст

                                Т.е. вы научились аргументации у авторов TAPL.

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

                                Добавлено
                                Цитата korvin @
                                и тебе не кажется, что

                                Цитата D_KEY @
                                Речь идет о космической иерархии классов, которая не является ни следствием принципов ООП, ни средством моделирования предметной области.

                                и
                                Цитата D_KEY @
                                С другой стороны, в чистых ОО-языках(где все типы - классы), такой класс, в принципе, является логичным. Но не один из перечисленных в теме языков не является чистым ОО.

                                -- взаимоисключающие параграфы?

                                Нет, не кажется. Ибо относительная логичность наличия Object'а в чистых ОО-языках, связана не с ОО возможонстями и принципами, а с отсутствием других "видов типов".

                                Цитата
                                ну не скажи, в жаве, хоть и есть примитивные типы int, boolean и т.д., но всем им соответствуют какие-то классы

                                Тем не менее, примитивные типы не являются классами. Если же мы принимаем такой подход, то в таком случае boost::any обеспечивает "Object" в С++ ;)
                                1 пользователей читают эту тему (1 гостей и 0 скрытых пользователей)
                                0 пользователей:
                                Страницы: (495) « Первая ... 329 330 [331] 332 333 ...  494 495


                                Рейтинг@Mail.ru
                                [ Script execution time: 0.4893 ]   [ 14 queries used ]   [ Generated: 31.07.26, 15:22 GMT ]