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

    а Реймонд говорит, что сначала нужно спроектировать структуры данных, а алгоритмы тогда станут очевидными =)

    И я с ним согласен. Кстати, структуры данных и классы очень разные понятия.
      Цитата Повстанець @
      Можно пример не ООПшной декомпозиции, не превращающей в дикий гиморой её использование. В двух словах, не надо много писать.

      связка Tcl/Tk, если не ошибаюсь неООПшна, а она считается одной из самых простых и удобных
        И вообще я сам за ООП, просто решил поддержать разговор :D

        Добавлено
        Цитата korvin @
        Цитата Повстанець @
        Можно пример не ООПшной декомпозиции, не превращающей в дикий гиморой её использование. В двух словах, не надо много писать.

        связка Tcl/Tk, если не ошибаюсь неООПшна, а она считается одной из самых простых и удобных

        А слайды?
          Цитата D_KEY @
          Никто не мешает. И это уже будет не ООП, если ключевыми компонентами системы являются алгоритмы, действия и модули, а объекты вторичны, не обладают самостоятельным поведением и не определяют систему.

          смотря под каким углом смотреть =) в ФП можно считать функции -- объектами, а структуры данных -- сообщениями (в противоположность ООП). если еще взять не чистое ФП, а как в Scheme, например, то вообще получаются полноценные объекты с "поведением" и внутренним состоянием

          Добавлено
          Цитата D_KEY @
          И я с ним согласен. Кстати, структуры данных и классы очень разные понятия.

          не очень
            Цитата korvin @
            Цитата D_KEY @
            Никто не мешает. И это уже будет не ООП, если ключевыми компонентами системы являются алгоритмы, действия и модули, а объекты вторичны, не обладают самостоятельным поведением и не определяют систему.

            смотря под каким углом смотреть =) в ФП можно считать функции -- объектами, а структуры данных -- сообщениями (в противоположность ООП). если еще взять не чистое ФП, а как в Scheme, например, то вообще получаются полноценные объекты с "поведением" и внутренним состоянием

            Ну и в ООП, можно завести много "callable"-объектов и построить декомпозицию системы на их основе :) Использовать исключительно immutable-object и фабрики...
            Будет почти-что ФП :)

            Добавлено
            Цитата korvin @
            Цитата D_KEY @
            И я с ним согласен. Кстати, структуры данных и классы очень разные понятия.

            не очень

            В классе важнее интерфейс, а не реализация. Одна из основных задач класса - описывать АТД... А структура данных - это то, вокруг чего может быть построена реализация АТД.
            Сообщение отредактировано: D_KEY -
              О чем вообще холивар-то идет? :blink:
                Цитата D_KEY @
                В классе важнее интерфейс, а не реализация. Одна из основных задач класса - описывать АТД...

                не обязательно. контрпример: CLOS =)

                Добавлено
                Цитата D_KEY @
                и фабрики...

                фабрики-то зачем? =)
                  Цитата D_KEY @
                  Или автор STL говорит чушь?

                  Во-первых, хотелось бы услышать от тебя стадии реализации ПО. Все :) Вот прямо как бы ты делал/делаешь.
                  Во-вторых, уж от тебя то не ожидал "автор STL". Неужели придётся объяснять, что авторитет впереди доводов есть зло?
                    Цитата Romkin @
                    О чем вообще холивар-то идет? :blink:

                    Да был вброс против ООП, я ради порядка решил поддержать, ибо понимаю, что тут большинство за ООП. Но у меня не очень удачно получилось :(

                    Добавлено
                    Цитата korvin @
                    Цитата D_KEY @
                    В классе важнее интерфейс, а не реализация. Одна из основных задач класса - описывать АТД...

                    не обязательно. контрпример: CLOS =)

                    Ну значит там какой-то неправильный ООП :-?
                    Просто теория ООП говорит именно об этом. Тот же Мейер...

                    Цитата
                    Цитата D_KEY @
                    и фабрики...

                    фабрики-то зачем? =)
                    Чтобы удобнее было конструировать объекты с полиморфным поведением(возвращаем интерфейс/абстрактный класс, умеющий "вызываться" с соответствующими параметрами).

                    Добавлено
                    Цитата MyNameIsIgor @
                    Цитата D_KEY @
                    Или автор STL говорит чушь?

                    Во-первых, хотелось бы услышать от тебя стадии реализации ПО. Все :) Вот прямо как бы ты делал/делаешь.

                    Вау. Необычные просьбы сегодня на меня так и сыпятся.
                    Простой цикл: анализ-проектирование-реализация-тестирование-внедрение тебя не устроит?
                    В основном итеративная разработка, хотя частично применяем scrum.

                    Цитата
                    Во-вторых, уж от тебя то не ожидал "автор STL". Неужели придётся объяснять, что авторитет впереди доводов есть зло?

                    А кто говорит об авторитете? Если не заметил, то я задавал вопрос. STL я решил упомянуть для достижения нескольких целей. В частности, для пояснения тем, кто не знает Степанова, а также напоминание о неплохой библиотеке, в которой ООП не используется(в отличие от библиотек схожей функциональности в других языках, поддерживающий и пропагандирующих ООП).
                    Сообщение отредактировано: D_KEY -
                      Цитата D_KEY @
                      Ну значит там какой-то неправильный ООП :-?
                      Просто теория ООП говорит именно об этом. Тот же Мейер...

                      там один из самых правильных ООП =)
                        Цитата korvin @
                        Цитата D_KEY @
                        Ну значит там какой-то неправильный ООП :-?
                        Просто теория ООП говорит именно об этом. Тот же Мейер...

                        там один из самых правильных ООП =)

                        Ну это как смотреть :) А чем там являются классы и почему они не описывают АТД?
                          Цитата D_KEY @
                          Чтобы удобнее было конструировать объекты с полиморфным поведением(возвращаем интерфейс/абстрактный класс, умеющий "вызываться" с соответствующими параметрами).

                          эм... не понимаю о чем ты. нужна только лишь реализация алгебраических типов данных

                          Добавлено
                          Цитата D_KEY @
                          А чем там являются классы и почему они не описывают АТД?

                          метаобъектами =) стандратные классы описывают объект как набор слотов.
                            Цитата korvin @
                            нужна только лишь реализация алгебраических типов данных

                            А в "классических" языках с ООП они и реализуются через абстрактный класс и наследников + проверка типов во время выполнения ну или абстрактной операции. В С/С++ правда можно сделать через размеченные объединения(struct + union + enum с тегом варианта), но это не очень красиво и удобно.

                            Цитата
                            Цитата D_KEY @
                            А чем там являются классы и почему они не описывают АТД?

                            метаобъектами =) стандратные классы описывают объект как набор слотов.
                            И как это противоречит АТД?
                            Только не заставляй меня описывать стэки :lool:
                            Сообщение отредактировано: D_KEY -
                              Цитата D_KEY @
                              И как это противоречит АТД?

                              прямо
                              Цитата
                              An abstract data type is defined indirectly, only by the operations that may be performed on it

                              в C++ эти операции описываются непосредственно в классе, поэтому класс может быть АТД, в ЦЛ же в классе никакие операции не описываются (кроме, опционално примитивных акцессоров => классы в ЦЛ не могут описывать АТД. стандартные классы не могут =)
                                Цитата korvin @
                                в ЦЛ же в классе никакие операции не описываются (кроме, опционално примитивных акцессоров => классы в ЦЛ не могут описывать АТД. стандартные классы не могут =)

                                А что в них тогда вообще описывается?
                                0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
                                0 пользователей:
                                Страницы: (495) « Первая ... 171 172 [173] 174 175 ...  494 495


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