На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
! Правила раздела:
1. Название темы - краткое описание кто/что против кого/чего
2. В первом сообщении - список параметров, по которым идет сравнение.
3. Старайтесь аргументировать свои высказывания. Фразы типа "Венда/Слюникс - ацтой" считаются флудом.
4. Давайте жить дружно и не доводить обсуждение до маразма и личных оскорблений.
Модераторы: Модераторы, Комодераторы
Закрыто archimed7592 11-03-2008: Лимит страниц. Продолжаем Delphi vs C++

Страницы: (117) « Первая ... 104 105 [106] 107 108 ...  116 117  ( Перейти к последнему сообщению )  
> Delphi vs C++ , Часть 1
    Цитата wind @
    Таким образом, говорить о какой-либо исключительной гибкости C++, о предоставлении им полной свободы "самовыражения" не приходится. В каждом из обсуждаемых языков свои собственные тараканы, наличие которых не позволяет судить о том, который из них лучше, ибо оба плохи ;).

    Ну, с другой стороны, как видишь, С++ предоставляет больше возможностей в плане проектирования контрактов и интерфейсов. Ибо некоторые вещи проектировщик может "забить" именно на уровне кода. Можно ли в java языковыми средствами обязать пользователя разрушать объекты только строго определенным образом? Или создавать их только строго определенным образом? Или обязать разработчиков производных классов поступать только так, и никак иначе (управляя видимостью методов, их абстрактностью и т. п.)?
      Цитата
      И смысл меряться количеством тараканов?


      Смысла меряться действительно нет. Но смысл выявить их - есть. Полезно иногда переосмыслить то, что уже кажется осмысленным :)
        Цитата --Ins-- @
        А Delphi.NET хоть и имеет библиотеку, подобную VCL (она даже называется так же) - это совсем другой компилятор и совсем другая библиотека, предназначенная для безболезненного перехода с Delhpi for Win32.
        Нет, это просто порт под дотнет, имеющий в корне, грубо говоря другое апи.
        Цитата --Ins-- @
        Кстати, VCL в .NET можно и не использовать, а работать точно так же, как и в майкрософтовском C# - с теми же классами из пространства имен System (кажется так).
        VCL и в делфи без нета можно не использовать. Теоретически. Но желающих находится мало. Желающих ещо за это платить, как правило вообще не находится.
        Цитата --Ins-- @
        Секунду. VCL - это что-то типа MFC.
        Теоретически. На практике -- компилятор вмешивается в реализацию VCL, фактически дописывая её в компил-тайме, что делает её наглухо закреплённой в компиляторе. MFC же полностью самодостаточна и её скомпилит любой компилятор, придерживающийся стандартов. Конкретно билдер -- не знаю, он не придерживается стандартов, а значит гарантий быть не может. Одно знаю точно. VCL адаптированный под билдер -- ни на одном компиляторе С++ не скомпилится.
          Цитата Flex Ferrum @
          Можно ли в java языковыми средствами обязать пользователя разрушать объекты только строго определенным образом? Или создавать их только строго определенным образом?

          Если хотите получить ответ, уточните вопросы. Что значит "разрушать объекты только строго определенным образом" или "создавать их только строго определенным образом"?

          Цитата Flex Ferrum @
          Или обязать разработчиков производных классов поступать только так, и никак иначе (управляя видимостью методов, их абстрактностью и т. п.)?

          Ответ на вопрос в данной формулировке - можно, конечно. Не мешало бы уточнить.
            Цитата
            На практике -- компилятор вмешивается в реализацию VCL, фактически дописывая её в компил-тайме, что делает её наглухо закреплённой в компиляторе.


            :lool: Да уж, откровение...

            Добавлено
            VCL не зашита в язык. RTL - да, VCL - нет!
              Цитата wind @
              разрушать объекты только строго определенным образом

              Ну это значит, что объект должен завершить свой жизненный путь строго определенным образом (например, вызовом метода Release(), и никак иначе).
                С сишниками и дельфистами разобрались, взялись за джавашников :lol: Дотнетовцы - приготовьтесь!
                  Цитата Flex Ferrum @
                  Ну это значит, что объект должен завершить свой жизненный путь строго определенным образом (например, вызовом метода Release(), и никак иначе).

                  А при чем здесь java? Это и в Delphi нельзя сделать.

                  Добавлено
                  Поясню: я не знаю способов принудить программистов выывать деструктор предка. Есть, правда, BeforeDestruction, но это обычно специально для сишников :D
                    Цитата Romkin @
                    я не знаю способов принудить программистов выывать деструктор предка.

                    :blink: а он что.. в дельфи автоматически не вызывается..?
                      Цитата LuckLess @
                      а он что.. в дельфи автоматически не вызывается..?

                      Нет. Явный вызов inherited. Обязательно вызывается BeforeDestruction (исключая особый случай), но обычно все перекрывают не его, а деструктор. Память-то освободится, но если ты специально убрал слово inherited, которое ставится автопилотом, то ик!
                        Цитата --Ins-- @
                        VCL не зашита в язык.
                        Я и не говорил, что она зашита в язык. Я говорил, что компилер туды нагло вмешивается. Т.е. для его функционирования недостаточно просто выдержать синтаксис делфи.
                          Цитата Romkin @
                          Обязательно вызывается BeforeDestruction (исключая особый случай), но обычно все перекрывают не его, а деструктор.

                          :whistle: :whistle: А еще говорят что С++ слишком сложный.. :rolleyes:
                            Цитата Flex Ferrum @
                            Ну это значит, что объект должен завершить свой жизненный путь строго определенным образом (например, вызовом метода Release(), и никак иначе).

                            Нет, конечно, в java нет и не может быть деструкторов.
                              Цитата LuckLess @
                              А еще говорят что С++ слишком сложный..

                              Ну видишь ли, когда программист добирается до самого понятия деструктор, считается, что он уже знает, что это и как его потреблять. :)
                              В противовес можно писать кучу разных конструкторов...
                                Цитата wind @
                                Нет, конечно, в java нет и не может быть деструкторов.

                                Ну да, мы же ручное управление ресурсами не любим, вместо нас этим сборщик мусора занимается... :)
                                0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
                                0 пользователей:
                                Страницы: (117) « Первая ... 104 105 [106] 107 108 ...  116 117
                                Закрыто archimed7592 11-03-2008: Лимит страниц. Продолжаем Delphi vs C++



                                Рейтинг@Mail.ru
                                [ Script execution time: 0,1197 ]   [ 15 queries used ]   [ Generated: 23.07.25, 05:41 GMT ]