Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Одна боллтовня да и только, здравого смысла очень мало. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2004, 06:54 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Хоть ты и седьмой, а дурак ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2004, 09:16 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Секс, насилие, наркотики ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2004, 09:31 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
надо запретить компьютеры в целом, ибо они есть вселенское зло! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2004, 10:44 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
"Компьютеры помогают качественно и быстро решать задачи, которых до появления компьютеров не было" авторХоть ты и седьмой, а дурак А почему это он седьмой? (посмотрел-посмотрел, ничё не понял...) ООП - это не есть проблема. Эта идея правильная, и, надеюсь, будет развиваться(если есть куда). Проблема - реализация ООП в компиляторах. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2004, 11:13 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Как философ-естествоиспытатель я всего лтшь хотел найти "единомышленников" , в идеале - буйных. Но настоящих буйных мало... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2004, 11:19 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Некто, по имени Ландау (говорят дурак был, каких мало) говаривал: "Если вы не можете строй бабушке объяснить суть вашей теории,то вы этого сами не знаете!" Как элемент ООП, как это могло быть включено в теорию самого ООП? Прошу высказываться без крепких выражений. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2004, 11:29 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Еще Платон предупреждал, что символика убъет мышление! Реальный объект и его символический образ - принципиально разные вещи! оторвать образ от реального объекта, - высочайшее достижение человеческой мысли(собственно,получеловеческой,т.к. это и был процесс становления таковой). Но древнему человеку деваться было некуда, а нам, - другое дело! Зачем превращать в абстракцию и усложнять совершенно простые вещи(с точки зрения современного человека)?! Проще просто говоритььо баранах! Или о столах и чашах, а не о Платоновских "чашности" и "стольности"? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2004, 11:42 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Для сравнения, вот еще один вариант программирования и, если хотите, описания предметной области. Вот это вариант: " Аллен Даллес (1893-1969), работал в Центральном разведывательном управлении США (ЦРУ) с момента его создания в 1947 году. В 1942-1945 гг. руководил политразведкой в Европе. Директор ЦРУ в 1953-1961 годах. Один из организаторов разведывательной и шпионско-диверсионной деятельности против СССР и других соцстран, идеолог «холодной войны». ПЛАН ДАЛЛЕСА Окончится война, все как-то утрясется, устроится. И мы бросим все, что имеем, — все золото, всю материальную мощь на оболванивание и одурачивание людей! Человеческий мозг, сознание людей способны к изменению. Посеяв хаос, мы незаметно подменим их ценности на фальшивые и заставим их в эти фальшивые ценности верить. Как? Мы найдем своих единомышленников, своих союзников в самой России. Эпизод, за эпизодом будет разыгрываться грандиозная по своему масштабу трагедия гибели самого непокорного на земле народа, окончательного, необратимого угасания его самосознания. Из литературы и искусства, например, мы постепенно вытравим их социальную сущность, отучим художников, отобьем у них охоту заниматься изображением… исследованием, что ли, тех процессов, которые происходят в глубинах народных масс. Литература, театры, кино — все будет изображать и прославлять самые низменные человеческие чувства. Мы будем всячески поддерживать и поднимать так называемых художников, которые станут насаждать и вдалбливать в человеческое сознание культ секса, насилия, садизма, предательства — словом, всякой безнравственности. В управлении государством мы создадим хаос и неразбериху. Мы будем незаметно, но активно и постоянно способствовать самодурству чиновников, взяточников, беспринципности. Бюрократизм и волокита будут возводиться в добродетель. Честность и порядочность будут осмеиваться и никому не станут нужны, превратятся в пережиток прошлого. Хамство и наглость, ложь и обман, пьянство и наркомания, животный страх друг перед другом и беззастенчивость, предательство, национализм и вражду народов, прежде всего вражду и ненависть к русскому народу — все это мы будем ловко и незаметно культивировать, все это расцветёт махровым цветом. И лишь немногие, очень немногие будут догадываться или даже понимать, что происходит. Но таких людей мы поставим в беспомощное положение, превратим в посмешище, найдем способ их оболгать и объявить отбросами общества. Будем вырывать духовные корни, опошлять и уничтожать основы народной нравственности. Мы будем расшатывать таким образом поколение за поколением. Будем браться за людей с детских, юношеских лет, главную ставку всегда будем делать на молодежь, станем разлагать, развращать, растлевать ее. Мы сделаем из них циников, пошляков, космополитов. Вот так мы это и сделаем. А. Даллес. «Размышления о реализации американской послевоенной доктрины против СССР», 1945. " ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2004, 11:47 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Выжечь калёным железом ООП - это, батенька мой, жалкие полумеры. Нужно уничтожить сами условия, в которых подобная мерзость могла появиться. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2004, 12:26 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
вы имеете ввиду испанский сапог? Я правильно понял? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2004, 12:43 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
вы имеете ввиду испанский сапог? Я правильно понял? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2004, 12:46 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
про седьмого, это у чехова было. глядя на развитие ортодоксом темы, с цитировавшим согласен. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2004, 14:32 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Programmer_Ortodox Некто, по имени Ландау (говорят дурак был, каких мало) говаривал: "Если вы не можете строй бабушке объяснить суть вашей теории,то вы этого сами не знаете!" Как элемент ООП, как это могло быть включено в теорию самого ООП? Прошу высказываться без крепких выражений. Так вы за или против? По моему система "Вот объект, он имеет некие свойства и может выполнять действия с другими объектами" вполне понятна ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2004, 17:24 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
А я бы и Интернет запретил. HTTP, FTP etc - слишком сложно для бабушек. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2004, 18:17 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Naug Programmer_Ortodox Некто, по имени Ландау (говорят дурак был, каких мало) говаривал: "Если вы не можете строй бабушке объяснить суть вашей теории,то вы этого сами не знаете!" Как элемент ООП, как это могло быть включено в теорию самого ООП? Прошу высказываться без крепких выражений. Так вы за или против? По моему система "Вот объект, он имеет некие свойства и может выполнять действия с другими объектами" вполне понятна Шутка это была. Жаль, что настоящих буйных не нашлось...посмеяться не получилось ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2004, 22:42 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
P_OЕще Платон предупреждал Платон был лентяй и не хотел работать, вот всякую лабуду и придумывал. Ландау "Если вы не можете строй бабушке объяснить суть вашей теории,то вы этого сами не знаете!" CEMb"Я тоже могу всякую фигню говорить" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.12.2004, 07:53 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Sie P_OЕще Платон предупреждал Платон был лентяй и не хотел работать, вот всякую лабуду и придумывал. А какой программер - не лентяй? И вообще, лень - двигатель прогресса. Лень стало что-то делать - автоматизируют. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.12.2004, 08:43 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
2 Programmer_Ortodox Вас наверное в университете часто и долго били.... почитатели ООП. Вот и комплекс появился. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.12.2004, 10:05 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
авторИ вообще, лень - двигатель прогресса. Сам знаю, сам говорил. Но с Платоном всё хуже - он вообще нихрена не делал. Наделал кучу детей, а работать и обеспечивать их было лень. Жена его за это гоняла. Оттуда и фраза: "Женись! Если попадётся плохая жена станешь философом, если хорошая - станешь исключением". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.12.2004, 11:48 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Вообще идея запрещения ООП в корне неправильная. Почему - да потому что только ООП дает идее "чистого программирования" правильный инстументарий и теорию. Программист должен не работать для удовлетворения дурацких и глупых потребностей пользователя, а писать программы в свое удовольствие!!. И здесь ООП как нельзя более хорошо подходит как инструментарий - это загадочно и будоражеще-интересно ! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.12.2004, 15:22 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Я очччччень извиняюсь за тематику, но, простите меня, всё это болтовня в пользу бедных. Вопрос об ООП ИМХО НЕЛЬЗЯ решить без рассмотрения ещё одной стороны или, если угодно, измерения (dimension). Я снова дико извиняюсь, но это не совсем офтопик. Был когда-то очень давний спор между сторонниками языков Си и, извиняюсь, Паскаль. Вроде бы одинаковые по своим возможностям, НО! Противники у Паскаля появились сразу. На хохлянской мове выглядело так: "Уси москали / Программують на паскали / А мы уси / Программуемо на СИ". Опустим массу подробностей. За прошедшие 20 лет лично я, Глупый Кот, пришёл к толковому и простому убеждению. Последний раз извиняюсь за тематику -- дальнейшие извинения не будут иметь смысла. ИМХО Паскаль -- это язык для гомосексуалистов, а СИ -- для нормальных. И всё. Что же касается ООП, то, отталкиваясь от вышеизложенного, мы могли бы выработать критерий для оценки оного. Привожу простой пример. На каком языке можно написать: Яблоко + Апельсин = Фрукт; Или -- чем ТИПЫ Паскаля отличаются от типов на СИ? Вроде бы идиотский вопрос, да; но в нём зарыта как собака, так и заяц (так говорят французы) и короче суть. Здесь ОЧЧЕННЬ поллезно вспомнить, что писал Григорий Пи.Климов о работе того самого ЦРУ и его ранних предшественников. Конкретно -- не я, а он, а точнее -- упомянутые им спецалисты западной пропаганды пришли к выводу вначале о всего лишь ЛАТЕНТНОЙ, извиняюсь, гомосексуальности ВСЕХ без исключения людей, стоявших у истоков т.н. "советской" власти. И ещё ОДИН вопрос к размышлению. Я предлагаю подумать о том, почему во время господства и агонии этой самой власти одной из главных мишеней были компьютеры и программирование? В те годы в самых крутых и претижных советских НИИ можно было услышать: "Ах, этот? Так он же ничего не умеет, только программировать!" Вам, нынешней молодёжи, это может показаться странным, но программисты в те времена считались людьми второго сорта -- если не значительно хуже. И т.д. Убедительнейшая просьба о том, чтобы не рассмотривать здесь изложенное поверхностно типа "Ах, это идеология; всё давно пето и перепето" и т.д. НЕТ! История ещё не закончилась!! Точнее -- она ещё даже и не начиналась! Я ведь тоже могу назвать сабж, извиняюсь, глупостью и опухизмом -- т.е. поверхностными оценками в духе всех этих, здешних и нынешних. Но разумнее будет этого не делать. На самом деле программеры это ЕДИНСТВЕННАЯ настоящая элита этого мира -- НО НЕ ВСЕ! На сём разрешите закончить. И -- посмотрите, что оставят от этого поста модераторы. Я тоже посмотрю, сотрут ли они его целиком. С уважением SillyCat ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.12.2004, 17:57 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
2 SillyCat >На хохлянской мове выглядело так: "Уси москали / Программують на паскали / А мы уси / Программуемо на СИ" На самом деле выглядело так: "Москаль любить Паскаль, у нас усi програмують на C". Ну и при чем тут это? Это шутка, никто так всерьез не считает. Дельфи на Украине очень популярен, а раньше был популярен турбо-паскаль. >Или -- чем ТИПЫ Паскаля отличаются от типов на СИ? Типы Паскаля очень сильно отличаются от типов C. В C пользовательский тип это почти что макрос, сокращение. В Паскале пользовательский тип это почти объект, со своим конструктором, проверкой допустимых значений и методами, например присваивания. Напишите X=Y в C и X:=Y в Паскале, где X,Y - переменные-массивы одинакового типа и посмотрите на результат. Читайте Вирта. А вообще че-то я мысли не уловил. Пидарастов тоже не люблю, но какое они отношение имеют к ООП, C и Паскалю? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.12.2004, 02:02 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Когда-то во время оно и там, где нас нет, среди программующего населения быттовало разделение на так называемый "физический" и "логический" методы, а точнее уровни доступа -- к компьютерному железу, имелось в виду. Хотя до настоящих компов тогда было дальше чем до неби. Так вот, бугрство (это сколка или русизм с французского: le bougre [bu:gr] там как раз и означает типа сабж) тоже имеет как бы два уровня: физический -- это типа того, что они якобы совершают между собой; и ЛОГИЧЕСКИЙ. Извините, я глупый кот и не умею толком пользоваться здешним форумом. В частности, я не знаю, как здесь выделить цветом текст; а уж сделать ссылку, да так, чтобы она работала... Так вот, если с физическим уровнем всё просто и ясно, то про логический -- по моим наблюдениям ИМХО -- не осведомлён ПРАКТИЧЕСКИ НИКТО!!! Кроме самих бугров, разумеется. И это отнюдь не безобидное полуизвращение и НЕ -- я подчёркиваю это -- НЕ личное дело этих, не к столу будь помянутых. Вы можете перекрестить меня из Silly в Mad Cat, но на самом деле это не что иное, как ВОПРОС ВЫЖИВАНИЯ ЧЕЛОВЕЧЕСТВА! Я понимаю, что вы мне не поверите -- если впервые слышите или читаете об этом. Что ж. Есть ОЧЕНЬ МНОГО свидетельств этому в совершенно открытой печати и документации. Начиная от свидетельства очень известного актёра Александра Абдулова. Но лучше всего о своей роли нам говорят они сами. Здесь не место вдаваться в подробности. НО! В настоящее (и не только) время вся политика, не говоря уж о дипломатии, затараканена этим. См. книги Григория П.Климова, в которых изложено отнюдь не всё, а только самое начало -- но и его выше крыши. Возвращаясь к ООП. Есть много способов затараканить интеллектуальную деятольность человечкского мозга; но все они в большинстве своём сводятся К ПОДМЕНЕ ИНТЕЛЛЕКТА ТОНАЛЕМ или РЕАКТИВНЫМ УМОМ, каковой интеллектом не является и не имеет с ним абсолютно ничего ООБщего. (ТОНАЛЬ -- термин Хуана-Карлоса Кастанеды и означает функцию нашего разума, занимающуюся ПЕРЕЧИСЛЕНИЕМ или ПЕРЕБОРОМ -- но из чего-то имеющегося, кем-то заданного или заранее предопределённого (previously defined) ПУСТОГО -- я подчёркиваю это -- множества. Про "оеактивный ум" очень хорошо писал Л.Рон Хаббард. Суть же всего этого безобразия лишь в том, чтобы ЗАКРЫВАТЬ новые пространства сознание -- тем, кто их открывает и призван это делать. За дальнейшими подробностями могу отослать к повести Стругацких "Хищные вещи века" и к одному рассказу Азимова (названия, увы, не помно. Там у каждой деревни имеется свой огромный компьютер, но никто не имеет права на нём программировать. И вот один парень начинает это потихоньку нащупывать). Так вот, изначально идея ООП включала, к Вашему многоуважаемому сведению, следующее. Сейчас этого скорее всего уже никто не помнит. Оно было придумано со следующей толковой, простой и незамысловатой целью. Причём во времена Б.Сторструпа (извините, я не могу правильно изобразить его совершенно непроизносимую фамилию) обо этом писали и дискутировали открыто. Что, вот, будут объекты, написанные некоторыми программистами. Что их, да, можно будет использовать другим программистам. Но что ВНУИРЕННОСТЬ этих объектов БУДЕТ ДЛЯ НИХ НАВСЕГДА И ПОЛНОСТЬЮ ЗАКРЫТА!!!!! Это полностью аналогично тому, как в этой стране имела хождение идея ВЦКП. Это не КПБ! ВЦКП -- это вычмслительный центр коллективного пользования. Тогда не было компьютерров, а были ЭВМ типа ЕС; и каждое советское предприятие обязано было приобрести такую машину и иметть у себя штат программистов, КОТОРЫЕ бы ПРОГРАММИРОВАЛИ. Это кому-то очень не ндравилось -- кому-то из "тех, кто там, наверху" -- см. песенку А.Б.Пугачёвой с одноименным названием. И вот ими было предложено создать ВЦКП, на которые все предприятия приносили бы свои JOB'ы -- типа задания. А там бы уже были бы программисты, которые их бы программировали. НО!!! Этих программистов было бы НЕМНОГО, и они были бы ИЗБРАННЫМИ. К счастью, эта идея благополучно и позорно провалилась. Да. Но никуда не уйти от того, что она всё-таки была. Как и от того, что родилась она именно в этой стране. Это полнностью напоминает идею ОПРИЧНИНЫ ("опричь" на древне русском означает что-то иное) или идею Внутренней Партии из бессмертного романа Дж.Оруэлла "84". Каковой Оруэлл, как известно, ничего не выдумал сам. Он заимствовал все идеи у антипода и аналога Сталина Троцкого. Так вот, ИМХО с тех пор НИЧЕГО НЕ ИЗМЕНИЛОСЬ. "И если кто-нибудь даже / Захочет, чттоб было иначе / Бессильный и неумелый / Опустит слабые руки / Не зная, где сердце у спрута / И есть ли у спрута сердце" (Авторов не привожу. Кто хочет, пожалуйста, определите их сами. Говорят, что над воротами Академии бессмертного Платона висела надпись "Да не войдёт сюда не знающий математики". В наше Время ИМХО она должна зазвучать так: "ДА НЕ ВОЙДЁТ НЕ ЗНАЮЩИЙ ПРОГРАММИРОВАНИЯ И ФАНТАСТИКИ", особенно бессмертных братьев и их поистине фундаментальнейшей повести... название, пожалуйста, укажите сами. Тем более что она, эта их повесть, так до сих пор и не была никем понята правильно. И это не моё личное мнение, массаракш! А очень горестный факт. Кстати, пока я не забыл. Название романа Оруэлла. Как только не пытались его интерпретировать... Но здесь, на форуме программистов, не место об этом упоминать. Позвольте просто сразу и без доказательств привести не одну, а ДВЕ интерпретации, каждая из которых правильна. Первая из них -- пифагорейская, связанная с магией или мистикой чисел. Число ВОСЕМЬ означает каузальность, власть Причинного плана. Число же четыре, не к столу оно будь помянуто, как легко понять, адресует четвёртую чакру (сердечную, называемую в йоге санскритским словом "анахата". Имеющий глазки прочтёт). Таким образом число 84 означает ВЛАСТЬ, отданную СЕРДЕЧНОЙ или АНАЛЬНОЙ ПУСТОТЕ, четвёртоё расе или тому, что носит название "четвёртого пути". (Кстати, по непроверенным данным, Гурджиев многократно посещал селение Гори в годы ранней юности -- сами понимаете кого. И это имело не одно, а целых ДВА [по]СЛЕДСТВИЯ. 1)то, что Сталин безжалостно уничтожал всех, без различия пола и возраста, кто что-нибудь знал о годах его ранней юности, когда он был миньоном Джурджизада; и 2) то, что победа в войне была отдана не Гитлеру (как предполагалось изначально), а именно и тому же Сталину. Есть очень хорошая фантастическя повесть на эту тему нашего российского автора; только я, к сожалению, и название и автора забыл. BTW есть ДОКУМЕНТИРОВАННОЕ свидетельство о ВСТРЕЧЕ этих троих -- имею в виду Джурджизада-Гурджиева, Гитлера и Джугашвили, который тогда ещё не был Сталиным. А Гитлер отнюдь ещё не стал рейхсканцлерром. Дело в том, что добрая старая кайзеровская полиция очень хорошо знала своё дело. И она грамотно вела наблюдение за всеми нежелательными иностранцами и собственными инсургентами (а дело было вскоре после первого ареста Гитлера). И есть ИСТОРИЧЕСКИЙ ДОКУМЕНТ -- протокол наружного наблюдения за ними. Ясно, что они не договорились. Гитлер был тогда в достаточно зрелом возрасте -- после 35 лет, и после убийства этой своей племянницы. И он корректно отказался подставить Гурджиеву... сами понимаете что -- то, что нынешние здешние политики (кроме госпожи Новодворской, конечно) наоборот подставлять не отказываются. И мы все знаем, что из этого вышло. Чтобы ЗАКОНЧИТЬ с этой темой. Есть НЕПРЕРЕКАЕМОЕ пророчество: что этот мир БУДЕТ УНИЧТОЖЕН ОГНЁМ. Почти совсем как в рассказе Азимова "Приход ночи". Точнее -- что он, этот мир, будет сохранён от уничтожения водой (как бывало ранее) ДЛЯ ТОГО, ЧТОБЫ БЫТЬ УНИЧТОЖЕННЫМ ОГНЁМ. Вот почему я, глупый и старый серый кот, смиренно прошу вас, молодых программистов, дочитать этот пост до конца и сделать ваши многоуважаемые выводы. Потому что прочить больше оказывается некого. Я знаю, потому что я уже всё перепробовал. А кто не верит мне -- вспомните, чем и почему были уничтожены Содом и Гомо заметьте, -ра. И на сём позвольте закрыть эту тему (но не эту ветку -- отнюдь! Это привилегия модераторов) а лишь моё выступление на эту, извиняюсь за выражение, тему. Здесь, везде и навсегда. Всё, что мог, я уже типа сказал. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.12.2004, 12:20 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
2 SillyCat Класс. Грибы? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.12.2004, 03:16 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
авторГомо заметьте, -ра. Кстати, река Урал как раз берёт своё название от бога Ра. И восклицаиние "Ура" относится к тому же богу. авторГрибы? Вспомнилось: "Я за свечку - свечка в печку, Я за книжку - та бежать... Больше коноплю такую Я не буду покупать.." И "- Я абрикос на солнце рос, - Мы спелые вишни, на солнышко вышли, - А я Кирилл, ещё не курил..." ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.12.2004, 08:30 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
c1272 SillyCat Класс. Грибы? class SillyCat : public Грибы, public Колеса, public PublicLibrary множественное наследование такскать... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.12.2004, 12:17 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Не, наверное это был БОТ. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.12.2004, 20:02 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Спасибо, друзья, за науку! Я и не знал, как это сейчас выглядит: грибы, колеса, ширево и пр. Теперь буду знать -- и учитывать при общении. Ещё раз спасибо всем. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.12.2004, 03:13 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Не, не бот точно. Бот лаконичнее. Хотя... не знать как выглядят грибы?.... Хм. А вообще может это я бот? Я вот ничё не понял, чё он говорил? :) Мы все на самом деле боты, и всё - матрица! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.12.2004, 07:29 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Fixit c1272 SillyCat Класс. Грибы? class SillyCat : public Грибы, public Колеса, public PublicLibrary множественное наследование такскать... За одну только мысль о множесвенном наследовании надо 20 лет строгого режима давать! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.12.2004, 20:42 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Programmer_OrtodoxЗа одну только мысль о множесвенном наследовании надо 20 лет строгого режима давать! Это уж кто чем думать будет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.12.2004, 14:48 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Programmer_OrtodoxЗа одну только мысль о множесвенном наследовании надо 20 лет строгого режима давать! И соответствующий запас грибов! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.12.2004, 04:59 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Кстати, не знаю, как за множественное наследование, а за плодение мелких много раз вызываемых функций - это точно. И особенно тех, кто говорит, что если "функция не помещается на одну страницу, её надо разбить на две" якобы, для удобства. А ещё по 10 лет глобалофобам :) Это те, кто "никогда не используйте глобальные переменные!!" Кстати, никто так и не объяснил, почему :) --- - Грыбы!... - Какие грибы?... - Грыбы отседова!.... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.12.2004, 07:40 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.12.2004, 09:50 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
SillyCatИзвините, я глупый кот и не умею толком пользоваться здешним форумом. В частности, я не знаю, как здесь выделить цветом текст; а уж сделать ссылку, да так, чтобы она работала... Удел противников ООП - сначала много писать а потом думать, не так-ли, г-н гетеросексуал? Фон Нейман немного не так учил... А чем Delphi реально хуже сей (про быстроту компилятора и то, что Win писали на сях загонять не надо), мне так никто и не объяснил. Зато все орут-мы крутые, пишем на С. Пишите, пишите... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.12.2004, 11:49 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Небаба SillyCatИзвините, я глупый кот и не умею толком пользоваться здешним форумом. В частности, я не знаю, как здесь выделить цветом текст; а уж сделать ссылку, да так, чтобы она работала... Удел противников ООП - сначала много писать а потом думать, не так-ли, г-н гетеросексуал? Фон Нейман немного не так учил... А чем Delphi реально хуже сей (про быстроту компилятора и то, что Win писали на сях загонять не надо), мне так никто и не объяснил. Зато все орут-мы крутые, пишем на С. Пишите, пишите... О, как я вас понимаю! Впрочем и сам такой же, если услышу от собеседника, что он пишет на "си" , сразу норовля двинуть ему в харю! А ручонка у меня, ох тижелая... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.12.2004, 15:01 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Programmer_Ortodoxесли услышу от собеседника, что он пишет на "си" , сразу норовля двинуть ему в харю! А ручонка у меня, ох тижелая... Уважаемые господа! Предлагаю полемику, касаемую ООП перевести в новое русло. Дело в том что я увидел в данном топике очень много критики но практически не услышал предложений. Поэтому предлагаю: 1) Господину Ортодоксу подумать над тезисами языка (парадигмы, технологии) которая-бы стала в противовес ООП. Я уверен... у него... судя по репликам накопился опыт и идеи в рационализации труда разработчика. Мы все с удовольствием заслушаем его предложения. 2) Всем остальным тоже (и мне тоже) предлагается вносить предложения. А господин Ортодокс будет (на правах модератора сабжа) включать их в свой проект или отклонять. Предложение ясно? Кто за? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.12.2004, 16:51 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Все эмоции по отношению к г-нк Ортодоксу конвертировались в одну: зависть. Человека начало еще 21 декабря колбасить, а я вот только в ночь с 31.12 на 01.01 набрался. Но тоже нефигово загибали! Вот только сегодня утром последствия интоксикации стали проходить. ... И чем еще осташиеся 8 дней заниматься? ... Все с Наступившим, братья! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.01.2005, 16:44 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Интересно, а мог бы уважаемый православный программист объяснить, как и чем он отличает себя от программиста-баптиста (к примеру).... а там, глядишь, и про ООП проЯснеет.. :)) (с выражением лица) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.01.2005, 22:05 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
олх, с Новым годом... забыл... (; (с выражением лица) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.01.2005, 22:06 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Ура, товаристчи. Долой пережитки империализма. Да здравствует ассемблер. Ура ура ура. Бурные аплодисменты. Покончим с этой лже-методикой программирования. Только процедурное. Если серьёзно. Мля ну каждому своё. Да прибудет с вами дистрибутив. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.01.2005, 22:29 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Господа, а зачем остнавливаться на полумерах ? Давайте запретим и процедурное, и струтурированное програмирование. Остановимся на ассемблере. Потому что только на нем можно написать самые быстрые программы! А еще лучше в машинных кодах ! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.01.2005, 20:41 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
А писать будем не по средствам клавы и мыши, а протыкая дырочки в перфокартах Буддистами станем очень быстро Да прибудет с вами дистрибутив. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.01.2005, 22:14 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
prof79Давайте запретим и процедурное, и струтурированное програмирование. Остановимся на ассемблере. А разве ассемблер - не процедурный? P.S. Разве-ж Нимфа кисть дает? Туды ее в качель... (c) Безинчук ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.01.2005, 09:52 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
mayton[А разве ассемблер - не процедурный? Запретим инструкцию call !! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.01.2005, 11:54 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
prof79Запретим инструкцию call !! А чем заменим? Макросами? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.01.2005, 12:09 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
А ничем не заменим. Заменим процедуры командами Copy & Paste Впрочем, структурное программирование тоже можно запретить. Пусть юзер в зависимости от условий запускает ту или иную программу нужное количество раз. А самые лучшие программы - с линейным алгоритмом Posted via ActualForum NNTP Server 1.1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.01.2005, 12:18 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
YanisЗаменим процедуры командами Copy & Paste Я думал в этом форуме собрались "бунтари". Крутые мэны, которые хотят перевернуть сишно-паскальное сообщество. Создать новую концепцию. Новые методологии. Я разочарован. Вы еще пацаны! Грустно мне... грустно! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.01.2005, 12:25 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Ненавистникам ООП: обратите внимание на функциональные языки, вроде Calm или F#. Может быть там вы найдете нужную абстракцию))) Кстати на функциональном языке зачастую мона получить гораздо более ясную и краткую прогу, и абстракции там мощные. Тем более, то F# подддерживает .NET ________________________________________________________ Глюк - это высокоорганизованная система не поддающихся определению частиц ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.01.2005, 13:40 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
--Тем более, то F# подддерживает .NET как всегда вечен С++ с generic programming - любой язык пишется на раз. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.01.2005, 21:34 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
mayton YanisЗаменим процедуры командами Copy & Paste Я думал в этом форуме собрались "бунтари". Крутые мэны, которые хотят перевернуть сишно-паскальное сообщество. Создать новую концепцию. Новые методологии. Я разочарован. Вы еще пацаны! Грустно мне... грустно! Чтобы дойти до потрясения самих основ программирования, это же сколько надо на грудь принять, вы хоть представляете cебе? PS Кстати, буду весьма признателен за количественные оценки в этом вопросе! Буду иметь возможность сопоставить свое количество и других уважаемых оппонентов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.01.2005, 16:57 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Предлагаю мерять в литрах... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.01.2005, 19:21 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
SillyCatКогда-то во время оно и там, где нас нет, среди программующего населения быттовало разделение на так называемый "физический" и "логический" методы, а точнее уровни доступа -- к компьютерному железу, имелось в виду. Хотя до настоящих компов тогда было дальше чем до неби. Так вот, бугрство (это сколка или русизм с французского: le bougre [bu:gr] там как раз и означает типа сабж) тоже имеет как бы два уровня: физический -- это типа того, что они якобы совершают между собой; и ЛОГИЧЕСКИЙ. Извините, я глупый кот и не умею толком пользоваться здешним форумом. В частности, я не знаю, как здесь выделить цветом текст; а уж сделать ссылку, да так, чтобы она работала... Так вот, если с физическим уровнем всё просто и ясно, то про логический -- по моим наблюдениям ИМХО -- не осведомлён ПРАКТИЧЕСКИ НИКТО!!! Кроме самих бугров, разумеется. И это отнюдь не безобидное полуизвращение и НЕ -- я подчёркиваю это -- НЕ личное дело этих, не к столу будь помянутых. Вы можете перекрестить меня из Silly в Mad Cat, но на самом деле это не что иное, как ВОПРОС ВЫЖИВАНИЯ ЧЕЛОВЕЧЕСТВА! Я понимаю, что вы мне не поверите -- если впервые слышите или читаете об этом. Что ж. Есть ОЧЕНЬ МНОГО свидетельств этому в совершенно открытой печати и документации. Начиная от свидетельства очень известного актёра Александра Абдулова. Но лучше всего о своей роли нам говорят они сами. Здесь не место вдаваться в подробности. НО! В настоящее (и не только) время вся политика, не говоря уж о дипломатии, затараканена этим. См. книги Григория П.Климова, в которых изложено отнюдь не всё, а только самое начало -- но и его выше крыши. Возвращаясь к ООП. Есть много способов затараканить интеллектуальную деятольность человечкского мозга; но все они в большинстве своём сводятся К ПОДМЕНЕ ИНТЕЛЛЕКТА ТОНАЛЕМ или РЕАКТИВНЫМ УМОМ, каковой интеллектом не является и не имеет с ним абсолютно ничего ООБщего. (ТОНАЛЬ -- термин Хуана-Карлоса Кастанеды и означает функцию нашего разума, занимающуюся ПЕРЕЧИСЛЕНИЕМ или ПЕРЕБОРОМ -- но из чего-то имеющегося, кем-то заданного или заранее предопределённого (previously defined) ПУСТОГО -- я подчёркиваю это -- множества. Про "оеактивный ум" очень хорошо писал Л.Рон Хаббард. Суть же всего этого безобразия лишь в том, чтобы ЗАКРЫВАТЬ новые пространства сознание -- тем, кто их открывает и призван это делать. За дальнейшими подробностями могу отослать к повести Стругацких "Хищные вещи века" и к одному рассказу Азимова (названия, увы, не помно. Там у каждой деревни имеется свой огромный компьютер, но никто не имеет права на нём программировать. И вот один парень начинает это потихоньку нащупывать). Так вот, изначально идея ООП включала, к Вашему многоуважаемому сведению, следующее. Сейчас этого скорее всего уже никто не помнит. Оно было придумано со следующей толковой, простой и незамысловатой целью. Причём во времена Б.Сторструпа (извините, я не могу правильно изобразить его совершенно непроизносимую фамилию) обо этом писали и дискутировали открыто. Что, вот, будут объекты, написанные некоторыми программистами. Что их, да, можно будет использовать другим программистам. Но что ВНУИРЕННОСТЬ этих объектов БУДЕТ ДЛЯ НИХ НАВСЕГДА И ПОЛНОСТЬЮ ЗАКРЫТА!!!!! Это полностью аналогично тому, как в этой стране имела хождение идея ВЦКП. Это не КПБ! ВЦКП -- это вычмслительный центр коллективного пользования. Тогда не было компьютерров, а были ЭВМ типа ЕС; и каждое советское предприятие обязано было приобрести такую машину и иметть у себя штат программистов, КОТОРЫЕ бы ПРОГРАММИРОВАЛИ. Это кому-то очень не ндравилось -- кому-то из "тех, кто там, наверху" -- см. песенку А.Б.Пугачёвой с одноименным названием. И вот ими было предложено создать ВЦКП, на которые все предприятия приносили бы свои JOB'ы -- типа задания. А там бы уже были бы программисты, которые их бы программировали. НО!!! Этих программистов было бы НЕМНОГО, и они были бы ИЗБРАННЫМИ. К счастью, эта идея благополучно и позорно провалилась. Да. Но никуда не уйти от того, что она всё-таки была. Как и от того, что родилась она именно в этой стране. Это полнностью напоминает идею ОПРИЧНИНЫ ("опричь" на древне русском означает что-то иное) или идею Внутренней Партии из бессмертного романа Дж.Оруэлла "84". Каковой Оруэлл, как известно, ничего не выдумал сам. Он заимствовал все идеи у антипода и аналога Сталина Троцкого. Так вот, ИМХО с тех пор НИЧЕГО НЕ ИЗМЕНИЛОСЬ. "И если кто-нибудь даже / Захочет, чттоб было иначе / Бессильный и неумелый / Опустит слабые руки / Не зная, где сердце у спрута / И есть ли у спрута сердце" (Авторов не привожу. Кто хочет, пожалуйста, определите их сами. Говорят, что над воротами Академии бессмертного Платона висела надпись "Да не войдёт сюда не знающий математики". В наше Время ИМХО она должна зазвучать так: "ДА НЕ ВОЙДЁТ НЕ ЗНАЮЩИЙ ПРОГРАММИРОВАНИЯ И ФАНТАСТИКИ", особенно бессмертных братьев и их поистине фундаментальнейшей повести... название, пожалуйста, укажите сами. Тем более что она, эта их повесть, так до сих пор и не была никем понята правильно. И это не моё личное мнение, массаракш! А очень горестный факт. Кстати, пока я не забыл. Название романа Оруэлла. Как только не пытались его интерпретировать... Но здесь, на форуме программистов, не место об этом упоминать. Позвольте просто сразу и без доказательств привести не одну, а ДВЕ интерпретации, каждая из которых правильна. Первая из них -- пифагорейская, связанная с магией или мистикой чисел. Число ВОСЕМЬ означает каузальность, власть Причинного плана. Число же четыре, не к столу оно будь помянуто, как легко понять, адресует четвёртую чакру (сердечную, называемую в йоге санскритским словом "анахата". Имеющий глазки прочтёт). Таким образом число 84 означает ВЛАСТЬ, отданную СЕРДЕЧНОЙ или АНАЛЬНОЙ ПУСТОТЕ, четвёртоё расе или тому, что носит название "четвёртого пути". (Кстати, по непроверенным данным, Гурджиев многократно посещал селение Гори в годы ранней юности -- сами понимаете кого. И это имело не одно, а целых ДВА [по]СЛЕДСТВИЯ. 1)то, что Сталин безжалостно уничтожал всех, без различия пола и возраста, кто что-нибудь знал о годах его ранней юности, когда он был миньоном Джурджизада; и 2) то, что победа в войне была отдана не Гитлеру (как предполагалось изначально), а именно и тому же Сталину. Есть очень хорошая фантастическя повесть на эту тему нашего российского автора; только я, к сожалению, и название и автора забыл. BTW есть ДОКУМЕНТИРОВАННОЕ свидетельство о ВСТРЕЧЕ этих троих -- имею в виду Джурджизада-Гурджиева, Гитлера и Джугашвили, который тогда ещё не был Сталиным. А Гитлер отнюдь ещё не стал рейхсканцлерром. Дело в том, что добрая старая кайзеровская полиция очень хорошо знала своё дело. И она грамотно вела наблюдение за всеми нежелательными иностранцами и собственными инсургентами (а дело было вскоре после первого ареста Гитлера). И есть ИСТОРИЧЕСКИЙ ДОКУМЕНТ -- протокол наружного наблюдения за ними. Ясно, что они не договорились. Гитлер был тогда в достаточно зрелом возрасте -- после 35 лет, и после убийства этой своей племянницы. И он корректно отказался подставить Гурджиеву... сами понимаете что -- то, что нынешние здешние политики (кроме госпожи Новодворской, конечно) наоборот подставлять не отказываются. И мы все знаем, что из этого вышло. Чтобы ЗАКОНЧИТЬ с этой темой. Есть НЕПРЕРЕКАЕМОЕ пророчество: что этот мир БУДЕТ УНИЧТОЖЕН ОГНЁМ. Почти совсем как в рассказе Азимова "Приход ночи". Точнее -- что он, этот мир, будет сохранён от уничтожения водой (как бывало ранее) ДЛЯ ТОГО, ЧТОБЫ БЫТЬ УНИЧТОЖЕННЫМ ОГНЁМ. Вот почему я, глупый и старый серый кот, смиренно прошу вас, молодых программистов, дочитать этот пост до конца и сделать ваши многоуважаемые выводы. Потому что прочить больше оказывается некого. Я знаю, потому что я уже всё перепробовал. А кто не верит мне -- вспомните, чем и почему были уничтожены Содом и Гомо заметьте, -ра. И на сём позвольте закрыть эту тему (но не эту ветку -- отнюдь! Это привилегия модераторов) а лишь моё выступление на эту, извиняюсь за выражение, тему. Здесь, везде и навсегда. Всё, что мог, я уже типа сказал. После нового года как то вчитался в ваши тексты и захотелось общаться с Вами и дальше, буду признателен за контактные атрибуты ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.01.2005, 21:03 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Lepsik--Тем более, то F# подддерживает .NET как всегда вечен С++ с generic programming - любой язык пишется на раз. Язык нужен не для того, что бы писать на нём другие языки, а что бы писать на нём программы :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.01.2005, 21:32 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Programmer_Ortodox Чтобы дойти до потрясения самих основ программирования, это же сколько надо на грудь принять, вы хоть представляете cебе? Мне вспоминается монолог Задорнова, где повествуется о бедном человеке, который мерял длину забора рулеткой... и ... чтобы лучше мерялось ... принимал на грудь. Ну не буду о грустном. Честно говоря ... меня интригует сабж, несмотря на флеймовость самой постановки. Я, как и вы Программер Ортодокс, ищу единомышленников в методологиях разработки. И это сугубо проктическая позиция. Меня не интересует теория. Мне неинересны философские изыскания (аля Климов & Кастанеда) и нытье по поводу "былых времен". Только практический подход. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.01.2005, 10:01 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Ортодоксы из покон веков интересовались в основном древностью и традициями, а то здесь имеют ввиду это скорее нигилизм, но не ортодоксальность))) ________________________________________________________ Глюк - это высокоорганизованная система не поддающихся определению частиц ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.01.2005, 17:20 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Programmer_Ortodox Небаба SillyCatИзвините, я глупый кот и не умею толком пользоваться здешним форумом. В частности, я не знаю, как здесь выделить цветом текст; а уж сделать ссылку, да так, чтобы она работала... Удел противников ООП - сначала много писать а потом думать, не так-ли, г-н гетеросексуал? Фон Нейман немного не так учил... А чем Delphi реально хуже сей (про быстроту компилятора и то, что Win писали на сях загонять не надо), мне так никто и не объяснил. Зато все орут-мы крутые, пишем на С. Пишите, пишите... О, как я вас понимаю! Впрочем и сам такой же, если услышу от собеседника, что он пишет на "си" , сразу норовля двинуть ему в харю! А ручонка у меня, ох тижелая... Я пишу на Си, а ещё рукопашник не слабый )))))))))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.01.2005, 15:42 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Bigger Programmer_Ortodox Небаба SillyCatИзвините, я глупый кот и не умею толком пользоваться здешним форумом. В частности, я не знаю, как здесь выделить цветом текст; а уж сделать ссылку, да так, чтобы она работала... Удел противников ООП - сначала много писать а потом думать, не так-ли, г-н гетеросексуал? Фон Нейман немного не так учил... А чем Delphi реально хуже сей (про быстроту компилятора и то, что Win писали на сях загонять не надо), мне так никто и не объяснил. Зато все орут-мы крутые, пишем на С. Пишите, пишите... О, как я вас понимаю! Впрочем и сам такой же, если услышу от собеседника, что он пишет на "си" , сразу норовля двинуть ему в харю! А ручонка у меня, ох тижелая... Я пишу на Си, а ещё рукопашник не слабый )))))))))) а я в детсве боксом занимался... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.01.2005, 19:27 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
fixit Bigger Programmer_Ortodox Небаба SillyCatИзвините, я глупый кот и не умею толком пользоваться здешним форумом. В частности, я не знаю, как здесь выделить цветом текст; а уж сделать ссылку, да так, чтобы она работала... Удел противников ООП - сначала много писать а потом думать, не так-ли, г-н гетеросексуал? Фон Нейман немного не так учил... А чем Delphi реально хуже сей (про быстроту компилятора и то, что Win писали на сях загонять не надо), мне так никто и не объяснил. Зато все орут-мы крутые, пишем на С. Пишите, пишите... О, как я вас понимаю! Впрочем и сам такой же, если услышу от собеседника, что он пишет на "си" , сразу норовля двинуть ему в харю! А ручонка у меня, ох тижелая... Я пишу на Си, а ещё рукопашник не слабый )))))))))) а я в детсве боксом занимался... Пишу на сях с 91-го года. (а вообще с 88-го примерно, если не раньше) В детстве занималься дзю-до, потом рукопакой, потом редким корейским видом борьбы. Потом боксом, потом опять дзю-до и рукопашкой. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.01.2005, 07:34 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Извините, я не хотел сюда больше возвращатся; но вот Бог вынес по ссылкам на рисунок прямо в тему -- в ранее обсуждавшуюся. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.01.2005, 08:58 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
SC а фотографии есть как гитлер не хотел подставлять гурдживу сами знаете что? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.01.2005, 07:03 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.01.2005, 04:17 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
О Чем спор то ? Вообще юзайте лого и не будет проблем ! ш (';') (V),(V),, Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.01.2005, 09:02 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
тынц ...последним "писком" является C# [Hejlsberg] - объектно-ориентированный кастрат от Microsoft в пику Java... Хм... Маловато аргументов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.01.2005, 11:14 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Ну, я например лично против ООП. Читал. Не понравилось. А вообще я лентяй. Поэтому пишу на Си. Иначе бы писал на Ассемблере. А попсу голимую презираю (делфи в т.ч.) :Р ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.02.2005, 11:10 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Ну, я например лично против ООП. Поэтому пишу на Си. Мдя .... ш (';') (V),(V),, Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.02.2005, 13:40 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Парни (и девушки, если таковые имеються :)) что спорить о концепциях??? кому мил асм? -> goto www.wasm.ru!(рульный сайт, кстати.. ) все что тока можно вы там найдете.. кому мил C++ -> вы и так знаете что вам делать, а компилер нервно курит :) Каждому свое! и нех... навязывать другим свои убеждения!!! меня, например, просто прет ООП. Сама идея. С++ навсегда! А Java.. имеет свои плюсы и минусы... Но Java глупо (по моему) рассматривать как язык.. Имхо ее надо рассматривать как конгломерат технологий.... C# - (ИМХО!!!!)updated клон Java... ООП рулит в определенных областях, но в других областьях оно ... ну... мягко говоря не рулит.. в драйверах железок, например... по крайней мере пока... однако, никто не мешает Вам написать ОО драйвер на C++.. тока кому это надо? Если пример с "дровами" неудачен - сорри... тогда я отстал от жизни в этой области... С автором топика я категорически не согласен! ООП не надо отменять... его не надо считать панацеей... Там, где целесообразно его применить - его надо применять.. там, где не надо - нах ООП.. И если автору топика не нравиться ООП... то это не значит, что это плохая концепция.. это значитт что он ее просто не понимает.. для себя не понимает. Ну не может его сознание принять эту концепцию. И все. Как я не могу нарисовать 4х мерное пространство... В общем каждому - свое. foo. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2005, 00:57 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
foofoo. + %) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.02.2005, 13:19 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
мнение о провале оопарадигмы http://bugtraq.ru/library/programming/objectsfailed.html ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.06.2006, 04:03 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
tchingizмнение о провале оопарадигмы http://bugtraq.ru/library/programming/objectsfailed.html кто-бы сомневался :) это и самого начала было понятно ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.06.2006, 15:05 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
))) чесно говоря, я там и парадигмы то не вижу. пока они не начнут формулировать свои положения в терминах математики - ,например, в терминах теории множеств, это просто собирание бабочек 18 века. например, 1 тип - это именованное множество значений. 2 для некоторого языка L тип а и тип б могут состоят в отношении наследования языка L. 3 класс в языке L - это тип, для которого есть отличный от него тип, с которым он состоит в отношении наследования языка L. и так далее. хотя есть и другое мнение Объектная парадигма не провалилась // 23.08.04 22:15 http://bugtraq.ru/library/programming/objectshavenotfailed.html ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.06.2006, 22:58 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
хотя аргументация странная --- не провалилась Тому есть некоторое практическое подтверждение. Согласно последнему (в 2002 году) опросу североамериканских разработчиков, проведенному Evans Data Corporation, более половины опрошенных используют Java. ---- ну да, язык втюхали потребителям согласен. но, имхо, парадигма тут не причем. /* вот к примеру сначала втюхивали искуственный загар. - парадигма загорать полезно. потом втюхивали крем от загара - парадигма загорать вредно, рак кожи теперь втюхивают загорание - парадигма отсутствие солнечных лучей вызывает рахит и другой рак. можно ли на этих данных сделать вывод о провале парадигмы загорания или не загорания? */ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.06.2006, 23:03 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
tchingizхотя аргументация странная действительно странная автор Главными достоинствами объектно-ориентированного программирования являются, во-первых, то, что оно поощряет использование абстрагирования и инкапсуляции как будто абстрагирование и инкапсуляцию изобрели в ООП автор во-вторых, то, что объекты представляют собой хорошую модель для большинства сущностей реального мира. получается что объекты реального мира моделируются другими (какими ?) объектами tchingiz пока они не начнут формулировать свои положения в терминах математики - ,например, в терминах теории множеств, это просто собирание бабочек 18 века. вот именно ( компутерная модель реального мира д.б. математической) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.06.2006, 10:46 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
авторПричём новая реакция на новое сообщение может быть добавлена «на лету» во время исполнения программы (читай «добавление к объекту нового метода»).программа, которая пишет сама себя? авторобъекты Smalltalk имеют ограниченный набор методов (в привычном понимании адептов С++), и всё что они «умеют» — посылать сообщения друг другу, соответственно программирование в Smalltalk сводится к «обучению» объектов реагировать на соответствующие сообщенияну маздай ваяет Индиго. По отрывочным описаниям похоже на этот Smalltalk, а по сути это простой ActiveX. ------------------ - А как в Интеpнете pаботать? - Сначала нужно узнать, что вам нужно rtfm ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.06.2006, 16:00 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
maXmo wrote: > ну маздай ваяет Индиго. По отрывочным описаниям похоже на этот > Smalltalk, а по сути это простой ActiveX. с этого места - поподробнее, плиз... "язык похож на компонент"? -- ------------------------- There's no silver bullet! Posted via ActualForum NNTP Server 1.3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.06.2006, 16:17 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
AIMнадо запретить компьютеры в целом, ибо они есть вселенское зло! Все капутеры собрать, да сжечь. От них все зло ! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.06.2006, 21:23 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
мод автор во-вторых, то, что объекты представляют собой хорошую модель для большинства сущностей реального мира. получается что объекты реального мира моделируются другими (какими ?) объектами я не понимаю, что такое "обьекты реального мира". особенно если слово "обьект из этого предложения" есить синоним к слову "обьект из ооп". если слово "обьект из этого предложения" похоже на слово "сущность", то может, чтото понимаю. возможно это ответ на Ваш вопрос? http://www.softcraft.ru/paradigm/process/pr01.shtml ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.06.2006, 00:21 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
lockyс этого места - поподробнее, плиз... "язык похож на компонент"?не совсем. Компонент похож на объект. То есть будут объекты и они будут обмениваться сообщениями как компоненты или объекты Smalltalk вместо прямого вызова мотодов. Вот. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.06.2006, 00:29 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Филип ВадлерОднако... Я работаю в Bell Labs, где были изобретены С и С++. В сравнении с пользователями С, "никто" - достаточно точная оценка числа пользователей функциональных языков. Сторонники функциональных языков заявляют, что они на порядок улучшают производительность. Эксперименты не всегда подтверждать, эту цифру - иногда они показывает улучшение только в четыре раза. Однако, не стоит пренебрегать кодом, который в четыре раза короче, в четыре раза быстрее писать, или в четыре раза проще поддерживать. Так почему же функциональные языки не используются более широко? http://www.softcraft.ru/paradigm/fp/whynotfp.shtml ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.06.2006, 04:22 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Чингиз! tchingiz Филип Вадлер...в четыре раза быстрее писать... Ох...?! Для меня пока - не быстрее. Хотя в целом я - ЗА! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.06.2006, 11:49 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
tchingizесли слово "обьект из этого предложения" похоже на слово "сущность", то может, чтото понимаю. ну да, конечно так: "сущности" реального мира моделируются обьектами ооп, т.е. реальный самолет в небе моделируются обьектом класса "самолет" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.06.2006, 12:23 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
тема - Программирование/будь моя воля, я бы вообще ООП запретил. /ответ писал в оффлайне, пардон, если не совсем в тему/ Тема, конечно, интересная. Хотелось бы спросить следующее - нафига вообще вы загоняетесь? У каждого метода и подхода есть свои плюсы и минусы. И программирование также может применяться для разных целей. Если для написания/воплощения чистых алгоритмов - то здесь (возможно) можно обойтись и без ООП - в контроллере лифтового механизма или привода дисковода оно вряд ли понадобиться :). Но если понадобится создать что-то более глобальное, может быть уже такой вариант, когда процедурное программирование либо не пройдёт, либо будет приближаться к программированию объектно-ориентированному. Как я понимаю, (применительно к C++) при достаточно большом количестве функций может возникнуть необходимости разделения области видимости, что может быть представлено префиксами (пример - D3DXVec3Add), namespace'ами, или классами. Так же исходный код может быть разбит по смыслу на отдельные блоки, в которых ограничены области видимости, и есть статические переменные, которые не видны из других блоков/модулей (*.c, *.cpp). А разве это не есть вариант воплощения класса? Что касается различных "наездов" на различные языки программирования. Во-первых, каждый язык предлагает инструментарий, более или менее направленный на какой-то специфический блок проблем. Я помню, что кто-то (кажется, это был создатель EMacs :), хотя я в этом не уверен), осуждал практику, когда происходило повальное переучивание (где-то в 70х, кажется?) программистов с COBOL на C++, так как COBOL был ПРЕДНАЗНАЧЕН для работы с базами данных, а в C++ это было нетривиальной задачей. Ряд современных языков ТАКЖЕ имеют свое специфическое направление - есть ведь Lisp, Perl, Python? Это ведь чисто абстрактные интерпретируемые языки, позволяющие легко рашать задачи, не генерируя машинный код! А строки в Паскале? Можно, конечно заниматься мазохизмом, и работать со строками в C++ "по-старинке" (я сам так и делаю), но сейчас уже часто под это делают классы, которые являются всё-таки довольно грубым и трудоемким воплощением того, что в Паскале уже встроено. Java, про которую здесь тоже упоминалось, тоже имела специфическую задачу, как я понимаю - верх кросплатформенности. И она, как я понимаю, этим языком выполняется, так как формат кода для всех систем одинаков, хотя и не соответствует ни одному реальному железу. Во-вторых, если неудобно пользоваться языком - не пользуйся! Только нафига его при этом объявлять "попсой" и "плохим языком"? Что касается ассемблера, который здесь упоминался, я помню, видел то ли "аддон", то ли пакет макросов под MASM, который позволял использовать объектно-проектированное программирование в ассемблере. :) Вообще, последние варианты конкретно MASM, которые я видел, уже очень сильно приближаются к языкам типа Pascal и C++ - один макрос INVOKE чего стоит. Вообще, меня задел наезд на Дельфи. Я с неё начинал работать, и, хотя сейчас сижу на Visual Studio 2003, и программлю под C++, ещё не встречал другого такого же удобного в работе инструмента. Кроме того, Паскаль (который здесь фиг знает почему обозвали), в том варианте, который используется в Delphi (хотя и оригинальный тоже был неплох), имеет ряд вещей, которые в C++ ОТСУТСТВУЮТ. это: 1) оператор with. при его помощи можно временно расширить локальную область видимости так, чтобы в неё попали поля структуры. в C++ такого нет, можно использовать схожий вариант с ссылками (some_type& a), если структура многократно вложенная. 2) встроенный тип "set" - "множество" с логическими операциями. можно объявить свой тип данных - enum, или ограниченный целый (в пределах каких-то чисел, например, от 2 до 63), а потом создать по нему множество в котором каждый из элементов может присутствовать, а может и отсутствовать :). В C++ такое надо делать при помощи классов и париться, хотя в C++ можно обойти встроенное паскалёвское ограничение на максимум 256 элементов во множестве. (во внутреннем представлении оно представлено битовым массивом размером до 32 байт).Обалденно удобная вещь - set of char - при написании, например строкового парсера им удобно задавать набр символов, которые, например, отсекаются. 3) property. property - это открытое поле класса, каждое обращение к которому транслируется (на запись, считывание) компилятором (по выбору программиста) либо в вызов какой-то процедуры, либо в доступ к переменной. property может быть КАК БЫ виртуальным(многократно переопределяться), может ограничить доступ (т.е. не давасть записывать в поле, или считывать из него). При помощи property в VCL(Visual Component Library) реализовали способ построения классов, при котором ПОЛНОСТЬЮ(90%) закрыт доступ к их содержимому - т.е. работа с классом осуществляется исключительно через методы (само собой, из-за использованиия property). Это правило сохраняется в большинстве классов VCL. Похожий (но не такой же) механизм есть в COM, насколько я помню, но он не является встроенным механизмом C++; Отсутствие property как раз и представляет основную сложность при работе в C++ после Delphi. Для меня, по крайне мере. 4) в Delphi МОЖНО ВЗЯТЬ УКАЗАТЕЛЬ НА МЕТОД КЛАССА, НЕИЗВЕСТНОГО НА ЭТАПЕ РАЗРАБОТКИ! Как я понимаю, в C++ эта задача принципиально неразрешима. в Delphi такой указатель объявляется как "function of object"; и занимает 8 байт - как я понимаю, 4 на метод, и 4 - на базовый указатель объекта. 5) Виртуальный конструктор. Фиг знает, каким образом он реализован, но он есть. 6) динамические методы. (dynamic) в принципе, почто то же, что и виртуальные, но храняться в отдельной таблице динамических методов, в которой записаны только методы, ПЕРЕОПРЕДЕЛЁННЫЙ В ДАННОМ КЛАССЕ. т.е. - занимает меньше места, чем виртуальные, но больше времени уходит на вызов (лезет по родителям, если надо). С ДРУГОЙ стороны, в C++ есть механизмы, которые принципиально невозможны в Delphi, это: 1) Макросы. Хотя Microsoft и использует их активно, чтобы приблизить свои программы к чёрной магии, когда программа на практике оказывается совсем не тем, чем она кажется (попробуйте объявить в C++ проецедуру CreateWindow(), включить <windows.h> а потом вызвать эту процедуру! Получите ошибку о том, что "недостаточно параметров для макроса CreateWindow", хотя системная функция вообще-то выглядит как ФУНКЦИЯ а не макрос, и перегрузка функция должна (по идее) корректно срабатывать :)), макросы всё равно представляют собой очень мощный механизм, которого в Delphi нет, или есть в зачаточном состоянии - директивами {$IFDEF} {$ENDIF} 2) template'ы. очередная зубодробительная в применении фича языка. В Delphi отсутствует. В C++ неудобна (хотя и очень полезна время от времени) тем, что требуется создать экземпляр tempalte'а, чтобы его отладить. До тех пор ошибки в нём вообще ( как я помню) не обнаруживаются). 3) операторы. В Delphi нельзя создать собственные операторы сложения и вычитания для своих типов данных. С другой стороны, в C++ есть ограничение на то, что оператор может создаваться только для КЛАССА - т.е. я не могу использовать их на типах, полученных через typedef. 4) множественное наследование. в Delphi невозможно. Возможна реализация через включение. 5) битовые поля. Возможность создать в структуре поле размером меньше байта, или равное, например, 9 бит. Microsoft о таком, судя по всему, не подозревает, так как все виндовские многочисленные поля "ФЛАГОВ" нааамного было бы объявить как раз таким типом данных. Вот пример воплощения поля Flags из WIN32_FIND_DATA: [fix] union{ DWORD flags; struct { //#define FILE_ATTRIBUTE_READONLY 0x00000001 unsigned readonly: 1; //#define FILE_ATTRIBUTE_HIDDEN 0x00000002 unsigned hidden: 1; //#define FILE_ATTRIBUTE_SYSTEM 0x00000004 unsigned system: 1; //#define FILE_ATTRIBUTE_DIRECTORY 0x00000010 unsigned rsvd: 1; unsigned directory: 1; //#define FILE_ATTRIBUTE_ARCHIVE 0x00000020 unsigned archive: 1; //#define FILE_ATTRIBUTE_DEVICE 0x00000040 unsigned device: 1; //#define FILE_ATTRIBUTE_NORMAL 0x00000080 unsigned normal: 1; //#define FILE_ATTRIBUTE_TEMPORARY 0x00000100 unsigned temporary: 1; //#define FILE_ATTRIBUTE_SPARSE_FILE 0x00000200 unsigned sparse_file: 1; //#define FILE_ATTRIBUTE_REPARSE_POINT 0x00000400 unsigned reparse_point: 1; //#define FILE_ATTRIBUTE_COMPRESSED 0x00000800 unsigned compressed: 1; //#define FILE_ATTRIBUTE_OFFLINE 0x00001000 unsigned offline: 1; //#define FILE_ATTRIBUTE_NOT_CONTENT_INDEXED 0x00002000 unsigned not_indexed: 1; //#define FILE_ATTRIBUTE_ENCRYPTED 0x00004000 unsigned encrypted: 1; }file_attrs; };[/fix] Это краткое сравнение языков не говоря уж об удобстве интерфейсов, справочной системе, а также размере минимального приложения под Win32(WinAPI) - в Дельфи - 16 кб (зависит от версии), в C++ (если не извращаться) - 40 кб. Если извращаться, то 4 кб, но нужно будет попариться и "открутить" стандартную библиотеку, что кое-кому может и не быть "по зубам". 2 Ortodox_programmer, Silly Cat: Знаете, я читал то, что вы тут понаписали, и у меня действительно мысль была о том, что тут без грибов не обошлось :). Я, например, не вижу связи между ООП и тем, что вы понаписали про Гитлера, Сталина, заговор против России и т.д. и т.п.. По-моему, с таким же успехом можно было бы обвинять, допустим, микроскоп в начале второй мировой войны. ООП - это инструмент. А инструмент не может нести пользу или вред сам по себе - это зависит от того, кто и в каких целях его использует. (Молотком можно забивать гвозди, а можно и кого-нибудь им стукнуть, например :)) А какой инструмент и язык вы используете зависит только от вас и поставленной вами задачи. Вероятнее, программу для построения списков всех файлов на диске с последующим написанием их имён транслитом легче выполнить процедурным подходом. Прогу, которая будет на экране что-то рисовать, причем тип рисуемых объектов на этапе разработке неизвестен, ну уж явно легче написать, используя ООП с виртуальными методами. Вообще, ИМХО, вопрос стоит о типе мышления - процедурный код предполагает чисто алгоритмический тип + логический(кто чего после чего сделал), а ООП предполагает мышление абстрактное/образное - т.е. построение объектных моделей. А уж на вопрос "КАК ЛУЧШЕ ДУМАТЬ" каждый уж точно ответить по-своему. И, по сему, ИМХО, попытка запретить использовать ООП есть попытка запретить мыслить образами/символами, то есть изначально бессмысленна. P.S. Ещё раз пересмотрел форум и наткнулся на фразу: Что их, да, можно будет использовать другим программистам. Но что ВНУИРЕННОСТЬ этих объектов БУДЕТ ДЛЯ НИХ НАВСЕГДА И ПОЛНОСТЬЮ ЗАКРЫТА!!!!! Это полностью аналогично тому, как в этой стране имела хождение идея ВЦКП.... Извиняюсь, но причём тут ВЦКП? :) Идея-то состояла в том, чтобы класс с точки зрения программиста приближался к той абстрактной концепции, которую он представляет, и программист не забивал себе мозги фигней касательно того, как эта концепция была воплощена. :) Просто - ДЛЯ УДОБСТВА РАБОТЫ! И нечего тут "идею заговора" раздувать... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.06.2006, 15:25 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
автородин макрос INVOKE чего стоитон выглядит особенно забавно, когда его аргументы записаны в столбик :) ------------------ - А как в Интеpнете pаботать? - Сначала нужно узнать, что вам нужно rtfm ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.06.2006, 15:58 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
мод tchingizесли слово "обьект из этого предложения" похоже на слово "сущность", то может, чтото понимаю. ну да, конечно так: "сущности" реального мира моделируются обьектами ооп, т.е. реальный самолет в небе моделируются обьектом класса "самолет" это так хорошо звучит, пока Вы обсуждаете один класс. множество классов - удовлетворяет условию Цорна - любое линейно упорядоченное подмножество классов ( наследование может рассматриваться как отношение меньше равно на множестве классов) имеет минимальный элемент. Линейно упорядоченное - это цепочка наследования. Минимальный элемент - самый первый родитель в цепочке. Так вот, есть большие подозрения считать, что множество "типов" сущностей "реального мира" далеко не удовлетворяет этому условию. )))))) Даже в математике (не говоря уже о "реальном мире") есть масса контрпримеров. например, рациональные числа есть. убывающей цепочки может не быть. группы - убывающей (возрастающей) цепочки из нормальных абелевых фактор групп быть не обязательно. косвенным свидетельством тому, что мир не описывается системой классов может служить тот факт, что иерархические базы данных не пошли в жизнь. Сейчас их безуспешно пытаются реанимировать под видом обьектно ориентированных баз данных. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.06.2006, 23:32 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
по поводу безуспешных попыток реанимации оо баз, можно заглянуть в в надреляционный манифесте Григорьева. Там есть ссылки на ооб манифесты. http://users.iptelecom.net.ua/~agp1/ru/u-gene3.html ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2006, 00:36 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
tchingizмир не описывается системой классов Так я об этом и говорю: мир надо моделировать математическими моделями и с ними работать - только тогда появляется твердая почва под ногами. А что касается БД - то вся обработка данных отвергла ООП на корню - только процедурно-функционально-декларативное программирование (таблицы, sql, pl/sql, t-sql, 4gl и пр.). Затея с ООБД провалилась лет 10 назад. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2006, 09:18 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
2 ErV В целом поддерживаю. Добавлю. На меня произвела впечатлене статья Н.Вирта Хорошие идеи: взгляд из Зазеркалья. Рекомендую всем почитать. (в скобках... я не до конца согласен с точкой зрения магистра ... м-м-м.. по поводу Функционального программирования, хотя в процессе чтения, я часто вскакивал со стула и выкрикивал - Да! Точно-точно! Так и есть! и т.п.). P.S. А кто сберёг? Коробейников! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2006, 11:09 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Компьютеры не будут долго существовать: появятся новые вычислительные системы, вроде серверов, а программы будут запускаться с них. Все, что будет у пользователя - монитор. ООП - штука хорошая! Зря вы про нее. Лучше и быстрее все равно не придумать. Си вечен! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2006, 11:57 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Вирт Объекты - это записи, классы - это типы, методы - это процедуры, а посылка сообщения эквивалентна вызову процедуры. про посылку сообщения - есть синхронный вызов процедуры - традиционно. и есть асинхронный вызов процедуры - посылка сообщения. в Qt эта мысль почти явно сформулирована через слоты и сигналы. А при такой трактовке посылок сообщений - обьект надо называть процессом. он чето сам себе вычисляет и обменивается данными с другими процессорами через слоты. Вот в RSL процессом называется функция отображающия void в void и имеющая доступ к абстракции, называемой каналом данных (читай слот в терминах QT) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2006, 22:35 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Майтон, а кто такой Коробейников. статья хорошая. ща положу в ебуки )) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2006, 22:36 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Вирт Поэтому x = y не означает то же самое, что y = x. ВиртПоэтому явно плохой идеей является объяснение сложного набора особенностей и возможностей языка в толстых томах руководства. В действительности язык характеризуется не столько тем, что дает нам возможность программировать, сколько тем, что удерживает нас от использования недопустимых конструкций. Как заметил Дийкстра, наиболее трудной, ежедневной задачей программиста является недопущение беспорядка. Первичная и наиболее благородная обязанность языка состоит в том, чтобы помогать программистам в этой нескончаемой борьбе. сравнить с Фокспро у которого сравнение строк не симметрично. (было атлист) а на 857 странице руководства обьяснен параметр, который позволяет сделать эту операцию симметричной опять. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2006, 23:23 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
tchingizкто такой Коробейников. статья хорошая. ща положу в ебуки )) Коробейников - персонаж из " 12 стульев " Ильи Ильфа и Евгения Петрова. Да. Статья действительно хорошая. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.06.2006, 10:02 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
tchingiz Вирт Объекты - это записи, классы - это типы, методы - это процедуры, а посылка сообщения эквивалентна вызову процедуры. Там есть продолжение Вирт Выражает ли это изменение терминологии существенное изменение парадигмы, или же это всего лишь маркетинговая уловка? Этот вопрос остается открытым. имхо Вирт фактически сам и ответил на этот вопрос. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.06.2006, 10:45 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
коробейников --> ))) эта. Мод, так а что фактически Вирт ответил? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.06.2006, 23:44 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
tchingizа что фактически Вирт ответил? ну если сам Вирт сомневается в самостоятельности парадигмы ООП (которой уже 25 лет !), то очевидно он считает это именно маркетинговой уловкой, просто боится об этом прямо сказать ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.06.2006, 09:43 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
модто вся обработка данных отвергла ООП на корню Это врядли. Я сейчас как глупый кот начну экскурсы в стечения обстоятельств, приведшие к сегодняшней дурацкой ситуации. Ну кто бы мог думать 30-50 лет назад,что идея использовать магнитофон как дешевое (но медленное) устройство хранения данных приведет к настоящим войнам между сторонниками ООСУБД и РСУБД коих и на сём ресурсе немало . Или вот если бы вдруг люди бы стали широко пользовать персистентную оперативную память (а была такая - магнитофорритовые колечки например), да сделали бы ее еще переносимой - кто знает, о чем бы мы спорили сейчас. То есть получается, что ComputerScience он не только определяет технологию (как делают это другие Sciences) и даже не столько определяет технологию (потому как ведущие производители часто на этот самый Science забивают, благо это, например, не физика, где пренебрежение наукой чревато всякими падениями, взрывами и тп катастрофами), но и определяется используемыми технологиями. Другими словами мы сначала чего то делаем, а протом выясняем(иногда), что жы мы наделали и какнам теперь отсюда выбираться и куда убегать. Последнее обстоятельство имеет крайне забавный побочный эффект. Исходя из физических законов нельзя пострлоить действующий вечный двигатель. А программу, которая бы выполнялась , но при этом нарушала некоторые логические законы написать можно (разве Вытаких не видели?). То есть она работает-работает-работает.... но местами как то не так и результат какой то неожиданный. :) Ну и вместо того, что бы пытаться разобраться ,посидеть, подумать головой, чел истерически пишет доработки, заплатки и т.п. вещи. А на самом деле лет 30 назад была опубликована статья, в которой математически доказано, что то,чего это чел пытается добиться - невозможно. Но программа то сушествует! .exe файл то есть! он же выполняется ! И вот чел упрямо наступает на грабли, на которые до него наступали множество других людей, и найдутся другие, кто на эти грабли снова наступит. А все потому, что у самого голова дотумкать до невозможности не позволяет, или времени на это нет, а статьи 30-летней давности читать... да кто про них вообще помнит?...быстрей, быстрей надо невозможного результата добиться... И это касется не только любителей. Надысь я поприсутсвовал на семинаре одного известного специалиста (русского по происхождению) где он говолрил в частности о том, что всякие работы касающиеся XML (этого новомодного течения) и особенно XQuery во многом пересекаются и даже повторяют 20-30 летней давности работы, касющиеся всякого рода иерархий. В общем прозвучал мысль, что во многом все это уже исследовано и мы идем по второму кругу. И за всякими новомодными штуками люди забывают о том, что любая информационная система, есть набор неких переменных и должна реализовывать некий набор операций. Были иерархии, сети, объекты, сейчас время XML. И каждый раз это выгляжит как "о! Что-то новенькое – может с этим новым у нас что-то получится? Может это даст нам наконец серебряную пулю и мы наконец то перестанем страдать от сложности?". Но часто всего то и нового-то - лишь названия обозначающие те же значения, переменные и операции. ИМХО весь неблагодарный програмисткий труд можно описать простой фразой – программист определяет новые переменные. Самое глвание здесь – понимать термни "переменная" достаточно широко. Переменная – это такая реализуемая системой штука, которая хранить информацию. Например, окно на экране, объект класса, таблица реляционной БД – это все переменные. Кому нужны эти переменные? Конечно пользователю. Это может быть и банальный юзер – с его точки зрения данные храняться именно в окне (потому что он их туда вводит и там видит), а набор полей вводы ( и вывода) и кнопки есть не что иное как интерфейс. Это может быть программист БД, который работает с таблицами и использует в этой работе специальный язык, позволяющий создавать уничтожать переменные–таблицы и менять их содержимое (данные). Это может быть быть и брат-программист, пользующий созданный тобой класс. Почему я завел разговор о переменных? Есть такой умный дядька Ф.М.Турчин. Он написал оченнно полезную для программистов книгу - "Феномен науки. Кибернетический подход к эволюции" . Если Вы доберетесь до главы 3 и, далее, до главы 5, Вы всенепременно (если Вы конечно думающий программист) заметите для себя что-то очень знакомое. Могу подсказать – читая, попробуйте заменить слово "система" (как его использует Турчин), на слово "переменная"….ну или на слово "объект". Идея в том, что для набора систем (ой…переменных) , появляется управляющая подсистема система (ой…программа) и, в результате возникает метасистема (ой...переменная – смотри предпредыдущий абзац). Понятно, что программисты именно тем и занимаются, что эти метасистемы описывают. При чем здесь ООП? Припоминая о чем эти три буквы, я с уверенностью могу сказать – в них нет ни капли о том, что мы должны получить. Объектно-ориентированная парадигма не определяет результат, не описывает конкретно, что же должна представлять из себя возникшая метасистема, какие функции она должна выполнять. Она может выглядеть как угодно и делать все что угодно. ООП не фиксирует результат – она описывает способ достижения результата. Другими словами ООП – это не парадигма системы (это дело моделей данных и моделей систем, которые в точночти опрелеяют то, чем является результат). ООП – это парадигма и методология метасистемного перехода , т.е. перехода от набора простйших систем-переменных (а, фактически, от набора типов, который эти переменные описывает) к набору гораздо более сложных метасистем (к набору сложных типов) – любых типов (в том числе и таких, которые реализуют требуемый результат). ИМХО метасистемный переход реализовывался и реализуется в программах постоянно. Например, первые рел. СУБД возникли, когда ОО-трансляторы находились в зачаточном состоянии. То же самое можно сказать про первые системы использующие парадигмы окон. Однако эти системы реализуют метасистемный переход, потому как и окна и таблицы – это переменные с точки зрения их пользователей. Как видно, их можно создать и без использования ОО инструментов. Однако отсутсвие ОО-инструментов делают описание метасистемы трудным делом. Дело в том, что ОО интрументы позволяют разбить процесс описание метасистемы на промежуточные шаги и привносят некий общий подход к описанию интерфейса этих промежуточных метасистем и к их использованию. Метасистема, описанная одним программистом ,может использоваться как элементраная сисетема в работе другого программиста. Нелишне также понимать, что ОО-подход так или иначе и хотя бы частично реализовывался даже на неООинструментах (например в 90-х я реализовывал на С оконный интерфейс, так дело дошло до того, что в Сишные струкутры были добавлены указатели на функции и обращение к ним было сродни вызова полиморфного метода) хотя возможно, программисты(как я) и не понимали, что такого рода танцы с бубном так или иначе являются ОО-подобными. tchingizТак вот, есть большие подозрения считать, что множество "типов" сущностей "реального мира" далеко не удовлетворяет этому условию. )))))) Я в последенее время все больше на чинаю подозревать,что вообще не стоитобращать внимание на "сущности реального мира". Я уж не говорю про желание каким то образом разклассифицировать эти сущности по типам, видам, связям и .т.п. Программисты наивные люди! Думают,что они создают модель мира! Фигушки! они создают модель восприятия реального мира конктретным Васей Пупкиным (возможно самим программистом). А поскольку у кадждого свое восприятие, то все, что нужно – это богатая система типов, позволяющая описать любое восприятие. мод Так я об этом и говорю: мир надо моделировать математическими моделями и с ними работать - только тогда появляется твердая почва под ногами. А что касается БД - то вся обработка данных отвергла ООП на корню - только процедурно-функционально-декларативное программирование (таблицы, sql, pl/sql, t-sql, 4gl и пр.). Затея с ООБД провалилась лет 10 назад. ИМХО они просто не умели их готовить. :) Иерархии и ООП реляционной модели данных не противоречат - вообще никак. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.06.2006, 16:44 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
автор Фигушки! они создают модель восприятия реального мира конктретным Васей Пупкиным гы то есть, если сначала Васе Пупкину хорошо прополоскать мозги на курсах по введению в оопрограммирование, он сразу будет думать, что воспринимает мир как множество обьектов ( с наследованием, инкапсуляцией и полиморфизмом) и ему можно удобно вешать лапшу на уши по поводу разрабатываемой для него программы? Правильно ли я Вас понял? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.06.2006, 23:28 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
авторЕсть такой умный дядька Ф.М.Турчин. Он написал оченнно полезную для программистов книгу - "Феномен науки. Кибернетический подход к эволюции". сенкс положу в книги ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.06.2006, 23:29 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
мод tchingizа что фактически Вирт ответил? ну если сам Вирт сомневается в самостоятельности парадигмы ООП (которой уже 25 лет !), то очевидно он считает это именно маркетинговой уловкой, просто боится об этом прямо сказать )) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.06.2006, 00:33 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
U-geneИМХО они просто не умели их готовить. :) не захотели: все языки обработки данных sql, pl/sql, t-sql, 4gl не имеют объектных возможностей по простой причине - им не надо. U-gene Иерархии и ООП реляционной модели данных не противоречат - вообще никак. ООП противоречит любой модели данных. По ООП вы должны моделировать сущности реального мира классами объектов с их свойствами и методами. А модель данных (любая) предполагает что сущности моделируются структурами из этой модели и обрабатываются методами этой же модели. Структуры м.б. разные: графы, списки, таблицы, массивы, наборы и т.д. и т.п. но это формальные структуры для которых определены формальные правила манипулирования. Ничего этого для ООП нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.06.2006, 10:28 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
tchingiz то есть, если сначала Васе Пупкину хорошо прополоскать мозги на курсах по введению в оопрограммирование, он сразу будет думать, что воспринимает мир как множество обьектов ( с наследованием, инкапсуляцией и полиморфизмом) ИМХО это как школа художников. Приходят молодые люди и начинают смотреть на картины мастеров. Учатся по ним. И в результате начинают видеть мир (и пытаться изобразить его) так же как его видят и изображают эти мастера. И среди них Вася Пупкин, который хорошо делает свое дело и может быть вполне талантлив и успешен. А потом находиться какой-нить Ван Гог, Пикассо, Малевич или Дали который хотя и рисует теми же красками и кисточками на том же холсте, используя в общем ту же технику рисования - но при этом он видит мир по другому и изображает его по другом. модООП противоречит любой модели данных. По ООП вы должны моделировать сущности реального мира классами объектов с их свойствами и методами. А модель данных (любая) предполагает что сущности моделируются структурами из этой модели и обрабатываются методами этой же модели. Структуры м.б. разные: графы, списки, таблицы, массивы, наборы и т.д. и т.п. но это формальные структуры для которых определены формальные правила манипулирования. Ничего этого для ООП нет. Еще раз отмечу фразу ....А модель данных (любая) предполагает что сущности моделируются структурами из этой модели и .... поскольку ИМХО именно здесь причина неудач, в попытке их приготовить. Модель данных - это модель данных , а не сущностей . То есть можно описывать предметную область классам объектов , получая при этом достаточно сложные структуры, и одновременно обращаться к данным, используя формальную модель (реляционную конечно). В общем надоело мне проповедовать бесплатно:) Давайте так - я вам здесь описываю некую систему (СУБД -в самых общих принципах), и если Вы соглашаетесь, что она является является одновременно и ОО и реляционной, вы проставляетесь бутылкой коньяка. Не обязательно Martell XO в подарочной упаковке - достаточно будет "Петр Великий" (или хотя бы "Дагестан") производва коньячного завода г.Кизляр :). Если нет - то это делаю я. Соглашайтесь, Вам же нечем рисковать, ведь " ООП противоречит любой модели данных " (с)угадайтечьё:)... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.06.2006, 12:02 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
U-gene Модель данных - это модель данных , а не сущностей . То есть можно описывать предметную область классам объектов , получая при этом достаточно сложные структуры, и одновременно обращаться к данным, используя формальную модель (реляционную конечно). В этом мы действительно расходимся. Я считаю что сущности должны сразу моделироваться формальными структурами, затем производится манипуляция формальными методами над этими формальными структурами, результат интерпретируются обратно в сущности. Вы (и ООП) вводите промежуточный слой - объекты (имхо лишний). U-gene Давайте так - я вам здесь описываю некую систему (СУБД -в самых общих принципах), и если Вы соглашаетесь, что она является является одновременно и ОО и реляционной, вы проставляетесь бутылкой коньяка. Я читал ваш НРМ, считаю его чисто реляционным так же как ООП - это то же процедурное программирование вид сбоку. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.06.2006, 12:23 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
U-gene я вам здесь описываю некую систему (СУБД -в самых общих принципах) в догонку: СУБД можно придумать любую - объектную, объектнореляционную, сетевую-иерархически-объектную и пр. (я сразу соглашаюсь), но это СУБД никому не будет нужна (примеров-тьма). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.06.2006, 12:56 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Да разговор не о том, нужна или не нужна. Вы сказали, что ООП противоречит РМД. ИМХО "противоречит" - это когда либо одно, либо другое, а вместе (в рамках одной системы) - никак. Я не согласен и могу продемонстрировать обратное. мод U-geneМодель данных - это модель данных , а не сущностей. То есть можно описывать предметную область классам объектов , получая при этом достаточно сложные структуры, и одновременно обращаться к данным, используя формальную модель (реляционную конечно). В этом мы действительно расходимся. Я считаю что сущности должны сразу моделироваться формальными структурами, затем производится манипуляция формальными методами над этими формальными структурами, результат интерпретируются обратно в сущности. Что значит "обратно в сущности"? Есть отношение, кортежи которого содержат данные об артикулах(формальная структура), сделали выборку(формальную операцию) двух атрибутов. В какие такие "обратно в сущности" мы должны это засунуть? Что получается? после того, как сделана "формальная операция" у нас сущностей прибавилосЬ? Да не меняется проедметная область, как над ее данными не измывайся. модВы (и ООП) вводите промежуточный слой - объекты (имхо лишний). Какие слои? У вас набор типов, и Вам нужно описать тип, отличающийся от заданных. Для этого есть методология, называемая ООП, и соответсвующие инструменты. Я показываю, что такой инструмент может быть создан и над реляционными системами, и что при этом система не перестанет быть реляционной. А потребуется ли все это программисту, который использует такую систему, или нет, я не знаю. В принципе он может работать и традиционным образом, с использовением только явно заданных переменных отношений (хранимых и вычисляемых) на предопределенным множеством доменов. Но я (и ООП) не "вводит слой" - разговор идет только о способе и об инструменте, позволяющим сделать это. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.06.2006, 14:02 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
U-gene ИМХО "противоречит" - это когда либо одно, либо другое, а вместе (в рамках одной системы) - никак. Я не согласен и могу продемонстрировать обратное. Лучше не надо. Выясняли же, что все т.н. объектные расширения РМД ничего не расширяют. (а тогда зачем они нужны - для бантиков ?) U-geneЧто значит "обратно в сущности"? В какие такие "обратно в сущности" мы должны это засунуть? В отчет. А как еще юзер будет получать результат ? Он то ничего про модель не знает. U-gene Какие слои? У вас набор типов, и Вам нужно описать тип, отличающийся от заданных. Для этого есть методология, называемая ООП, и соответсвующие инструменты. Типы никакого отношения к ООП не имеют. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.06.2006, 14:22 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
мод U-geneИМХО "противоречит" - это когда либо одно, либо другое, а вместе (в рамках одной системы) - никак. Я не согласен и могу продемонстрировать обратное. Лучше не надо. Выясняли же, что все т.н. объектные расширения РМД ничего не расширяют. (а тогда зачем они нужны - для бантиков ?) А я ни слова не говорил про объектные расширения РМД. РМД трогать не надо (это для меня священная корова) - никакие расширения, сужения, изменния или модификации ей не нужны. Я говорю про СистемуУБД, которая была бы ОО-системой и, одновременно реализовывала бы РМД (так скаать в классическом ее виде). И все-таки - "противоречит ООП любой модели данных"(хотя бы реляционной) или нет? мод U-gene Что значит "обратно в сущности"? В какие такие "обратно в сущности" мы должны это засунуть? В отчет. А как еще юзер будет получать результат ? Он то ничего про модель не знает. Ну тогда даааа.....Это хороший подход. Самое главное - однозначный результат!:) Результат любой формальной операции интерпретируется в сущность "отчет" (буквально "легким движением руки") :). И кстати! отличная сущность - подходит для любой МД и для любой формальной операции... Браво, коллега! модТипы никакого отношения к ООП не имеют. Почему? Есть тип INTEGER для котрого определена операция ++. ЧТо мне мешает выдумать тип ОТГРУЗКА, для которого была бы реализована операция "учесть"? Как мне его реализовать на практике? Да как угодно - и ООП инструмент выглядит вполне подходяшим вариатом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.06.2006, 15:49 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
U-gene Я говорю про СистемуУБД, которая была бы ОО-системой и, одновременно реализовывала бы РМД (так скаать в классическом ее виде). Согласен, СУБД можно создать любую. U-gene И все-таки - "противоречит ООП любой модели данных"(хотя бы реляционной) или нет? Я бы сказал, отрицает. Ведь существуют только св-ва объектов, самих данных вооще нет. U-gene Результат любой формальной операции интерпретируется в сущность "отчет" Всегда существуют два преобразования: на вводе информации от юзера и на выводе для юзера. Ведь юзер оперирует сущностями а не данными. U-geneПочему? Есть тип INTEGER для котрого определена операция ++. ЧТо мне мешает выдумать тип ОТГРУЗКА, для которого была бы реализована операция "учесть"? Исключительно имхо: тип - это просто именованное множество значений. Операции - это функции, определ. на этом (или другом) множестве с рез-том в этом или другом мн-ве. Классы, свойства и методы на это не очень похожи. Ессно можно создать тип ОТГРУЗКА и написать процедуры и функции для работы с этим типом вот только ООП здесь не причем, не нужно ООП для этого. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.06.2006, 16:27 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Это все очень сложно для меня :) Например Ведь существуют только св-ва объектов, самих данных вооще нет что у меня плавает впамяти, что де состояние объепкта определяется совокупностью значений его то ли атрибутов, то ли свойств ,но раз Вы так уверенноговорите, что де в "свойствах данных нет" то и Бог с ним. Видимо значения - это не данные. Ведь юзер оперирует сущностями а не данными Те цифирки, что там ,в отьчете, напечатаны - это так, баловство. Самое глваное ,что бы отчет на мягкой бумаге был:) Согласен, СУБД можно создать любую. ...лишь бы она была реляционной. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.06.2006, 17:22 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
автор производва коньячного завода г.Кизляр : однако. ))) запросы у Вас граф ( хДраммер) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.06.2006, 23:43 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
U-Gene А я ни слова не говорил про объектные расширения РМД. РМД трогать не надо (это для меня священная корова) - никакие расширения, сужения, изменния или модификации ей не нужны очень благоразумно не пытаться изменять исчисление предикатов первого порядка. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.06.2006, 23:47 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
мод U-gene И все-таки - "противоречит ООП любой модели данных"(хотя бы реляционной) или нет? Я бы сказал, отрицает. Ведь существуют только св-ва объектов, самих данных вооще нет. Мод, Вы могли бы переформулировать эти два предложения другими словами? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.06.2006, 23:54 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
tchingizхотя аргументация странная Тому есть некоторое практическое подтверждение. Согласно последнему (в 2002 году) опросу североамериканских разработчиков, проведенному Evans Data Corporation, более половины опрошенных используют Java. это в той части большая половина, что осталось от большей части, занятой C/C++, то есть 20-25% от общего рынка ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.06.2006, 01:26 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
tchingiz Я бы сказал, отрицает. Ведь существуют только св-ва объектов, самих данных вооще нет. Вы могли бы переформулировать эти два предложения другими словами?[/quot] Попробую. С точки зрения ООП не существует данных, которые не являются свойствами какого-либо объекта. Т.е. любая БД любой модели с ее таблицами, файлами, записями для ООП не существует. Конечно можно создать БД-хранилище объектов, но такая БД не будет иметь никакой модели - это просто куча (heep). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.06.2006, 09:46 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
2 vjl (=мод?) Прелесть какая....Конечно можно создать БД-хранилище объектов, но такая БД не будет иметь никакой модели - это просто куча А другие варианты не проходят? Например - можно создать БД-хранилище объектов и такая БД, являясь кучей .тем не менее будет описываться РМД? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.06.2006, 09:57 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
U-gene А другие варианты не проходят? Например - можно создать БД-хранилище объектов и такая БД, являясь кучей .тем не менее будет описываться РМД? Вы хотите иметь две разные модели для одних и тех же данных. Это возможно при: а) эти модели существуют (для ООП не выполняется) б) они эквивалентны Пример когда это возможно: символьная строка=массив знаков ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.06.2006, 13:58 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
2 мод НЕТ! я не хочу я иметь две модели для одних и тех же данных.... Хотя что -то в этих словах есть:) мод...эти модели существуют (для ООП не выполняется)... Конечно не выполняется. ООП - это штука, место которой между моделями. Еще раз поторяю предложение U-gene - с десяток постов вверх...Давайте так - я вам здесь описываю некую систему (СУБД -в самых общих принципах), и если Вы соглашаетесь, что она является одновременно и ОО и реляционной, вы проставляетесь бутылкой коньяка...Если нет - то это делаю я... Немножко расшифрую - термин ОО будет включать (сложную структуру объектов(ОNF), идентификацию объектов; типы, описывающие объекты ,будут инкапсулированы, наследуемы, полиморфны)... термин "реляционная" берем в его общепринятом понимании (домены, отношения, ключи, операции). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.06.2006, 16:24 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
U-gene я не хочу я иметь две модели для одних и тех же данных... Еще раз поторяю предложение я вам здесь описываю некую систему (СУБД -в самых общих принципах) Тогда еще проще: вы мапируете объекты на РСУБД. Но это так просто что и обсуждать нечего этим все занимаются с переменным успехом. Это не интересно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.06.2006, 16:48 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Не знаю, что Вы вкладываете в термин "маппируете". Если Вы имеете в виду некую систему, позволяющую автоматом созранять состояния программных объектов в РСУБД, то видимо Вы ошибаетесь. Точно могу сказать одно - у меня нет данных вне РСУБД. Если некое значение хранится в таблице РСУБД, то для того, что бы стать значением, описывающим состяние объекта , оно никуда из этой таблицы не переносится. Нигде больше эти значения не существуют. То есть с таким же успехом можно сказать, что любая ОО система программирования "маппирует" объекты в используемую программой оперативную память. И если Вы сможете сказать, что ОО-система программирования является системой маппинга объектов в ОЗУ, то да - мой система маппирует объекты в РБД. Если у Вас язык не повернется это сказать (уменяне поворачивается) - значит мой система тоже не маппирует. И потом. Вы же говорил про модели, а тут вдруг заговорили о реализации. Не интересно с моделями разобраться сначала? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.06.2006, 17:17 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
vjl Попробую. С точки зрения ООП не существует данных, которые не являются свойствами какого-либо объекта. Т.е. любая БД любой модели с ее таблицами, файлами, записями для ООП не существует я с такой точки зрения не думал. ))) точно отрицает. пока не написать обьект поле, обьект запись, обьект таблица и обьект базаданных. я же могу сделать обьект база данных, в котором таблицы будут полями базы, а операторы select, delete, insert, update - методами таблиц? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.06.2006, 02:21 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
U-geneНе знаю, что Вы вкладываете в термин "маппируете".И если Вы сможете сказать, что ОО-система программирования является системой маппинга объектов в ОЗУ, то да - мой система маппирует объекты в РБД. Да, мапппирует=отображает. U-geneИ потом. Вы же говорил про модели, а тут вдруг заговорили о реализации. Это не реализация, речь как раз о моделях и их эквивалентности. Пример я приводил: символьная строка и массив знаков - 2 разные но эквивалентные модели, т.к. существект взаимооднозначное соответствие Классы объектов могут отображаться на РМД (либо каждый по отдельности, либо все скопом, манипуляции с объектами можно транслировать в SQL), но РМД не переводится в классы т.е. эквивалентности нет. А это значит что введение объектов ничего не дает и поэтому лучше сразу работать с РМД и соответственно с РСУБД и SQL (что все и делают). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.06.2006, 09:18 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
tchingizпока не написать обьект поле, обьект запись, обьект таблица и обьект базаданных. я же могу сделать обьект база данных, в котором таблицы будут полями базы, а операторы select, delete, insert, update - методами таблиц? Конечно можно просто подменить термины, но от этого РМД не изменится и проблема останется: сущности моделируются соответствующими классами а классы придется отображать в РМД, затем манипулировать объектами РМД, а вот результат обратно в классы и сущности не преобразовывается. Поэтому лучше сразу работать с РМД, объекты лишние. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.06.2006, 09:34 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
2 мод цитата 1 U-gene Не знаю, что Вы вкладываете в термин "маппируете".И если Вы сможете сказать, что ОО-система программирования является системой маппинга объектов в ОЗУ, то да - мой система маппирует объекты в РБД. Да, мапппирует=отображает. Ок! тогда моя система явялется системой маппинга цитата 2но от этого РМД не изменится и проблема останется: сущности моделируются соответствующими классами а классы придется отображать в РМД, затем манипулировать объектами РМД, а вот результат обратно в классы и сущности не преобразовывается. Поэтому лучше сразу работать с РМД, объекты лишние. Скажите, почему же Вы тоже самое не скажете про ОО-системы программмирования, раз уж они так же являюься системами маппинга объектов в ОЗУ? - а именно (перефразирую Вас применительно к соотношения ОО-систем и оперативной памяти, с некоторыми моими дополнениями): ...но от этого ОЗУ не изменится и проблема останется: сущности моделируются соответствующими классами а классы придется отображать в ОЗУ, затем манипулировать объектами ОЗУпусть это будут ячейки памяти :), а вот результат обратно в классы и сущности не преобразовывается. Поэтому лучше сразу работать с ОЗУ(т.е.пользовать ассемблер), объекты лишние.... Или Вы ОО-языками программирования не пользуетесь принципиально? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.06.2006, 09:49 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
2 мод ...и кстати - что такое - объект РМД? я бы сказал что объекты могут быть в РСУБД, но последнее явно отличается от первого тем, что там есть перменные, а модель данных манипулирует значениями. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.06.2006, 09:52 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
2 мод Кстати, обратил внимание на Вашу фразу (благодоря tchingiz'у) модС точки зрения ООП не существует данных, которые не являются свойствами какого-либо объекта. Т.е. любая БД любой модели с ее таблицами, файлами, записями для ООП не существует. Это фраза показывеат, что Вы пытаетесь соотнести ООП и РМД вполне опреденным образом (так же как те, кто не умеет их готовить:) ), и не видите других путей соотнесения. Да, для ООП моделей данных нет (еще раз повторю, что место ООП между исходной и производной системами типрв), но это не значит, что ООП противоречит или отрицает РМД (или наоборот). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.06.2006, 11:29 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
U-geneСкажите, почему же Вы тоже самое не скажете про ОО-системы программмирования, раз уж они так же являюься системами маппинга объектов в ОЗУ? Скажу: классы фактически отображаются на массивы структур (а те в свою очередь на ОЗУ). U-geneИли Вы ОО-языками программирования не пользуетесь принципиально? Имхо ООП - это стиль процедурного программирования, а выбор стиля - личное дело программера или компании. Лично мне объекты не нужны, мне больше подходят массивы, списки, таблицы, структуры и.т.д. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.06.2006, 11:56 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
U-gene...и кстати - что такое - объект РМД? извините, элемент РМД (отношения) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.06.2006, 11:59 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
U-gene...и кстати - что такое - объект РМД? извините, элемент РМД (отношения) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.06.2006, 12:02 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Имхо ООП - это стиль процедурного программирования... Ну это кому как :) Для меня ООП - приемлемая возможность использовать переменные необходимых мне типов (при необходимости описывая эти типы) . Лично мне объекты не нужны, мне больше подходят массивы, списки, таблицы, структуры и.т.д. Меня не прокидает осщущение, что Вы постоянно путаете реализуемую систему (где ИМХО полезмо мыслить с ОО-стиле) и уже реализованную систему (где речь идет о переменных одного из реализованных типов). Кстати, в связи с этим возник вопрос - есть два значения отношения с разными схемами. Это значения разных типов? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.06.2006, 13:15 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
U-geneДля меня ООП - приемлемая возможность использовать переменные необходимых мне типов (при необходимости описывая эти типы) . Для этого достаточно С. U-gene Меня не прокидает осщущение, что Вы постоянно путаете реализуемую систему (где ИМХО полезмо мыслить с ОО-стиле) и уже реализованную систему (где речь идет о переменных одного из реализованных типов). Не очень понял, но реализуемая и реализованная системы это одно и то же поскольку любая система развивается. Но последовательность мысли всегда одна: сущности -> формальная модель->операции с ней->результат->сущности U-gene Кстати, в связи с этим возник вопрос - есть два значения отношения с разными схемами. Это значения разных типов? если два отношения имеют разные схемы - то это разные типы данных и их значения тоже разных типов ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.06.2006, 15:50 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
по поводу манифеста Ю-Ген а с этой книгой ты знаком? теория хранения и поиска информации http://c-books.info/books/rapid1/index59.htm ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.06.2006, 01:46 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
по м оему, хорошая. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.06.2006, 04:14 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.06.2006, 04:23 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
2.1. Эволюция объектной модели Тенденции в проектировании Поколения языков программирования. Оглядываясь на короткую, но колоритную историю развития программирования, нельзя не заметить две сменяющих друг друга тенденции: * смещение акцентов от программирования отдельных деталей к программированию более крупных компонент; * развитие и совершенствование языков программирования высокого уровня. http://www.hardline.ru/1/5/1390/1789-4.html ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.06.2006, 03:17 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Интервьюер - далее И., Stroustrup - далее C.. И. Прошло несколько лет с тех пор, как Вы изменили мир разработки программного обеспечения. Что Вы теперь чувствуете, оглядываясь назад? C. Вообще-то я думал об этих днях как раз перед тем как Вы приехали. Помните - все писали свои версии 'C', и проблема была в том, что все это делали чертовски замечательно. Университеты тоже чертовски замечательно преподавали этот язык. Это привело к понижению компетенции. Под 'компетенцией' в данном случае я подразумеваю феноменальность. Вот что породило проблему. И. Проблему? C. Да, проблему. Помните когда все писали на Cobol? И. Конечно, я тоже это делал. C. Ну вот, в начале эти ребята были как боги. Им платили кучу денег и относились как к королям. И. Да уж, вот это были времена... С. Именно. Ну и что же случилось? IBM прямо заболела этим и вложила миллионы в подготовку программистов, пока их не стало до ужаса много. И. Вот так и я вылетел из этой сферы. Втечение года зарплата упала настолько, что даже журналистом можно было зарабатывать больше... С. Точно. То же самое случилось и с программистами, писавшими на 'C'. И. Понятно, ну и что же Вы все-таки хотите этим всем сказать? C. Однажды я сидел у себя в оффисе, и мне пришла в голову небольшая идейка, как хоть немного восстановить баланс. Я подумал: интересно, что произойдет, если будет язык программирования такой запутанный и такой сложный для изучения, что никто бы уже не сможет заполнить рынок толпой программистов, пишуших на этом нем? У меня уже были тогда кое-какие мысли по этому поводу. Вот, знаете наверно, X10 и X windows. Это тогда была такая графическая система, которая работала на Sun 3/60. У нее были все ингредиенты, которые мне были нужны - комплексный синтаксис, сложные для понимания мрачные функции, псевдо объектно-ориентированная структура. Даже сейчас никто не пишет напрямую под X-windows. Motif - единственный путь, если вы хотите сохранить рассудок. И. Шутите? C. Ничуть. Есть еще одна проблема. Unix был написан на 'C' - это значило то, что любой программист, пишущий на 'C', мог очень легко стать системным программистом. Помните сколько обычно зарабатывали большинство системных программистов? И. Да, я же ведь тоже этим занимался. С. Так вот, этот новый язык должен был отделять себя от Unix путем скрывания всех системных вызовов, которые так здорово связывают 'C' и Unix. Тогда ребята, знающие только DOS, тоже смогли бы прилично зарабатывать. И. Не верится в то, что Вы это сказали... С. Это уже происходит достаточно долго, но вроде сейчас большинство людей уже уяснили для себя, что C++ - это пустая трата времени, но должен сказать, что осознание этого происходило дольше чем я ожидал. И. Ну расскажите поточнее, как же Вы все-таки сделали это? C. Это была просто шутка, я никогда не думал, что люди воспримут эту книгу всерьез. Любой человек, даже с половиной мозга, может понять что объектно-ориентированное программирование интуитивно, нелогично и неэффективно. И. Что? С. И относительно 'повторно-используемого кода' - Вы когда-нибудь слышали, чтобы хоть одна компания 'повторно-использовала' что-либо? И. Ну, вообще-то не слышал, но... С. Вот так-то. Некоторые, кстати, пытались. Была такая компания из Орегона - Mentor Graphics, в которой просто заболели тем, что пытались переписать все что можно на C++ в '90 или '91 году. Я на самом деле им сочувствовал, но думаю, что люди по крайней мере, научились чему-то на их ошибках. И. Очевидно у них ничего не вышло? С. Вообще ничего. Но было бы сложно объяснить держателям акций компании ущерб в 30 миллионов долларов и вот, надо отдать им должное , они все-таки заставили это работать в итоге. И. Так все-таки у них получилось? Это доказывает что 'объектное-ориентирование' работает. C. Почти. Запускаемый файл получился такой огромный, что загружался 5 минут на рабочей станции HP со 128Mb оперативной памяти. Я думал, что это станет камнем преткновения, но это никого особенно не заботило. Sun и HP были очень рады продавать до ненормальности мощные ящики с огромными ресурсами для выполнения на них тривиальных программ. Знаете, когда мы в AT&T откомпилировали нашим первым компилятором C++ программку 'Hello World', я не мог поверить своим глазам: запускаемый файл получился размером 2.1Mb. И. Да уж... Но компиляторы с тех пор прошли долгий путь. C. Вы так думаете? Попробуйте тот же пример 'Hello World' с последней версией g++ - вы получите примерно пол-мегабайта. А кроме этого есть еще множество примеров со всего мира. У British Telecom чуть было не возникли большие проблемы, но к своему счастью они вовремя догадались свернуть проект и начать все заново. И им больше повезло, чем Australian Telecom. А теперь я слышал, что Siemens cоздает какого-то динозавра и все больше и больше волнуется по поводу размера того, что у них получается. Не правда ли забавно смотреть на это всеобщее заблуждение? И. Да, но C++ -то, в общем, вполне нормальный язык. С. Вы в это так верите? Попробовали ли вы когда-нибудь сесть и поработать над проектом на C++ ? Во первых, я расставил достаточно ловушек, чтобы просто так работали только тривиальные проекты. Под конец проекта получается что одни и те же операторы в разных модулях означают совершенно разные вещи. А теперь попробуйте соединить все эти модули в единое целое, особенно если у вас их штук 100. Боже, я иногда не могу удержаться от смеха, когда слышу о проблемах разных компаний, которые не могут сделать так, чтобы их модули общались между собой. И. Я должен сказать, что совершенно сбит с толку всем что Вы сказали. Вы сказали что сделали это для того, чтоб повысилась оплата труда программистов. Но это же бессмыслица. С. Не совсем так. У каждого есть его выбор. Я не предполагал, что все это так выйдет из-под контроля. Но все-равно, практически все у меня получилось. C++ cейчас уже умирает, а труд програмистов продолжает нормально оплачиваться - особенно тех, кто имеет дело со всей этой чепухой - вы же понимаете, что невозможно использовать эффективно большой программный модуль на C++ , если не вы сами его написали. И. Как это? С. Не понятно что-ли? Помните typedef ? И. Конечно. С. А теперь вспомните сколько времени приходится копаться в заголовках для того, например, чтобы просто найти, что какое-нибудь там 'RoofRaised' - число с двойной точностью. Представьте теперь сколько времени уйдет на нахождение всех определений типов в большом проекте. И. Значит, Вы утверждаете, что Вам все, что Вы хотели удалось... C. Ну, вспомните сколько занимает реализация проекта среднего размера на 'C'. Это около 6 месяцев. Не достаточно долго чтобы парень с женой и детьми мог заработать себе на нормальное существование. Попробуйте тот же проект реализовать на C++ , и что получится? Вам понадобится 1-2 года. Не правда ли, это замечательно? Кроме этого: в университетах уже так давно не преподают 'C', что теперь стало мало людей программирующих на 'C', особенно таких, которые знают все о программировании под Unix. Как вы думаете : сколько парней смогут сообразить что делать с 'malloc' , после того как втечение многих лет они пользовались 'new' и никогда не заботились о проверке кода возврата? Большинство программистов на C++ вообще не выбрасывают этот код возврата. Что произошло со старой доброй '-1' ? По крайней мере было сразу понятно, что у тебя где-то ошибка без всяких там 'throw', 'try' и 'catch'... И. И все же, наследование экономит кучу времени? С. Нет, я же говорил... Замечали, в чем разница между стадиями планирования проектов на 'C' и C++ ? Для проекта на C++ эта стадия в три раза дольше. Время уходит на то, чтоб убедиться что все что надо наследуется, а все что не надо - нет. И все-равно без ошибок не обходится. Кто слышал когда-нибудь об утечке памяти в программе на 'C' ? Теперь нахождение этих утечек - целый труд. Большинство компаний сдаются, так и выпускают продукт, зная что утечка памяти существует. И. Но есть различные программные инструменты... С. Большинство из которых написаны на C++. И. Если мы опубликуем все это, то Вас просто могут линчевать, понимаете ? C. Сомневаюсь. Как я сказал C++ уже уходит в прошлое. Ни одна компания без предварительного тестирования теперь не начнет проект на C++, а если будет тестирование, то они поймут, что это путь к неудаче. Если не поймут - то так им и надо. Знаете, я пытался убедить Dennis'a Ritchie переписать Unix на C++. И. О Боже. И что же он сказал? C. К счастью у него присутствует хорошее чувство юмора. Я думаю и он, и Brian понимали что я тогда делал. Он ответил, что может мне помочь написать версию DOS на C++, если я захочу. И. Ну и как? Вы захотели? С. Я написал DOS на C++. Могу дать вам demo. Она у меня работает на Sparc 20 в другой комнате. Просто летает на четырех процессорах и занимает всего то 70 мегабайт на диске. И. На что же это похоже на PC ? С. Вы, очевидно, шутите. Видели же вы Windows'95 ? Я о них думаю как о своем величайшем успехе. И. Знаете, эта идея насчет Unix++ заставила меня задуматься. Ведь где-то может сидеть парень, которому придет в голову сделать это... С. Но не после того, как он прочитает это интервью. И. Я сожалею, но врядли мы сможем опубликовать даже часть этого интервью. С. Но это же история века. Я просто хотел чтоб мои приятели-программисты помнили меня за то, что я для них сделал. Знаете как сейчас оплачивается программирование на C++ ? И. Последнее, что я слышал - настоящие профессионалы зарабатывают $70-80 в час. С. Понимаете теперь? И я уверен, что он заслуживает этих денег. Отслеживание всех этих ловушек, которые я встроил в C++ - не легкая работа. И, как я говорил раньше, каждый программист на C++ чувствует себя связанным тем обстоятельством что он должен использовать каждый элемент языка в каждом проекте. Вообще это и меня часто раздражает, даже тогда, когда это служит моим целям. Но сейчас, когда прошло столько времени, мне уже начинает нравиться этот язык... И. Имеете ввиду, что раньше Вам C++ не нравился? С. Ненавидел его. Он даже выглядит неуклюже, вы не согласны? Но когда стали там выходить разные книги... вот, тогда-то я и увидел полную картину. И. Погодите, а как насчет ссылок? Вы подтверждаете что улучшили указатели 'C' ? С. Хмм. Я и сам не знаю. Вообще я думал, что да. Потом я как-то говорил с парнем, который писал на C++ с самого начала. Он говорил, что не мог запомнить были ли ссылки на его переменные или нет, поэтому он всегда использовал указатели. И. Обычно на этой стадии я говорю 'большое спасибо за интервью', но сейчас это как-то не к месту. С. Пообещайте мне, что опубликуете это. И. Я извещу Вас, но мне кажется, что я знаю, что скажет мой редактор по этому поводу. С. А все-равно, кто этому поверит? Кстати, не могли бы вы мне прислать копию этой записи? И. Это я могу. Примечание переводчика : Я не программирую на C++. Я не являюсь знатоком русской словестности. Посему прошу извинения за возможные ошибки в переводе. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2006, 13:15 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
мод tchingizпока не написать обьект поле, обьект запись, обьект таблица и обьект базаданных. я же могу сделать обьект база данных, в котором таблицы будут полями базы, а операторы select, delete, insert, update - методами таблиц? Конечно можно просто подменить термины, но от этого РМД не изменится и проблема останется: сущности моделируются соответствующими классами а классы придется отображать в РМД, затем манипулировать объектами РМД, а вот результат обратно в классы и сущности не преобразовывается. Поэтому лучше сразу работать с РМД, объекты лишние. не допонял про подмену терминов. РМД не изменится. согласен. Согласно реляционной модели данных результат манипулирования будет отношение (таблица по рабоче-крестьянски). Я предложил считать таблицу - обьектом, согласно следующему определению. любое поименованное множество - тип данных. На множестве всех типов данных вводим отношение наследования (в некотором языке программирования Л). если два типа данных находятся в отношении наследования Л, то эти типы называются классами. Любой элемент класса называется обьектом. Берем класс виртуальную таблицу T, таким образом, что бы там были определены методы select, insert, delete, update. например в http://users.iptelecom.net.ua/~agp1/ru/gsau.html 5.6. Описание нового типа данных Relation. /* Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. потом наследуешь конкретную таблицу, например, в 5.4. Описание таблицы типа TPump. если берем этого класса, t: TPump, тогда можно писать t.delete(ids), где id: Key:set - множество значений первичных ключей (для некоторого абстрактного класса Key). см. например, в раздел 5.3.2. Использование оператора DELETE. То есть ничего никуда преобразовавать не надо. Любая конкретная таблица - это обьект класса. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.06.2006, 05:53 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
2eys Интересно, но... НЕ ВЕРЮ, вот в это - Stroustrup - далее C !!! Ссылку на первоисточник можно? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2006, 01:24 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
это шутка /topic/16555&hl=%e8%ed%f2%e5%f0%e2%fc%fe ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2006, 03:50 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
tchingizесли два типа данных находятся в отношении наследования Л, то эти типы называются классами. это не понял. тип decimal наследник типа number и кто здесь класс ? Конечно можно назвать все множество любых таблиц классом, каждую таблицу объектом а реляционные операторы методами, но это просто игра терминами ничего не меняющая по сути. Подход ООП в том чтобы разные сущности моделировать разными классами (а не одним !) отказавшись при этом от РМД за ненадобностью ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2006, 10:03 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
класс будет родитель и наследник. они же оба состоят в отношении наследования. авторПодход ООП в том чтобы разные сущности моделировать разными классами (а не одним !) отказавшись при этом от РМД за ненадобностью ну если именно в этом состоит подход ооп, то я с Вами согласен. отказываться от рмд смешно. вот у меня статья 1994 года. http://users.iptelecom.net.ua/~agp1/ru/kbd.html я там в рмд располагал описание географических обьектов. я тогда говорил - это обьект и сейчас говорю это обьект. в борланде с++ (шобы не соврать, может уже забыл) были написаны обьект для работы с ней. по крайней мере сейчас. я могу написать класс географический_обьект, а из него классы наследовать географический_обьект_дорога, географический_обьект_фонарь и т.д. ))))) согласен считать, что мой подход (как следует из Вашего тезиса) не будет называться ооп. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.06.2006, 02:15 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
ээ. уточнить решил. а обьект класса географический_обьект читает/пишет свое описание из/в реляционной базы данных, используя ранее упомянутые обьекты таблица, запись и поле. не усматриваю особых проблем моих обьктов с рмд. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.06.2006, 02:30 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
tchingizа обьект класса географический_обьект читает/пишет свое описание из/в реляционной базы данных, используя ранее упомянутые обьекты таблица, запись и поле. не усматриваю особых проблем моих обьктов с рмд. Проблема в том что объект (в вашем случае географический) существует только на время выполнения программы, т.е. при каждом запуске программы надо выполнять конструкторы, т.е создавать "новые" объекты. Но это логически неверно, ведь объекты уже были когда-то созданы и сохранены (в виде таблиц) в РБД. Поэтому имхо гораздо логичнее считать что существует не объект а его информационная модель в РБД и работать не методами объектов а операциями с таблицами. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.06.2006, 09:57 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Какой-то тухлый разговор :) модПодход ООП в том чтобы разные сущности моделировать разными классами (а не одним !) отказавшись при этом от РМД за ненадобностью С первой половиной фразы я, может быть, и соглашусь. Но связи между первой и второй половиной не вижу. Вторая половина - это ИМХО широко распространенное (к сожалению), абсолютно идиотское и никем не обоснованное утверждение. На самом деле всё наоборот - РМД вполне может сосуществовать с описанием сущностей в виде классов. Возращаясь немного назад.... модИмхо ООП - это стиль процедурного программирования, а выбор стиля - личное дело программера или компании. Лично мне объекты не нужны, мне больше подходят массивы, списки, таблицы, структуры и.т.д. Не понимаю - а какая связь (или противоречие) между процедурным программированием (хотя бы и ООП, хотя на самом деле это вообще разные вещи) и "массивами, списками, таблицами, структурами и.т.д". Объекты Вам не нужны? да и ради бога. Но ведь переменными то (списками, массивами, таблицами и тд) Вы же пользуетесь? Ведь списки, массивы, таблицы итп - это же так или иначе есть не что иное как переменные, правда?... модНе очень понял, но реализуемая и реализованная системы это одно и то же поскольку любая система развивается....Вот я про это и говорю. Это не одно и тоже. Под системой я подразумеваю набор переменных уже реализованных типов. А ООП предлагает подход к реализации типов. А если типы (массивов, списков и тп) уже реализованы - естественно ООП не нужно :). Переменные (объекты) описаны - можно пользоваться. Далее... мод...если два отношения имеют разные схемы - то это разные типы данных и их значения тоже разных типов То есть получается, что, что в результате некой предопределёной операции (например декартово произведение) над значениями в системе может появиться значение нового типа? В РМД нет отдельно взятых операций над схемами. Существуют только опреации над отношениями. Конечно , когда долго общаешся с SQL СУБД может возникнуть впечатление, что де можно манипулировать схемой. Например когда мы добавляем в таблицу столбец, кажется, что мы манипулируем схемой. Однако, с позиций РМД мы просто выполнили декартово произведение. Отношение (= значение) состоит из заголовка и тела. Исходя из этого можно предполагать, что заголовок - это тоже значение. Хоть и мета... ,а все же ...данные. :). Другими словами любые значения отношений с любыми заголовками принадлежат одному и тому же типу. Это так или иначе подтвердждаете Вы сами, когда говорите, что "можно назвать множество любых таблиц классом ". То есть любые таблицы есть переменные(объекты) одного и того же типа(класса). Что же касается операций, когда требуется ,что бы заголовки операндов совпадали, так это просто ограничение на значение.... например в арифметике есть такое ограничение "делить на нль нельзя". Здесь возможность(невозможность) выполнения операции зависит от значения. Точно так же вопрос "совпадают ли заголовков" есть вопрос сравнения значений отношений, точнее той их части, которая описывает схему, но не вопрос сравнения типов . Это все я к тому, что описывая схему данных в терминах РМД Вы не создаете новые типы. Вы пользуетесь уже реализованной системой, которая реализует модель данных (т.е. в этой системе модель данных уже реализована). А ООП нужно, не когда мы пользуемся реализованной системой, а когда мы ее только реализуем . Возвращаясь еще дальше назад.... мод U-gene модно от этого РМД не изменится и проблема останется: сущности моделируются соответствующими классами а классы придется отображать в РМД, затем манипулировать объектами РМД, а вот результат обратно в классы и сущности не преобразовывается. Поэтому лучше сразу работать с РМД, объекты лишние. Скажите, почему же Вы тоже самое не скажете про ОО-системы программмирования, раз уж они так же являюься системами маппинга объектов в ОЗУ? - а именно (перефразирую Вас применительно к соотношения ОО-систем и оперативной памяти, с некоторыми моими дополнениями) ...но от этого ОЗУ не изменится и проблема останется: сущности моделируются соответствующими классами а классы придется отображать в ОЗУ, затем манипулировать объектами ОЗУпусть это будут ячейки памяти :), а вот результат обратно в классы и сущности не преобразовывается. Поэтому лучше сразу работать с ОЗУ(т.е.пользовать ассемблер), объекты лишние....: Скажу: классы фактически отображаются на массивы структур (а те в свою очередь на ОЗУ).УПС..... но тогда почему же вы говорите (продолжаю перефраз) модПодход ООП в том чтобы разные сущности моделировать разными классами (а не одним !) отказавшись при этом от ОЗУ за ненадобностью.... Никто же не собираетесь отказываться от ОЗУ... ну потому что ООП без ОЗУ ну никак не реализовать То есть "маппинг" я использую Вашу интетерепацию этого термина, хотя ИМХО он здесь мягко говоря ни к чему...хотя может быть это я в маппинге не разбираюсь "объектов в ОЗУ" является вещью никаких проблем не вызывающей, а вот маппинг объектов в реляционные структуры вдруг стал проблемой. Почему? Может быть этот самый "маппинг" из объектов в отношения какой то не такой, какой нужно? То есть "маппинг объектов в ОЗУ" удался (явно удался, даже если ООП Вам и не нужно), но с маппингом объектов в отношения как то пока не сраслось. Хорошо, а Вы поможете мне с маппингом разобраться?... Начнем с маппинга объектов в отношения. Моему мысленному взору рисуется следующая картина. В процессе релизации системы кто-то и как-то замутил это самый маппинг. И вот система реализована . В ней существуют переменные (которые описывались в процессе реализации как объекты) и благодаря маппингу данные из этих переменных аутоматично распихиваются по где-то там существующим в РБД таблицам и потом собираются обратно в переменные системы. То есть если мод...объект (в вашем случае географический) существует только на время выполнения программы, т.е. при каждом запуске программы надо выполнять конструкторы...... то система маппинга так или иначе позволет не фиксироваться в процессе описании переменных(объектов) на распихивание данных из этих объектов в таблицы и, затем, при восстановлении объекта, на вызове конструкторов, собирающих данные из таблиц и других т.п. вещах и проблемах, возникающих при взаимодействии программы с БД? Скажите, правильно ли я понимаю, что именно этим и занимается маппинг? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.06.2006, 20:42 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
2 U-gene вы так много написали не знаешь на что и отвечать но попробуем U-gene РМД вполне может сосуществовать с описанием сущностей в виде классов. это надо бы доказать U-gene Ведь списки, массивы, таблицы итп - это же так или иначе есть не что иное как переменные, правда? не совсем. надо различать тип данных массив и переменную этого типа. U-gene Под системой я подразумеваю набор переменных уже реализованных типов. А ООП предлагает подход к реализации типов. Возможность создавать свои типы появилась задолго до ООП и не имеет к нему никакого отношения. U-gene То есть получается, что, что в результате некой предопределёной операции (например декартово произведение) над значениями в системе может появиться значение нового типа? да, может появиться отношение нового типа. U-geneВ РМД нет отдельно взятых операций над схемами. А DDL ? create table xxx as select ..... U-geneЭто все я к тому, что описывая схему данных в терминах РМД Вы не создаете новые типы. каждая новая таблица это новый тип данных наследник общего типа таблица U-gene система реализована . В ней существуют переменные (которые описывались в процессе реализации как объекты) и благодаря маппингу данные из этих переменных аутоматично распихиваются по где-то там существующим в РБД таблицам и потом собираются обратно в переменные системы. В том то и дело что не аутоматично (в отличие от ОЗУ). Это все придется программировать для каждого класса отдельно. Только вот зачем все это? Какие цели преследуем ? Сохранить ООП как религию ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.06.2006, 09:48 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
.... Я то думал автор U-gene Под системой я подразумеваю набор переменных уже реализованных типов. А ООП предлагает подход к реализации типов. Возможность создавать свои типы появилась задолго до ООП и не имеет к нему никакого отношения.Я нигде не говорил, что до ООП такой возможности не было. Более того - я говорил обратное. И там же я говорил, что ООП всего лишь более удобен по ряду причин - но это значительные удобства. мод U-gene То есть получается, что, что в результате некой предопределёной операции (например декартово произведение) над значениями в системе может появиться значение нового типа? да, может появиться отношение нового типа. Нет это не новый тип.ответ в вашем стиле:). Я уже сказал, что иная схема не означает иной тип - это просто иное значение. мод U-geneВ РМД нет отдельно взятых операций над схемами. А DDL ? create table xxx as select ..... В огороде бузина(РМД) в Киеве дядька (SQL). Еще раз повторяю - в РМД нет операций над схемами. С точки зрения РМД выполнена предопределнная операция проекции над значением отношения - и все. А с точки зрения системы создана новая переменная позволяющая хранить значение предопределенного типа relation, и это все тот же тип и никаких новых типов при этом не создается. мод U-geneЭто все я к тому, что описывая схему данных в терминах РМД Вы не создаете новые типы. каждая новая таблица это новый тип данных наследник общего типа таблица ...идея ясна, но аргументов нет. мод U-gene система реализована. В ней существуют переменные (которые описывались в процессе реализации как объекты) и благодаря маппингу данные из этих переменных аутоматично распихиваются по где-то там существующим в РБД таблицам и потом собираются обратно в переменные системы. В том то и дело что не аутоматично (в отличие от ОЗУ). Это все придется программировать для каждого класса отдельно. ...если не аутоматично, то это тупое ручное кодирование процесса сохранения данных в СУБД и восстановления их оттуда. Никакой системой маппинга тут вообще не пахнет. То есть когда речь заходит о маппинге, что ИМХО идея в том, что бы как то облегчить этот тупой ручной труд. Но я спрашивал в общем то не о том, насколько аутоматичен этот процесс. Основная цель - уточнить, что маппинг так или иначе подразумевает перенос данных из объектов в СУБД и обратно. Это так? модТолько вот зачем все это? Какие цели преследуем ? Сохранить ООП как религию ? Всего лишь как удобный подход. мод U-geneРМД вполне может сосуществовать с описанием сущностей в виде классов. это надо бы доказать Доказать вряд ли, поскольку ООП есть лишь набор идей, но показать могу... я же уже два разворота предлагаю сделать это, но Вам коньяк жалко что ли...:)....тем более, что вы верны, что это невозможно и сдледовательно, должны быть уверены в том, что ничем не рискуете...И потом - исходя из того, как лихо Вы агрументируете фразы про РМД выряжениями на SQL , я опасаюсь, что эта демонстрация может быть Вам не совсем очевидна....:) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.06.2006, 11:18 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Работающая ссылка на то, где и что я говорил, про сохдание переменных ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.06.2006, 11:20 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
давайте о главном U-geneОсновная цель - уточнить, что маппинг так или иначе подразумевает перенос данных из объектов в СУБД и обратно. Это так? Да. При этом я считаю это лишним преобразованием, не дающим никаких преимуществ, но вызывающим логические несуразности типа неоюходимости создания уже существующих объектов. Собственно этого вполне достаточно для того чтобы не использовать ООП. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.06.2006, 11:38 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
моддавайте о главном Не видать мне коньяка мод U-geneОсновная цель - уточнить, что маппинг так или иначе подразумевает перенос данных из объектов в СУБД и обратно. Это так?Да. При этом я считаю это лишним преобразованием, не дающим никаких преимуществ, но вызывающим логические несуразности типа неоюходимости создания уже существующих объектов. Собственно этого вполне достаточно для того чтобы не использовать ООП. Подождите-подождите. Я еще с маппингом не разобрался. Дело в том, что Вы тут сказали,что де объекты в ОЗУ -это тоже маппинг. Но ведь перенос информации из объетов в ОЗУ не происходит. Итак - есть набор простейших перменных, логически сгруппированных в виде объектов. Это ОО система. Есть набор простейших перменных, логически сгруппированных в виде отношений. ЭТО РБД. При маппинге происходит перенос данных из одного набора простейших переменных в другой набор. А "маппинг объектов в ОЗУ", это никакой не маппинг и никакого переноса данных тут нет - это просто логическое представление данных. Это я к тому, что может быть ООП вообще ни в чем не виновато? То, в чем вВы его обвиняете - это всего лишь проблемы обмена данными? Тоесть если данными не обмениваться, то все глядишь и получится. :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.06.2006, 12:08 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
U-geneЭто я к тому, что может быть ООП вообще ни в чем не виновато? То, в чем вВы его обвиняете - это всего лишь проблемы обмена данными? Тоесть если данными не обмениваться, то все глядишь и получится. :) Для этого необходим автомат (транслятор-компилятор), который любой класс отображает по заданному правилу в РМД - это можно сделать и это уже сделано. А вот наоборот - РМД в классы не получается. И вся конструкция падает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.06.2006, 12:43 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
модДля этого необходим автомат (транслятор-компилятор), который любой класс отображает по заданному правилу в РМД - это можно сделать и это уже сделано. Отображать в общем то ничего и не надо. Всего то и надо - описывая значения, определяющие состяние объекта, пользоваться типами, допустимыми в РМД (т.е. использовать типы-скаляры и тип-отношение)....Ну вот - я уже наговорил на бутылку пива :) модА вот наоборот - РМД в классы не получается. А раз туда не надо, то и обратно - оно само собой получается. Правда. мод И вся конструкция падает. дык....я же сказал - они просто не сумели ее правильно приготовить. :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.06.2006, 23:32 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
U-geneОтображать в общем то ничего и не надо. Всего то и надо - описывая значения, определяющие состяние объекта, пользоваться типами, допустимыми в РМД Описание свойств класса в терминах РМД как раз и означает отображение класса на РМД. Но (повторяю) РМД обратно в классы не отображается и следовательно вся система не работает. Все это уже давно опробовано на практике, если хотите можете и вы не теоретизировать а попробовать реализовать - результат будет тот же. U-gene дык....я же сказал - они просто не сумели ее правильно приготовить. :)попробуйте вы ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.06.2006, 11:10 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Касаемо "маппинга объектов в ОЗУ"... мод...Но (повторяю) РМД обратно в классы не отображается... И снова - идея ясна (даже без повторений), но доказательсв нет...А что - ОЗУ обратно в классы прямо так с налета отображается, да? А что Вы вообще имеете в виду, когда говорите слово "отображается". А еще, заинтересовал следующий момент. Вот Вы сказали, что де прочитали НРМ и считаете его очисто реляционным. Но ведь данные то там описываются как классы (наследуемые и полиморфные), значение, описывающее состояние объектов, имеют ненормализованную структура (в целом), возможны ссылки, методы и др. ОО дела ....А потом НРМ показыает, что такое описание данных можно рассматрвать так же как определние множева отношений. То есть одно и тоже описание задает одновременно и классы и отношения и ничто никуда "отображать" вообще не нужно, поскольку описание и того и другого уже существует. Мне хочется понять, в каком месте Вы эту простую мысль недопоняли, что бы это место подробнее и понятнее прописать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.06.2006, 13:05 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
U-geneВы сказали, что де прочитали НРМ и считаете его очисто реляционным. Я был не прав - я решил что вы разрешаете DML. По сути НРМ это отображение классов на РМД, но вместо РМД можно с таким же успехом использовать любую другую формальную структуру, т.е РМД вам не нужна. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.06.2006, 15:51 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Опять двадцать пять :) Давайте повторим по другому мод U-gene Это я к тому, что может быть ООП вообще ни в чем не виновато? То, в чем вВы его обвиняете - это всего лишь проблемы обмена данными? Тоесть если данными не обмениваться, то все глядишь и получится. :) Для этого необходим автомат (транслятор-компилятор), который любой класс отображает по заданному правилу в РМД - это можно сделать и это уже сделано. А вот наоборот - РМД в классы не получается. И вся конструкция падает. Есть объекты. Они в ОЗУ. Значит существует автомат (транслятор-компилятор), который любой класс отображает по заданному принципу в ОЗУ - это можно сделать и это уже сделано. И очевидно (исходя из ващей идее о взаимных "отображениях") существует что-то что "отображает" ОЗУ обратно в объекты. У меня вопрос - как ОЗУ "отображается" обратно в классы? Почему это невозможно для реляционной системы хранения? модПо сути НРМ это отображение классов на РМД, но вместо РМД можно с таким же успехом использовать любую другую формальную структуру, т.е РМД вам не нужна. Не знал. Теперь знаю. :) В целом впечатление от этой фразы хорошо описываются выражением " офигеть - дайте две". Например пишет человек о горении дров, а ему заявляют, что де "все это можно написать и про горение любого горючего материала, т.е. Вам дрова вам не нужны"... А я хочу именно про РМД*ООП - можно? :) Все таки два разворота назад прошла так и не доказанная(повторения и "ни у кого не получилось" к доказательствам не относятся) фраза, что де ООП чему то там противоречит. И мне просто хочется выяснить, что,где и как противоречит - потому что я уверен в обратном. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.06.2006, 17:38 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
U-gene ...существует что-то что "отображает" ОЗУ обратно в объекты. У меня вопрос - как ОЗУ "отображается" обратно в классы? Почему это невозможно для реляционной системы хранения? А ОЗУ обратно в классы не отображается, т.е. произвольные операции над ОЗУ испортят объекты. То же самое и для РСУБД: манипуляции с таблицами испортят объекты, которые на этих таблицах базируются. Т.е. манипулировать можно только методами классов, т.е про ОЗУ и РБД можно забыть как будто их не существует вовсе. Это и значит что ООП делает невозможным и не нужным применение других моделей. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.06.2006, 09:29 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
модА ОЗУ обратно в классы не отображается, т.е. произвольные операции над ОЗУ испортят объекты И что дальше? Я уже третий раз спрашиваю, что значит слово "отображаются" в Вашей интерпретации. И в второй раз говорю, что речь об отображении не идет. Вот скажите, когда мы пишем CREATE TABLE (абстрагируемся пока от некоторых нереляцилонных фичей SQL) мы подразумеваем существование отношений, правда? Как только мы начали это подразумевать, мы можем применять к этим отношениямреляционные операции, и ничто никуда не отображается не нужно. И точно так же НРМ показывает, что написав выражение CREATE CLASS ( ненормализованное значение,ссылки, методы, наследование полиморфизм и инкапсуляция и тд и тп и др. ОО дела ....), можно и нужно подразумевать существования множества отношений. к которым применимы групповые операции. Ни о каких "отображениях" речи не идет. Они есть. мод.е. манипулировать можно только методами классов, т.е про ОЗУ и РБД можно забыть как будто их не существует вовсе..... и слава богу ,однако это не значит, что данные при этом не могут не могут быть представлены как множество отношений. Более того НРМ показывает, что вызов метода также может стать групповым, в том смысле что вызов метода у группы объектов не потребует циклов по этим объектам даже в реализации. модЭто и значит что ООП делает невозможным и не нужным применение других моделей Хорошо, давайте тогда заключим пари. Я не берусь утверждать, что это нужно(это интимное дело каждого), однако я могу попытаться доказать,что это возможно и даже полезно. Ставки 1:3 в Вашу пользу конечно :). Пусть будет в том же коньяке...или в чем нибудь еще - на Ваш выбор... :) В качестве арбитра может выступить великий ALL. Согласны? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.06.2006, 19:23 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
фразу "Ни о каких "отображениях" речи не идет. Они есть. " сдедует читать как "Ни о каких "отображениях" речи не идет. Они (отношения) уже есть. " ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.06.2006, 19:49 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
U-gene однако я могу попытаться доказать,что это возможно и даже полезно. Не буду спорить. Возможно - да, это и доказывать не надо. Что из этого получается - второй вопрос. Полезно - вообще субъективный фактор. Но ! Если вы работаете с классами, методами классов, то какая разница, куда это все транслируется. Причем тут РМД, если вы нигде не используете ее возможности. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.07.2006, 10:06 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
модПричем тут РМД, если вы нигде не используете ее возможности.Я, чем больше с Вами разхговариваю, тем больше удивляюсь Вашей способности делать неивестно откуда берущиеся выводы. Почему Вы считеает, что я де чего то там не использую? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.07.2006, 12:30 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
U-geneПочему Вы считеает, что я де чего то там не использую? Ну тогда ткните плиз в то место НРМ где используется именно РМД (может я чего просмотрел) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.07.2006, 14:11 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
модНу тогда ткните плиз в то место НРМ где используется именно РМД Дык боюсь пальцев не хватит. мод(может я чего просмотрел) ИМХО Вы ничего и не смотрели. Как вариант - Вы смотрели крайне бегло до 6-й страницы и (что ИМХО самое важное), читая не то, что написано, а что то свое. Там от начал до конца РМД. Единственно - что в начале приводится система типов (все ОО дела), однако сразу далее там показано ,что система, реализующая предложенную сиситему типов является реляционной - и именно из-за этого все и затевалось. Поэтому спросить, где НРМ использует РМД - это расписаться в своем неознакомлении. Вы речь оппонента алализировать можете? Я еще раз повторяю, что отношения определяются в момент, когда пользователь описывает класс. Не создаются где то там унутри в реализации(как Вы себе представляете), не отображаются откуда то и куда то меж двух систем(программой и СУБД - как Вы себе представляете), а определяются для этого же пользователя в том же самом пространстве имен, на том же уровне..ну не знаю как еще объянить. Говоря по простому, как только пользователь описал класс (со всеми ОО делами), он сразу же может писать запросы обащаощиеся с его точки pytybz к классу, и эти запросы являются реляционными. Или когда пользоваель описывает класс он вводит ограничения целостности и они тоже являются по сути своей реляционными. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.07.2006, 14:47 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
U-geneГоворя по простому, как только пользователь описал класс (со всеми ОО делами), он сразу же может писать запросы обащаощиеся с его точки pytybz к классу, и эти запросы являются реляционными. Вот это по сути. Понятно что после описания класса можно строить запросы к классу, но почему они реляционные ? Что в них реляционного. Можно строить объединение классов ? И что это будет ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.07.2006, 15:53 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
модно почему они реляционные ? Что в них реляционногоПотому что они реализуют реляционную алгебру и работают с отношениями. Потому что система, реализующая принуципы НРМ является реляционной системой в соответсвии с определнием посдледней. Если Вам интересно - можно напрячся и про(пере)читать НРМ (это не так сложно). Конечно более легкая альтернатива - продолжать утверждения о "несовместимости" и "противоречивости", а так же об отображениях, маппинге, импедансе моделей и т.п. мути, коей за последнеии двадацать лет накопилось немало. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.07.2006, 16:53 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Повторю вопрос: можно строить объединение классов ? (только не говорите о раскрытии ссылки - это немного не то) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.07.2006, 17:14 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Что такое - "объединени классов?". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.07.2006, 17:39 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
U-geneЧто такое - "объединени классов?". U-geneПотому что они реализуют реляционную алгебру и работают с отношениями Объединение - операция реляционной алгебры. Как ее выполнить для классов ? Т.е. вопрос простой - какие операции рел. алгебры применимы к классам ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.07.2006, 17:50 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
мод U-gene Потому что они реализуют реляционную алгебру и работают с отношениями ...можно строить запросы к классу, но почему они реляционные... ИМХО из фраз следует, что определние "реляционные" относятся к слову "запросы". Поэтому появление этой фразы в разговоре о классах мне непонятно. модОбъединение - операция реляционной алгебры. Как ее выполнить для классов А какое отношение классы имеют к реляционной алгебре? Если , описывая класс , я определяю множество отношений (я про это здесь необнократно говорил), наверно стоит сделать вывод о том, что классы и отношения - это все же не одно и тоже. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.07.2006, 18:07 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
U-geneчто классы и отношения - это все же не одно и тоже. Предположим что это так. Тогда вопрос: можно ли вообще применять рел. алгебру в рамках НРМ или только методы классов ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2006, 09:43 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Если есть отношения, то попробуйте угадать с трех раз, можно ли рел.алгебру применять? А насчет методов еще раз повторю что "вызов метода также может стать групповым, в том смысле что вызов метода у группы объектов не потребует циклов по этим объектам даже в реализации" - и это благодоря очевидным свойствам операция реляционной алгебры. В первом приближении методы нужны для того, что менять состояние объектов (одного или множества, что в общем то суть одно и то же). А рел алгебра нужно, что бы манипулировать с данными об объектах. И всё это в одном пространстве имен. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2006, 11:07 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
U-geneА рел алгебра нужно, что бы манипулировать с данными об объектах. И всё это в одном пространстве имен. Отлично. Есть два класса А и Б и них есть свойства-отношения А1 и Б1. Результат операции объединения А1 и Б1 будет третье отношение С1. К какому классу его отнести ? Варианты: а)ни к какому б)обязательно должен существовать класс С со свойством С1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2006, 11:32 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
U-geneвызов метода также может стать групповым Вообще-то в ООП метод применяется только к одному объекту (который self). Иначе это уже не совсем ООП (или вернее совсем не ООП). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2006, 11:37 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Нуи к какому - это значение, содержащее некие данные об объектах этих классов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2006, 11:37 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
мод U-gene вызов метода также может стать групповым Вообще-то в ООП метод применяется только к одному объекту (который self). Иначе это уже не совсем ООП (или вернее совсем не ООП). Конечно, метод определяется пользователем-программистом как последовательность действий, манипулирующих данными одного единственного объекта. Однако он может быть приведен системой (я называю это "трансляцией") к такому виду, что полученная последовательность действий единожды выполненной в системе, изменит все объекты этого класса (или некое подмножество их). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2006, 11:51 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Ни к какому - это значение, содержащее некие данные об объектах этих классов. Уточняю. Результат вычисления отношения в любой рел БД чем является? Я могу просто написать Х UNION Y и получить значение из базы. Или я могу написать CREATE VIEW Z AS X UNION Y, тем самым создав переменную Z , значение которой представляет искомый UNION. То же самое у меня. Я могу просто получить значение об объектах, либо создать перменную (и соответсвующий тип - не обязательно класс) содержащий это значение. Напимер я могу создать глобальную переменную типа-отношения ListOfAllEvents AS SET OF EventRecord и реализовать ее ALTER ListOfAllEvents REALIZE AS X UNION Y (здесь ListOfAllEvents есть тот же самый вид). Или я могу описать класс "Журнал событий" и создать соответсвующий объект, у которых значения компонентов вычисляется как UNION. Еще раз. Исходя из НадРеляциооного манифеста 1) опредление класс определяет так же существование множества отношений 2) каждый объект описывается набором значений типов , допускающих реляционнлое присваивание (скаляры и отношения). И в том и в другом случае класс ! = отношению. Класс (в НРМ это называется объектный тип ) - это способ адекватного описания предметной области и одновременно способ задания множества переменных отношений (и их реализаций), содержащих данные о этой предметной области, причем именования этих переменных и их атрибтов используются те же самые имена, которыми мы описывали предметную область. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2006, 12:57 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Вот теперь все понятно и пора делать выводы. Довольно просто показать что любой класс можно представить одним отношением, т.е. как раз класс=отношение. После этого остается только РМД, а классы становятся лишними. Никаких новых свойств введение классов не дает, но как известно введение новых сущностей без особой надобности крайне нежелательно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2006, 14:07 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
модВот теперь все понятно и пора делать выводы Это на основании трех моих постов? Ну-ну... модДовольно просто показать что любой класс можно представить одним отношением Ага. Раз это "довольно просто" - так покажите. Я хотя бы пойму ,что Вы хотите показать. Заодно станет ясно , насколько Вы понимаете то, о чем пытаесь говорить. Кстати - а куда делись отношения, содержащие данные например только об одном компоненте класса. Или отношения, содержащих связанные данные о нескольких классах, когда один из них ссылается на другой. Я еще раз повторяю: один класс -> много отношений. Я ленивый человек - я не хочу руками делать CREATE VIEW , в том случае, если это VIEW следует из семантики данных (например вручную создавать VIEW в котором соединяются заголовки и строки накладных). Я не хочу руками делать CREATE VIEW, связывая данные классов, ссылающихся друг недруга. Я не хочу руками делать UNION, объединяя данные классов наследников, для которых поменялась реализация. Все это может делать система - надо просто использовать правильные имена и правильтные комбинации имен, заданных в описании предметной области посредством множества полиморфных наследуемых классов. модт.е. как раз класс=отношение. Ну - вам виднее Мои обоснованные предположения о Вашем неознакомлении с обсуждаемым предметом не были Вами опровегрнуты. Пытаетесь спорить о вкусе устриц? Попробуйе их сначала. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2006, 15:18 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
U-gene модт.е. как раз класс=отношение. Ну - вам виднее [офтоп.] Лучше вернитесь к моменту, где чингиз хотел всюду плотную (по части наследования) иерархию классов. там кажецца интересно. (с одной стороны пример с числами супротив классов невтемный (мн-во классификаций видимо конечно полюбэ), а с другой - кажецца понятно, что афтору сказать хотелось). Есть ли реализации пусть не "всюду плотности", но динамического до/перестроения наследования иде-нибудь? Как должны быть устроены такие обьекты? Модератор: 4321 1 Я это пытаюсь изложить пока на внутреннем семинаре, так сказать, в зпт. доши до этой точки http://users.i.com.ua/~tchingiz/.oopFormalizm.pdf Если хотите, представлю Вас в зпт. (меня мод и Ю-Джен подавляют количеством. ;) ) 2 Уважаемый. чтение сленга интерната (афтору и т.д.) снижает грамотность читающих. пожалуйста, уважайте своих коллег и пишите правильно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2006, 16:13 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Итак: класс=отношение объект=строка отношения id объекта=номер строки свойство класса=скалярный тип или тип ссылки на объекты другого или того же класса или класс(=отношение) значение свойства объекта=значение скалярного типа или ссылка на объект другого или того же класса или значение отношения как видите, все можно сделать оставаясь в рамках РМД Связь между классами - это либо ссылка либо самостоятельный класс. view и union - реализация нормальных реляционных операций, причем их возможности шире чем наследование, вычисляемые свойства и пр. Не вижу причин от них отказываться. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2006, 16:32 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Итак:... ...как видите, все можно сделать оставаясь в рамках РМД модкласс=отношение Нет. отношение - это всего навсего значение. Класс - это неясно что...это описание переменной, это множество существующих в системе переменных и соответсвенно множество их значений и это даже тип. Отсылаю к третьему манифесту - там про это неписано модобъект=строка отношения строка отношения (кортеж) это значение. объект - это пременная занчение идентификатор интерфейс и .т.п. модid объекта=номер строки что такое номер строки "в рамках РМД"? модсвойство класса=скалярный тип или тип ссылки на объекты другого или того же класса или класс(=отношение). значение свойства объекта=значение скалярного типа или ссылка на объект другого или того же класса или значение отношения а если свойство описывается нескалярным значением - кортежем или отношением? Состояние объекта может описываться сколь угодно сложно. модview и union - реализация нормальных реляционных операций, причем их возможности шире чем наследование, вычисляемые свойства и пр. Не вижу причин от них отказываться. а что - кто-то от них отказался? ИМХО это глупый человек. Там где есть отношения отказываться от этих операций - форменный идиотизм. ИМХО Вы невнимательно меня прочитали (как обычно?). Я сказал, что "Я не хочу руками делать UNION, объединяя данные классов наследников". это не значит ,что операция UNION отсутсвует. Просто в описанном случае система сделает это вместо меня, а я буду пользоваться уже готовым результатом. Класс по "НадРеляционному Манифесту" - это(в том числе и) способ определить существование множества отношений - хранимых и вычисляемых. Именно поэтому система реализующая НРМ - реляционная. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.07.2006, 09:43 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
U-geneотношение - это всего навсего значение. Если уж хотите быть точным то переменная отношения, принимающая значения. U-gene Класс - это неясно что... Абсолютно с вами согласен, именно поэтому этим и нельзя пользоваться. U-geneчто такое номер строки "в рамках РМД"? В РМД нет, есть в реализациях. U-geneа если свойство описывается нескалярным значением - кортежем или отношением? Именно так я написал U-gene"Я не хочу руками делать UNION, объединяя данные классов наследников". Это вообще не понятно. Наследники/родители - это разные классы и если их надо зачем-то объединить, то на общих основания - пишите UNION и задавайте правило объединения. Рел. операции - это часть языка на котором пишется программа, как правило программы пишутся именно руками (иногда головой). Я бы не доверял это дело какому-то автомату. U-geneКласс по "НадРеляционному Манифесту" - это(в том числе и) способ определить существование множества отношений - хранимых и вычисляемых. Мн-во отношений определяется напрямую при построении РМД, зачем еще какие-то левые способы. Вообщем я не увидел никаких плюшек от введения параллельно с РМД классов, так что берем бритву Оккама и режем-с. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.07.2006, 10:29 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
модЕсли уж хотите быть точным то переменная отношения, принимающая значения. Я хочу быть точным и поэтому написал именно то, что написал. мод U-geneКласс - это неясно что... Абсолютно с вами согласен, именно поэтому этим и нельзя пользоваться. Не понял:).... только что кто то написал "Класс = отношение"...это был другой мод ? модВ РМД нет, есть в реализациях. Так "все можно сделать оставаясь в рамках РМД" (с) мод или все можно сделать оставаясь в рамках реализаций, явно нарушающих РМД? Вы уж определитеь батенькак что по Вашему можно. модЭто вообще не понятно... очень хорошо объясняет, почему же... модя не увидел никаких плюшек. модНаследники/родители - это разные классы Сильная фраза . Например птицы - это не страусы, а страусы - это не птицы. модМн-во отношений определяется напрямую при построении РМД, зачем еще какие-то левые способы давайте скажем так, как оно есть - "зачем еще какие-то непонятные Вам способы"? Действиельно - непонятно...зачем:). Впечатление, что Вы не только моих постов не читаете, но и своих не помните. В общем ИМХО ничего не сделать - пишите руками думая изредка головой и, главное, не доверяйте автоматам. Правильно! Ну их - эти автоматы! :) И зачем их тока кто то выдумал то? Ерунда это какая то.... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.07.2006, 15:14 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
мод U-gene а если свойство описывается нескалярным значением - кортежем или отношением? Именно так я написал Да, точно. Но тогда вообще непонятно, как мод класс=отношение объект=строка отношения согласуется с модзначение свойства объекта=значение скалярного типа или ссылка на объект другого или того же класса или значение отношения ...это у нас что продвинутая РМД получается? "вложенные" или "слабонормализованные" отношения? или у Вас то отношение, которое является значением свойства объекта (=строки)- это скаляр? но тогда это не согласуется с только что сказанным, "отношение = класс". Не понятно ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.07.2006, 16:10 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
А как так красиво на розовеньком фоне писать? :)) 2 4321 ЕСли не ошибаюсь, Вы про этот пост tchingiz мод"сущности" реального мира моделируются обьектами ооп, т.е. реальный самолет в небе моделируются обьектом класса "самолет" ...это так хорошо звучит, пока Вы обсуждаете один класс.... ...множество классов - удовлетворяет условию Цорна... ...Так вот, есть большие подозрения считать, что множество "типов" сущностей "реального мира" далеко не удовлетворяет этому условию... ...косвенным свидетельством тому, что мир не описывается системой классов может служить тот факт, что иерархические базы данных не пошли в жизнь... ИМХО мне в фразе "сущности" реального мира моделируются обьектами ооп таки непонятно, а что же такое сущность?... Возникает впечатление, что сущностями люди готовы называть всё, что отличается от простых скаляров. Например есть документ об отгрузке (обзовем его сущностью) и у этого документа есть строки, описывающие отгруженный товар. Скажите, а строки в системе тоже надо описывать отдельным классом? Правда интересно, ведь строки "существуют", как-то называются (а именно строки) и отличаются от простых скаляров. Строки - это сущность? надо их как класс описывать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.07.2006, 16:15 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
U-geneНапример есть документ об отгрузке (обзовем его сущностью) и у этого документа есть строки, описывающие отгруженный товар. Скажите, а строки в системе тоже надо описывать отдельным классом? Нет, это один класс а список строк - его свойство. И все это вместе легко описывается одним отношением без всяких классов, причем список строк - это вложенное отношение. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.07.2006, 17:42 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
U-gene ИМХО мне в фразе "сущности" реального мира моделируются обьектами ооп таки непонятно, а что же такое сущность?... мне мнится, что "сущность" это категория нашего мировосприятия, т.е. классификации, несмотря на то, что она (сущность) - "реального мира". Т.е., грубо: смотрим с одних позиций - вводим одну классификацию - видим одни "сущности реального мира". Смотрим с других - вводим другую - получаем ту же картинку, того же явления, но уже в других "сущностях". При этом: 1. или некие классификации могут таки кусочно повторяться (одни и те же "?фрагменты?реального мира?" могут быть выделены как (даже одноименные) "сущности" и в тех и в других классификация, но сама структура классификации при этом будет разной (разные наследования, мн-ва свойств и т.п.) 2. или (что видимо актуальнее), классификация может претерпевать изменения (уточнение) - по мере необходимости (или развития умения) обозревать все более тонкое поведение "реального мира". (При этом реальный мир очевидно не изменяется) ЗЫ. Строки - это сущность? надо их как класс описывать? пляшем от того, что сущность - это кирпичик категорийного подхода, т.е. если мы, с некоей целью, видим лист бумаги - немного мятый и почерканный - очевидно, что нет там сущностей "товарная позиция" , если же видим товарный документ, описывающий перемещение товаров, то сущность таковая нами наблюдается. "строка документа" может быть интересной и как самостийный класс. например: 1. Абстрактная "строка док-та" => 1.1. Строка товарно-материального док-та => 1.1.1. Строка накладной. 1.1.2. Строка фактуры на каждом уровне определяем/реализуем/перекрываем свои методы. (как правило при кодении в такой иерархии нет нужды - есть готовые отчетники со своими сущностями-разделами, есть готовые гриды со своими строками и контролами, т.ч. тут действует простое правило: "нет нужды => не стоит и утруждаться") ЗЫ 2 немного иная классификация: 1. позиция (регистр) 1.1. товарная позиция 1.1.1. учетная (складская) товарная позиция 1.1.2. товарная позиция документа 1.1.2.1. товарная позиция накладной 1.1.2.2. товарная позиция фактуры ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.07.2006, 18:28 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
U-gene tchingiz мод"сущности" реального мира моделируются обьектами ооп, т.е. реальный самолет в небе моделируются обьектом класса "самолет" ...это так хорошо звучит, пока Вы обсуждаете один класс.... ...множество классов - удовлетворяет условию Цорна... ...Так вот, есть большие подозрения считать, что множество "типов" сущностей "реального мира" далеко не удовлетворяет этому условию... ...косвенным свидетельством тому, что мир не описывается системой классов может служить тот факт, что иерархические базы данных не пошли в жизнь... ИМХО мне в фразе "сущности" реального мира моделируются обьектами ооп таки непонятно, а что же такое сущность?... Возникает впечатление, что сущностями люди готовы называть всё, что отличается от простых скаляров. 2 Конечно, не понятно. Более того, мне, вслед за Гильбертом (автором формальной геометрии), непонятно что такое точка, прямая и плоскость. Я их никогда не видел. Понятны только правила их (точек, прямых и плоскостей) использования. Что такое обьект в с++ или с# тоже понятно, кстати. 1 про условие Цорна. Все забывал сказать. Размышлизм снимается. Это не проблема. В подразумеваемом смысле любая математическая теория похожа на построение системы классов, то есть условию Цорна будет удовлетворять. Нет отличий между теориями. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.07.2006, 21:36 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
автор"?фрагменты?реального мира?" и не очень понятно что такое реальный мир. "материя - это обьективная реальность данная нам в ощущениях". всю жизнь понимал это определение как "если мне так кажется, так оно и есть." поэтому понять что такое сущность(фрагмент) реального мира не очень легко. согласен с пониманием оной как частью системы классфикации. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.07.2006, 21:41 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
tchingiz и не очень понятно что такое реальный мир. ... поэтому понять что такое сущность(фрагмент) реального мира не очень легко. согласен с пониманием оной как частью системы классфикации.есть же нечто, что мы классифицируем? классифицировать дырку от бублика затруднительно. Но вот распадается ли это наблюдаемое на "сущности" (фрагменты) самостоятельно, или только внутри классификаций - скорее всего "вещь в себе". Надо полагать, что само наблюдение построено на выделении устойчивого и повторяющегося. Анализ наделяет это повторяющееся самостийностью, т.е. "сущностностью" ... и т.п. и т.д. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2006, 10:33 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Мой то вопрос был о том, нужно ли каждую сущность описывать как класс, где каждый экземпляр этого класса есть идентифицируемый (в системе?) объект. ИМХО стремление догматиков ОО описывать каждую сущность как класс - это их катастрофическая ошибка, приводящая, как это не странно, к тому, что результат не является правильной, адекватной (никак не могу понять что значит это слово:) моделью ПО. Пояcню. Есть отгрузки и у отгрузок есть св-ва. Возьмем какое-нибуть самое простое (скалярное) - напимер "дата". Обычно пишут "дата отгрузки" тем самым связывая это свойство с той сущностью, которую это свойство характеризуют. Догматики ОО, утвердающие, что все должно моделироваться объектами скажут конечно же, что дата - это объект. Тем самым в системе, содержащей данные о двух отгрузках будет четыре объета - две собственно "отгузки" и две "даты". Я не спорю, что дата - это значение, и что для ее хранения нужна какая- то перменная. И тот факт, что для двух дат нужны две разные пременные у меня сомения не вызывает. У меня так же не вызывает факт, что система для доступа к этим значения должна как то эти переменные различимо идентифицировать. Но ИМХО эта идентификация имеет исключительно внутренний системгый характер и к идее объектов никакого отношения не имеет. Дата - это такая сущность, которая сама по себе полностью идентифицируется своим собственным значением. Например, если две разные отгрузки имеют одну и ту же дату... ну в общем в этой фразе все уже сказано. А 2+1=3 Нафига же создавать 4-ре идентифицируемых объекта? ИМХО представлять дату как идентифицируемый объект - это значит неправильно (по крайней мере избыточно) описывать ПО. Следующий пример касается гораздо более сложного cв-ва - список строк. Список строк - это отношение. Отношение - это тоже значение. Например две разные отгрузки могут иметь абсолютно одинаковые позиции - и этим тоже все сказано. Перейдем теперь к OID. Если мы говорим, "вот эта штука как-то отличется от других" это значит что у неё есть некие свойства, которые позволяют нам это сказать. Другими словами, свойство уникаальности - это суперпозиция многих (всех?) других свойств. Для создаваемой модели эти другие cв-ва сами по себе могут быть абсолютно неактуальны. ИМХО OID есть системное значение выражающее свойство уникальности, безотносительно других свойств, на самом деле говорящих о уникальности. И если система является объетно-ориентированной , то она должна поддерживать идею, что описание любой....штуки :) в терминах этой системы должно включать значение OID(возможно скрытым для пользователя способом). То есть если просто система - то набор значений, если ОО система - то набор значений, описывающих свойства... разных штук :) + OID (которое тоже является значением, описывающим свойсво этой штуки).Здесь идентификация имеет модельный характер. Это я к тому, что сущности должны делиться на свойства(значения в термимах системы) и собственно сущности (СС или объекты в теримнах системы). Для того, что бы описать СС,мы сначала должны описать значения и эти значения могут быть весьма сложными (но это не объекты!). Однако говорить о каком-то наследовании для типов значений ИМХО не нужно. Значения либо равны, либо не равны. Если список отгруженного товара имеет атрибуты (артикул, кол-во) а список проданного товара - атрибуты (артикул, кол-во, цена), то это просто разные значения одного и того же типа отношения. Кроме того ,значения изначально конечны в своей детализации(дата, адрес, список строк отгузки). Кроме того значения изначально конечно в своей детализации (что неразвыво звязано с самоидентифицируемостью..... невозможно сравнить что то бесконечное.). Этот простите за выражение высер явялется иллюстрацией того, почему я не люблю говорить про сущности и .т.п околофилосовскую мутотень. нужна система с нормальной системой типов и пусть каждый за себя думает .что для него есть сущности. А вот наследования при описании СС необходимы. Начинаем с того, что любая вещь конечно описывается просто своим свойством уникальности, а затем добавляем свойства ,которые делают описание детальным и полезным (СС-> физический объект-> живой организм-> птица->страус - и все это про одну и ту же птицу). Однако сколько бы мы таких свойств не добавили всегда останется возможность добавить пару-тройку новых -например средняя частота икоты, расстояние до луны, дата рождения по лаосскому календарю и т.п. что может быть абсолютно бесполезно для данной модели, но тем не менее может рассматриваться как характеристика СС. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2006, 20:34 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Два последних абзаца местами перепутал. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2006, 20:35 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
4321 tchingiz и не очень понятно что такое реальный мир. ... поэтому понять что такое сущность(фрагмент) реального мира не очень легко. согласен с пониманием оной как частью системы классфикации. есть же нечто, что мы классифицируем? классифицировать дырку от бублика затруднительно. Но вот распадается ли это наблюдаемое на "сущности" (фрагменты) самостоятельно, или только внутри классификаций - скорее всего "вещь в себе". Надо полагать, что само наблюдение построено на выделении устойчивого и повторяющегося. Анализ наделяет это повторяющееся самостийностью, т.е. "сущностностью" ... и т.п. и т.д. ээээ возможно, что и есть. например, мы классифицируем колебания нервов в своем мозгу. Хотя обычно классифицируется дырки от бублика. Вы сколько оттенков белого цвета (каждый оттенок можно считать обьектом) отличаете? tchingizПереживаниями РК про утерю свободы навеяно. В Южной Америке есть племя, у них в языке для цвета только три слова - типа желтый, черный и зеленый. Предположительно, другие цвета не различают и, следовательно, не нуждаются в их обсуждении. А у эскимосов для белого - более тысячи слов. Берем комплимент - "твоя кожа белее снега". Если перевести на эскимосский, то можно заливать часа 4. Ей уже и эскимос будет не нужен. Был бы РК эскимосом, посщебетал бы жене на магнитофон, и пошел бы спокойно на неделю на охоту. /topic/305952&hl=#2789683 про устойчивость и повтояемость -- есть мнение, что внесение наблюдателя в систему изменяет поведение системы. 1 он замечен в области квантовой механики 2 в психологии - буддизм дзен это попытки обойти тот факт, что если одному человеку (чтобы он сделал действие а) надо говорить сделай а; другому - сделай не а; третьему - не делай а ни в коем случае; четвертому - выбери сам делать а или не а. и т.д. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.07.2006, 00:00 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
tchingizвозможно, что и есть. например, мы классифицируем колебания нервов в своем мозгу.чтобы классифицировать "колебания нервов в своем мозгу", надо иметь по меньшей мере: 1. моск, 2. нервы. Т.е. хотя бы они должны быть существующими до. Короче - надо хоть что-то иметь, штобы. tchingizесть мнение, что внесение наблюдателя в систему изменяет поведение системы. 1 он замечен в области квантовой механики есть мнение, что для того, чтобы "внести" (вынести) наблюдателя в (из) систему - надо быть богом (надфизической сущностью). есть мнение, что наблюдатель в системе либо есть, либо его там нет. есть мнение, что система включает наблюдателя физически, т.е. как свою существенную часть. есть мнение, что система без наблюдателя физически иная система, чем система с наблюдателем (и поэтому говорить, о том, что "внесение Н" меняет поведение системы - бред, ибо внесение Н меняет саму систему, и , как следствие, уже _разные_ системы имеют и разное поведени). есть мнение, что информация, получаемая наблюдателем (если тот не божественен, а материален) вполне материальна.(т.е. Наличие той или иной информации у наблюдателя внутри системы - уже само по себе заставляет считать систему находящейся в том или ином состоянии). и т.д. и т.п. говоря же о произвольности классификации я имел в виду следующее: расмотрим среду + ее движения. В некоторых средах существуют "устойчивые и повторяющиеся" решения - волны, солитоны, ударные волны. Можно ли считать эти решения "сущностями" на основе повторяемости и устойчивости? Или считать сущностью только среду? Но ить и все "ляментарные частицы", кажеца (могу и врать), в современном теорфизе - ни что иное, как решения неких подобных уравнений, причем среда - факьюум - обладает скорее виртуальной материальностью (если не считать мнения неких маргинальных открывателей эфиров и видимо полиэфиров) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.07.2006, 10:50 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
U-geneМой то вопрос был о том, нужно ли каждую сущность описывать как класс Если каждую сущность описывать как отношение, то и проблем не будет В вашем примере дата отгрузки - скаляр Список позиций - отношение (вложенное) Товар в каждой строке списка - ссылка на другое отношение (Товар) U-geneА вот наследования при описании СС необходимы. Наследование для отношений - это создание новых отношений на основе уже сущ. (копирование свойств) + возможность использования программ, написанных для других отношений. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.07.2006, 16:37 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Было http://www.sql.ru/forum/actualthread.aspx?tid=147188&pg=8#2845512] Наследование для отношений - это создание новых отношений на основе уже сущ. (копирование свойств) + возможность использования программ, написанных для других отношений. Птиц запихнем в одно отношение, а стаусов в другое? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.07.2006, 17:55 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Было - Ответил Наследование для отношений - это создание новых отношений на основе уже сущ. (копирование свойств) + возможность использования программ, написанных для других отношений. Птиц запихнем в одно отношение, а стаусов в другое? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.07.2006, 17:58 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
--ErV --COBOL был ПРЕДНАЗНАЧЕН для работы с базами данных, а в C++ это было нетривиальной задачей это праздник какой-то (С) Карабас Барабас что же там нетривиального ? Код: plaintext 1. не говорите гоп. реализовано это там потому что все классы растут насильно от TObject. на Borland C++ там можно делать также. Код: plaintext 1. 2. 3. http://www.transheekopateli.com/html/Number2/Lowadi.html ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.07.2006, 01:27 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
4321[quot tchingiz]чтобы классифицировать "колебания нервов в своем мозгу", надо иметь по меньшей мере: 1. моск, 2. нервы. Т.е. хотя бы они должны быть существующими до. Короче - надо хоть что-то иметь, штобы. сдругой стороны если есть мозг с колебаниями, то уже не надо сущностей из "реального мира". мог же Гильберт классифицировать такие дырки от бублика как точки, прямые и плоскости. Вы прямую видели когда нибудь? автор говоря же о произвольности классификации я имел в виду следующее: расмотрим среду + ее движения. В некоторых средах существуют "устойчивые и повторяющиеся" решения - волны, солитоны, ударные волны. Можно ли считать эти решения "сущностями" на основе повторяемости и устойчивости? зависит от постановки задачи и требуемой точности решения? то есть, может да, может нет. пысы Вовочка, сколько будет два плюс два? а сколько надо? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.07.2006, 03:01 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
tchingizВовочка, сколько будет два плюс два? а сколько надо? У: сколько 2х2 Петя : 5000 У: садись 2 Таня : вторник ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.07.2006, 05:56 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
U-gene Птиц запихнем в одно отношение, а стаусов в другое? Уточните, что здесь сущности: птицы (по видам) или страусы (по своим видам или экземплярам - в зоопарке) ? От этого и зависит стр-ра отношений. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.07.2006, 10:17 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
tchingiz сдругой стороны если есть мозг с колебаниями, то уже не надо сущностей из "реального мира".т.е. перефразируя, "если что-то реально есь, то не требуецца , шобы шо-та риальна было" (убивственная лохика, мдяяя шлемилем попахиваит) tchingiz мог же Гильберт классифицировать такие дырки от бублика как точки, прямые и плоскости. Вы прямую видели когда нибудь? прямую видел. неоднократно. Гильберт мог классифицировать абстракции, выросшие из "реальной" жисти посредством обобщения и последующего абстрагирования. Было бы странно , если бы он классифицировал нечто бессмыссленное, не имеющее истории осмысления. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.07.2006, 10:26 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
модУточните, что здесь сущности: птицы (по видам) или страусы (по своим видам или экземплярам - в зоопарке) ? От этого и зависит стр-ра отношений.Сущности здесь - птицы вообще и страусы (а так же куры, вороны и райские птицы) в частности. Сущности здесь - окна и диалоги(тоже окна). Сущности здесь - документы вообще, документы на отгрузку и документы на отгрузку по продаже. Сущности здесь эллипсы и круги(частный вид эллипса). Сущности здесь служащие и начальники(тоже служащии). Продолжать? Так что, будем птиц и страусов(служащих и начальников, эллипсы и круги, окна и диалоги, разного рода документы) в в разные таблицы засовывать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.07.2006, 11:18 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Интересно, а найдется на этом форуме хотя бы один критик ООП, способный без объектов доступа к данным работать с базой данных ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.07.2006, 12:03 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
WorobjoffИнтересно, а найдется на этом форуме хотя бы один критик ООП, способный без объектов доступа к данным работать с базой данных ? Бу Га Га, про OCI слышал ? а вобче нефтему, никто не призывает отказываться от ООП на клиенте, речь идет про хранение данных ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.07.2006, 12:32 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
По порядку U-geneСущности здесь - птицы вообще и страусы (а так же куры, вороны и райские птицы) в частности. Одно отношение - Виды птиц U-gene Сущности здесь - окна и диалоги(тоже окна). Одно отношение - окна[/quot] U-geneСущности здесь - документы вообще, документы на отгрузку и документы на отгрузку по продаже. По одному отношению на каждый вид документа + view на все если это действительно где-то надо (как правило - не надо). А еще проводки есть... U-geneТак что, будем птиц и страусов(служащих и начальников, эллипсы и круги, окна и диалоги, разного рода документы) в в разные таблицы засовывать? Это называется проектированием БД (тут думать надо). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.07.2006, 12:38 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Worobjoffбез объектов доступа к данным работать с базой данных ? SQL вам поможет ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.07.2006, 12:39 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
2 мод Я не спрашиваю про "виды птиц"(окон). Я спрашиваю про "птиц"(окна, круги и служащих).ИМХО Вы это понимаете - Вы же не стали говорить про "виды документов", хотя вопрос ставился в абсолютно одинаковых фразах. авторПо одному отношению на каждый вид документа + view на все если это действительно где-то надо (как правило - не надо). А еще проводки есть... 1) если появиться новый вид документа, то надо руками все view переписывать? 2)Например есть документ, у которого в качестве сопровождения может быть другой документ (любой). Как мы ("оставаясь в рамках РМД"(с)мод) такую связь организуем? что из множества отношений разных видов документов связывать то будем? Или "в рамках РМД" озназает в рамках "реализации РМД" (кривой по отношению собственно к РМД)? модЭто называется проектированием БД (тут думать надо)...."иногда головой"(с) то же ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.07.2006, 13:01 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
WorobjoffИнтересно, а найдется на этом форуме хотя бы один критик ООП, способный без объектов доступа к данным работать с базой данных ? я не критик ООП но наша система работает с данными без обьектов доступа ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.07.2006, 16:56 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
U-geneЯ не спрашиваю про "виды птиц"(окон). Я спрашиваю про "птиц"(окна, круги и служащих) А, понял, типа зоопарк - список всех пернатых - одного отношения хватит (кличка, порода (ссылка на классификатор), клетка(ссылка на список клеток)и т.д.). Все равно не вижу проблемы. U-gene 1) если появиться новый вид документа, то надо руками все view переписывать? По любому придется, надо же согласовать новый вид документа с этим общим view. U-gene 2)Например есть документ, у которого в качестве сопровождения может быть другой документ (любой). Как мы ("оставаясь в рамках РМД"(с)мод) такую связь организуем? А в чем проблема ? Дочерние док-ты ссылаются на родителя. Так строятся цепочки док-ов - очень длинные. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.07.2006, 17:06 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
модА, понял, типа зоопарк Не-а это было как возможный пример наследования - безотносительно зоопарков и, тем более, возможным решениям для зоопарков :) модПо любому придется, надо же согласовать новый вид документа с этим общим view.Да-да, и делать это приходиться руками - не автоматам же доверить это дело. мод U-gene 2)Например есть документ, у которого в качестве сопровождения может быть другой документ (любой). Как мы ("оставаясь в рамках РМД"(с)мод) такую связь организуем?А в чем проблема ? Дочерние док-ты ссылаются на родителя. Так строятся цепочки док-ов - очень длинные.Вы серьезно не понимаете о чем я говорю? Напомню... мод Наследование для отношений - это создание новых отношений на основе уже сущ. (копирование свойств) + возможность использования программ, написанных для других отношений.Как Вы, "оставаясь в рамках РМД ... класс = отношение", будете ссылаться из главного документа на разные сопровождающие, если последнии у Вас распихнуты в разных отношения? Вообще впечатление, что между "наследуемые классы" и "разные классы" Вы особой разницы не видите. Новое отношение = другое отношение (потму что, еще раз, отношение - это всего-навсего значение), а класс- наследник это не другой класс, а скорее наоборот (потому что классы это пересекающиеся множесва объектов). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.07.2006, 18:10 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Gluk (Kazan) WorobjoffИнтересно, а найдется на этом форуме хотя бы один критик ООП, способный без объектов доступа к данным работать с базой данных ? Бу Га Га, про OCI слышал ? а вобче нефтему, никто не призывает отказываться от ООП на клиенте, речь идет про хранение данных Странный аргумент. А разве OCI не требует со стороны клиента иметь процедуральный интерфейс к персистентным сущностям (соединение, переменные, курсоры и.т.п), которые - суть обьекты? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.07.2006, 23:25 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
4321 tchingiz сдругой стороны если есть мозг с колебаниями, то уже не надо сущностей из "реального мира".т.е. перефразируя, "если что-то реально есь, то не требуецца , шобы шо-та риальна было" (убивственная лохика, мдяяя шлемилем попахиваит) а каким боком колебания мозга относятся к "реальному" миру? где определение реальности? 4321 tchingiz мог же Гильберт классифицировать такие дырки от бублика как точки, прямые и плоскости. Вы прямую видели когда нибудь? прямую видел. неоднократно. впрочим, за сим откланиваюсь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2006, 01:05 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
вернулся на секунду.. 4321 меня мучает вопрос же. прямые на бесконечности пересекаются или нет? ато эти Эвклид и Лобачевский запутают кого угодно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2006, 01:13 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
модSQL вам поможетОчень характерный ответ. Видимо не все здесь хорошо понимают, когда пользуются написанными классами, а когда процедурным кодом. Лично я лишь недавно осознано практикую ООП: Год назад мне попалась книга "Архитектура корпоративных приложений" Фаулера. Есть пара интересных наблюдений: 1) Очень трудно нучиться осознанному примененению ООП и, следовательно, правильно оценить его значение. За этот год мне пришлось буквально ломать свои привычки, психологию старого процедурника. Иногда казалось, что получить навыки разработки ООП на практике гораздо труднее чем, например, научиться игре на классической гитаре. 2) Людям использующим код многократного использования удобнее если он оформлен как набор классов. Т.е. имеются две альтернативы: Создать и проинициализировать объект, например в начале загрузки формы. Или запомнить множество действий, правильную последовательность вызова универсальных процедур, причем сразу в нескольких этапах жизни приложения... Люди, пользующиеся чужим кодом, интуитивно ожидают того, что объект вашего класса возьмет на себя весь контроль над своими данными, вместе с обработкой событий. По-моему, это - естественно. И еще: Если взять например такие особенности языка паскаль как записи, вложенные процедуры, модули, то классы можно рассматривать как всего лишь еще один шаг вперед в дальнейшей структуризации языка. Или несколько шагов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2006, 09:20 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
U-gene Новое отношение = другое отношение (потму что, еще раз, отношение - это всего-навсего значение), а класс- наследник это не другой класс, а скорее наоборот (потому что классы это пересекающиеся множесва объектов). Да, здесь есть путаница. Для того чтобы установить связь между классами (отношениями), необязательно их наследовать - достаточно просто ссылки. Наследование - это создание нового класса со своими свойствами и методами. В терминах отношений - это новое отношение. При этом создание объекта в классе-наследнике может вызывать (а может и не вызывать) создание объектов классов-родителей. Такое поведение нужно где-то задавать. В терминах РБД это view + union в который включаются только нужные отношения. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2006, 10:03 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Worobjoff1) Очень трудно нучиться осознанному примененению ООП Зато неосознанному - очень просто :) 2) Людям использующим код многократного использования удобнее если он оформлен как набор классов. [/quot] Дело вкуса (по мне так так функции лучше) Worobjoffклассы можно рассматривать как всего лишь еще один шаг вперед в дальнейшей структуризации языка. Или несколько шагов. Или не вперед. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2006, 10:12 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
модДа, здесь есть путаница. Ага - есть. И начинается эта путаница с утверждения "Класс = Отношение". Не воспринимаете мои слова - почитайте Дейта. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2006, 10:35 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
U-geneИ начинается эта путаница с утверждения "Класс = Отношение". Которое вы не смогли или не захотели опровергнуть. То что вы предлагаете в НРМ, можно сделать. Пользоваться этим или нет - вопрос вкуса. Если вам так удобнее - реализуйте НРМ и пользуйтесь, может и еще кто-то захочет. Но по мне так достаточно РМД и стандартных возможностей РСУБД. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2006, 10:55 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
мод U-geneИ начинается эта путаница с утверждения "Класс = Отношение". Которое вы не смогли или не захотели опровергнуть.Ага. Вы все же с собой то определитесь - либо "есть путаница" (с)мод, либо я "не смог опровергнуть" (с)тоже мод. А то получается, что в деталях "путаница", но в целом - верно. ИМХО такого не бывает. Опять же ИМХО если до Вас не доходит мысль что отношение - это просто значение, а класс это множество объектов, которые есть заодно и переменные, если не понятно, что слово "наследование" к отношением неприменимо, если Вы по прежнему употребляете фразы типа "создание объекта в классе-наследнике ведет к созданию объекта в родительском классе" (типа это разные объекты ), еще и пытаясь "это поведение как то задавать", то думаю никакие опровержения Вам будут не указ. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2006, 11:16 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
U-geneВы все же с собой то определитесь - либо "есть путаница" (с)мод, либо я "не смог опровергнуть" (с)тоже мод. А то получается, что в деталях "путаница", но в целом - верно. ИМХО такого не бывает. Бывает и не такое. Начнете реализацию - увидите. Отношения не наследуются, ессно, это же не классы. Я правильно понял, что по-вашему объект класса-наследника и объект класса-родителя это один объект ? Если да, то есть вопросы (если нет - тоже). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2006, 12:12 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
модНачнете реализацию - увидите.Уверен. Только в случае "Классы = Отношения" путаница возникает задолго до реализации. модЯ правильно понял, что по-вашему объект класса-наследника и объект класса-родителя это один объект ?Объект класса-наследника является также объектом родительского класса. Или. Множество объектов данного класса включает все объекты всех классов - наследников данного класса. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2006, 13:41 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
U-geneОбъект класса-наследника является также объектом родительского класса. Или. Множество объектов данного класса включает все объекты всех классов - наследников данного класса. А каковы св-ва этого объекта, с учетом того что разные классы имеют разные св-ва ? Ведь могут наследоваться не все св-ва родителя (и добавятся новые). И какое значение примут не наследуемые св-ва родителя при создании ребенка ? null ? Аналогично при создании родителя - что будет с ребенком ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2006, 14:06 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Пока нет времени чтобы все посты прочитать. Кажется речь зашла о противопоставлении реляционной алгебры vs. domain model. И о сложностях согласования ООП-модели с таблицами. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2006, 14:15 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
WorobjoffПока нет времени чтобы все посты прочитать. Кажется речь зашла о противопоставлении реляционной алгебры vs. domain model. И о сложностях согласования ООП-модели с таблицами. примерно так ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2006, 14:31 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
tchingiz 4321 tchingiz сдругой стороны если есть мозг с колебаниями, то уже не надо сущностей из "реального мира".т.е. перефразируя, "если что-то реально есь, то не требуецца , шобы шо-та риальна было" (убивственная лохика, мдяяя шлемилем попахиваит) а каким боком колебания мозга относятся к "реальному" миру? где определение реальности? 1. "риально" - это то, шо "есь" 2. они (кол ебания) либо "есь" = реальны, либо их "не есь" = нереальны если у вас риально то, чего нет, или же - чего нет, то и риально - я за васс радд tchingiz 4321 tchingiz мог же Гильберт классифицировать такие дырки от бублика как точки, прямые и плоскости. Вы прямую видели когда нибудь? прямую видел. неоднократно. впрочим, за сим откланиваюсь. нудануда. сказать-та неча. зы: (про евклида, лобачевскага и пересекаемость) прямые они ить могут быть даже не в адной плоскасти (аль позабывали?) 3ы1: а далее вапрос физики - если в бесканечности или где пересекаюцца все те прямые, что лежат в адной плоскасти - то геометрия пр-ва "риально" неевклидова (возможно - проективна), если не - то возможно и евклидова. история вопроса такова "риальная хеометрия" => "абстракции" => "умозрительные геометрии" => вопрос о соотносимости р.х-ии и у.х-ий ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2006, 14:49 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
В грубом приближении, domain model, это - напрямую, в лоб реализованные UML-диаграммы. По правилу модель предметной области - первична, БД - вторична. Естественно, что бизнес-логика реализуемая в ООП-модели приближается к реальной бизнес-логике. Никто от реляционной алгебры не отказывается. Она имеет мощный математический аппарат, стандартизацию, поддержку в средствах RAD. Механизм изоляции транзакций СУБД так же используется. С другой стороны, реализация domain model требует высокой квалификации. Отсутсвие RAD сказывается. Появляется составляющая в проектировании что-то иногда называемое архитектурой приложения. Domain model не освещен так широко в литературе, и почти не преподается в ВУЗ-ах. И все же ООП более гибок, и более сопровождаем чем SQL. Согласование модели предметной области с БД совсем не такое как в RAD. Загрузка объектов идет в порядке их иерархии, сохранение - в порядке реляционных связей таблиц. Количество объектов домена и их назначение в общем случае не соответсвует таблицам БД. Как их сравнивать? Не могу понять. Можно сравнивать лишь средства RAD и domain model. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2006, 15:37 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
U-gene предлагает ОО-расширение РМД. Ссылка на документ есть выше по тексту, искать лениво ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2006, 16:05 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Хотел высказать свое мнение об ООП и вдруг понял, что не знаю что это такое. Вот сижу и слушаю какую лапшу вешают друг другу на уши умные люди. (Почти Конфуций) :0)X ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2006, 19:11 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
U-gene предлагает ОО-расширение РМД Категорически настаиваю, что НалРеляционный Манифест не предлагает расширение реляционной модели данных. Реляционная модель неизменна и не требует каких либо принципиальных изменений. Поясню :) Предположим, что в программе встретилась строка с := a + b. Предполагается что а равно двум и b тоже равно двум. Соответсвенно (если используемый язык програмирования правильно реализует арифметику) после выполнения операции с будет рано четырем. Теперь предположим, что мы имеем дело с оо языком и там есть строка obj1.c := obj2.а + obj3.c(). Вопрос - идет ли речь о ОО расширении арифметики? Ответ - конечно нет, арифметика как была 2+2=4 так и осталась. Что поменялось? Поменялись выражения, описывающие доступ к переменным, появились возможности инкапсулировать и переопределить выражения, вычисляющие исходные 2 и 2, в общем много чего можно здесь сказать, но ни о каком ОО-расширении арифметики речи не идет - иначе это буде не арифметика а чёрт те что :). Тоже самое происходит в НРМ. Он описывает ОО систему , которая реализует РМД, в ее, так сказать, очень простом глубинном смысле :) безо всяких разширений, именений, извращений, идентифкаторов строк, вложенных таблиц и т.п. вещей. Их, оказываются, совсем и не нужно вытворять с бедной РМД в стремлении получить ОО систему. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2006, 23:04 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
модА каковы св-ва этого объекта, с учетом того что разные классы имеют разные св-ва ?Зависит от реализации классов,участвующих в наследовании. мод Ведь могут наследоваться не все св-ва родителя (и добавятся новые)."Добавляться новые" понял. "Наследоваться не все" - не понял. Никогда не видел такого. Поясните. модИ какое значение примут не наследуемые св-ва родителя при создании ребенка ? null ? Зависит от реализации классов,участвующих в наследовании. модАналогично при создании родителя - что будет с ребенком ? Опять не понимаю... что значит "при создания родителя - что будет с ребенком?" Вы опять считаете , что объект класса-наследника имеет объект родитель класса родителя? или Вы о чем? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2006, 23:11 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
MegabrainХотел высказать свое мнение об ООП и вдруг понял, что не знаю что это такое. Вот сижу и слушаю какую лапшу вешают друг другу на уши умные люди. (Почти Конфуций) :0)X не Вы один ничего не понимаете. )) вот почитал курс лекций http://www.intuit.ru/department/se/ooad/ чистой воды политэкономия социализма. одно блаблабла. я бы этот курс не сдал бы. я пытаюсь оформить свои мысли тут http://users.i.com.ua/~tchingiz/.oopFormalizm.pdf пока не закончено. может и не будет закончено ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2006, 01:20 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
U-gene U-gene предлагает ОО-расширение РМД Категорически настаиваю, что НалРеляционный Манифест не предлагает расширение реляционной модели данных. Реляционная модель неизменна и не требует каких либо принципиальных изменений. значит в манифесте надо это подчеркнуть. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2006, 01:28 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
U-gene U-gene предлагает ОО-расширение РМД Категорически настаиваю, что НалРеляционный Манифест не предлагает расширение реляционной модели данных. Реляционная модель неизменна и не требует каких либо принципиальных изменений. Согласен, я не точно выразился расширение/надстройка НАД РМД ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2006, 08:15 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
U-gene Вы упорно называете "наследованием" простое объединенние множеств. Обычно под наследованием понимается копирование свойств (всех или некоторых) и разрешение на использование методов (всех или некоторых). При этом объекты-наследники не входят в множество объектов-родителей, т.к. у них разный набор свойств. Поэтому придумайте лучше другой термин (можно даже использовать UNION :). U-geneРеляционная модель неизменна и не требует каких либо принципиальных изменений. Принципиальных - нет, но уточнения нужны, иначе зачем был написан 3 манифест (там кстати есть и про id кортежа и про вложенные отношения) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2006, 10:35 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
tchingizчистой воды политэкономия социализма. одно блаблабла. Очень интересное сравнение. И то и другое, являясь лженаукой, приобрело определенную популярность, но споткнулось на реалиях. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2006, 11:03 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
модПри этом объекты-наследники не входят в множество объектов-родителей Это что-то новое ! Если у нас есть класc Хищник и его наследник Волк, то объект класса Волк не является Хищником ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2006, 14:57 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
---------- Это что-то новое ! Если у нас есть класc Хищник и его наследник Волк, то объект класса Волк не является Хищником ? Именно так (читайте лит-ру). Волк может оказаться вегетарианцем. Т.е. наследование относится к классам, а не к объектам. А как поступать с объектами - отдельная песня. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2006, 16:10 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
мод ---------- Это что-то новое ! Если у нас есть класc Хищник и его наследник Волк, то объект класса Волк не является Хищником ? Именно так (читайте лит-ру). Волк может оказаться вегетарианцем. Т.е. наследование относится к классам, а не к объектам. А как поступать с объектами - отдельная песня. волк-вегетарианец - это писец всему - вершина ООП !! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2006, 17:29 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
модВы упорно называете "наследованием" простое объединенние множеств. Я не называю наследованеим простое объединение множеств. Во-первых эта фраза в очередной раз корявая - уж лучше говорить про пересечение иди даже про включение множеств (одно множество включает другое). Кроме того я нигде не скзал, что наследование - это простая операция над множествами. Конечно всегда подразумевается, что элементы входящие в одно обладают одинаковыми характеристиками-чертам-свойствами. Возможность объединения-пресечения-включения множеств объектов (как и сама возможность объединить объекты в множества) есть лишь следствие этой их одинаковости. В НРМ гворится о наследовании спецификаций. НРМ стр7-8Объектные типы образуют иерархию наследования (невозможно наследование объектных типов от значимых, значимые типы не могут наследоваться от объектных). Наследование объектных типов подразумевает, что спецификация типа наследника включает спецификацию родительского типа (или типа предка). Допускается множественное наследование. Существует предопределенный фиктивный объектный тип Object, по умолчанию являющийся предком для любого объектного типа. ... При наследовании компонента его реализация может меняться. Таким образом, компоненты типа (а, следовательно, и сам тип) являются полиморфными в том смысле, что одной спецификации может соответствовать несколько реализаций.Думаю , это можно рассматривать как ответ на Ваше следующее предложение ... модОбычно под наследованием понимается копирование свойств (всех или некоторых) и разрешение на использование методов (всех или некоторых). ... Однако позвольте и мне вопрос :) - я уже один раз спросил(см после 2 цитаты) но Вы как то не обратили внимание. Не пропустите в этот раз. Что Вы подразумеваете под кописрованием некоторых свойств и некоторых методов? Что где то есть возможность в процессе наследованяи отказаться от части свойств или методов? Где? В каком языке, в какой системе, дайте хоть ссылку на умную книжку или статью , интересно же...:) Тогда уж и поговорим про это Ваше... автор...При этом объекты-наследники не входят в множество объектов-родителей, т.к. у них разный набор свойств. модПринципиальных - нет, но уточнения нужны, иначе зачем был написан 3 манифест.... Обясню. Третий манифест в основном был написан как реакцмя на многочисленные извращения реляционной модели данных, как то SQL, уникальная идетификация кортежей, вложенные отношения, объектные расшинреня рел. модели и т.п - нВы знаете что. Понятие отношение остается неизменным, ключи не трогают, а тот факт, что Дейт предлагает новые операции ... во-первых операнды и результат есть все те же неизменные отношения и во-вторых в математике можно умножать можно складывать, а можно ради умножения и логарифмы поскладывать :) мод...(там кстати есть и про id кортежа и про вложенные отношения). О! какая прелесть! У непосвященных людей здесь может возникнуть мысль, что де в 3-м манифесте про эти вещи написано что-то теплое и хорошее... Но нет - ничего хорошего про это написано. Дейт обозвал все это извращениями да и посоветовал забыть как страшный сон. модЭто что-то новое ! Если у нас есть класc Хищник и его наследник Волк, то объект класса Волк не является Хищником ? Именно так (читайте лит-ру). Очень хочется узнать в какой же такой литературе про это написано? Сразу говорю - слово "везде" мне не подойдет. Везде не так, как Вы утверждаете. Если есть что-то иное - поделитесь пожалуйста. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2006, 23:42 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
мод ---------- Это что-то новое ! Если у нас есть класc Хищник и его наследник Волк, то объект класса Волк не является Хищником ? Именно так (читайте лит-ру). Волк может оказаться вегетарианцем. Т.е. наследование относится к классам, а не к объектам. А как поступать с объектами - отдельная песня. эээ. Както противоречит моему интуитивному пониманию. Обьясните, пожалуйста, на примере. Или дайте ссылку на это литературу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.07.2006, 01:16 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
U-gene В НРМ гворится о наследовании спецификаций. Совершенно верно. А это тогда откуда: U-geneОбъект класса-наследника является также объектом родительского класса. Или. Множество объектов данного класса включает все объекты всех классов - наследников данного класса. Я согласен понимать под наследованием все что угодно, только надо это четко определить. Если наследование всех свойств и методов входит в ваше определение - пусть так и будет, нет возражений. U-geneТретий манифест в основном был написан как реакцмя на многочисленные извращения реляционной модели данных, как то SQL, уникальная идетификация кортежей, вложенные отношения, объектные расшинреня рел. модели и т.п Это не извращения - это реализация (ведь с самой моделью никто не работает - работают с РСУБД). 3 манифест: авторСледует также обеспечить механизм, в соответствии с которым произвольное отношение может быть расширено атрибутом, значения которого: a) уникальны внутри этого отношения (или внутри некоторых разделов этого отношения) и b) поставляются системой. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.07.2006, 11:21 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
tchingizэээ. Както противоречит моему интуитивному пониманию. Я был не прав. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.07.2006, 11:53 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
tchingizКакто противоречит моему интуитивному пониманию. Обьясните, пожалуйста, на примере. Уточнение: в ООП языках при создании объекта-наследника скрыто или явно вызывается создание объекта-родителя, т.е. создается несколько разных объектов. То же самое происходит при изменении свойств и удалении объекта-наследника. Никто не мешает такое поведение изменить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.07.2006, 12:10 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
мод... в ООП языках при создании объекта-наследника скрыто или явно вызывается создание объекта-родителя, т.е. создается несколько разных объектов. Бред. Это у его класса есть родительский класс, а объект никакого родителя не имеет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.07.2006, 17:34 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
мод U-gene В НРМ гворится о наследовании спецификаций. Совершенно верно. А это тогда откуда: U-gene Объект класса-наследника является также объектом родительского класса. Или. Множество объектов данного класса включает все объекты всех классов - наследников данного класса. Внимательно читаем мой предыдущий пост еще раз. На всякий случай скопирую сюда ключевую фразу "Конечно всегда подразумевается, что элементы входящие в одно множество обладают одинаковыми характеристиками-чертам-свойствами. Возможность объединения-пресечения-включения множеств объектов (как и сама возможность объединить объекты в множества) есть лишь следствие этой их одинаковости". мод U-gene Третий манифест в основном был написан как реакцмя на многочисленные извращения реляционной модели данных, как то SQL, уникальная идетификация кортежей, вложенные отношения, объектные расшинреня рел. модели и т.п Это не извращения - это реализация (ведь с самой моделью никто не работает - работают с РСУБД). 3 манифест: авторСледует также обеспечить механизм, в соответствии с которым произвольное отношение может быть расширено атрибутом, значения которого: a) уникальны внутри этого отношения (или внутри некоторых разделов этого отношения) и b) поставляются системой. Могу лишь выделить словосочетание "атрибут, уникальный внутри отношения " (это, например, банальное автоинкрементное поле). Я же имел в виду уникальную идентификацию строк в системе( в разных отношениях) подразумевающую использование этих идентификаторов для описания связей (или ссылок?) с этими кортежами разных отношений. модУточнение: ООП языках при создании объекта-наследника скрыто или явно вызывается создание объекта-родителя, т.е. создается несколько разных объектов.... Ох лучше бы Вы не уточняли :). Хде же это такое? Вы это уточнили про конструкторы, что ли? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.07.2006, 19:37 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
мод tchingizКакто противоречит моему интуитивному пониманию. Обьясните, пожалуйста, на примере. Уточнение: в ООП языках при создании объекта-наследника скрыто или явно вызывается создание объекта-родителя, т.е. создается несколько разных объектов. То же самое происходит при изменении свойств и удалении объекта-наследника. Никто не мешает такое поведение изменить. гм. Мод. ээээ. я бы так сказал. пусть есть список атрибутов родителя (р1,...,pN) и список атрибутов ребенка (с1,...,сM). в конструкторе ребенка (имхо, могу ошибаться) память отводится сразу под все тоесть получаем кортеж (p1,...,pN,c1,...,cM) а потом конструктор родителя инициирует атрибуты родителя (p1,...,pN), а конструктор ребенка инициирует атрибуты ребенка (c1,...,cM). по моему, так. переинициировать атрибуты родителя ребенок естественно может. но обьект - собственно один. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.07.2006, 00:26 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
U-gene Ох лучше бы Вы не уточняли :). ((( из моих интуитивных представлений о форуме - лучше бы он уточнил. Раз мы помогаем друг другу по работе, то показать коллеге ошибку - это правильно. Для этого участник форума должен, не боясь попасть под насмешки и маты, мочь высказать свои ошибки. А вот смеятся над высказавшим ошибочное мнение - это не правильно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.07.2006, 00:31 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Ох и застыдил меня tchingiz. Просто фразу "разные объекты" я воспринимаю (в том числе и) как фразу "объекты, обладающие разными OID".Поэтому фразу мод "при создания объекта.... содается так же объект..." я воспринимаю как "создается два разных объекта", что ИМХО категорически неверно. Cущесвует лишь один объект. У него один OID. Обращаясь например к его методам, мы всегда выполняем именно ту реализацию, которая была определна в классе, какой использовался при создания объекта. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 2) Вызов метода, даже несмотря на то, что вызывался метод по ссылке somebird на объект родительского класса bird, приводит к выполнению реализации определнной в классе-наследнике straus. ИМХО так должно быть, когда мы говорим о наследовании. Здесь нет разных объектов. Хот я я допускаю,что возможны иные подходы. Но доказать мне их разумность будет сложно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.07.2006, 08:31 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
tchingizно обьект - собственно один. Да, действительно так. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.07.2006, 09:34 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
U-geneатрибут, уникальный внутри отношения " (это, например, банальное автоинкрементное поле). Я же имел в виду уникальную идентификацию строк в системе( в разных отношениях) подразумевающую использование этих идентификаторов для описания связей (или ссылок?) с этими кортежами разных отношений. это одно и тоже: имя_отношения+номер_строки_внутри_отношения ps. По поводу наследования беру свои слова обратно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.07.2006, 10:16 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
U-gene Просто фразу "разные объекты" я воспринимаю (в том числе и) как фразу "объекты, обладающие разными OID".Поэтому фразу мод "при создания объекта.... содается так же объект..." я воспринимаю как "создается два разных объекта", что ИМХО категорически неверно. да, мне тоже показалось, что имелось ввиду создание двух и больше обьектов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.07.2006, 22:54 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
tchingizимелось ввиду создание двух и больше обьектов. Вопрос остался. Есть класс А и его наследник класс В, в котором некоторые св-ва и методы переопределены. Создаем объекты в А и В, в классах А и В появляются соотв. экземпляры. Перебираем все экземпляры класса А. Применять ним только методы А нельзя из-за переопределения. Получается что для работы с А нужен доступ к св-ам и методам В, что неверно. Если создавать пару объектов А и В проблема изчезает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.07.2006, 09:23 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
полиморфизм ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.07.2006, 10:05 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Gluk (Kazan)полиморфизм ? Вроде наоборот. полиморфизм - наследование метода для использования, а проблема возникает при переопределении метода(св-ва), т.е появляется новый метод(св-во). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.07.2006, 11:07 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
мод Gluk (Kazan)полиморфизм ? Вроде наоборот. полиморфизм - наследование метода для использования, а проблема возникает при переопределении метода(св-ва), т.е появляется новый метод(св-во). полиморфизм это различие в поведении метода в зависимости от типа объекта ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.07.2006, 13:23 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Различия может не быть. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.07.2006, 14:02 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
без проблем, дайте свое определение прежде чем спорить, стоит определиться с терминами ;) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.07.2006, 14:06 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
забавно наблюдать как народ спорит что такое полиморфизм, не до конца понимая что это на самом деле. А полиморфизм без особого формализма на примере С++ - это шаблоны, нисходящее и восходящее преобразование, перегрузка ... что ещё я забыл? ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.07.2006, 14:47 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Gluk (Kazan)без проблем, дайте свое определение прежде чем спорить, стоит определиться с терминами ;) Да я и не спорю. Для меня это не имеет значения - в клиппере все процедуры-функции 100% полиморфны. Но проблема наследования осталась. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.07.2006, 14:51 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
мод tchingizимелось ввиду создание двух и больше обьектов. Вопрос остался. Есть класс А и его наследник класс В, в котором некоторые св-ва и методы переопределены. Создаем объекты в А и В, в классах А и В появляются соотв. экземпляры. Перебираем все экземпляры класса А. Применять ним только методы А нельзя из-за переопределения. Получается что для работы с А нужен доступ к св-ам и методам В, что неверно. Если создавать пару объектов А и В проблема изчезает. эээ. не допонял. что значит перебираем все экземпляры класса A? кстати, в трактовке класса обнаружились расхождения. я, всегда воспринимал два различных класса как различные множества. то есть пересечение A c B в Вашем случае пусто. по другой (возможно более правильной) трактовке - B строго включается в A. таким образом класс object из сшарп надо понимать как "максимальный" (может наибольший) класс, содержащий все остальные классы сишарпа.. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.07.2006, 01:47 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
tchingizчто значит перебираем все экземпляры класса A? ну раз есть класс то есть и его экземпляры. Для родителя это его собственные объекты+все объекты-наследники. Это множество можно перебрать, т.е. например распечатать. Проблема как раз и возникает из-за того что экземпляры оказываются разные по свойствам. tchingiz кстати, в трактовке класса обнаружились расхождения. я, всегда воспринимал два различных класса как различные множества. то есть пересечение A c B в Вашем случае пусто. Правильность этого я и пытаюся доказать. tchingiz по другой (возможно более правильной) трактовке - B строго включается в A. таким образом класс object из сшарп надо понимать как "максимальный" (может наибольший) класс, содержащий все остальные классы сишарпа.. Это подход принятый в ООП языках. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.07.2006, 09:18 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
ню ню, и как это будет выглядеть при множественном наследовании ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.07.2006, 12:21 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Gluk (Kazan)ню ню, и как это будет выглядеть при множественном наследовании ? что именно ? подход ООП: создаем объект-наследник - автомптически появляются экземпляры во всех классах-родителях ИМХО д.б. так: создаем объект-наследник + создаем объекты во всех классах-родителях и связываем их ссылками ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.07.2006, 14:44 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Gluk (Kazan)без проблем, дайте свое определение прежде чем спорить, стоит определиться с терминами ;) Чтобы понять, лучше попробовать Гнездо P.11. Объекты. Виртуальные методы. Позднее связывание ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.07.2006, 15:38 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
мод - понял. попробую перечитать Вас еще раз. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.07.2006, 02:43 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
модПеребираем все экземпляры класса А. Применять ним только методы А нельзя из-за переопределения Что значит нельзя? Мы вызываем метод, спецификация определна в классе A? а "переопределен", - это дело реализации. Ну вот есть общий класс предок "интерфесные элементы" и у него в спецификации есть метод show(). Мы перебираем все эти элементы и тупо делаем каждому show(), и, благодоря переопределённым реализациям, они показываются то как линия , то как окно то как текст и .тд. А если бы этого не было мы должны были бы написать "если элемент.тип=окно вызвать show_окно иначе если элемент.тип=текст вызвать show_текст...". Мне этого не надо. модЕсли создавать пару объектов А и В проблема изчезаетНе понимаю что за проблема то? Что Вы хотите делать с объектом А в этом случае? зачем он вам вообще нужен? мода проблема возникает при переопределении метода(св-ва), т.е появляется новый метод(св-во). новый метод НЕ появляется. появляется новая реализация метода, но это к использованию метода никакого отношения не имеет, поскольку "использование метода" подразумевает вызов метода по его спецификации которая никак не меняется ,а реализация - она инкапсулирована и пользователь про нее ничего не знает и знать не должен. модПроблема как раз и возникает из-за того что экземпляры оказываются разные по свойствам Еще раз. Не понимаю - какая проблема? На каком-нибуть простом примере можно проиллюстрировать эту проблему? модИМХО д.б. так: создаем объект-наследник + создаем объекты во всех классах-родителях и связываем их ссылками Еще раз - зачем объекты в классах родителях нужны? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.07.2006, 18:04 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
U-geneНе понимаю что за проблема то? Был класс А, для него были написаны методы. Затем появляются наследник В. При этом поведение методов А не должно никак измениться из-за их переопределения в В. Экземпляры А должны обрабатываться исходными методами А. Т.е. наследование не должно никак влиять на св-ва и методы родителя. У вас получается ровно наоборот. ps пример не доказательство pps две разные программы решающие одну и ту же задачу конечно можно называть разными реализациями - это просто вопрос терминологии. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.07.2006, 09:23 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
модБыл класс А, для него были написаны методы. Затем появляются наследник В. При этом поведение методов А не должно никак измениться из-за их переопределения в В. Экземпляры А должны обрабатываться исходными методами А. Т.е. наследование не должно никак влиять на св-ва и методы родителяИМХО это опять бла-бла-бла. Вы 1) ...Вы конкретный пример можете привести, при котором полиморфные методы вредят? 2) ...Если нужно, что бы "поведение методов А недолдно икак изменяться", зачем их вообще переопределять? Так пусть реализация останентся прежней и нет проблемы. модПри этом поведение методов А не должно никак измениться из-за их переопределения в В. ... продолжая пример про окна - пусть текст выводися как линия, пусть окно выводится как линия. Я привел совершенноо конкретный пример, когда НУЖНО , что бы реализация метода менялась у классов наследников. Приведите мне такой же конкретный пример ,когда НУЖНО что бы реализация не менялась (при этом объясните, зачем ее кто-то все же будет менять, ежели оно не нужно). Или приведите мне конкретный пример когда НУЖНО , что бы для объекта класса-наследника паралельно существовал существовал объект родительского класса. Объясните зачем этот последний объект нужен (на совершенно конкретном примере). И насчет примеров... модпример не доказательство ...Ой-ли? 1) Например пусть есть утверждение "сумма двух целых не может быть четным числом". Я привожу пример 1+1=2. Тем самым я доказываю, что утверждение неверно. 2) Применительно к кактегории "нужно - не нужно" примеры ИМХО служат основным доказательством. Это не теорем Пифагора. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.07.2006, 10:00 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
позвольте ремарку. мне кажется, что писуя про А и Б в ооп, мод все время держит в виду не ооп, а звезду в некой конкретной реляционной реализации "объектов" и их "наследников" (в некоторй субд). Тогда, если какое то _поле_ определено для "реляционной-сущности-"объекта" (т.е. таблицы), и это же поле (одноименное поле , но с другим типом) определено и для "реляционной-сущности-наследника", то для наследника имеем в такой вот реализации "наследования" и "старое" поле в таблице А, и новое поле в таблице Б. И он не видит, что в ооп такого просто нет. по крайней мере в некоторых языках, реализующих ооп. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.07.2006, 10:47 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
модБыл класс А, для него были написаны методы. Затем появляются наследник В. При этом поведение методов А не должно никак измениться из-за их переопределения в В. Экземпляры А должны обрабатываться исходными методами А. И в чем проблема? Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. Это то, что Вам нужно? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.07.2006, 11:10 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
U-gene 2) ...Если нужно, что бы "поведение методов А недолдно икак изменяться", зачем их вообще переопределять? Так пусть реализация останентся прежней и нет проблемы. Есть проблема - наследованием может заниматься другой разработчик и он не должен портить уже сделанное другими. Примеров приводить не буду по вышеуказанной причине. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.07.2006, 11:13 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
[quot softwarer] Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.07.2006, 13:02 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
модЕсть проблема - наследованием может заниматься другой разработчик и он не должен портить уже сделанное другими. Сильный аргумент:) Почему Вы так плохо о разработчиках думаете? Другой разработчик ничего не портит. Он в любом случае никак не сможет испортить реализацию родительского класса. Он может создать другую реализацию, которая ему нужна. При этом для объектов созданных как объекты родительского класса будет выполняться старая реализация, для объектов класса наследника - новая (та которая для них нужна). Я вот одного не пойму. Текущая страница началась с утверждения, что де при создании объекта класса наследника нужно создавать объект родиельского класса. Я поинтересовался а нафига это паралельный родительский объект вообще нужен? Теперь я слышу очень забавную фразу - что бы де тот, кто будет создавать объет наследник "ничего не испортил". Ну и? как существование паралельного родительского объекта позволит "ничего не испортить"? Что вообще значит это интригующая фраза - "ничего не испортить"? Приведите пожалуйста пример такой "порчи". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.07.2006, 13:52 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
U-geneПри этом для объектов созданных как объекты родительского класса будет выполняться старая реализация, для объектов класса наследника - новая (та которая для них нужна). Но старая программа, которая обрабатывает все экземпляры А, ожидает что и св-ва и методы будут от А, а не от В, т.е. старые, а не новые. Если такая программа наткнется на объект В с новыми св-ми, она вылетит. Поэтому и надо создать объект в А со св-ми А, а не В. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.07.2006, 14:08 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
модизвините не понял а это что ? Приведение типа, static_cast. Короткая запись следующего: Код: plaintext 1. 2. 3. 4. 5. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.07.2006, 14:34 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
softwarer А вот Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.07.2006, 15:24 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
мод Если такая программа наткнется на объект В с новыми св-ми, она вылетит. Поэтому и надо создать объект в А со св-ми А, а не В................А как он будет работать с переопр. св-ми В ? Не вылетит ?Ага. Вылетит. И полетит яки птица в небеса обетованные. Вы это серьезно (утверждаете - спрашивате) или это такой тонкий стёб? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.07.2006, 00:32 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Просто поразительно вежливый топик. Что-ж так с серьезным видом вежливо измываться над человеком столько времени. Вы бы хоть человеку концепцию интерфейсов объяснили, что-ли. из вежливости. Хотя это не обязательно. можно, например, намекнуть человеку, что у если абстактного класса A реализация наступает в наследнике В, то при создании экзепляра класса В просто физически нечему создаваться в предке А. нет (совсем аккуратно -может не быть, и не будет в "чистых" реализациях ООП) никаких "экземпляров класса А" в природе. Зато в программе может быть сколько угодно переменных класса А. или рассказать про то, что создание экземпляра в "классе действительных чисел", которые наследует все свойства целых, не требует никаких "параллельных" созданий никаких экзепляров в "классе целых" такие-то слова он должен понять или нет? глядишь, тогда у него вместо утверждений вопросы появятся. ЗЫ (читаю топик совсем по диагонали, может ошибаюсь, что-то здесь у вас про включение наследников в предков проскакивало. правильно ли я понял участников, что они предпочитают, чтобы целые включали действительные как подмножество, а не наоборот?) впрочем, можно снова удалять. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.07.2006, 03:31 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
U-gene Вы это серьезно (утверждаете - спрашивате) или это такой тонкий стёб? Нет, может я чего-то не понимаю, но ведь при переопределении св-ва оно может поменять тип данных, а старая программа ожидает старый тип данных, вот и вылет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.07.2006, 09:35 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Вы с каким нить ОО языком типа С++ или Java никогда не работали? Орпеделяем в классе заголовок (спецификацию сигнатуру) метода. Что он принимает в качестве параметров, что он возвращает, его имя. Никаких "поменять тип данных" не наблюдается. Давным давно когда только появился Windows 3.1 я участвовал в написании системки, которая работала бы с БД генов и белков. На тот момент (да и сейчас) существовало несколько форматов, которые время от времени менялись. Задача была написато нечто типа драйверов для разных БД которые можно было бы подгружать не перекомпилируя систему. Решение нашлось очень простое (буквально десяток строк). Оно использовало особенности Win31 и компилятора Borland не помню какой версии. В основной программе был определен класс DB (абстрактный, если не ошибаюсь). Программа используя WinAPI могла подгружать DLL по имени этой DLL. В каждой DLL было доступно несколько стандартных функций. Программа вызывала одну из этих функций, предавая ей какиее то параметры (типа путь-имя файлов БД). Эта функция создавала объект класса DB и возвращала в основную программу указатель на него. Фишка была в том, что в каждой из DLL был описан свой класс-наследник класса DB, реализующий работу с конктреным форматом БД. Соответсвенно для того, что бы использовать новую БД с новым форматом надо было лишь добавить в список используемых БД строку с именем БД и именем DLL. То есть основная программа знала интерфейс(спецификацию) класса и им пользовалась и ничего не вылетало потому, что интерфейс он на то и интерфейс, что бы оставаться неизменным. сосед-акцессник Что-ж так с серьезным видом вежливо измываться над человеком столько времени. Осталось только понять, кто над кем измывается. :) Я на двух разворотах говорю о разнице между спецификацие и реализацией, подразумевая (исходя из ответов оппонента) что эти понятия ему как-то (хотя бы на примере на какого-нибуть С++ или Java) знакомы. И получаю в последнем посте "вылетит". И кто тут над кем измывается? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.07.2006, 10:55 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
2 U-gene не обращай на меня внимания. это у меня ночная эмоциональность такая. форма недержания. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.07.2006, 11:07 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
сосед-акцессникили рассказать про то, что создание экземпляра в "классе действительных чисел", которые наследует все свойства целых, не требует никаких "параллельных" созданий никаких экзепляров в "классе целых" (читаю топик совсем по диагонали, может ошибаюсь, что-то здесь у вас про включение наследников в предков проскакивало. правильно ли я понял участников, что они предпочитают, чтобы целые включали действительные как подмножество, а не наоборот?) довольно смелая параллель для ооп. видимо таки придецца создать абстрактный класс число, и уж от него наследовать действительные. А не действительным - наследоваться от целых. в качестве задачи для медитации: у целого счисла есть св-во "предыдущее" (такоже - "последующее"). Найдите мне таковое св-во для действительного. Или хотя бы для рационального. В этом смысле, наследование в ооп, как мне представляется, идет в обратном порядке - от общего (действительных) к частному - целых. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.07.2006, 11:41 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
U-geneОрпеделяем в классе заголовок (спецификацию сигнатуру) метода. Что он принимает в качестве параметров, что он возвращает, его имя. Никаких "поменять тип данных" не наблюдается. 1. Метод ничего не возвращет - это процедура. Возвращает функция - но ее сложно назвать методом, скорее св-ом. 2. Тип данных может измениться при переопределении св-ва. 3. В каждом частном случае все может работать - именно по этому пример не доказательство. Но нельзя строить теорию на частных случаях. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.07.2006, 11:53 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
модВозвращает функция - но ее сложно назвать методом, скорее св-ом. Честно, злостное неиспользование устоявшейся терминологии превращает ваши пламенные спичи в поток сознания ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.07.2006, 12:17 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Ну и кто над кем тут измывается? мод1. Метод ничего не возвращет - это процедура. Возвращает функция - но ее сложно назвать методом, скорее св-ом. 2. Тип данных может измениться при переопределении св-ва. Да причем здесь названия то?! Я говорю, что ИНТЕРФЕЙС(СПЕЦИФИКАЦИЮ) класса НЕЛЬЗЯ МЕНЯТЬ ПО ОПРЕДЕЛЕНИЮ как её компоненты не обзывай , а Вы опять начинаете нести пургу, что де "тип данных можно изменить". мод3. В каждом частном случае все может работать - именно по этому пример не доказательство. Но нельзя строить теорию на частных случаях.Судя по этому Вашему вопросу Вы, уважаемый мод без сомнения являетесь знатоком частных случаев .Соответсвенно еще раз прошу ответить Вас на эти мои вопросы. Я неоднократно приводил примеры, когда "порчи" не происходит. Приведите пожалуйста теперь Вы хотя бы один пример, описываемой Вами "порчи", на любом существующем языке. Приведите пожалуста пример, когда оправданно паралельное существование объекта родительского класса. Не в целях теории - честно говоря, мне просто хочется увидеть, понимаете ли Вы вообще то, о чем говорите. Иначе разговор с Вами считаю законченным. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.07.2006, 12:35 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
2 (4321) Вы правы в том, что "мысль смелая" в том плане, что хорошо пригодна к оспариванию и вообще и в конкретном случае в особенности. И даже к ее полному отрицанию. Так что пример не удачный и может не работать, так, как предположительно задумывалось. Про неудачность наследования. В данном конкретном случае общий предок для целых и действительных может быть и просматривается, но между собой они не обязаны быть ни в каком отношении наследования. Причиной для отрицания наследования может быть, например, использование разного набора машинных команд для обеспечения одной или другой арифметики. А приведение типов без наследования может осуществляться методами утилитных публичных single instance классов. Строить или не строить иерархию наследования – разработчик определит исходя из технических деталей. Я использовал этот пример не как демонстрацию «идеально правильно построенного наследования», а просто как ближайшую множественную аналогию. С другой стороны, «в принципе», построить наследование именно от целых к действительным все-таки можно. Действительных в некотором смысле больше, чем целых. Это-то и является первым признаком того, что им, действительным, и быть потомкам по отношению к целым. «В принципе» построение такого наследования возможно как по реализации внутренних членов - увеличением размера полей от 32битных к 64битным (64=2 раза по 32), так и в плане добавления свойств (модификации поведения ), которого не было у целых предков. А именно, операция умножения в действительных дополняется обратной – делением. В целых целение не обладает таким качеством по отношению к умножению. Все отношения и операции, определенные для целых, сохраняются и для действительных и продолжают возвращать значения. Никакая ранее определенная операция не оказывается потерянной, выпавшей из множества доступных для вновь произведенного типа. В том числе функции, определяющие порядок следования чисел есть и возвращают значения. При работе с действительными числами, в силу конкретной реализации, и правда может оказаться, что два числа, форматирующиеся в одно и то же текстовое представление оказываются неравными друг другу при проверке на равенство, или, если есть С=А-Б и А > Б, то Б+С может оказаться как больше, так и меньше А. Во первых – это проблема реализации, во вторых он не имеет отношения к «настоящим» действительным числам, для которых и с равенством и с порядком все в порядке. В третьих, это не имеет отношения к наследованию, поскольку не отменяет выполнимость операций, определенных на предке в наследнике. Общее, это то, чье описание беднее. Частное – на то и частное, чтобы для него требовалось много слов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.07.2006, 12:41 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
сосед-акцессник2 (4321) Я использовал этот пример не как демонстрацию «идеально правильно построенного наследования», а просто как ближайшую множественную аналогию. это понятно сосед-акцессникк «настоящим» действительным числам, для которых и с равенством и с порядком все в порядке.отношения порядка для целых, рациональных и действительных существенно разные. У целых - есть предыдущие (как и у "действительных " в машинной реализации), у рациональных их (предыдущих) нет, зато они (как мн-во) не всюду плотны, у действительных нет предыдущих, но для любого сечения найдется граница. т.е. свойства "предыдущее" в 2-х последних случаях не будет определено. Хотя отношение порядка - определено будет. Можно конечно счесть св-во "предыдущее" несущественным или исчислимым и для целых, если бы целые не вводились как индуктивная процедура с конечным шагом. (т.е. как последовательность следующих друг за другом) сосед-акцессникВ третьих, это не имеет отношения к наследованию, поскольку не отменяет выполнимость операций, определенных на предке в наследнике.что делать с полной отменой свойства "предыдущее"? (для "идеальных", а не машинных целых) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.07.2006, 13:26 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
4321 что делать с полной отменой свойства "предыдущее"? (для "идеальных", а не машинных действительных) мои извинения за временную потерю управления речью ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.07.2006, 13:29 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
сосед-акцессник Общее, это то, чье описание беднее. Частное – на то и частное, чтобы для него требовалось много слов.И? или вам надо больше слов для действительных, чем для целых? тогда как вы посмотрите на сентенцию: "частный случай целого числа - число пи" думаю, идя от абстрактного понятия "число" можно построить систему, в которой для вещественного числа потребуется "меньше слов", чем для целого. При том, что меньше слов значит и меньше ограничений - т.е. большую размерность (мощность) мн-ва. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.07.2006, 13:40 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
модЯ так понял, что вызывается метод А. А как он будет работать с переопр. св-ми В ? Не вылетит ? В приведенном мной тексте есть и результат выполнения этого кода. Впрочем, откомпилируйте - и увидите самостоятельно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.07.2006, 13:57 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
U-geneИначе разговор с Вами считаю законченным. В виду выявившихся разногласий сторон это будет наиболее правильное решение. Спасибо за участие, успехов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.07.2006, 14:00 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
4321 что делать с полной отменой свойства "предыдущее"? (для "идеальных", а не машинных целых) полушутка - на мой вкус - считать любое моделирование в рамках бъектно-ориентированной вычислительной модели "иной реальности" всего лишь моделированием. Как вы сами заметили - в реализации предыдущие есть. По существу - вы меня убедили. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.07.2006, 14:01 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
Gluk (Kazan)Честно, злостное неиспользование устоявшейся терминологии превращает ваши пламенные спичи в поток сознания Пламенные ? У меня ничего не горит. А плохо-устоявшуюся терминологию использую только при большой необходимости. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.07.2006, 14:05 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
сосед-акцессник Как вы сами заметили - в реализации предыдущие есть.есть. в реализации пока не видно актуальных бесконечностей. OFF: Кстати, не кинете на лесенку ссылки на т. Геделя, а то я в сети нашел только введение (Успенского, кажется). Хочется посмотреть глазом, что за "языки" L и "языки_доказательств" P, а такоже что за ф-ия отображения, с которыми она имеет дело. Соотносится ли дополнительные ограничения на оные, требуемые в т.Г. - с моим интуитивным пониманием езыга, док-ва, и оной ф-ии. А ее вы в соседнем этому топике поминали. Как счас помню. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.07.2006, 14:21 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
4321 есть работа Манина http://agp1.nm.ru/arts/manin2.html Манин - голова, но его читать тяжело. ((( есть замаскированное использование Геделя в такой монографии. http://sql.ru/forum/actualthread.aspx?tid=300740#2809948 /* для авторов постоянно вспоминающих Тьюринга не сослаться на Геделя - имхо, не очень красиво. */ Там вместо формальной системы арифметики использовался язык си, на языке си записана нерешабельная Великая Теорема Ферма. http://c-books.info/books/rapid1/index19.htm ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.07.2006, 23:14 |
|
||
|
Будь моя воля, я бы ООП вообще запретил!
|
|||
|---|---|---|---|
|
#18+
tchingiz4321 http://agp1.nm.ru/arts/manin2.html >>спасибо есть замаскированное использование Геделя в такой монографии. http://sql.ru/forum/actualthread.aspx?tid=300740#2809948 >>если этот пост - монография... Там вместо формальной системы арифметики использовался язык си, на языке си записана нерешабельная Великая Теорема Ферма. http://c-books.info/books/rapid1/index19.htm >>Кажется в 90-е прошлого века она таки была доказана. вы нашли ошибку в док-ве? еше раз - спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.07.2006, 12:48 |
|
||
|
|

start [/forum/topic.php?all=1&fid=16&tid=1346688]: |
0ms |
get settings: |
10ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
90ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
223ms |
get tp. blocked users: |
1ms |
| others: | 256ms |
| total: | 613ms |

| 0 / 0 |
