Последние комментарии
Для меня эта страница - это удобный способ смотреть, что нового происходит в комментариях и сразу находить заметку, не заходя в админку. Думаю, она будет полезна и тебе.
Tapok
Ну, раз на то пошло, не всегда получается сидеть за ПК, поэтому захожу на вашу страничку с opera MINI, страница некорректно отображается(
Khusman
Думал, что может так оно и задумано..,
Михаил Фленов
Если твои обработчики событий не превышают 6 строк кода, то ты пишешь идеальный код. То, что твой класс тестера обращается к форме - не очень хорошо. Это значит, что он привязан к форме и знает о именах компонентов на ней. Нежелательно этого делать, потому что класс у тебя получается слишком привязанным к форме.
Ты приводишь правильный пример обработчика, но не понял, как у тебя класс Tester знает о форме? Обери эту связь. Если тебе нужно, чтобы на форме отображались какие-то данные от результата работы класса Tester, то перенос информации на форму делай в классе формы.
Voprositel
Спасибо за ответ! Но хочу уточнить, так как в вашем сообщении не увидел ответа на мой вопрос.
-------------------------------------------------------
При создании программ я делаю примерно так:
1. Создаю интерфейс
2. Создаю новый юнит, а в нем класс (в котором логика)
3. Открываю cpp файл формы и подключаю к нему (include) h файл моего класса с логикой, чтобы в cpp файле формы можно было создать экземпляр (объект) класса с логикой.
4. Открываю cpp файл класса с логикой и подключаю к нему h файл формы, для того, что бы класс с логикой имел доступ к форме.
Потом просто в обработчиках событий формы вызываю методы класса. Когда я писал Тестер, у меня в обработчиках событий было в общей суме 6 строк (вызовы методов объекта Тестер).
------------------------------------------------------
Я все правильно делаю? Правильно ли, что объект Тестер обращается к элементам формы?
Вопрос на примере программы-тестера.
Например, в файле находятся тесты (вопрос, варианты ответа, правильный ответ, и т.п.). Когда пользователь нажимает кнопку "Следующий тест", у меня в обработчике события кнопки запускается примерно такой код:
void __fastcall TMainForm::NextButtonClick(TObject *Sender)
{
tester.SledyuschiyTest();
}
И метод "SledyuschiyTest()" занимается загрузкой следующего теста, выводом его на форму и т.п.
Это правильная архитектура?
Михаил Фленов
Да, в твоей форме не должно быть никакой логики. В форме может создаваться класс, который будет реализовывать логику и ее вызывать.
Михаил Фленов
А что сложного разбираться в браузере? Там мне нужно только меню закладок, строка ввода адреса и кнопки вперед и назад. Интерфейс настолько примитивен, что там привыкать не к чему. Я уже сто раз писал, что в Linux использую Firefox, а на MacBook использовал Safari.
Ustas
Возможно, индустрия манипуляторов давно нуждалась в каком-то прорыве, за последние годы в плане дизайна-то она не далеко ушла, но пока приобретать такую штуку можно наверное только ради развлечения..
Ustas
Лень скачивать? Да вам просто не хочется разбираться с новой программой. Зачем, когда есть IE, в котором уже ориентируетесь с закрытыми глазами, и все так привычно, что и к недостаткам уже привык.
На этом блоге - наверное да. И не смотря на все ошибки и неудобства ИЕ, которые описаны только на блоге, вы продолжаете терпеть и пользоваться им, и жаль, что нет способа убедить вас попробовать что-то иное(это вообще невыполнимо)..
Ustas
Научите жену пользоваться KeePass и забытые пороли уйдут в прошлое.
http://keepass.info/
Михаил, я согласен с советом, покажите жене эту программу. Она бесплатна, интуитивно понятна,русско-язычна(для вас это не аргумент). Достаточно запомнить лишь один главный пароль...

Гость
Если вы и дальше будете писать лишь о посещаемости сайта а не об интересных вещах которые желают прочесть эти 400 человек, то количество посещений будет только уменьшаться)