Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Потрепаться";
Текущий архив: 2003.10.27;
Скачать: [xml.tar.bz2];

Вниз

---|Ветка была без названия|---   Найти похожие ветки 

 
Marser   (2003-10-05 14:46) [0]

Недельки две назад побеседовал о программировании со своим одногруппником и другом, человеком неглупым и разносторонним. Он написал курсовой по методу Зайделя на "10" (на Си), а теперь окунулся в Делфи и сразу в БД. Пару дней назад я помог ему с инсталляцией BDE, а тепрь имел неосторожность поинтересоваться кой-о чем:
Я: Ну теперь ты можешь сказать, кто тебе ближе в споре Паскаль vs Cи.
N: Паскаль очень простой язык, намного проще Си.
Я: За то его и ценят...
N: Но в Си лучше развито ООП.
Я: Ага, особенно бред вроде множественного наследования :-) Это ведь прямая дорожка в муть страшную...
(объекты нам в универе не читали)
N: Ну и что? Я знаю много прогораммистов на Делфи и они говорят, что им часто приходится использовать ООП.
Я выпал! Это было что-то! Объяснив ему, что вся VCL это сплошной ООП, я подумал, а не стоит ли пояснить, что такое VCL? На следующий день я попытался поднять тему:
Я: А что же такое ООП?
N: Это когда программа использует функции из других модулей.
Однако я опять в ауте! Кратко объяснив ему что это модульность, а не ООП, что ООП начался в Паскале с ТР4, что такое ООП и чем он отличается от структурного программирования, я получил тихий ответ: "Может и так...".

Вопрос напрашивается - как же сделать из кнопкокидателя нормального программиста, если он уже познал структурное программирование в ДОС и на Си? Так не хочет называть друзей ламерами, а симптомы налицо...
Наша компания увлекается CS, есть и довольно серьезные игроки. Так вот дабы избежать оскорбления "ламер", я придумал примитивный, по сути, вопросец - "Какая принципиальная разница между сегментной и плоской моделями памяти?". Вопрос в общем-то несложный, но хорошо ставит на место зарвавшихся геймеров с кулхацкерами. Кстати, на него мне из сверстников в реале пока никто не ответил, даже ребята, стяжавшие славу на конкурсах по программированию.


 
Anatoly Podgoretsky   (2003-10-05 14:55) [1]

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


 
k-man   (2003-10-05 15:07) [2]


> Ага, особенно бред вроде множественного наследования :-)
> Это ведь прямая дорожка в муть страшную...

Ну-ка аргументируй.. Только не надо аргументов типа "Да в потомках запутаться можно". Ведь если все грамотно построить, то все будет тип-топ..
Я не проффессионал поэтому могу ошибаться, но считаю наследование одним наибольших преимуществ ООП.


 
Ihor Osov'yak   (2003-10-05 15:09) [3]

> что ООП начался в Паскале с ТР4,

неа. с TP5.5


 
k-man   (2003-10-05 15:12) [4]

Хотя может я просто неправильно понимаю и множественное наследование в Си совсем не то наследование что наследование в Object Pascal.
В таком случае приношу свои извинения и прошу объяснить смысл данного термина.


 
k-man   (2003-10-05 15:15) [5]

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


 
Marser   (2003-10-05 15:21) [6]

Я учавствовал однажды в таком, будучи в 11-м классе(май 2002). Проводился в Дворце школьников в номинациях: "Игры", "Прикладные программы", "Системные программы", "Сетевые программы", "Web-страницы". Выставил софт в системных(твикер системы, довольно мощный) где и обошел остальных и в сетевых(система удаленного администрирования), но там было только лишь два участника кроме меня - мой приятель с чатом для LAN и какой-то малыш с адрессной книгой (?), потому награждения в ней не было. Жюри смотрело только демонтрацию работы и ставил балы за востребованность, удобство, дизайн, сложность, систему помощи и т.д. Так я выиграл свои колонки, хотя Коле Быкову я приврал, ведь поступил в универ я своими силами.


 
Marser   (2003-10-05 15:22) [7]


> Ihor Osov"yak © (05.10.03 15:09) [3]
> > что ООП начался в Паскале с ТР4,

Описался - модульность началась с ТР4. Просто из-за личных и серверных глюков пост пришлось переписть по новой, вот и глюкануло.


 
Думкин   (2003-10-05 15:28) [8]


> [2] k-man © (05.10.03 15:07)
> Я не проффессионал поэтому могу ошибаться, но считаю наследование
> одним наибольших преимуществ ООП.


Речь шла не о просто наследовании, а о "множественном" наследовании.

> Marser © (05.10.03 14:46)
Может я ошибаюсь, но насколько помню - объекты появились в версии 5.5.

А вопросов таких можно придумать. Олимпиада или соревнование - это одно. С этим приходится часто сталкиваться. Это иногда проблема на первом курсе для многих.


 
Думкин   (2003-10-05 15:30) [9]


> [3] Ihor Osov"yak © (05.10.03 15:09)
> [4] k-man © (05.10.03 15:12)

Извиняюсь, задержался с постом.


 
k-man   (2003-10-05 15:30) [10]


> Речь шла не о просто наследовании, а о "множественном" наследовании

Я же вроде бы исправился...


 
k-man   (2003-10-05 15:31) [11]


> Извиняюсь, задержался с постом.

А я этого поста не видел... ;)


 
Marser   (2003-10-05 16:54) [12]


> Marser © (05.10.03 15:22) [7]
>
> > Ihor Osov"yak © (05.10.03 15:09) [3]
> > > что ООП начался в Паскале с ТР4,
>
> Описался - модульность началась с ТР4. Просто из-за личных
> и серверных глюков пост пришлось переписать по новой, вот
> и глюкануло.

Этот постхоть все видели?


 
k-man   (2003-10-05 16:56) [13]


> Этот постхоть все видели?

А чего ж мы не должны его видеть?


 
Blackman   (2003-10-05 17:20) [14]

>что ООП начался в Паскале...
ООП начался не в Паскале :)
-----------------------
Объектно-ориентированное программирование - это новый подход к созданию программ. По мере развития вычислительной техники возникали разные методики программирования. На каждом этапе создавался новый подход, который помогал программистам справляться с растущим усложнением программ. Первые программы создавались посредством ключевых переключателей на передней панели компьютера. Очевидно, что такой способ подходит только для очень небольших программ. Затем был изобретён язык ассемблера, который позволял писать более длинные программы. Следующий шаг был сделан в 1950 году, когда был создан первый язык высокого уровня Фортран.

Используя язык высокого уровня, программисты могли писать программы до нескольких тысяч строк длиной. Для того времени указанный подход к программированию был наиболее перспективным. Однако язык программирования, легко понимаемый в коротких программах, когда дело касалось больших программ, становился нечитабельным (и не управляемым). Избавление от таких неструктурированных программ пришло после изобретения в 1960 году языков структурного программирования (structured programming language). К ним относятся языки Алгол, Паскаль и Си. Структурное программирование подразумевает точно обозначенные управляющие структуры, программные блоки, отсутствие (или, по крайней мере, минимальное использование) инструкций GOTO, автономные подпрограммы, в которых поддерживается рекурсия и локальные переменные. Сутью структурного программирования является возможность разбиения программы на составляющие её элементы. Используя структурное программирование, средний программист может создавать и поддерживать программы свыше 50000 строк длиной.

Хотя структурное программирование, при его использовании для написания умеренно сложных программ, принесло выдающиеся результаты. даже оно оказывалось несостоятельным тогда, когда программа достигала определённой длины. Чтобы написать более сложную программу, необхдим был новый подход к программированию. В итоге были разработаны принципы объектно-ориентированного программирования. OOP аккумулирует лучшие идеи, воплощённые в структурном программировании, и сочетает их с мощными новыми концепциями, которые позволяют оптимально организовывать ваши программы. Объектно-ориентированное программирование позволяет вам разложить проблему на составные части. Каждая состовляющая становится самостоятельным объектом, содержащим свои собственные коды и данные, которые относятся к этому объекту. В этом случае вся процедура в целом упрощается, и программист получает возможность оперировать с гораздо большими по объёму программами.

Все языки OOP, включая С++, основаны на трёх основополагающих концепциях, называемых инкапсуляцией, полиморфизмом и наследованием
Это можешь рассказать другу
-----------------------
А это если не поверит твоему рассказу
Словарь объектно-ориентированного программирования
http://www.prikoly.ru/cgi-bin/base.cgi?what=oop&type=text&from=rzdd::pos


 
Marser   (2003-10-05 17:22) [15]


> ООП начался не в Паскале :)

Природно! (то есть естественно) То что он начался как минимум в Смоллтоке - факт!


 
Marser   (2003-10-05 17:30) [16]


> Blackman © (05.10.03 17:20) [14]

Meine got, Shwartzman! Именно это я ему и рассказал. О переходе от структурного к ООП и о принципах ООП. Здесь вы, прошу прощения, не рассказали мне ничего нового, хотя все равно спасибо за заботу.

> http://www.prikoly.ru/cgi-bin/base.cgi?what=oop&type=text&from=rzdd::pos
А вот за это спасибо! :-))

Мне все-таки интересен вопрос - КАК ПОСТАВИТЬ ТАКОГО ЧЕЛОВЕКА НА ПРАВИЛЬНЫЙ ПУТЬ?


 
Blackman   (2003-10-05 17:38) [17]

>Marser
Собственно я и не сомневался, что вы знаете первое, но что бы поставить на правильный путь интереснее второе.
Т.е. это можно сделать с шуткой :)
Но нужно ли ? Возможно ему этого просто не нужно ?


 
k-man   (2003-10-05 17:39) [18]


> Мне все-таки интересен вопрос - КАК ПОСТАВИТЬ ТАКОГО ЧЕЛОВЕКА
> НА ПРАВИЛЬНЫЙ ПУТЬ?

Если ему это интересно то он без всяких советчиков и учителей будет целыми днями сидеть за книжками и за Делфи(как я ;), а если нет то никакой совет совет ему не поможет... А из твоего рассказа складывается впечатление что ему до фени...


 
Blackman   (2003-10-05 18:00) [19]

>Marser
К стати говоря, хорошо убеждать предварительно подготовившись.
Попробуйте написать простенькую статью на эту тему.
Разместить ее можно здесь:
Вопросы начинающих программистов
http://delphiclub.ru/forums/index.php?s=f1d77102fc54860714cfbc5bb5832984&act=SF&f=3
Модератор: Anatoly Podgoretsky
Я думаю, что это будет интересно не только вашему другу.

>А из твоего рассказа складывается впечатление что ему до фени...
Вот пусть и почитает для начала. Может быть проснется...
Приглашаю всех желающих написать полезности для начинающих. Собственно там можно и вопросы задавать и отвечать на вопросы. Идея не форума, а семинаров


 
Pat   (2003-10-05 18:30) [20]

А вопрос-то остался - "Какая принципиальная разница между сегментной и плоской моделями памяти?" :-))


 
Anatoly Podgoretsky   (2003-10-05 18:31) [21]

Marser © (05.10.03 17:30) [16]
Зачем его наставлять на истинный путь?
Подумай об этом.


 
Marser   (2003-10-05 18:53) [22]


> Blackman © (05.10.03 18:00) [19]

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


> k-man © (05.10.03 17:39) [18]


> ему это интересно то он без всяких советчиков и учителей
> будет целыми днями сидеть за книжками и за Делфи(как я ;),
> а если нет то никакой совет совет ему не поможет...

Целыми днями? Это ты немного загнул. Можно, конечно сидеть целыми днями, особенно двигаясь в неверном направлении.


 
Blackman   (2003-10-05 19:07) [23]

>Такое бывает и, в основном, у людей умных, но кичливых не в меру.
Это ты точно сказал.
>А адрес интересный, что-нибудь туда напишу как-нибудь
Напиши конечно. Вход свободный. Нужно только зарегистрироваться и размещай.
Сделали для тех, кто может и хочет помочь другим.
Правила (Аннотация) здесь:
http://delphiclub.ru/forums/index.php?act=ST&f=3&t=258&s=b1302e05f26f35c0bda294a5bd5fd1b2
Есть еще раздел попроще (Маленькие хитрости) Здесь мы и вы размещаем подсказки для программистов.
http://delphiclub.ru/forums/index.php?s=09d4697ba3dbfad99a3391f4b4cb0570&act=SF&f=4
Можете высказаться и поучить :)


 
k-man   (2003-10-05 19:09) [24]


> Возможно, к-ман и прав -

Ты, как я уже понял не Марсианин, а я не к-ман. Изволь читать как кей-мэн ;)
> Целыми днями? Это ты немного загнул. Можно, конечно сидеть
> целыми днями, особенно двигаясь в неверном направлении.

Да нет это я вообще о программировании. У меня библиотека из 11 книг.
Кстати я упомянул о том что сижу не только за книгами, но преимущественно за работой над своими программами.. Кстати я нисколько ни загнул: работаю от 4 до 10 часов в сутки.


 
Marser   (2003-10-05 20:26) [25]


> Да нет это я вообще о программировании. У меня библиотека
> из 11 книг.

Ты крут :-) Только что посчитал - у меня околокомпьютерных - 25 своих плюс 3 чужих, так что...(правда, сбор начался ещё когда я читать не умел, благодаря моему отцу)
> Кстати я упомянул о том что сижу не только за книгами, но
> преимущественно за работой над своими программами.. Кстати
> я нисколько ни загнул: работаю от 4 до 10 часов в сутки.

И снова почитай мой пост. Сидеть весь день можно при отстствии концентрации (у меня такое случается), или при неверном подходе. И зачем ты пытаешься померяться достоинством, у многих все равно больше, у некоторых вообще дворянское? :-)


> Blackman ©

Обязательно опубликуюсь. Писать я, скромно говоря, умею.


 
Anatoly Podgoretsky   (2003-10-05 20:30) [26]

Marser © (05.10.03 20:26) [25]
Только приветсвуется, авторы очень нужны.


 
k-man   (2003-10-05 20:59) [27]


> Ты крут :-)

Да я знаю..
> правда, сбор начался ещё когда я читать не умел, благодаря
> моему отцу)

Вот видишь а я все сам собрал.. А если еще и "околокомпьютерные" подсчитать то догоню и тебя
> Сидеть весь день можно при отстствии концентрации (у меня
> такое случается), или при неверном подходе. И

Не согласен. Ты знаешь что такое погружение в работу. Вот иногда сядешь,делаешь что-то а как время пролетает даже и не замечаешь...
> , у многих все равно больше, у некоторых вообще дворянское?
> :-)

Ну зачем ты все опошлил? ;)
> Обязательно опубликуюсь. Писать я, скромно говоря, умею.

Этакий застенчивый скромняшка ;)


 
zzet   (2003-10-05 21:05) [28]

ученье свет, а неученых тьма :-)
http://kama.narod.ru/picture/282.JPG


 
Blackman   (2003-10-05 21:28) [29]

>k-man
Попробуй и ты. Чего просто так постить.
Места там всем хватит.
Напиши и прочитают. Люди оценят.
Сделал или знаешь что-то покажи.

>zzet
Не знаю кто придумал это глупое слово ламер.
Нет такого человека, который бы не был начинающим.
Неважно программистом, писателем, читателем или родителем.
Все мы учимся. Всегда учимся.
И не надо обижать человека, который еще не научился.
Его надо учить, помочь ему и возможно, что он превзойдет учителя. :)


 
k-man   (2003-10-05 21:34) [30]


> Попробуй и ты. Чего просто так постить.
> Места там всем хватит.
> Напиши и прочитают. Люди оценят.
> Сделал или знаешь что-то покажи

Одно дело что-либо знать или уметь, а другое уметь изложить это на бумаге..
Но попробовать можно, спасибо за предложение.


 
Anatoly Podgoretsky   (2003-10-05 21:39) [31]

Тут главное попробовать, может наоборот талант прорежется, я тоже ранее почти не писал статей, только где то лет 20 назад.
Гланое напиши, отложи дня на два и снова взгляни.


 
k-man   (2003-10-05 21:49) [32]

А что сейчас актуально?


 
Anatoly Podgoretsky   (2003-10-05 21:58) [33]

Вот это самый актуальный вопрос :-)


 
DiamondShark   (2003-10-05 22:08) [34]


> ты пытаешься померяться достоинством, у многих все равно
> больше, у некоторых вообще дворянское?

Не... рабоче-крестьянское больше...


 
Rule   (2003-10-05 22:52) [35]

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

вот так, так что скажи своему другу ДЕРЗАЙ, и не переубеждай его, если ему нравится Си пусть на нем и пишет, елси Делжи действительно намного лучше то он к этому прийдет через время а если нет то делай выводы ...


 
Иван Шихалев   (2003-10-05 23:01) [36]

http://fpc.by.ru/interfaces.shtml


 
Иван Шихалев   (2003-10-05 23:09) [37]

По вышеупомянутой ссылке рассматриваются не парадигмы как таковые, а их применение в языках Pascal-направления. Некоторые пассажи в более общем контексте верными не являются.


 
Blackman   (2003-10-05 23:20) [38]

>k-man
А что сейчас актуально?
Я думаю, что каждый это определяет сам.
Каждый делает свою программу и каждый мучается над своим вопросом. Конечно есть и сходство. Но если начинать писать, то лучше всего использовать свой опыт. То, что ты знаешь уверенно и можешь изложить. Многие думают, что если это известно мне, то известно и другим. Это не так. И главное, возможно что именно твой взгляд на проблему поможет другим.

>Rule
Речь у нас не о литературе вообще :) Кажется, что её очень много, но так ли это ? Всегда есть разное изложение материала, а следовательно и разное его понимание.
Одна и та же ситуация может быть описана по разному.
Посмотрите спектакль с одним и тем же названием в разных театрах и удивитесь его не похожести. Также и с статьями.


 
Blackman   (2003-10-05 23:26) [39]

Кроме того в процессе написания статей и сам начинаешь лучше понимать предмет, а иногда и пробелы в своём образовании :)
Это уже из собственного опыта :)


 
Gfa   (2003-10-06 00:18) [40]

Не знаю кто придумал это глупое слово ламер.
Нет такого человека, который бы не был начинающим


ты путаешь понятия. Тот, кто никогда не работал с чем-то - начинающий (чайник) в этом деле. А вот кто работал с коспьютерами пять лет, но так и не знает чем отличается папка от директории :) А директория от файла - вот это ламер.
Дело в другом. Что часто чайников ламерами называют, но это мы оставим на совести называющих.

Обязательно опубликуюсь. Писать я, скромно говоря, умею

Даже посмеялся. Marser, я немного знаю твой уровень. Не понтуйся. Я понимаю, что ты хочешь стать мастером, и это даже хорошо. Но тебе надо книги читать умные, хотя бы Тейксера и Рихтера освоить хорошенько, а потом уже в мастера рваться, да в писатели.

Обидеть не хотел. Просто считаю, что лучше отсутствие статьи, например, чем не профессиональная статья. Таких и так полно.



Страницы: 1 2 3 4 5 вся ветка

Форум: "Потрепаться";
Текущий архив: 2003.10.27;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.58 MB
Время: 0.013 c
4-89632
likeanangel
2003-08-21 15:18
2003.10.27
использование XML


7-89593
miguel1
2003-07-08 17:51
2003.10.27
Отправка факсов и голосовых сообщений через модем


1-89225
Mustafa_Kalashnikov
2003-10-15 04:13
2003.10.27
редактор формул


7-89628
Sheng
2003-08-14 23:03
2003.10.27
Каталог Винды


8-89411
!ZasranYolidza!
2003-06-26 19:38
2003.10.27
bmp to jpg converting





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский