learning-objectives
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
ChineseLearning Objectives Skill
学习目标生成技能
Purpose
用途
Enable educators to create measurable, actionable learning objectives aligned with Bloom's taxonomy and CEFR proficiency levels. This skill helps:
- Define what students will achieve (not just what topics they'll cover)
- Ensure objectives are specific and testable (not vague)
- Identify prerequisites and scaffold learning progressively
- Plan appropriate assessment methods
- Sequence learning from basic recall to creative synthesis
- Map to international proficiency standards (CEFR A1-C2) for portability
- Include AI co-learning outcomes (working WITH AI, not just independently)
Constitution v4.0.1 Alignment: This skill implements evals-first objective design—defining success criteria BEFORE creating learning objectives, integrating CEFR proficiency levels (Principle 5: Progressive Complexity), and incorporating Section IIb (AI Three Roles Framework) co-learning outcomes.
帮助教育工作者创建符合布鲁姆分类法和CEFR语言能力等级的可衡量、可执行的学习目标。此技能可用于:
- 定义学生将达成的具体能力(而非仅涵盖的主题)
- 确保目标具体可测,而非模糊笼统
- 识别前置知识,逐步搭建学习框架
- 规划合适的评估方法
- 设计从基础回忆到创造性综合的递进式学习路径
- 对接国际能力标准(CEFR A1-C2),提升目标的通用性
- 纳入AI协同学习成果(与AI协作学习,而非仅独立学习)
与Constitution v4.0.1的对齐:此技能采用“评估优先”的目标设计方法——在创建学习目标前先定义成功标准,整合CEFR能力等级(原则5:递进式复杂度),并融入第二部分b(AI三重角色框架)的协同学习成果。
When to Activate
适用场景
Use this skill when:
- Planning curriculum or lesson design and need to define learning outcomes
- Creating assessments and want to align them with clear objectives
- Designing a course and need measurable outcomes for accreditation
- Educators ask to "define objectives", "create learning goals", "set outcomes", or "what should students achieve?"
- Reviewing existing objectives and wondering if they're specific enough
- Designing a lesson and unsure what students should be able to do by the end
在以下场景中激活此技能:
- 规划课程或教学设计,需要定义学习成果时
- 设计评估体系,希望与清晰的目标对齐时
- 设计课程,需要可衡量的成果用于认证时
- 教育工作者提出“定义目标”“创建学习目标”“设定成果”或“学生应达成什么能力?”等需求时
- 审查现有目标,不确定其是否足够具体时
- 设计课时,不清楚学生在结束时应具备什么能力时
Evals-First Objective Design (Constitution v4.0.1)
评估优先的目标设计(Constitution v4.0.1)
CRITICAL WORKFLOW:
- Evals First: Review success criteria from chapter spec BEFORE writing objectives
- Objectives Second: Design learning objectives that lead to eval success
- Alignment Third: Ensure each objective maps to at least one success eval
- Validation Fourth: Verify objectives are measurable and aligned
Template:
markdown
undefined关键工作流:
- 评估优先:在撰写目标前,先查看章节规范中的成功标准
- 目标次之:设计能助力评估通过的学习目标
- 对齐第三:确保每个目标至少对应一项成功评估指标
- 验证最后:验证目标是否可衡量且与评估对齐
模板:
markdown
undefinedObjective Design (Evals-First)
目标设计(评估优先)
Source: Chapter spec at
specs/part-X/chapter-Y/spec.mdSuccess Evals from Spec:
- 75%+ write valid specification (business goal: reduce iteration cycles)
- 80%+ identify vague requirements (business goal: prevent scope creep)
Learning Objectives Designed to Achieve Evals:
- LO-001: Write clear specifications → Eval #1
- LO-002: Identify ambiguous requirements → Eval #2
**Do NOT** create objectives without:
- ✅ Reference to approved spec with success evals
- ✅ Explicit mapping: Objective → Eval → Business Goal
- ✅ Measurability aligned with eval criteria来源:章节规范位于
specs/part-X/chapter-Y/spec.md规范中的成功评估指标:
- 75%以上能编写有效的规范(业务目标:减少迭代周期)
- 80%以上能识别模糊需求(业务目标:防止范围蔓延)
为达成评估而设计的学习目标:
- LO-001:编写清晰的规范 → 评估#1
- LO-002:识别模糊需求 → 评估#2
**禁止**在无以下内容的情况下创建目标:
- ✅ 引用带有成功评估指标的已批准规范
- ✅ 明确的映射关系:目标 → 评估 → 业务目标
- ✅ 与评估标准对齐的可衡量性Process
操作流程
Step 1: Understand the Context
步骤1:理解上下文
When a request comes in to generate learning objectives, first understand:
- What topic or concept? (Python decorators, OOP, async/await, etc.)
- Who are the learners? (Beginners, intermediate, advanced)
- How long to teach? (30 minutes, 2 hours, full unit)
- What's the end goal? (Can they build something? Understand theory? Debug code?)
- What are the success evals? (From chapter spec—what defines success?)
当收到生成学习目标的请求时,首先明确:
- 主题或概念是什么?(Python装饰器、OOP、async/await等)
- 学习者群体是谁?(初学者、中级学习者、高级学习者)
- 教学时长是多少?(30分钟、2小时、完整单元)
- 最终目标是什么?(能否构建项目?理解理论?调试代码?)
- 成功评估指标有哪些?(来自章节规范——什么是成功?)
Step 2: Review Bloom's Taxonomy (If Needed)
步骤2:回顾布鲁姆分类法(如有需要)
If you're not familiar with the specific topic's cognitive levels, read:
📖 reference/blooms-taxonomy-programming.md
This document maps Bloom's 6 levels to programming contexts with:
- Action verbs for each level (Remember, Understand, Apply, Analyze, Evaluate, Create)
- Programming examples
- Assessment methods for each level
若不熟悉特定主题的认知层级,请阅读:
📖 reference/blooms-taxonomy-programming.md
此文档将布鲁姆的6个层级映射到编程场景,包含:
- 每个层级的动作动词(回忆、理解、应用、分析、评估、创造)
- 编程示例
- 每个层级的评估方法
Step 3: Identify Prerequisites
步骤3:识别前置知识
Read the guidance on prerequisite analysis:
📖 reference/prerequisite-analysis.md
For your objectives, determine:
- What must learners know BEFORE tackling the main concept?
- List prerequisites at Remember/Understand level (not deep mastery)
- Trace dependency chains to foundational knowledge
阅读关于前置知识分析的指南:
📖 reference/prerequisite-analysis.md
为目标确定:
- 学习者在学习核心概念前必须掌握哪些知识?
- 列出回忆/理解层级的前置知识(无需深度掌握)
- 追溯到基础知识点的依赖链
Step 4: Choose Assessment Methods
步骤4:选择评估方法
Based on the Bloom's level of each objective, review appropriate assessment methods:
📖 reference/assessment-methods.md
This guides you to pair objectives with realistic assessment approaches (code exercises for Apply level, code reviews for Evaluate, etc.).
根据每个目标的布鲁姆层级,查看合适的评估方法:
📖 reference/assessment-methods.md
此指南帮助你为目标匹配现实可行的评估方式(应用层级对应代码练习,评估层级对应代码审查等)
Step 5: Generate Objectives with CEFR Proficiency Levels
步骤5:生成带有CEFR能力等级的目标
For each topic, create 3-5 objectives (typically):
- At least one from each level needed for the topic (Remember through Create)
- Progressively building in complexity
- Each with clear statement, context, prerequisites, assessment method, and success criteria
- Map to CEFR proficiency level (A1/A2/B1/B2/C1)
Use the template as guidance:
📄 templates/learning-objective-template.yml
Key principle: Each objective should answer:
- What will learners DO? (verb from Bloom's level)
- In what context? (the specific situation or problem)
- How will we know they succeeded? (measurable criteria)
- What proficiency level? (CEFR A1-C2)
针对每个主题,创建3-5个目标(通常):
- 至少涵盖主题所需的每个层级(从回忆到创造)
- 复杂度逐步提升
- 每个目标包含清晰的陈述、上下文、前置知识、评估方法和成功标准
- 映射到CEFR能力等级(A1/A2/B1/B2/C1)
可参考以下模板:
📄 templates/learning-objective-template.yml
核心原则:每个目标应回答以下问题:
- 学习者将做什么?(来自布鲁姆层级的动作动词)
- 在什么情境下?(具体场景或问题)
- 如何判断他们成功了?(可衡量的标准)
- 对应什么能力等级?(CEFR A1-C2)
CEFR Proficiency Mapping (Constitution v3.1.2)
CEFR能力等级映射(Constitution v3.1.2)
Align objectives with international proficiency standards (from skills-proficiency-mapper v2.0):
A1 (Beginner - Recognition):
- Bloom's: Remember/Understand only
- Example: "Identify Python syntax for defining a function"
- Measurable: Recognition, not production
A2 (Elementary - Guided Application):
- Bloom's: Understand/Apply with scaffolding
- Example: "Complete a function definition with provided hints"
- Measurable: Application with support
B1 (Intermediate - Independent Application):
- Bloom's: Apply independently
- Example: "Implement a function from clear specification without assistance"
- Measurable: Real-world application without scaffolding
B2 (Upper-Intermediate - Analysis):
- Bloom's: Analyze/Evaluate
- Example: "Compare two implementations and justify which is more maintainable"
- Measurable: Evaluation with justification
C1 (Advanced - Creation/Synthesis):
- Bloom's: Evaluate/Create
- Example: "Design a system architecture for scalable deployment"
- Measurable: Original design with trade-off analysis
Proficiency Progression Rule: Lessons should progress A1→A2→B1 within a chapter (not jump from A1 to C1).
将目标与国际能力标准对齐(来自skills-proficiency-mapper v2.0):
A1(初学者——识别):
- 布鲁姆层级:仅回忆/理解
- 示例:"Identify Python syntax for defining a function"
- 可衡量性:识别,而非生成
A2(初级——引导式应用):
- 布鲁姆层级:理解/应用(带脚手架支持)
- 示例:"Complete a function definition with provided hints"
- 可衡量性:在支持下应用
B1(中级——独立应用):
- 布鲁姆层级:独立应用
- 示例:"Implement a function from clear specification without assistance"
- 可衡量性:无脚手架的实际应用
B2(中高级——分析):
- 布鲁姆层级:分析/评估
- 示例:"Compare two implementations and justify which is more maintainable"
- 可衡量性:带论证的评估
C1(高级——创造/综合):
- 布鲁姆层级:评估/创造
- 示例:"Design a system architecture for scalable deployment"
- 可衡量性:带权衡分析的原创设计
能力进阶规则:章节内的课时应按A1→A2→B1逐步推进(不可从A1直接跳到C1)
Three-Role AI Partnership Objectives (Section IIb, Constitution v4.0.1)
AI三重角色协作目标(Constitution v4.0.1第二部分b)
CRITICAL: AI-native learning objectives must include ability to work WITH AI in bidirectional co-learning partnership (per Section IIb forcing functions), not just independently.
Traditional Objective Format:
LO-001: Implement user authentication (independent skill)AI-Native Objective Format:
LO-001: Implement user authentication working with AI as co-learning partner
- Use AI as Teacher: Learn security patterns from AI suggestions
- Use AI as Student: Refine AI's output through clear specifications
- Use AI as Co-Worker: Iterate toward optimal solution collaboratively
- Validate: Verify AI-generated code meets security requirementsThree-Role Objective Types:
1. AI as Teacher Objectives (Student learns from AI):
- "Identify pattern suggested by AI that improves code quality"
- "Explain trade-offs in AI's proposed approaches"
- "Apply AI-suggested pattern to new context"
2. AI as Student Objectives (Student teaches AI):
- "Write specification that produces correct code on first try"
- "Provide feedback that improves AI's next iteration"
- "Clarify requirements when AI asks for disambiguation"
3. AI as Co-Worker Objectives (Collaborative iteration):
- "Iterate with AI to converge on optimal solution"
- "Make strategic decisions while AI handles tactical implementation"
- "Validate AI outputs for correctness and appropriateness"
Example AI-Native Objective Set:
yaml
- id: "LO-AUTH-001"
statement: "Implement OAuth authentication working with AI as co-learning partner"
blooms_level: "Apply"
cefr_level: "B1"
three_role_integration:
ai_as_teacher: "Learn refresh token rotation pattern from AI suggestion"
ai_as_student: "Guide AI through security requirements via clear spec"
ai_as_coworker: "Iterate on session management approach together"
assessment_method: "Code + reflection: Show implementation AND what you learned from AI"
success_criteria:
- "OAuth implementation works correctly"
- "Student identifies at least one pattern learned from AI"
- "Student demonstrates validation of AI output"Objective Balance for AI-Native Content:
- 60-70%: Traditional technical skills
- 20-30%: Co-learning skills (working WITH AI)
- 10-20%: Validation/verification skills
关键要求:原生AI学习目标必须包含与AI进行双向协同学习的能力(根据第二部分b的强制要求),而非仅独立学习。
传统目标格式:
LO-001:实现用户认证(独立技能)原生AI目标格式:
LO-001:与AI作为协同学习伙伴一起实现用户认证
- 将AI作为教师:从AI的建议中学习安全模式
- 将AI作为学生:通过清晰的规范优化AI的输出
- 将AI作为同事:协作迭代出最优解决方案
- 验证:检查AI生成的代码是否符合安全要求三重角色目标类型:
1. AI作为教师的目标(学生向AI学习):
- "识别AI提出的可提升代码质量的模式"
- "解释AI提出的方案中的权衡"
- "将AI建议的模式应用到新场景中"
2. AI作为学生的目标(学生教AI):
- "编写能一次性生成正确代码的规范"
- "提供反馈以优化AI的下一次输出"
- "当AI请求澄清时,明确需求"
3. AI作为同事的目标(协作迭代):
- "与AI协作迭代出最优解决方案"
- "制定战略决策,由AI负责战术实现"
- "验证AI输出的正确性和适用性"
原生AI目标示例集:
yaml
- id: "LO-AUTH-001"
statement: "与AI作为协同学习伙伴一起实现OAuth认证"
blooms_level: "Apply"
cefr_level: "B1"
three_role_integration:
ai_as_teacher: "从AI的建议中学习刷新令牌轮换模式"
ai_as_student: "通过清晰的规范引导AI满足安全要求"
ai_as_coworker: "共同迭代会话管理方案"
assessment_method: "代码+反思:展示实现方案以及从AI中学到的内容"
success_criteria:
- "OAuth实现正常工作"
- "学生至少能识别一个从AI中学到的模式"
- "学生展示了对AI输出的验证过程"原生AI内容的目标平衡:
- 60-70%:传统技术技能
- 20-30%:协同学习技能(与AI协作)
- 10-20%:验证/核查技能
Step 6: Validate for Measurability
步骤6:验证可衡量性
Once you've generated objectives, invoke the validation script to check they're measurable:
bash
python .claude/skills/learning-objectives/scripts/validate-objectives.py objectives.ymlThe script checks:
- ✅ Objectives use action verbs (not vague words like "understand" or "know")
- ✅ Objectives are specific and testable
- ✅ Verbs match the Bloom's level
- ✅ Required fields present (context, assessment, success criteria)
If validation fails, review the error messages and refine:
- Replace vague verbs with specific action verbs from Bloom's level
- Add missing context or success criteria
- Make statements more specific (not just topic names)
生成目标后,调用验证脚本检查其可衡量性:
bash
python .claude/skills/learning-objectives/scripts/validate-objectives.py objectives.yml脚本检查以下内容:
- ✅ 目标使用动作动词(而非“理解”“知道”等模糊词汇)
- ✅ 目标具体且可测试
- ✅ 动词与布鲁姆层级匹配
- ✅ 包含必填字段(上下文、评估方法、成功标准)
若验证失败,查看错误信息并优化:
- 用布鲁姆层级对应的具体动作动词替换模糊动词
- 添加缺失的上下文或成功标准
- 让陈述更具体(而非仅提及主题名称)
Step 7: Refine and Finalize
步骤7:优化并定稿
Based on validation feedback:
- Revise any objectives with errors
- Ensure the objective sequence makes sense (build progressively)
- Verify prerequisites are necessary but not excessive
- Check that assessment methods are realistic for the time available
根据验证反馈:
- 修改任何有错误的目标
- 确保目标的顺序合理(逐步递进)
- 验证前置知识是必要的但不过度
- 检查评估方法在给定时间内是否可行
Output Format
输出格式
Present learning objectives in clear, structured format:
yaml
topic: "Topic Name"
objectives:
- id: "LO-001"
statement: "Action verb + what learner will do"
blooms_level: "Remember/Understand/Apply/Analyze/Evaluate/Create"
context: "Specific situation or problem"
prerequisites:
- "Prerequisite 1"
- "Prerequisite 2"
assessment_method: "How this will be assessed"
success_criteria:
- "Criterion 1"
- "Criterion 2"以清晰、结构化的格式呈现学习目标:
yaml
topic: "主题名称"
objectives:
- id: "LO-001"
statement: "动作动词 + 学习者将完成的内容"
blooms_level: "回忆/理解/应用/分析/评估/创造"
context: "具体场景或问题"
prerequisites:
- "前置知识1"
- "前置知识2"
assessment_method: "评估方式"
success_criteria:
- "标准1"
- "标准2"Acceptance Checks
验收检查
- SpecRef present (path to chapter spec and objective IDs)
- ≤ 5 objectives; measurable verbs only
- Each objective has Bloom tag (e.g., L2-Understand, L3-Apply)
- Each objective includes an “Evidence” mapping to assessment items or tasks
- Objectives align with complexity tier constraints (see Constitution)
- 包含规范引用(章节规范路径和目标ID)
- 目标数量≤5;仅使用可衡量的动词
- 每个目标带有布鲁姆标签(如L2-Understand、L3-Apply)
- 每个目标包含“证据”映射到评估项或任务
- 目标符合复杂度层级约束(见Constitution)
Objective snippet
目标片段示例
- [ID: LO-001 | Bloom: L3-Apply]
Statement: Implement X in Y context
Evidence: Quiz Q3, Task T2- [ID: LO-001 | Bloom: L3-Apply]
Statement: 在Y场景中实现X
Evidence: 测验Q3,任务T2Examples
示例
Example 1: Python List Comprehensions (1-hour lesson)
示例1:Python列表推导式(1课时)
User Request: "Create objectives for teaching Python list comprehensions to beginners"
Generated Objectives:
yaml
topic: "Python List Comprehensions"
objectives:
- id: "LO-C1-001"
statement: "Define list comprehension and identify its basic syntax"
blooms_level: "Remember"
context: "Introduction to list comprehensions"
prerequisites:
- "Know Python list syntax and indexing"
- "Can write basic for loops"
assessment_method: "Quick quiz: match syntax to purpose"
success_criteria:
- "Can identify list comprehension in code"
- "Can label parts of syntax (brackets, for, if)"
- id: "LO-C1-002"
statement: "Explain how list comprehension replaces for loop patterns"
blooms_level: "Understand"
context: "Comparing traditional loops with comprehensions"
prerequisites:
- "Understand for loop iteration"
assessment_method: "Paraphrase: explain in own words"
success_criteria:
- "Can describe equivalent for loop for any list comprehension"
- "Can explain what's happening step-by-step"
- id: "LO-C1-003"
statement: "Implement list comprehensions to filter and transform data"
blooms_level: "Apply"
context: "Given various data transformation tasks"
prerequisites:
- "Can write list comprehensions with filter conditions"
- "Understand string/number methods"
assessment_method: "Code exercise: write comprehensions for provided requirements"
success_criteria:
- "Code executes without errors"
- "Output matches expected results"
- "Uses list comprehension (not a for loop)"
- id: "LO-C1-004"
statement: "Compare list comprehension with traditional loops by examining efficiency and readability"
blooms_level: "Analyze"
context: "Choosing approaches for data processing"
prerequisites:
- "Implement list comprehensions fluently"
- "Understand basic time complexity"
assessment_method: "Code analysis: compare two implementations"
success_criteria:
- "Identifies efficiency differences (space/time)"
- "Considers readability and maintainability"
- "Justifies when to use each approach"用户请求:“为初学者创建Python列表推导式的学习目标”
生成的目标:
yaml
topic: "Python List Comprehensions"
objectives:
- id: "LO-C1-001"
statement: "定义列表推导式并识别其基本语法"
blooms_level: "Remember"
context: "列表推导式入门"
prerequisites:
- "了解Python列表语法和索引"
- "能编写基础for循环"
assessment_method: "快速测验:匹配语法与用途"
success_criteria:
- "能在代码中识别列表推导式"
- "能标注语法的各个部分(括号、for、if)"
- id: "LO-C1-002"
statement: "解释列表推导式如何替代for循环模式"
blooms_level: "Understand"
context: "比较传统循环与列表推导式"
prerequisites:
- "理解for循环迭代"
assessment_method: "转述:用自己的话解释"
success_criteria:
- "能描述任何列表推导式对应的等效for循环"
- "能逐步解释执行过程"
- id: "LO-C1-003"
statement: "使用列表推导式过滤和转换数据"
blooms_level: "Apply"
context: "完成各种数据转换任务"
prerequisites:
- "能编写带过滤条件的列表推导式"
- "理解字符串/数字方法"
assessment_method: "代码练习:根据需求编写列表推导式"
success_criteria:
- "代码无错误执行"
- "输出与预期结果匹配"
- "使用列表推导式(而非for循环)"
- id: "LO-C1-004"
statement: "通过检查效率和可读性比较列表推导式与传统循环"
blooms_level: "Analyze"
context: "选择数据处理方案"
prerequisites:
- "能熟练实现列表推导式"
- "理解基本时间复杂度"
assessment_method: "代码分析:比较两种实现方案"
success_criteria:
- "识别效率差异(空间/时间)"
- "考虑可读性和可维护性"
- "论证何时使用每种方案"Example 2: OOP Class Design (3-hour module)
示例2:OOP类设计(3小时模块)
User Request: "I'm teaching OOP fundamentals. What should students be able to do?"
Generated Objectives:
yaml
topic: "Object-Oriented Programming Fundamentals"
objectives:
- id: "LO-OOP-001"
statement: "Define class, instance, method, and attribute and distinguish between them"
blooms_level: "Remember"
context: "Introduction to OOP vocabulary"
prerequisites:
- "Understand functions and variables in Python"
assessment_method: "Matching exercise and short definitions"
success_criteria:
- "Can define each term correctly"
- "Can match definitions to examples in code"
- id: "LO-OOP-002"
statement: "Explain how __init__ initializes instances and why self references the current object"
blooms_level: "Understand"
context: "Understanding object instantiation"
prerequisites:
- "Know class definition syntax"
- "Understand function parameters and returns"
assessment_method: "Walkthrough: explain code line-by-line"
success_criteria:
- "Can trace execution of __init__ method"
- "Can explain what self represents"
- id: "LO-OOP-003"
statement: "Design and implement a class with attributes and methods for a specific domain"
blooms_level: "Apply"
context: "Real-world object requirements (e.g., Student, BankAccount, Car)"
prerequisites:
- "Can write class definitions with __init__"
- "Understand instance vs class scope"
assessment_method: "Code exercise: implement class from requirements"
success_criteria:
- "Class correctly models the domain"
- "Attributes store state appropriately"
- "Methods perform expected behaviors"
- "Code follows PEP 8 naming conventions"
- id: "LO-OOP-004"
statement: "Analyze class hierarchies and identify inheritance relationships"
blooms_level: "Analyze"
context: "Understanding code organization and reuse patterns"
prerequisites:
- "Implement basic classes fluently"
- "Understand inheritance syntax"
assessment_method: "Code analysis exercise: identify class relationships"
success_criteria:
- "Identifies parent/child relationships correctly"
- "Explains why inheritance is used"
- "Identifies methods that are overridden"
- id: "LO-OOP-005"
statement: "Evaluate a class design and justify changes for maintainability and extensibility"
blooms_level: "Evaluate"
context: "Code review of existing class structures"
prerequisites:
- "Analyze inheritance patterns"
- "Understand design principles (DRY, SOLID)"
assessment_method: "Design critique: suggest improvements with justification"
success_criteria:
- "Identifies duplication that could be eliminated"
- "Suggests appropriate inheritance changes"
- "Justifies changes based on maintenance concerns"
- id: "LO-OOP-006"
statement: "Design an OOP solution for a complex domain problem"
blooms_level: "Create"
context: "Building a small system with multiple interacting classes"
prerequisites:
- "Master all previous OOP concepts"
- "Can implement and evaluate class designs"
assessment_method: "Create a mini-project with multiple classes"
success_criteria:
- "Solution correctly models the domain"
- "Uses inheritance appropriately"
- "Code is well-organized and reusable"
- "Design decisions are documented and justified"用户请求:“我正在教授OOP基础,学生应该具备什么能力?”
生成的目标:
yaml
topic: "Object-Oriented Programming Fundamentals"
objectives:
- id: "LO-OOP-001"
statement: "定义类、实例、方法和属性,并区分它们"
blooms_level: "Remember"
context: "OOP术语入门"
prerequisites:
- "理解Python中的函数和变量"
assessment_method: "匹配练习和简短定义"
success_criteria:
- "能正确定义每个术语"
- "能将定义与代码示例匹配"
- id: "LO-OOP-002"
statement: "解释__init__如何初始化实例,以及self为何引用当前对象"
blooms_level: "Understand"
context: "理解对象实例化"
prerequisites:
- "了解类定义语法"
- "理解函数参数和返回值"
assessment_method: "Walkthrough:逐行解释代码"
success_criteria:
- "能追踪__init__方法的执行过程"
- "能解释self代表什么"
- id: "LO-OOP-003"
statement: "为特定领域设计并实现带有属性和方法的类"
blooms_level: "Apply"
context: "现实世界对象需求(如Student、BankAccount、Car)"
prerequisites:
- "能编写带__init__的类定义"
- "理解实例与类的作用域"
assessment_method: "代码练习:根据需求实现类"
success_criteria:
- "类能正确建模领域"
- "属性适当地存储状态"
- "方法执行预期行为"
- "代码遵循PEP 8命名规范"
- id: "LO-OOP-004"
statement: "分析类层次结构并识别继承关系"
blooms_level: "Analyze"
context: "理解代码组织和复用模式"
prerequisites:
- "能熟练实现基础类"
- "理解继承语法"
assessment_method: "代码分析练习:识别类关系"
success_criteria:
- "正确识别父/子关系"
- "解释使用继承的原因"
- "识别被重写的方法"
- id: "LO-OOP-005"
statement: "评估类设计并论证可维护性和可扩展性的改进方案"
blooms_level: "Evaluate"
context: "现有类结构的代码审查"
prerequisites:
- "能分析继承模式"
- "理解设计原则(DRY、SOLID)"
assessment_method: "设计评审:提出改进方案并论证"
success_criteria:
- "识别可消除的重复代码"
- "提出合适的继承改进方案"
- "基于维护需求论证改进的合理性"
- id: "LO-OOP-006"
statement: "为复杂领域问题设计OOP解决方案"
blooms_level: "Create"
context: "构建包含多个交互类的小型系统"
prerequisites:
- "掌握所有之前的OOP概念"
- "能实现并评估类设计"
assessment_method: "创建包含多个类的迷你项目"
success_criteria:
- "解决方案能正确建模领域"
- "适当使用继承"
- "代码组织良好且可复用"
- "设计决策有文档记录和论证"Common Patterns
常见模式
Pattern 1: Short Tutorial (30 minutes)
模式1:短教程(30分钟)
- 1 Understand objective
- 1 Apply objective
- 1 Analyze objective
- ~Total: 3 objectives
- 1个理解目标
- 1个应用目标
- 1个分析目标
- ~总计:3个目标
Pattern 2: Standard Lesson (1-2 hours)
模式2:标准课时(1-2小时)
- 1 Remember objective (if foundational topic)
- 1 Understand objective
- 2 Apply objectives (different contexts/complexities)
- 1 Analyze objective
- ~Total: 4-5 objectives
- 1个回忆目标(如果是基础主题)
- 1个理解目标
- 2个应用目标(不同场景/复杂度)
- 1个分析目标
- ~总计:4-5个目标
Pattern 3: Full Unit (3-5 hours)
模式3:完整单元(3-5小时)
- 1 Remember (terminology)
- 1 Understand (concepts)
- 2-3 Apply (varied contexts)
- 1 Analyze (relationships)
- 1 Evaluate (quality)
- 1 Create (synthesis)
- ~Total: 7-8 objectives
- 1个回忆目标(术语)
- 1个理解目标(概念)
- 2-3个应用目标(不同场景)
- 1个分析目标(关系)
- 1个评估目标(质量)
- 1个创造目标(综合)
- ~总计:7-8个目标
Pattern 4: Capstone/Project Course
模式4:顶点项目/项目课程
- Lightweight foundational objectives (Remember/Understand)
- Multiple Apply objectives with increasing complexity
- Strong Analyze/Evaluate/Create focus
- Capstone project as final assessment
- 轻量化基础目标(回忆/理解)
- 多个复杂度递增的应用目标
- 重点关注分析/评估/创造
- 顶点项目作为最终评估
Troubleshooting
故障排除
Objective Too Vague
目标过于模糊
Problem: "Understand decorators"
Why it's bad: Not measurable. What does "understand" mean? How will you know if they understand?
Solution: Use specific action verb and add context
- ✅ "Explain how a decorator wraps a function to modify its behavior"
- ✅ "Implement a custom decorator that logs function calls"
问题:“理解装饰器”
问题所在:不可衡量。“理解”具体指什么?如何判断学习者是否理解?
解决方案:使用具体的动作动词并添加上下文
- ✅ “解释装饰器如何包装函数以修改其行为”
- ✅ “实现一个记录函数调用的自定义装饰器”
Too Many Objectives
目标数量过多
Problem: Created 15 objectives for 1-hour lesson
Solution: Reduce to 3-5 objectives. Ask:
- Which are essential? (Keep)
- Which are "nice to have"? (Remove or move to extension)
- Are some redundant? (Consolidate)
问题:为1课时创建了15个目标
解决方案:减少到3-5个目标。思考:
- 哪些是核心目标?(保留)
- 哪些是“锦上添花”的?(移除或移至拓展内容)
- 哪些是冗余的?(合并)
Prerequisites Are Too Deep
前置知识过深
Problem: Prerequisites include "Master Python" and "Understand all design patterns"
Solution: Be minimal. Ask: "What's the absolute minimum they need to know to start learning this?"
- Too deep: "Master all data structures"
- Just right: "Understand how lists work with indexing"
问题:前置知识包含“精通Python”和“理解所有设计模式”
解决方案:保持极简。思考:“学习者开始学习此内容前绝对需要知道什么?”
- 过深:“掌握所有数据结构”
- 合适:“理解列表的索引用法”
Can't Think of Higher Bloom's Levels
无法想到更高层级的布鲁姆目标
Problem: Only created Remember and Apply objectives
Solution:
- Read blooms-taxonomy-programming.md §4-6 for Analyze/Evaluate/Create examples
- Ask: "What can learners do with this knowledge?" (Points toward Create)
- Add analysis question: "Compare this approach with X..."
- Add evaluation: "Would this solution work for Y? Why/why not?"
问题:仅创建了回忆和应用层级的目标
解决方案:
- 阅读blooms-taxonomy-programming.md的第4-6节,获取分析/评估/创造层级的示例
- 思考:“学习者能用这些知识做什么?”(指向创造层级)
- 添加分析问题:“比较此方案与X...”
- 添加评估问题:“此方案是否适用于Y?为什么?”
Integration with Other Skills
与其他技能的集成
This skill works well with:
→ exercise-designer skill: Once you have learning objectives, use that skill to create practice exercises aligned to each objective's Bloom's level
→ technical-clarity skill: Use to review the clarity of your objective statements
→ code-example-generator skill: Use to create examples that demonstrate Apply-level objectives
此技能可与以下技能配合使用:
→ 练习设计技能:生成学习目标后,使用此技能为每个目标的布鲁姆层级创建配套练习
→ 技术清晰度技能:用于审查目标陈述的清晰度
→ 代码示例生成技能:用于创建展示应用层级目标的示例
Emerging Topics: Agentic AI & Model Context Protocol (MCP)
前沿主题:Agentic AI与Model Context Protocol(MCP)
As books increasingly cover advanced AI topics, use this skill to define learning objectives for:
随着书籍越来越多地涵盖高级AI主题,使用此技能为以下内容定义学习目标:
Agentic AI Learning Objectives Example
Agentic AI学习目标示例
Topic: "Building Autonomous AI Agents"
yaml
topic: "Agentic AI Fundamentals"
objectives:
- id: "LO-AGENT-001"
statement: "Define autonomous agents, distinguish them from traditional chatbots, and explain key characteristics (goal-seeking, state management, tool use)"
blooms_level: "Understand"
context: "Introduction to agentic AI concepts"
prerequisites:
- "Understand AI basics and language models"
assessment_method: "Short answer or concept mapping"
success_criteria:
- "Can list key differences between agents and chatbots"
- "Can explain goal-directed behavior and autonomy"
- id: "LO-AGENT-002"
statement: "Implement a simple autonomous agent that uses tools to accomplish a specified goal"
blooms_level: "Apply"
context: "Building working agents with Python"
prerequisites:
- "Understand agent architecture and tool-use patterns"
- "Can write Python functions and handle API calls"
assessment_method: "Code exercise: implement agent from requirements"
success_criteria:
- "Agent autonomously reaches its goal"
- "Correctly selects and uses available tools"
- "Handles tool responses and iterates"
- id: "LO-AGENT-003"
statement: "Analyze agent behavior and identify when agents succeed, fail, or enter loops; propose fixes"
blooms_level: "Analyze"
context: "Debugging and improving agent performance"
prerequisites:
- "Can implement basic agents"
- "Understand agent decision-making patterns"
assessment_method: "Debug exercise: analyze agent logs and improve behavior"
success_criteria:
- "Identifies root causes of agent failures"
- "Proposes specific improvements (better prompts, new tools, constraints)"主题:“构建自主AI Agent”
yaml
topic: "Agentic AI Fundamentals"
objectives:
- id: "LO-AGENT-001"
statement: "定义自主Agent,区分其与传统聊天机器人,并解释关键特征(目标导向、状态管理、工具使用)"
blooms_level: "Understand"
context: "Agentic AI概念入门"
prerequisites:
- "理解AI基础和语言模型"
assessment_method: "简答题或概念映射"
success_criteria:
- "能列出Agent与聊天机器人的关键区别"
- "能解释目标导向行为和自主性"
- id: "LO-AGENT-002"
statement: "实现一个使用工具完成指定目标的简单自主Agent"
blooms_level: "Apply"
context: "用Python构建可运行的Agent"
prerequisites:
- "理解Agent架构和工具使用模式"
- "能编写Python函数并处理API调用"
assessment_method: "代码练习:根据需求实现Agent"
success_criteria:
- "Agent能自主达成目标"
- "正确选择并使用可用工具"
- "处理工具响应并迭代"
- id: "LO-AGENT-003"
statement: "分析Agent行为,识别其成功、失败或进入循环的情况;提出修复方案"
blooms_level: "Analyze"
context: "调试和提升Agent性能"
prerequisites:
- "能实现基础Agent"
- "理解Agent决策模式"
assessment_method: "调试练习:分析Agent日志并改进行为"
success_criteria:
- "识别Agent失败的根本原因"
- "提出具体的改进方案(更好的提示词、新工具、约束)"MCP (Model Context Protocol) Learning Objectives Example
MCP(Model Context Protocol)学习目标示例
Topic: "Integrating MCP into Python Applications"
yaml
topic: "Model Context Protocol (MCP) Integration"
objectives:
- id: "LO-MCP-001"
statement: "Explain MCP architecture, the role of servers and clients, and how MCP extends model capabilities"
blooms_level: "Understand"
context: "Introduction to MCP concepts"
prerequisites:
- "Understand Python modules and client-server patterns"
assessment_method: "Explanation exercise: describe MCP client-server relationship"
success_criteria:
- "Can explain what MCP servers provide"
- "Can describe the client-server protocol flow"
- id: "LO-MCP-002"
statement: "Install and configure existing MCP servers and integrate them into a Python application"
blooms_level: "Apply"
context: "Using MCP in real applications"
prerequisites:
- "Understand MCP architecture"
- "Can write Python clients and manage dependencies"
assessment_method: "Code exercise: integrate MCP server into working application"
success_criteria:
- "Correctly configures MCP client"
- "Application successfully calls MCP server tools"
- "Responses are properly handled and integrated"
- id: "LO-MCP-003"
statement: "Design and implement a custom MCP server that provides tools for a specific domain"
blooms_level: "Create"
context: "Building reusable MCP tools"
prerequisites:
- "Can integrate existing MCP servers"
- "Understand server-side architecture and tool definitions"
assessment_method: "Project: implement MCP server with documentation"
success_criteria:
- "Server correctly implements MCP protocol"
- "Tools are well-defined with clear descriptions"
- "Client can successfully call server tools"
- "Code is documented and maintainable"Key Considerations for Advanced Topics:
- These topics may require deeper prerequisites (solid Python, API design knowledge)
- Use spiral learning: revisit concepts at increasing depth (basic agent → advanced orchestration)
- Include both theory (understanding architecture) and practice (implementing tools)
- Assessment should emphasize real problem-solving, not just definitions
主题:“将MCP集成到Python应用中”
yaml
topic: "Model Context Protocol (MCP) Integration"
objectives:
- id: "LO-MCP-001"
statement: "解释MCP架构、服务器和客户端的角色,以及MCP如何扩展模型能力"
blooms_level: "Understand"
context: "MCP概念入门"
prerequisites:
- "理解Python模块和客户端-服务器模式"
assessment_method: "解释练习:描述MCP客户端-服务器关系"
success_criteria:
- "能解释MCP服务器提供的功能"
- "能描述客户端-服务器协议流程"
- id: "LO-MCP-002"
statement: "安装并配置现有MCP服务器,并将其集成到Python应用中"
blooms_level: "Apply"
context: "在实际应用中使用MCP"
prerequisites:
- "理解MCP架构"
- "能编写Python客户端并管理依赖"
assessment_method: "代码练习:将MCP服务器集成到运行中的应用"
success_criteria:
- "正确配置MCP客户端"
- "应用成功调用MCP服务器工具"
- "正确处理响应并集成"
- id: "LO-MCP-003"
statement: "为特定领域设计并实现自定义MCP服务器"
blooms_level: "Create"
context: "构建可复用的MCP工具"
prerequisites:
- "能集成现有MCP服务器"
- "理解服务器端架构和工具定义"
assessment_method: "项目实现带文档的MCP服务器"
success_criteria:
- "服务器正确实现MCP协议"
- "工具定义清晰,描述明确"
- "客户端能成功调用服务器工具"
- "代码有文档且可维护"高级主题的关键考虑因素:
- 这些主题可能需要更深的前置知识(扎实的Python基础、API设计知识)
- 使用螺旋式学习:逐步加深对概念的理解(基础Agent → 高级编排)
- 同时包含理论(理解架构)和实践(实现工具)
- 评估应强调实际问题解决,而非仅定义
Tips for Success
成功技巧
- Start with the end in mind: What should learners be able to DO, not what will you teach?
- Make them testable: Ask "How would I know if this objective was met?"
- Use consistent Bloom's level progression: Build from simple to complex
- Include prerequisites: Help learners self-assess readiness
- Validate often: Use the validation script to catch vague language
- Test with real learners: Objectives often need refinement based on actual usage
Ready to generate objectives? Provide:
- Topic/concept to teach
- Target learner level (beginner/intermediate/advanced)
- Available teaching time
- End goal (build project? understand theory? debug code?)
Or paste existing objectives and I'll help make them more measurable!
- 以终为始:学习者应能做什么,而非你将教什么?
- 确保可测试:问自己“如何判断此目标已达成?”
- 保持布鲁姆层级的递进一致性:从简单到复杂
- 包含前置知识:帮助学习者自我评估准备情况
- 经常验证:使用验证脚本捕捉模糊语言
- 与真实学习者测试:目标通常需要根据实际使用情况优化
**准备好生成目标了吗?**请提供:
- 要教授的主题/概念
- 目标学习者水平(初学者/中级/高级)
- 可用教学时长
- 最终目标(构建项目?理解理论?调试代码?)
或者粘贴现有目标,我会帮助你使其更具可衡量性!