Существует множество причин, по которым стоит использовать чужой труд в виде исходников: нежелание изобретать колесо, нехватка рабочего времени и т.д. Придумано даже слово, которое сподвигает на такой шаг — безысходники. Содержательно, не правда ли?! Встает вопрос: где их взять? В этом посте я перечислю известные мне сервисы, которые дают ответ на поставленный вопрос.
Поиск по программному коду
Чтобы оценить результаты поиска, в качестве искомой фразы буду использовать пресловутое выражение WTF. Для непосвященных поясню, что им (What The Fuck - Что за чёрт!) помечают "ужасные" места в коде. Кстати, существует метрика, основанная на wtf (об этом в концекода поста).
Каталоги сниппетов.
Сниппеты (snippet - кусок кода, реализующий цельный алгоритм) предназначены для решения одной небольшой задачи. Если надо найти сортировку пузырьком без лишнего кода - вам сюда прямая дорога.
Код часто добавляется пользователями (что-то вроде UGC), поэтому среди каталогов встречаются веб-два-нольные решения.
Для оценки каталогов буду использовать запрос "bubble sort".
P.S. Как и обещал, определение качества кода на основе wtf - смотрим картинку. А на десерт предлагаю воспользоваться услугами уникального вебсайта - Refactor :my => 'code'.
Поиск по программному коду
Чтобы оценить результаты поиска, в качестве искомой фразы буду использовать пресловутое выражение WTF. Для непосвященных поясню, что им (What The Fuck - Что за чёрт!) помечают "ужасные" места в коде. Кстати, существует метрика, основанная на wtf (об этом в конце
- Koders.com - считается лидером среди аналогичных сервисов. Однако, по-моему, результаты слегка не релевантны запросу и несколько малоинформативны.
- Google /*Code Search*/ - признанный лидер среди поисковиков и тут держит марку. Так, среди отличительных черт можно выделить поиск по регулярному выражению (regex), что очень даже неплохо в данном случае. Поиск по фразе порадовал - ничего лишнего, впрочем, как всегда :)
- Merobase - достойна внимания любого программиста. Кроме наличия интеграции с Eclipse для контекстного поиска, присутствуют ссылки на svn репозитарии. Весь функционал соответствует выражению "Профессионалам от профессионалов". Рекомендую ознакомиться с этим сервисом.
- Krugle - при поиске обнаружилось, что некоторые слова фильтруются (в моем случае - what и the). Стоит ли это делать в поисковиках по исходному коду? По-моему, нет... Также в выдачу попали одинаковые файлы. Все это свидетельствует о некачественном движке.
- Codase - сервис для отчаявшихся. По дизайну складывается такое впечатление, что его разрабатывали не для вечно заваливающих проект программистов, а для школьников и студентов, которым влом делать лабы. Результаты поиска также не особо порадовали.
Каталоги сниппетов.
Сниппеты (snippet - кусок кода, реализующий цельный алгоритм) предназначены для решения одной небольшой задачи. Если надо найти сортировку пузырьком без лишнего кода - вам сюда прямая дорога.
Код часто добавляется пользователями (что-то вроде UGC), поэтому среди каталогов встречаются веб-два-нольные решения.
Для оценки каталогов буду использовать запрос "bubble sort".
- codefetch{ - этот каталог формируется из примеров, которые можно повстречать в различных книгах по программированию. В поисковой выдаче у каждого сниппета указывается книга, из которой он взят. Я считаю его лучшим каталогом.
- O'Really Labs Code Search - аналогичный предыдущему, только поиск производится по собственной базе. Результаты поиска появляются через долгое время, что можно отнести к недостаткам.
- DreamInCode.Net - портал, где есть технические блоги, форумы и каталог сниппетов. Поиск происходит по ним всем, что дает больше полезной информации. Перейдя непосредственно к найденному сниппету, можно без труда выполнить копирование кода, что очень удобно.
- Snipplr - как можно догадаться по последней букве из названия - это социалка, где можно голосовать за понравившийся код, помечать его тегами и т.д. Судя по результатам поиска (вернее по их отсутствию), это молодой проект, только набирающий обороты.
- byteMyCode - этот сервис тоже принадлежит к полноценным социальным сетям, и в этом роде он лучше смотрится, чем предыдущий каталог. Кстати, он идеально подойдет всем любителям SMO: тут и top members, и профили пользователей, через которые можно продвигать свой блог...
- DZone Snippets - вроде бы неплохой каталог, но большой минус - отсутствие по каким-то причинам формы поиска...
P.S. Как и обещал, определение качества кода на основе wtf - смотрим картинку. А на десерт предлагаю воспользоваться услугами уникального вебсайта - Refactor :my => 'code'.


3 коммент.:
Отличная подборка, огромное спасибо! В закладки :)
codavr.ru ?
codavr использует движок Гугля и ищет по айтишным блогам, список которых давно не обновлялся (сюдя по копирайтам и поисковой выдаче - минимум год). добавлять я не стану, не та категория...