Многоразовый код / ​​класс Репозитории - PullRequest
2 голосов
/ 26 сентября 2008

У меня есть несколько модулей, содержащих функции, классы и шаблоны, которые я храню в каталоге под названием (ха-ха!) «Повторное использование». Я достаточно хорошо знаю содержимое, поэтому поиск определенного класса или фрагмента кода не займет много времени, но его размер постепенно увеличивается, и мне нужен какой-то разумный метод для их хранения для удобного поиска и поиска.

Как мне это сделать?


С этим вопросом можно ознакомиться здесь: Полнотекстовый поиск исходного кода

Ответы [ 8 ]

3 голосов
/ 26 сентября 2008
  • Группа источники по области использования (сеть, безопасность, обработка текста и т. Д.); Лучшее в каталогах для удобства просмотра.
  • Tag функционирует путем добавления ключевых слов в исходную документацию. Используйте подходящую систему разметки комментариев (например, javadoc) и создайте какие-нибудь индексируемые документы.
  • Поиск с использованием какого-либо полнотекстового поиска (grep -r, рабочий стол Google) в ваших источниках.
1 голос
/ 26 сентября 2008

Зависит от системы, но в тот момент, когда количество повторного использования может достигнуть определенного порога, я стараюсь преобразовывать его логические блоки в «настоящие» библиотеки в том же смысле, как вы использовали бы от третьих лиц (с документацией и т. Д.). .) и поместите их в соответствующий путь к библиотеке, чтобы они стали действительно многократно используемыми.

Если вы не возражаете отдать их по какой-либо лицензии OSS, вы можете даже пойти и поместить их в эквивалент CPAN / PyPI / PEAR в любой среде, с которой вы работаете. Это добавляет еще больше возможности повторного использования.

Я думаю, что важной частью все еще является то, что вы упаковываете свой код в реальные библиотеки. Тогда поисковая часть должна быть намного проще, так как в основном автоматическая.

1 голос
/ 26 сентября 2008

Обычно я группирую свои файлы в зависимости от общего назначения файлов.

Ex: Повторное использование \ Database Повторное использование \ Graphics Повторное использование \ Math Повторное использование \ Etc ...

Затем вы можете подгруппировать ваши группы

Повторное использование \ Graphics \ 2D Повторное использование \ Graphics \ 3D

НТН

0 голосов
/ 08 сентября 2009

Этот вопрос охватывает практически те же вопросы, и я закрою этот вопрос в его пользу.

0 голосов
/ 05 октября 2008

Фолдеризация в соответствии с языком (подразделяется на функцию), с тегами, в каталоге VCS'd, с Doxygen / Perldoc / * Pod / * - извлеченная документация. Вы получите легко перехватываемый архив повторно используемых модулей / документации, мгновенно переносимый на вашу работу ./

0 голосов
/ 26 сентября 2008

Был спор об этом некоторое время назад. Стандартная свёртка вашего кода хороша для удобочитаемости и организации, но когда вы хотите просто взять что-то, другой способ - использовать тегирование (например, путем добавления тегов к именам файлов или другим метаданным). Теги хорошо работают вместо папок, потому что вы можете быстро выкопать определенные или общие вещи, тогда как с папками вам нужно копаться в деревьях, чтобы получить определенные вещи.

Метки: O (n). Папки: O (n ^ 2)

Может быть. : P

0 голосов
/ 26 сентября 2008
  1. Сгруппируйте функции / классы / шаблоны в модули / каталоги по функциям. Представьте, что вы будете выпускать их как библиотеки с открытым исходным кодом; подумайте, как бы вы хотели, чтобы чужой код был организован. В конце концов, это будет чужой код: ты, год или два назад.
  2. Используйте систему документации. Doxygen сгенерирует удобный браузер HTML-кода для вас.
0 голосов
/ 26 сентября 2008

Вы можете разделить все свои классы в каталогах.

Какой язык для вопроса? Потому что .Net у вас может быть библиотека, как DLL, разделенная пространством имен.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...