2012-11-19 4 views
2

Я хотел бы, чтобы мои ученики-программисты работали группами и делали программу с использованием Eclipse и Java. Я изучал лучший способ, чтобы студенты сотрудничали в такой программе, но я не знаю, как лучше всего работать вместе.Лучший способ обмена кодом между учениками школьного программирования в группах

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

Bitbucket и GitHub сбивают меня с толку прямо сейчас, поэтому я не уверен в его удобстве использования. Pastebin - это вариант, но там нет сводного кода. Будет ли создание учетной записи Dropbox наилучшим способом совместного использования кода?

EDIT:

Хорошо, эти ответы у меня плавание в словах я не знаком, но я очень ценю все эти знания будучи даровал мне. Как я могу упростить код обмена, если один студент предоставил другому ученику файл .java, и он использует этот .java-файл и все его общедоступные методы, чтобы помочь сделать его проект?

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

+4

Использование SVN. Он все еще качается. – Juvanis

+1

Почему вы не используете SVN? – svz

+3

Git, Mercurial, SVN и т. Д. Предназначены только для этого - Dropbox нет. И они интегрированы с eclipse с плагинами. Bitbucket или Github - это просто онлайн-хранилища. Это определенно путь. Создайте простой проект одного класса, добавьте еще один класс, совершите, выберите, слейте и т. Д., И вы скоро поймете, как они работают. – assylias

ответ

0

Использование Dropbox/Google Drive похоже на лучший вариант для того, что им нужно делать. Я хотел бы заниматься другими вещами, но в центре внимания этого класса понимается язык программирования. Может быть, когда я успокоюсь с Git, мы будем использовать это. Прямо сейчас речь идет о кодировании и совместном использовании класса с другим учеником.

Все были потрясающе с этим. Спасибо за все великие идеи и дискуссии.

1

Если ваши ученики используют Windows, я предлагаю вам использовать TortoiseSVN. Он основан на системе управления исходным кодом Subversion, также известной как SVN.

Вам нужно будет настроить хранилище. У компьютеров ученика должен быть установлен Tortoise SVN и настроен для присоединения к репозиторию.

После этого вы научите студентов хорошим принципам управления исходным кодом - навык, жизненно важный для любого проекта программирования, особенно тех проектов, в которых используется сотрудничество.

+0

Я бы дал -1. Почему только Windows? TortoiseSVN - это просто инструмент GUI для обработки репозитория ... Но опять же, этот плохой ответ - это подсказка в правильном направлении ... – ppeterka

+0

Другое дело, люди начинают двигаться в направлении DVCS, таких как Mercurial и Git , поскольку они оказались более гибкими. – Puce

+0

@ppeterka: TortoiseSVN - продукт только для Windows. Это расширение для Windows Explorer. Мой ответ - не плохой ответ. Многие средние школы используют только Windows. TortoiseSVN не такой мощный, как Git и Mercurial, но он очень * прост в использовании. Репозиторий может находиться на любом компьютере, поддерживающем Subversion, но TortoiseSVN работает только в Windows. –

7

Если вы учите программирования вы должны действительно быть в курсе:

  • о важности сотрудничества и versionning инструменты, как Git, Mercurial, СВН
  • что Существует в настоящее время массовый переход к мерзавцу

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

Поскольку в настоящее время происходит крупномасштабное перемещение в git, почему бы вам не научиться git? Я рекомендую вам прочитать Pro Git и научить их использовать git. GitHub - это самый простой способ сделать сервер git доступным для них.

Ни вы, ни они не узнаете его за 5 минут, но для них, а для вас, как учителя, это стоит инвестиций.

+0

Не является ли github оплаченным сервисом? – Bytemain

+1

@Skidrow, если ваш проект с открытым исходным кодом, то да, он может свободно размещаться. –

+0

Ну, я думаю, что vc немного переборщил. Ftp и webdav намного проще. – Bytemain

2

Я студент колледжа, так что это может быть неловко. Но, на мой взгляд, использование источника управления может быть лучшим вариантом, хотя может быть трудно понять новые концепции, которые стоят впереди. Но в конечном счете каждый работодатель хочет, чтобы их программисты использовали некоторый контроль над версиями. Кроме того, возможно, используйте некоторые инструменты, которые позволяют им общаться, даже когда они не близки, например TeamViewer, Skype и т. Д.

Мое мнение Mercurial и мой любимый клиент, который интегрируется с Explorer на Windows TortoiseHg.

3

Я нахожу sourceforge очень convienent. Он бесплатный и также имеет небольшой веб-сервер. Может быть, он старше и не такой раздутый, как git. Но я понимаю, что ваши заботы и ftp или протокол webdav также хороши для совместного использования кода. Например, Komodo IDE может редактировать файлы по ftp. Контроль версий может быть очень болезненным, и вам нужно многому научиться.

2

Используйте систему управления версиями, лучше всего распределенную (DVCS), такую ​​как Mercurial или Git.

Должно быть, qutie легко запускает «главный» Mercurial репозиторий по сети, например. используя hg serve, и я думаю, это было бы так же легко с Git.

https://www.mercurial-scm.org/wiki/PublishingRepositories2

https://www.mercurial-scm.org

https://www.mercurial-scm.org/quickstart

Если ваши студенты начинают работать в команде, а также убедиться, что они получают понятия:

  • непрерывной интеграции, например, используя Jenkins

и, следовательно, также:

  • автоматизированные строит, например, с использованием Maven
  • автоматизированные модульные испытания, например. используя JUnit
+0

чистый распределенный путь (pull-exchange) - это, IMNSHO, лучше и даже проще: –

+0

И как вы понимаете непрерывную интеграцию, чтобы убедиться, что ваш код всегда строит и передает тесты, чтобы не блокировать других разработчиков? – Puce

+0

я этого хочу? Или это было запрошено? Или это (постоянный hg serve + hg pull) противоречит CI-мантрам? CJ модное модное слово во многих случаях –

0
  • Использования VCS в современном профессиональном программировании является обязательного
  • VCS является лучшим способом для обмена и сотрудничества в кодовой разработке
  • Если каждая подзадача выполняются группы , DVCS для бесплатной связи P2P в процессе в a Natural Way
  • Git - худший выбор для новичков в SCM-мире

SVN имеет минимальный учебный курс (но некоторый дополнительный вес в технической поддержке процесса), Mercurial (чистый hg или TortoiseHG) имеет минимальную техническую поддержку (ноль), но немного больше учебного курса по сравнению с SVN. Ископаемые SCM имеют как-то промежуточные значения, но будут бесполезны для студентов в будущем, но предоставляют не только SCM, но и некоторые дополнительные функции в процессе (встроенная вики как источник обмена знаниями)

+0

отредактировал вопрос – tazboy

+0

@tazboy - если отдельный класс является отдельным файлом, они могут использовать любые методы недобросовестного обмена файлами - FTP, сетевые домены, вложения электронной почты ... –

 Смежные вопросы

  • Нет связанных вопросов^_^