В ООП я бы сделал так как-то
там недопил один))
Помогите разобраться с кодом.
Модератор: Модераторы
Re: Помогите разобраться с кодом.
java73 мдя... тяжкий случай....
Походу у вас "стальные канаты". Правда: с недопилом
п.с.
вот наф... так заворачивать для, надеюсь не школа, штудента (макс. 2-й курс)?
Вспомнилась "качелька" чёт
Походу у вас "стальные канаты". Правда: с недопилом
п.с.
вот наф... так заворачивать для, надеюсь не школа, штудента (макс. 2-й курс)?
Вспомнилась "качелька" чёт
Re: Помогите разобраться с кодом.
Когда я написал небольшой, но красивый туториал по ООП в freepascal на Хабр (поскольку там для этого языка крайне скудный материал), меня закидали требованиями перевести все на реализацию интерфейсов, создавать объекты абстрактными фабриками, соблюдать SOLID и выкинуть диавольское наследование у классов. А ведь смысл урока был дать введение в понятие классов и основных принципов ООП. Так что теперь я всем мщу.
Добавлено спустя 1 минуту 12 секунд:
надо сразу макать в бочку с TDD/DDD
Добавлено спустя 1 минуту 12 секунд:
pupsik писал(а):вот наф... так заворачивать для, надеюсь не школа, штудента (макс. 2-й курс)?
надо сразу макать в бочку с TDD/DDD
Re: Помогите разобраться с кодом.
а..а: бываетЬ. Вы хоть кодом...Так что теперь я всем мщу.
хм.. это задача препода. Не ваша. Дайте им ощутить щастие бытиянадо сразу макать в бочку
п.с.
по поводу моего кода есть хаяния?
Re: Помогите разобраться с кодом.
такие сверхувнизно железобетонные алгоритмы подошли бы для второго урока, на котором изучают инструкцию ветвления на простых консольных примерах. у вас на форме непосредственно в обработчиках событий контролов напичкан код логики, при этом он включает миллиард вложенных условий, абсолютно не читаемых, идеальный такой спагетти-код. я хотя бы максимально разделил представление и логику, в представлении на каждом контроле вызывается ровно один метод класса, инкапсулировавшего всю логику игры. и вроде бы именно так и должно быть в теории: рандомное число выдает объект - представление лишь показывает его. объект получает от представления введенное пользователем число и обрабатывает его нужным способом. представление реагирует на события объекта - увеличение уровня или увеличение угаданных чисел и просто отображает цифры, все. что и как делает объект форме знать не нужно. форму можно заменить другой, заменить на web представление, на еще что угодно, а модуль с объектом менять не придется вообще ни в строчке. представление лишь дает старт, просит следующее число и реагирует на события. этому надо учить студентов, а не как вложить побольше условий друг в друга и все запихнуть в один метод, привязанный к кнопке.
Добавлено спустя 4 минуты 8 секунд:
В функции, дающей число, у вас заведомо исключены числа, содержащие ноль: 10, 101, 90, 50 и т.д. Этого в предусловии задачи нет.
Добавлено спустя 4 минуты 8 секунд:
В функции, дающей число, у вас заведомо исключены числа, содержащие ноль: 10, 101, 90, 50 и т.д. Этого в предусловии задачи нет.
Re: Помогите разобраться с кодом.
java73 ого как
)))
Хм... Мне вот интересно: будь вы на месте преподавателя и увидев адекватный код.... что бы сказали? Ух ты какой умниц?
Ну не верю я что будет что то иное. Т.е. посмотрят и попробуют своё сваять. Максимум контролы почикают, да хаоса добавят в код. Или по другому будет?
п.с.
нуль - великое дело. Должны же быть бонусы

Добавлено спустя 5 минут 27 секунд:
фу ты... половина вашего хаяния меня - какой вы умниц.... только 3 строки уделили на хаяние из всего. Аж обидно.
Добавлено спустя 1 час 1 минуту 27 секунд:
Попробую "устаканить". Прежде чем тема перевалит во флуд.
Ваш код нормальный. Но не подходит для данной ситуации. По простому - перебор.
Для написания решения необходимо было тупое (уж пардон) решение. Которое работает и очень примитивно. Даже константы я зря влепил, как и некоторые мелочи. Т.е. дело 15-20 минут с перерывом, а не часового обдумывания как.
п.с.
Кстати: привет преподавателю. Который, возможно, читает данную ветку
Хм... Мне вот интересно: будь вы на месте преподавателя и увидев адекватный код.... что бы сказали? Ух ты какой умниц?
Ну не верю я что будет что то иное. Т.е. посмотрят и попробуют своё сваять. Максимум контролы почикают, да хаоса добавят в код. Или по другому будет?
п.с.
нуль - великое дело. Должны же быть бонусы
самый первый пост просмотрите... В коде их явно неттакие сверхувнизно железобетонные алгоритмы подошли бы для второго урока...
Добавлено спустя 5 минут 27 секунд:
фу ты... половина вашего хаяния меня - какой вы умниц.... только 3 строки уделили на хаяние из всего. Аж обидно.
Добавлено спустя 1 час 1 минуту 27 секунд:
Попробую "устаканить". Прежде чем тема перевалит во флуд.
Ваш код нормальный. Но не подходит для данной ситуации. По простому - перебор.
Для написания решения необходимо было тупое (уж пардон) решение. Которое работает и очень примитивно. Даже константы я зря влепил, как и некоторые мелочи. Т.е. дело 15-20 минут с перерывом, а не часового обдумывания как.
п.с.
Кстати: привет преподавателю. Который, возможно, читает данную ветку
не вы должны били это написать.... ох.. не вы...В функции, дающей число...
Re: Помогите разобраться с кодом.
На примерах учатся. Если не учатся, то смысл присутствовать на техническом или информационном факультете - отсидка. Я учился на юридическом, но друзья, которые учились на информационных технологиях, ходили ко мне, чтоб я им решал задачки в дельфи. Это дело вообще?
Но меня тоже не кому было правильно учить, я научился изначально неправильно. Поэтому насоздавал громоздких и трудноизменяемых приложений. И только после этого узнал о настоящих прелестях правильного проектирования и принципов.
Человек, обучающийся по технической специальности, должен уметь играть в абстракции. Если нет, см.пункт 1.
Но меня тоже не кому было правильно учить, я научился изначально неправильно. Поэтому насоздавал громоздких и трудноизменяемых приложений. И только после этого узнал о настоящих прелестях правильного проектирования и принципов.
Человек, обучающийся по технической специальности, должен уметь играть в абстракции. Если нет, см.пункт 1.
