На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
Страницы: (10) « Первая ... 5 6 [7] 8 9 ... Последняя » все  ( Перейти к последнему сообщению )  
> Обсудим идеи как можно радикально облегчить и упростить программирование?
    AVA12
    Ладно. Закончим с Вами.
    Вижу что серьезного вдумчивого разговора о проблемах с Вами не получится. Как не получилось с Flex Ferrum.
    Вы тоже начинаете передергивать, подтролливать и играть в игру "я умный ты дурак" и "ты дурак потому что дурак". Вместо того, чтобы попытаться найти рациональное зерно в том, что я пишу.
    Да я "консерваториев не кончал" может коряво выражаюсь.
    Ну так я же не программист. Никогда на него не учился. И никогда им не работал. Я самоучка. Но тем не менее. Код пописывал довольно долго.
    И книжечки почитывал. И о многих вещах, о которых никто не задумывался, задумывался.

    Вообще, пока не вижу смысла с Вами общаться.
    Все что хотел Вам сказать, я сказал.
    А принимать это или не принимать - Ваше дело.

    А вести спор ради спора, чтобы поразвлечь Вас, мне не интересно
      Цитата Исмаил Прокопенко @
      Да я "консерваториев не кончал" может коряво выражаюсь.
      Ну так я же не программист. Никогда на него не учился. И никогда им не работал. Я самоучка. Но тем не менее. Код пописывал довольно долго.
      И книжечки почитывал. И о многих вещах, о которых никто не задумывался, задумывался.

      ЧДТ. То, что вы говорили в этой теме, очень похоже на советы бабулек в очереди к терапевту. Примерно тот же уровень компетенции, о чём вам и было мною сказано несколько постов назад. Если хотите поговорить о том, как ООП используется в реальных проектах - нет проблем, задавайте вопросы, обсудим. А приходить и с умным видом вещать, что через микроскоп звёзды не видно и им гвозди неудобно забивать - ну так, эмм, пардон, аудитория не та.
        Цитата wind @
        в смехогрехе санитарный день?
        День открытых дверей.
          Цитата Flex Ferrum @
          То, что вы говорили в этой теме, очень похоже на советы бабулек в очереди к терапевту. Примерно тот же уровень компетенции

          Докажите. Если Вы не тролль. Дам Вам еще один шанс.
          Распишите, где я допустил ошибку в своих рассуждениях.

          Только без хамства, "переходов на личности" и без общих фраз типа "как всем известно ..." и жонглирования терминологией.
          Гы :) Про "терминологию"
          На другом форуме один из участников, желая меня "уесть" и показать мне свою крутость скопипастил из википедии "интерфейс - это абстрактный класс". Когда я его спросил: "а что? Не абстрактный класс не имеет интерфейса?" он сразу стал хамить и в конце концов слился так и не сумев ответить на вопрос. Надеюсь Вы так не сделаете когда я Вам начну задавать "неудобные вопросы"
          А конкретно, понятно и по существу того, что я говорил, а не вообще.

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

          Может мой взгляд и отличается от Вашего на некоторые вещи, но это не говорит о том, что Ваша точка зрения правильная, а моя нет.

          А то, что у меня в трудовой книжке нет записи "программист" - это еще не значит, что я ничего не смыслю в программировании.
          Сообщение отредактировано: Исмаил Прокопенко -
            Цитата Исмаил Прокопенко @
            Докажите. Если Вы не тролль. Дам Вам еще один шанс.

            О как! Исмаил, тут вам в пору доказывать, что вы - не тролль. :)

            Цитата Исмаил Прокопенко @
            Распишите, где я допустил ошибку в своих рассуждениях.

            Эм... Как бы так сказать, по-культурнее. Ваши рассуждения - рассуждения дилетанта. Если конкретно, то ошибка вот в этом переходе:
            Цитата Исмаил Прокопенко @
            Бинго!
            Получается, что раскрутив всю логическую цепочку, мы видим, что фактически интерфейсом класса является СПИСОК ОПИСАННЫХ ВОВНЕ ДРУГИХ КЛАССОВ. А у тех классов интерфейс – это тоже список описанных вне их классов. И т.д.

            Короче, получается, что ВСЕ СВЯЗАНО СО ВСЕМ.
            Т.е. при ООП никакого упрощения программирования не происходит.

            То, что при описании интерфейса одного класса могут использоваться другие классы (или интерфейсы), ещё не означает, что "всё связано со всем". Более того, использование в интерфейсах любых доступных классов будет скорее говорить о низком качестве проектирования. В реальной жизни и реальных же задачах в интерфейсе класса используется ограниченное количество других сущностей (классов, типов), что достаточно сильно улучшает управляемость всей конструкции. Вся совокупность классов в проектируемой системе разбивается на пакеты с высокой степенью изолированности друг от друга. Связи между пакетами - по строго специфицированным интерфейсам, при описании которых используется ограниченное число публичных (для пакета) типов. Внутренние (для пакетов) классы наружу не лезут. Ну и всё в том же духе. В результате не получается, что "всё связано со всем". Если при этом проектировщик специально заботится о количестве и качестве связей между пакетами - то система выходит достаточно стройной и легко управляемой. Такие дела.

            Вообще же, уменьшение внутренней связности проектируемой системы - это одна из основных задач и целей ООП/ООД. Пресловутая аббревиатура SOLID - как раз об этом.
            Сообщение отредактировано: Flex Ferrum -
              Цитата Flex Ferrum @
              То, что при описании интерфейса одного класса могут использоваться другие классы (или интерфейсы), ещё не означает, что "всё связано со всем". Более того, использование в интерфейсах любых доступных классов будет скорее говорить о низком качестве проектирования.


              Повторю, что на подобные возражения я говорил на другом форуме:
              Цитата
              Ну если ограничиваться только базовыми/встроенными типами (имеются в виду типы формальных параметров у методов) и писать программы уровня "Халоу Ворлд" - то нет проблем. А если ты разрабатываешь (как я) систему искусственного разума, то быстро упираешься в ограничения и проблемы ООП


              Т.е., как я понял, Вы предлагаете НЕ использовать параметры-объекты?
              Использовать только базовые/встроенные типы (int, char, float, ...) или в крайнем случает 1-2 класса на все классы программы?
              Так?
              В этом заключена сермяжная правда ООП?

              Добавлено
              Цитата Flex Ferrum @
              Ваши рассуждения - рассуждения дилетанта

              Иногда дилетант решает проблему, которую не могли решить профи.
              Просто потому, что профи полагали, что задача не имеет решения.
              Сообщение отредактировано: Исмаил Прокопенко -
                Исмаил Прокопенко, вы внимательно меня читаете? Где я предложил использовать в интерфейсах только базовые типы? Правильно, нигде. Я писал, что набор типов/классов, используемых в интерфейсах, ограничевается на этапе проектирования этого самого интерфейса как раз, чтобы избежать ситуации, когда все связаны со всеми. Вы разбиваете все, что у вас есть, на группы классов, объединяете эти группы в пакеты/модули и выбираете - что будет использоваться на границе пакета/модуля, а что всегда будет внутри. Или опять не понятно?
                  Отвечу на это.
                  Цитата Flex Ferrum @
                  что вы говорили в этой теме, очень похоже на советы бабулек в очереди к терапевту. Примерно тот же уровень компетенции

                  Цитата Flex Ferrum @
                  Ваши рассуждения - рассуждения дилетанта

                  Цитата Flex Ferrum @
                  вы совершенно не разбираетесь в предмете.


                  Вот Вы, типа, как профи себя позиционируете.
                  Только возникает вопрос: вот у Вас 30 лет опыта коддинга, куча сделанных проектов, куча законченных курсов и сертификатов. И прочая и прочая.

                  Казалось бы такой как Вы должен уже иметь свое направление в программировании, кучу учеников из США, которые ездят послушать Ваш курс лекции и получше освоить предложенную Вами новую концепцию в программировании.

                  А что мы видим? Оказывается Вы до сих пор ходите на курсы (упоминалась аббревиатура RUP). Сколько можно учиться?
                  Может пора уже учить? А?
                  Иметь свою научную школу. Учеников, которые ездят на Ваш курс со всего мира. Не?
                  Придумать наконец СВОЮ СОБСТВЕННУЮ концепцию в программировании.
                  Не?

                  Сколько можно?

                  Почему все новое в АйТи идет к нам с запада, а мы только на осваиваем и на курсы ходим. Неужели же мы, россияне, сами настолько слабоумные дауны, что имея 30 лет опыта в коддинге, не может свою собственную концепцию/парадигму в программировании разработать и чтобы у нас весь мир учился.

                  А?

                  Добавлено
                  Цитата Flex Ferrum @
                  В результате не получается, что "всё связано со всем".

                  Да что вы все докопались до этой фразы?
                  Я же сказал что это бал сарказм, гипербола, аллегория. Просто выражение негативных эмоций по поводу большого числа трудно прослеживаемых зависимостей между классами.
                  Мне написать это себе на лбу, чтобы мне каждый раз не тыкали этой фразой: "все связано со всем".


                  А главное негатив относился к тому, почему в книжках ВРУТ про интерфейс и инкапсуляцию.

                  Почему не говорят, что в общем случае интерфейс класса - это не только список заголовков его методов. А в общем случае еще и список заголовков методов всех классов, которые данный класс использует как поля, параметры или базовые
                  Почему врут про инкапсуляцию? Ведь на самом деле инкапсуляции никакой нет если ты юсаешь объекты в качестве параметров. Так как ты НЕ МОЖЕШЬ менять внешний, по отношению к классу код классов-параметров, как тебе вздумается

                  Добавлено
                  Цитата Flex Ferrum @
                  Вообще же, уменьшение внутренней связности проектируемой системы - это одна из основных задач и целей ООП/ООД.

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

                  А казалось бы с такими декларациями "любая домохозяйка ...".

                  Ан нет. Выкуси. Не любая. И никакого упрощения не произошло

                  Добавлено
                  Цитата Flex Ferrum @
                  Я писал, что набор типов/классов, используемых в интерфейсах, ограничевается на этапе проектирования этого самого интерфейса как раз, чтобы избежать ситуации, когда все связаны со всеми. Вы разбиваете все, что у вас есть, на группы классов, объединяете эти группы в пакеты/модули и выбираете - что будет использоваться на границе пакета/модуля, а что всегда будет внутри. Или опять не понятно?

                  Это понятно. Но при этом в программирование вносится достаточно сложный и трудоемкий процесс проектирования архитекуры.
                  Как я уже писал,программист должен определить кортежи СРАЗУ многих классов и он не имеет права на ошибку. Т.е. по частям проектировать архитектуру не получится. А если архитектура очень большая? Вот где раздолье для багов. Это по вашему упрощение?
                  А переделка архитектуры на этапе когда код уже почти написан - тот еще геморрой.

                  Добавлено
                  Цитата Flex Ferrum @
                  Где я предложил использовать в интерфейсах только базовые типы? Правильно, нигде. Я писал, что набор типов/классов, используемых в интерфейсах, ограничевается на этапе проектирования этого самого интерфейса

                  Так я же и говорил:
                  Цитата Исмаил Прокопенко @
                  или в крайнем случает 1-2 класса на все классы программы?

                  Не заметили?
                  Сообщение отредактировано: Исмаил Прокопенко -
                    Исмаил Прокопенко, на пассаж про собственную школу отвечать не буду. Считайте, что я лузер, если вам от этого будет легче. Мне то всё равно пофиг, что вы там для себя решите.

                    На счёт фразы - ну, вы сами виноваты, что выделили её капсом. Вас никто не заставлял это делать. Про инкапсуляцию... Вы явно путаете этот термин со связностью. Потому что инкапсуляция - это совсем про другое. А то, что пользователь класса зависит от того, какие типы используются в интерфейсе класса - ну да, факт. Так, собственно, и задумано. Это нормально. Но в ваших руках, руках проектировщика интерфейса, не превратить эту зависимость в ад. Для этого существует несколько техник, но вам для начала нужно разобраться с тем, что есть такое инкапсуляция, что - связность, что - полиморфизм. Ну, коль скоро боретесь рассуждать на такие темы.
                      Цитата Flex Ferrum @
                      Исмаил Прокопенко, на пассаж про собственную школу отвечать не буду. Считайте, что я лузер, если вам от этого будет легче. Мне то всё равно пофиг, что вы там для себя решите.

                      Что неприятно?
                      Что же Вы совершенно незнакомого человека, об опыте и знаниях которого Вы не имеете НИКАКИХ представлений, фактически лузером называете?
                      Даже толком не разобравшись в том, что он предлагает и даже не попытавшись найти рациональное зерно в его рассуждениях.

                      Быстры вы на суд <_<
                        Цитата
                        Оказывается Вы до сих пор ходите на курсы (упоминалась аббревиатура RUP). Сколько можно учиться?

                        Хе-хе. Ну прям анекдот про студентку и Эйнштейна.
                          Цитата Исмаил Прокопенко @
                          декларируется одно, а по факту имеем куча запутанных трудно прослеживаемых зависимостей. В которых только профи путем многолетнего натаскивания могут разобраться.

                          Мало про инструмент знать. Надо ещё уметь им пользоваться. А ООП - не самая простая в освоении методология.


                          Цитата Исмаил Прокопенко @
                          программист должен определить кортежи СРАЗУ многих классов и он не имеет права на ошибку. Т.е. по частям проектировать архитектуру не получится. А если архитектура очень большая?

                          Если архитектура "очень большая", то она строится методом декомпозиции. На каждом уровне иерархии системы определяются интерфейсы, и только в их терминах происходит/формулируется взаимодействие. Как таковой проблемы нет. И да, я строил такие архитектуры.

                          Цитата Исмаил Прокопенко @
                          Так как переделка архитектуры на этапе когда код уже почти написан - тот еще геморрой.

                          Не такой геморрой, как кажется. Если связи и высокоуровневые интерфейсы изначально выстраивались грамотно, то всё относительно несложно.
                            Цитата Flex Ferrum @
                            А то, что пользователь класса зависит от того, какие типы используются в интерфейсе класса - ну да, факт

                            Только почему об этом никто не пишет, не орет на каждом углу?
                            Зачем детям врут? Почему не говорят всей правды?
                              Цитата Исмаил Прокопенко @
                              Что же Вы совершенно незнакомого человека, об опыте и знаниях которого Вы не имеете НИКАКИХ представлений, фактически лузером называете?

                              Вы знаете, я достаточно в своей жизни провёл собеседований, чтобы по тому, как и что человек говорит, делать выводы о его квалификации.

                              Добавлено
                              Цитата Исмаил Прокопенко @
                              Только почему об этом никто не пишет, не орет на каждом углу?
                              Зачем детям врут? Почему не говорят всей правды?

                              Мне кажется, проблема не в том, что детям врут, а в том, как вы поняли то, что прочитали. :)
                                Цитата Flex Ferrum @
                                что - полиморфизм

                                Т.е. я и про полиморфизм не в курсе?
                                Хотя о нем пока разговора не было, но Вы уже как-то поняли, что и про него я НИЧЕГО не понимаю.
                                Опять телепатия?
                                Что еще (из того что я НЕ говорил, но Вы используя телепатию узнали) я не знаю?

                                Не. <_<
                                Не получится у нас с Вами разговора.
                                Вы телепат, а я нет.
                                Силы не равные.

                                Будьте здравы.
                                0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
                                0 пользователей:


                                Рейтинг@Mail.ru
                                [ Script execution time: 0,0655 ]   [ 16 queries used ]   [ Generated: 24.04.24, 22:02 GMT ]