Re: Кто читал?
От: Аноним  
Дата: 29.10.07 08:27
Оценка:
Стоящая книга?
Re[2]: Кто читал?
От: anonim_44ax  
Дата: 29.10.07 08:45
Оценка:
А>Стоящая книга?
Напомнило из сайтов с халявой: "Как книга? Стоит качать?". Качать наверное стоит
Re[2]: Даешь "Гарри Поттер и С++"!
От: Кодт Россия  
Дата: 29.10.07 09:27
Оценка: 21 (1) :))) :)
Это к Александреску. Гарри Поттер и Синглетон-Феникс
... << RSDN@Home 1.2.0 alpha rev. 655>>
Перекуём баги на фичи!
Re[6]: Спасибо РСДН!
От: LaptevVV Россия  
Дата: 29.10.07 09:47
Оценка:
Здравствуйте, _FRED_, Вы писали:

LVV>>Критикуешь — предлагай!

_FR>Виноват — это казалось очевидным моя [частая] ошибка Ответ уже, спасибо wallaby, есть.
Не, самым сложным оказывается как раз вроде бы очевидное...
_FR>Ну и заодно: имхо, вообще, к учебному (обучающему) коду надо относиться как к эталонному — учащемуся больше несчего копировать некоторые решения (ну зачем искать в нескольких источниках, сравнивать и делать выводы, как приходится в работе); наверняка ведь видно, что некоторые куски копи-пэйстятся от курсовой к курсовой — пусть и это идёт на пользу, так как "культура" написания сродни почерку — менять непросто и больно.
У меня несколько другое мнение... Как раз во время учебы самое время поискать в нескольких источниках, сравнить и выработать собственную культуру написания... Dj время работы это просто некогда делать — проект сдавать нужно...
К сожалению студенты поступают наоборот... Вот только сейчас на лабе в очередной раз вдалбливал вроде бы достаточно умному студенту...
Он пишет заголовок методы:
void operator+(Money b);

Блин, я на лекциях все уши прожужжал, что результатом операции сложения должен быть объект того же класса!
Он еще попытался два параметра в методе написать — я ему опять: левый аргумент операции сложения — текущий объект, правый — параметр... Говорит, что на лекции был... Тогда я не понимаю, как этого можно было не услышать, если я несколько раз повторил это, да и примеры с отсутствием коммутативности приводил...
Еще раз повторяю, что студент не дурак, пишет все сам... Но каждый раз возникает типа "и так работает"...
У нас таким образом списываю как раз "халявщики", которые сами не хотят писать, а только мечтают добраться до диплома...
_FR>Зато, когда в "боевых условиях" бывший студент поймёт, чему же его на самом деле [и в тайне от него] научили и насколько это оказывается важным (и, не побоюсь "громкого" слова, "решающим")... [Эх, спасибо моим учителям ]
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Re[7]: Спасибо РСДН!
От: _FRED_ Черногория
Дата: 29.10.07 10:20
Оценка:
Здравствуйте, LaptevVV, Вы писали:

LVV>Не, самым сложным оказывается как раз вроде бы очевидное...


+1

_FR>>Ну и заодно: имхо, вообще, к учебному (обучающему) коду надо относиться как к эталонному — учащемуся больше несчего копировать некоторые решения (ну зачем искать в нескольких источниках, сравнивать и делать выводы, как приходится в работе); наверняка ведь видно, что некоторые куски копи-пэйстятся от курсовой к курсовой — пусть и это идёт на пользу, так как "культура" написания сродни почерку — менять непросто и больно.

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

Вот именно поэтому процесс обучения надо организовать так, когда обучаемый "хош-не-хош" достигает результата. Это не мои фантазии: современные системы менеджмента качества устроены таким образом, что бы максимально исключить брак за счёт организации самого производственного процесса.

LVV>Блин, я на лекциях все уши прожужжал, что результатом операции сложения должен быть объект того же класса!

LVV>Он еще попытался два параметра в методе написать — я ему опять: левый аргумент операции сложения — текущий объект, правый — параметр... Говорит, что на лекции был... Тогда я не понимаю, как этого можно было не услышать, если я несколько раз повторил это, да и примеры с отсутствием коммутативности приводил...

Гхм… А разве не является более предпочтительной перегрузка операторов как статических методов? Она и "интуитивнее" понятнее: два аргумента и один результат, всё как в алгебре.

LVV>Еще раз повторяю, что студент не дурак, пишет все сам... Но каждый раз возникает типа "и так работает"...

LVV>У нас таким образом списываю как раз "халявщики", которые сами не хотят писать, а только мечтают добраться до диплома...

"Халявщики" списывают "с кого-то", поэтому научив "локомотив", получится покрыть и "вагончики".
... << RSDN@Home 1.2.0 alpha rev. 717>>
Help will always be given at Hogwarts to those who ask for it.
Re: Спасибо РСДН!
От: Pavel Dvorkin Россия  
Дата: 30.10.07 02:57
Оценка:
Здравствуйте, LaptevVV, Вы писали:

LVV>Питер выпустил из печати мою книжку


Поздравляю!
With best regards
Pavel Dvorkin
Re[2]: Спасибо РСДН!
От: LaptevVV Россия  
Дата: 30.10.07 05:50
Оценка:
Здравствуйте, Pavel Dvorkin, Вы писали:

PD>Здравствуйте, LaptevVV, Вы писали:


LVV>>Питер выпустил из печати мою книжку


PD>Поздравляю!

Спасибо!
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Re[8]: Спасибо РСДН!
От: LaptevVV Россия  
Дата: 30.10.07 06:05
Оценка:
Здравствуйте, _FRED_, Вы писали:

LVV>>К сожалению студенты поступают наоборот...

_FR>Вот именно поэтому процесс обучения надо организовать так, когда обучаемый "хош-не-хош" достигает результата. Это не мои фантазии: современные системы менеджмента качества устроены таким образом, что бы максимально исключить брак за счёт организации самого производственного процесса.
Ну, если о менеджменте качества говорить, то эта лабуда по стандарту ISO 9000? в которую мы сдуру влезли, только добавила головной боли...

_FR>Гхм… А разве не является более предпочтительной перегрузка операторов как статических методов? Она и "интуитивнее" понятнее: два аргумента и один результат, всё как в алгебре.

Это да, но тут я как раз на практике реализую гарантированное обучение... Вот пример задания, который они выполняют...

Структуры и классы
Во всех заданиях, помимо указанных в задании операций, обязательно должны быть реализованы следующие методы:
— метод инициализации Init;
— ввод с клавиатуры Read;
— вывод на экран Display;
— преобразования в строку toString.
Все задания должны быть реализованы тремя способами:
1. тип данных представляется структурой с необходимыми полями, а операции реализуются как внешние функции,
которые получают объекты данного типа в качестве параметров;
2. как класс с закрытыми полями, а операции реализуются как методы класса;
3. инкапсулировать поля класса в независимой структуре и в ней реализовать методы Init(), Read(), Display(),
toString(); в основном классе должно быть одно поле данных, представленное объектом-структурой.

24. Создать класс Money для работы с денежными суммами. Число должно быть представлено двумя полями: типа long для рублей и типа unsigned char — для копеек. Дробная часть (копейки) при выводе на экран должны быть отделены от целой части символом запятая. Реализовать сложение сумм, вычитание сумм, деление сумм, деление на суммы на дробное число, умножение на дробное число и операции сравнения.
32. Реализовать класс Account, представляющий собой банковский счет. В классе должны быть четыре поля: фамилия владельца, номер счета, процент начисления и сумма в рублях. Открытие нового счета выполняется операцией инициализации. Необходимо выполнять следующие операции: сменить владельца счета, снять некоторую сумму денег со счета, положить деньги на счет, начислить проценты, перевести сумму в доллары, перевести сумму в евро, получить сумму прописью (преобразовать в числительное).

Композиция классов и объектов
Во всех задачах требуется реализовать по два-три класса. Один класс является основным, остальные — вспомогательные. Вспомогательные классы должны быть определены как независимые. Объекты вспомогательных классов должны использоваться в качестве полей основного класса.
41. Реализовать класс Account (задание 32), используя для представления суммы класс Money из задания 24.

Реализовать задания 21-40, определив соответствующую структуру как вложенную.
Реализовать задания 41-60, используя конструкцию вложенного класса.
Выполнить задания 1.21-1.40 как независимые классы с конструкторами и перегрузкой операций. Все операции определить как внешние дружественные функции.
Выполнить задания 1.21-1.40 с конструкторами и перегрузкой операций. Поля класса инкапсулировать в подходящей структуре, а в классе должно быть одно поле данных, представленное объектом-структурой Используемую в задании структуру нужно реализовать с конструктором инициализации, перегрузить для нее операции ввода/вывода как внешние дружественные функции.
Выполнить задания 1.41-1.60 с конструкторами и перегрузкой операций.
Выполнить задания 1.41-1.60 с конструкторами и перегрузкой операций, используя конструкцию вложенного класса вместо композиции.
Выполнить задания 1.41-1.60 с конструкторами и перегрузкой операций, используя конструкцию вложенного класса вместо композиции; добавить подсчет объектов для внутренних классов.

Ну и так далее — выполняют те же задания с разных сторон...
Поэтому в конкретном варианте задания я настаиваю на выполнении "требований заказчика"
_FR>"Халявщики" списывают "с кого-то", поэтому научив "локомотив", получится покрыть и "вагончики".
Вообще-то говоря, если он мне по списанному может внятно ответить на ряд вопросов — я не придираюсь... А вот если содрал и не обдумал — тогда заворачиваю... Чтоб хотя бы посмотрел, что списал...
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Re[9]: Спасибо РСДН!
От: _FRED_ Черногория
Дата: 31.10.07 18:16
Оценка:
Здравствуйте, LaptevVV, Вы писали:

LVV>Ну, если о менеджменте качества говорить, то эта лабуда по стандарту ISO 9000? в которую мы сдуру влезли, только добавила головной боли...


А, ну против такого мне нечего возразить
Help will always be given at Hogwarts to those who ask for it.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.