ハンズオン③の後に実施する、実践的なチーム開発演習
2025年12月14日(土) プログラミング初学者の会
このスライドや演習の資料は、GitHubで管理されています。
リポジトリURL: https://github.com/study-basic-hackathon/event-docs
ここには今日のイベントの全ての資料が含まれています。
まずは、このリポジトリをクローンしましょう。
git clone https://github.com/study-basic-hackathon/event-docs.git cd event-docs
このリポジトリで演習を行います!
event-docs/ ├── 20251214_git/ # 本日のイベント資料 │ ├── slides.md # メインスライド(Marp形式) │ ├── practical_exercises.md # この実践演習資料 │ ├── handson_guide.md # ハンズオンガイド │ ├── preparation.md # 事前準備 │ └── templates/ # 演習用テンプレート │ ├── index.html │ ├── css/ │ └── js/ ├── slides/ # 過去のイベントスライド ├── docs/ # 公開用HTML(GitHub Pages) │ └── 20251214_members/ # メンバー紹介ページ(公開中) │ ├── index.html │ ├── css/ │ └── js/ └── README.md # リポジトリの説明
20251214_git/slides.md
20251214_git/practical_exercises.md
20251214_git/handson_guide.md
20251214_git/templates/
docs/20251214_members/
docs/
VS Code で GitHub Copilot を使うと、コーディングを効率化できます。
今日の演習に便利な拡張機能を紹介します!
インストール方法: 拡張機能検索で名前を入力してインストール
VS Code で Marp 拡張機能を使うと、スライドを確認できます。
slides.md
practical_exercises.md
リアルタイムでプレビューが表示されます!
全員
15分
★☆☆
参加者全員が同じWebサイト(メンバー紹介サイト)に、自分のプロフィールカードを追加していきます。
HTMLとJavaScriptで作られたWebサイトで、実際のチーム開発に近い体験ができます。
運営側で事前に準備:
event-docs
20251214_git/templates/index.html
20251214_git/templates/css/style.css
20251214_git/templates/js/members.js
すでにクローン済みの場合は、最新の状態に更新します。
cd event-docs git pull origin main
まだクローンしていない場合:
git switch -c add-member-yourname
命名ルール: add-member-[自分の名前]
add-member-[自分の名前]
add-member-yamada
20251214_git/templates/js/members.js を開いて、members 配列にあなたの情報を追加します。
members
const members = [ // 既存のメンバー... // ここにあなたの情報を追加 { name: "山田太郎", icon: "", location: "東京都", experience: "1年", language: "Python", goal: "Gitを使ったチーム開発ができるようになりたい!", hobbies: ["プログラミング", "読書", "カフェ巡り"], message: "よろしくお願いします!" }, ];
name
icon
location
experience
language
goal
hobbies
message
index.html
git add 20251214_git/templates/js/members.js git commit -m "add: 山田太郎のプロフィールを追加"
git push -u origin add-member-yamada
これで完了!運営側でマージします
## 変更内容 - メンバー紹介ページに自分のプロフィールを追加しました ## 確認事項 - [x] ローカルで表示を確認しました - [x] 他のメンバーの情報は変更していません
┌─────────────────────────────┐ │ │ │ 山田太郎 │ ├─────────────────────────────┤ │ 地域: 東京都 │ │ 経験: 1年 │ │ 好きな言語: Python │ ├─────────────────────────────┤ │ 目標: │ │ Gitを使ったチーム開発が │ │ できるようになりたい! │ ├─────────────────────────────┤ │ 趣味: │ │ ▸ プログラミング │ │ ▸ 読書 │ │ ▸ カフェ巡り │ ├─────────────────────────────┤ │ "よろしくお願いします!" │ └─────────────────────────────┘ ## 完成イメージ あなたのプロフィールカードは、こんな感じで表示されます:
┌─────────────────────────────┐ │ │ │ 山田太郎 │ ├─────────────────────────────┤ │ 地域: 東京都 │ │ 経験: 1年 │ │ 好きな言語: Python │ ├─────────────────────────────┤ │ 目標: │ │ Gitを使ったチーム開発が │ │ できるようになりたい! │ ├─────────────────────────────┤ │ 趣味: │ │ ▸ プログラミング │ │ ▸ 読書 │ │ ▸ カフェ巡り │ ├─────────────────────────────┤ │ "よろしくお願いします!" │ └─────────────────────────────┘
--- <!-- _class: lead --> # 演習2 ## ペア演習「機能追加とコンフリクト解決」 --- ## 演習2:概要 ### 対象 2人1組 ### 所要時間 20分 ### 難易度 ★★☆ --- ## シナリオ 簡単なWebサイトプロジェクトで、2人が異なる機能を同時に開発します。 意図的にコンフリクトを発生させ、解決方法を学びます。 --- ## 前提条件 このリポジトリ(event-docs)を使用します。 演習用のHTMLファイルは `20251214_git/templates/` にあります。 --- ## ベースのHTMLファイル `20251214_git/templates/index.html` の構造: ```html <!DOCTYPE html> <html lang="ja"> <head> <meta charset="UTF-8"> <title>チームプロジェクト</title> </head> <body> <header> <h1>チームプロジェクト</h1> <!-- ここにナビゲーションを追加してください --> </header> <main> <h2>メインコンテンツ</h2> <!-- ここにコンテンツを追加してください --> </main> <footer> <!-- ここにフッターを追加してください --> </footer> </body> </html>