Обучение с открытым исходным кодом

Я студент, и у меня много свободного времени в этом отпуске, поэтому я решил уделить немного времени тому, как писать хороший код (все, что я знаю в данный момент, это C и немного C++).

Мой вопрос о том, как найти исходный код некоторых приложений? Допустим, я ищу некоторые исходники, которые используют определенную библиотеку. Как я могу найти проекты с открытым исходным кодом, которые используют библиотеку о том, что мне интересно.

Я пробовал на Google Code и SourceForge, но безуспешно. Я думаю, что я не знаю, как искать. Есть ли у вас какие-либо советы / ссылки о том, как это сделать?

9 ответов

Решение

Нет единого окна для поиска открытого исходного кода.

Если вы хотите прочитать какой-то хорошо написанный код, GNU Savannah - это хранилище материалов GNU, доступных для просмотра (Binutils, GCC toolchain и множество других). Программное обеспечение GNU, IMHO, является одним из лучших написанных на C где-либо.

Вы также можете проверить MINIX, которая является операционной системой на основе микроядра с открытым исходным кодом (которая также совместима с POSIX).

Проект Gnome имеет много проектов, которые охватывают широкий спектр языков от C до Python и даже C# (FSpot).

При поиске проекта, если вы знаете название, Google должен помочь. Если нет, то поищите в Google библиотеку, например "libfoo", или посмотрите метаданные менеджера пакетов, который вы используете (у него часто есть сайт сопровождающего).

Например:

[aiden@devbox ~]$ ldd /bin/ls
    ...
    libcap.so.2 => /lib64/libcap.so.2 
    libacl.so.1 => /lib64/libacl.so.1 
    libc.so.6 => /lib64/libc.so.6 
    libpthread.so.0 => /lib64/libpthread.so.0 
    ...

Я мог бы Google "libpthread", чтобы найти, что это является частью библиотеки GNU C

Если вы хотите принять участие в FOSS/C, научитесь использовать системы контроля версий, такие как Git или subversion, и diff для создания патчей. Поговорите с людьми, они всегда хотят, чтобы новые разработчики исправляли ошибки и исправляли проблемы. Но вы, вероятно, найдете приказ о клевете и социальную лестницу для подъема.

Удачи и приятного времяпровождения!

Есть универсальный магазин для поиска открытого исходного кода.

Он называется http://www.google.com/codesearch и выполняет поиск во многих проектах с открытым исходным кодом. Чтобы найти код с использованием определенной библиотеки, просто найдите термин, который вы используете, чтобы включить его в код, например #include или import ipaddr.

Взгляните на "Книгу Дракона", если сможете ее найти. Чтение кода Спинелли тоже хорошо. Оба помогут вам понять код, который вы читаете.

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

В качестве альтернативы, если в библиотеке есть настроенный канал IRC или группа новостей, задайте вопрос там.

Посетите Launchpad.net и свяжитесь с дружественным сообществом Ubuntu. Это хорошее место для начала, потому что они не такие резкие, если вы зададите вопрос.

Кодеры могут быть полезны. Это поисковая система для исходного кода.

В своем блоге Скотт Хансельман опубликовал серию "Еженедельный исходный код", которую стоит проверить.

Четыре "легких" шага:

  1. Выберите бесплатное приложение, которое вам нравится
  2. Подумайте о функции, которой не хватает
  3. Попробуйте выяснить, как реализовать эту функцию
  4. Сделай это

Пункты 1 и 2 сохранят вашу занятость.

С пунктом 3 вы узнаете, как загружать исходники, читать патчи и понимать код разных людей.

А с пунктом 4 вы будете практиковаться в кодировании и, если хотите, можете официально сотрудничать с проектом:)

Другие вопросы по тегам