|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
28.05.2011, 03:28 | #1 |
Участник клуба
Регистрация: 21.03.2010
Сообщений: 1,508
|
Программа для создания кроссвордов, C++ Qt
Всем здарова! Решил я тут выложить в свободный доступ исходник программы для создания кроссвордов.
Пока код отгадывателя. Создатель будет чуть позже, но в этой же теме(где-то через неделю). Он немножко устарел, по сравнению с его потомком(Клёст-кроссворд) но, за неимением кросс-аналогов, думаю, что многим будет интересно в нём поковыряться. Вообщем мне нужна вся критика Открыл проект на SourceForge.net ЗЫ: C++(Qt) |
12.06.2011, 23:05 | #2 |
Участник клуба
Регистрация: 21.03.2010
Сообщений: 1,508
|
А вот и создатель кроссвордов - исходник. Второй проект на SourceForge.net.
Дам ещё ссылки на windows-версии, чтобы могли также остальные посмотреть на них: создание, отгадывание. Проекты оба OpenSource под GPL-copyleft. Сетка кроссворда представлена обычной таблицей TableCrosswordEdit(QTableWidget), слова загружаются в список слов ListWord(QStringList), толкования(вопросы) находятся в списке вопросов ListQuestions(QListWidget). Структура файла - динамическая. Когда писал программы на Delphi - использовал статику - расходовалось лишнее дисковое пространство . XWC: Пароль, количество строк, количество столбцов, ширина(высота) ячейки таблицы, шрифт, структура таблицы(w + 1(x) - белая ячейка, b + 1(c) - чёрная), строка с данными CrosswordData(QString). Код:
Код:
Состояние сохранения(tmpcross): цикл по количеству слов(W, QChar(номер слова), QChar(длина слова), само слово). Жду комментариев Последний раз редактировалось xwicked; 13.06.2011 в 17:31. |
23.06.2011, 11:47 | #3 |
Участник клуба
Регистрация: 21.03.2010
Сообщений: 1,508
|
Профессиональный кроссворд 0.1.4
Продолжаем знакомиться с исходником. Профессиональный кроссворд, версии 0.1.4 - это объединение двух предыдущих: создателя и отгадывателя, с последующей доработкой.
Изменения: - Добавлена возможность автоматического создания сетки кроссворда(бета-версия). - Добавлена возможность автоматического составления кроссворда(выбор слов из словаря). Первая бета-версия. - Присутствуют обе возможности(создание и отгадывыание). Отмечу, что выбор слов происходит в один проход и могут быть пропуски слов в сетке, после составления кроссворда. Исходный код(0.1.4) Отдельный проект на SourceForge.net - Клёст-кроссворд В Клёст-кроссворде нет возможности сохранять пароль, в то время как в Crossword editor эта возможность есть. Проекты были разделены для большего удобства разработки. P.S. Профессиональный кроссворд 0.1.7 = Клёст-кроссворд 0.1.7 |
28.06.2011, 00:54 | #4 |
Участник клуба
Регистрация: 21.03.2010
Сообщений: 1,508
|
Профессиональный кроссворд 0.1.5
Следующая версия программы - 0.1.5. Исходный код.
Изменилась функция составления кроссворда, которая теперь позволяет заполнить всю сетку кроссворда словами. |
29.06.2011, 14:20 | #5 |
Участник клуба
Регистрация: 21.03.2010
Сообщений: 1,508
|
Профессиональный кроссворд[Final Edition] 0.1.6
В новой версии 0.1.6 - исходник, добавлен экспорт кроссворда в изображения следующих растровых графических форматов: JPG, JPEG, BMP, TIFF, PNG, XPM, XBM, PPM + несколько других исправлений.
|
10.07.2011, 19:44 | #6 | |
Участник клуба
Регистрация: 21.03.2010
Сообщений: 1,508
|
Клёст-кроссворд 0.1.7
А вот и новая версия 0.1.7. Изучаем код.
Что изменено: Цитата:
|
|
10.07.2011, 22:58 | #7 |
Great Code Monkey
Форумчанин
Регистрация: 09.08.2007
Сообщений: 533
|
Я немного, можно?)
Не открывая исходных текстов: не вижу багтрекера с документацией не вижу использования системы контроля версий не вижу тестов (это самое страшное!). Уже из-за этого я бы очень-очень сильно подумал, стоит ли присоединяться к разработке проекта Отрыл хэлп: много лишних комментариев, на которые хочется сказать "спасибо, кэп". Они раздражают и мешают читать код. Открыл мэйн: размер мэйна не радует глаз, а кол-во операторов выбора в нем вгоняет в депрессивное состояние. Как и некоторые магические числа. Тут я на беду открыл кроссвордпро... Нереально читать код. Ну совсем. Действительно не хочется. Архитектуры вообще никакой. Проектирование отсутствует в принципе. Одни антипаттерны. Божественный класс, большие и запутанные методы и тд и тп. Короче дальше не осилил, сорри... |
11.07.2011, 02:30 | #8 | |
Участник клуба
Регистрация: 21.03.2010
Сообщений: 1,508
|
Цитата:
2 - Если объясните мне как использовать Git в QtCreator, то буду Вам благодарен 3 - Отсутствие тестов - это не страшно - программа не так сложна, как Вы себе представили. 4 - Комментарии только самые необходимые, для понимания базовых принципов работы основных моментов. 5 - Любой, кто откроет этот код - увидит, что в выделенном фрагменте прослеживается слова новичка-студента, серьёзно. Это так называемое процедурное программирование, с использованием некоторых элементов объектного-ориентирования и всё. 6 - Методы так и разрабатываются, чтобы выносить отдельно только то, что можно вынести. В коде так и сделано, посмотрите внимательно! Вы не писали, что-ли программ? Поглядите на сорцы KDE->любой маленькой программы - и Вы меня поймёте насчёт методов 7 - Чтож, это всего лишь Ваше мнение |
|
11.07.2011, 09:39 | #9 |
Great Code Monkey
Форумчанин
Регистрация: 09.08.2007
Сообщений: 533
|
1 - Если в багтрекере что-то будет, то пойдет.
2 - Я сам для гита пользую консоль. Насчет встройки в криэйтор не знаю, давно не приходилось заниматься всякой гуйней, но на оффсайте написано "Qt Creator integrates with most popular version control systems, including Git, Subversion, Perforce, CVS and Mercurial", так что проблем возникнуть не должно было. 3 - я верю, но она же будет в дальнейшем усложняться или уже все? 4 - открываем main.cpp и видим самые необходимые комментарии, без которых не обойтись: Код:
Значит, скажем, интимная связь между бизнес-логикой и интерфейсом теперь так называется? Буду знать, чтобы не упасть лицом в грязь, разговаривая с настоящим мега-гуру) Кстати, возьму на вооружение. Придет шеф, спросит: "А чой это у тебя код такой отстойный?" Я: "Ты дурак что-ль? Это же процедурное программирование, с использованием некоторых элементов объектного-ориентирования!" Прям тема для комикса) 6 - Такие писал. Но это было давно и мне за них стыдно) В общем это было давно и неправда. Так что не, не писал, не было такого) Так вы-то как раз и не вынесли кучу из того, что можно и нужно вынести. 7 - Да, это всего лишь мое скромное, ни на что не годящееся мнение, которое можно с чистой совестью проигнорировать и продолжать писать код так, как вздумается |
11.07.2011, 16:15 | #10 | |
Участник клуба
Регистрация: 21.03.2010
Сообщений: 1,508
|
Цитата:
1. KDE4->возмите любую программу->мой код ни чуть не хуже, про то, что лучше я даже и заикаться не буду. 2. Qt считается самой сложной библиотекой. Убедился я сам на опыте. Поэтому и нет пока других отписавшихся, кроме Вас. 3. Нельзя же быть таким агрессивным. Нервные клетки не восстанавливаются. Это всего лишь Ваше мнение, зачем упорствовать в его навязывании мне, непонятно. Последний раз редактировалось xwicked; 11.07.2011 в 17:07. |
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Программа для создания кроссвордов - Lazarus[Delphi]-версия | xwicked | Общие вопросы Delphi | 3 | 24.09.2012 21:02 |
Программа для создания модулей/макетов для КМС | LeoN | Софт | 0 | 02.12.2010 10:51 |
Программа для создания меню для сайта | iukash | Софт | 3 | 06.06.2009 13:10 |
Логика для Кроссвордов Судоку. | С.М.С | Свободное общение | 7 | 02.04.2009 16:07 |