From: Konstantin T. <an...@ya...> - 2010-09-14 18:21:46
|
> > > Заранее извините за возможную резкость дальнейших ответов. Я понимаю что я для проекта человек чужой и не должен лезть со своим уставом. > Однако проект мне весьма понравился. И я не хочу дабы его постигла печальная участь. > > > > > Также это упростит написание Unit tests, коим я собираюсь заняться. > > Это дело я одобряю, самому влом пока :) Думаю, следует сосредоточится на интерфейсах DeskView, PrefModel и Player > И как вы себе видите написание оных тестов без разделения на библиотеки? (не вполне привык ещё на "ты". скоро исправлю) > Включением соответствующих *.h; *.cpp в другой прожект? Да ведь это костыль. > > Скорее всего именно поэтому тестов у тебя и нет. Ведь их трудно добавлять. Верно. Просто не хотелось бы перед выпуском 0.1.4 заморачиваться с разбиением, но если хочешь, можешь помочь. По-хорошему, бибилотек должно быть больше: 1)модель 2)представление 3)AI в плагинах, каждый - отдельная либа > > > 3. Я не думаю, что разделение проекта на части актуально на данном этапе > Лучше дождаться когда он станет большим, страшным и непонятным? Если и разделять, то как можно раньше. Согласен, структура каталогов - вещь хорошая. Но ведь библиотеки куда лучше. Я даже с CMake готов пообщаться (хотя лучше бы меня избавили от сей участи). Думаю, он в обозримом будущем станет только проще и понятнее - я работаю над этим > > P.S. ну да. новые фичи (баги? ) писать куда веселее. > ======================================================= > > > > > > > > > Настройки проекта заточил под QT Creator (ибо с CMake пока не владах). > > В данный момент основная система сборки OpenPref - qmake, CMake поддерживается для удобства мейнтейнеров пакетов в дистрибутивах Linux (ибо более распространен) > Насколько я помню, QT Creator с помощью qmake и собирает. Ага, им самым. > Я на досуге проверю свои изменения просто из консоли (без IDE). Возможно, пару ключей в *.pro не учёл. Параметры для qmake есть на сайте, хотя для Windows нет ничего ценного > Вот с CMake у меня дела обстоят хуже (да, я об этом уже писал). О cmake я позабочусь :) > > Card *CardList::exists (int aFace, int aSuit) const { Card *c = newCard(aFace, aSuit); Card* ret = exists(c); // delete c; // TODO : memory leak. return ret; } > Напоминает memory leak. Поглядел потом внутрь exists и понял что ошибся. Однако не стоит ли перейти на QSharedPointer или хранить структуры просто как ValueType (без указателя)? Или снова боязнь замедления всего сущего? Разгадка проще: не копал я еще этот код. Значительная часть кода - дремучее legacy из 2000 и 2004 годов -- Regards, Konstantin |