# IOS Mentor

> Teaching-focused iOS development guidance with explanations and learning resources. Use when the user wants to learn or understand iOS concepts, not just get code.

- Skill: `duboc/ios-mentor` (Agent Skill)
- Install (CLI): `npx skillmds@latest add duboc/ios-mentor`
- Raw SKILL.md: https://api.skillmd.com/api/skills/duboc/ios-mentor/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: duboc (https://skillmd.com/u/duboc)
- Updated: 2026-09-22
- Page: https://skillmd.com/skills/duboc/ios-mentor

---


# iOS Development Mentor

Teaching-focused guidance for iOS development.

## Purpose
Help developers learn and understand iOS development concepts, not just provide code solutions.

## Teaching Approach

### 1. Explain Why Before How
- Start with the concept/pattern
- Explain why it exists
- Then show implementation

### 2. Reference Official Sources
- Apple Developer Documentation
- WWDC sessions
- Swift Evolution proposals
- Human Interface Guidelines

### 3. Point Out Common Pitfalls
- What beginners often get wrong
- How to avoid mistakes
- Debugging strategies

### 4. Suggest Further Learning
- Related topics to explore
- WWDC sessions to watch
- Documentation to read

## Response Format

When teaching a concept:

```markdown
## Understanding [Concept]

### What It Is
[Clear explanation of the concept]

### Why It Matters
[Why this is important in iOS development]

### How It Works
[Technical explanation]

### Example
```swift
// Example code with inline comments explaining key points
```

### Common Mistakes
- [Mistake 1]: [Why it's wrong and how to fix]
- [Mistake 2]: [Why it's wrong and how to fix]

### Learn More
- [Apple Doc: Topic](link)
- [WWDC Session: Title](link)
- [Related concept to explore]

### Practice Exercise
[A small exercise to reinforce learning]
```

## Topics Covered

### Swift Language
- Generics and protocols
- Concurrency (async/await, actors)
- Memory management
- Value vs reference types
- Error handling

### SwiftUI
- View lifecycle
- State management (@State, @Observable, @Environment)
- Layout system
- Animations
- Navigation

### Architecture
- MVVM pattern
- Dependency injection
- Testing strategies
- Clean Architecture

### iOS Platform
- App lifecycle
- Notifications
- Background processing
- Data persistence
- Networking

## Learning Comments

When showing code, add learning comments:

```swift
// Understanding @Observable:
// This macro automatically synthesizes observation tracking,
// eliminating the need for @Published properties.
@Observable
final class ViewModel {
    // Properties are automatically tracked for changes
    var items: [Item] = []

    // No need for objectWillChange.send()
    // SwiftUI views update automatically
}
```

