Download - MVC In Depth, part 1

Transcript
Page 1: MVC In Depth, part 1

Wednesday, November 2, 11

Page 2: MVC In Depth, part 1

Ed Spencer

@edspencer - edspencer.net

MVC, Part 1

Wednesday, November 2, 11

Page 3: MVC In Depth, part 1

What?

Wednesday, November 2, 11

Page 4: MVC In Depth, part 1

Teamwork

I will make an awesome app

now

Wednesday, November 2, 11

Page 5: MVC In Depth, part 1

Teamwork

I will help you

Wednesday, November 2, 11

Page 6: MVC In Depth, part 1

Teamwork

Your app is now big and needs a professional

consultant

Wednesday, November 2, 11

Page 7: MVC In Depth, part 1

Teamwork

Wednesday, November 2, 11

Page 8: MVC In Depth, part 1

FailWednesday, November 2, 11

Page 9: MVC In Depth, part 1

TeamworkApps often need teams

Different people work different ways

We need standards

Wednesday, November 2, 11

Page 10: MVC In Depth, part 1

But AlsoCode needs to be organized

Best practices followed

Spaghetti Avoided

Wednesday, November 2, 11

Page 11: MVC In Depth, part 1

This has been solved before

Smalltalk 80 introduces MVC:

ModelView

Controller

Wednesday, November 2, 11

Page 12: MVC In Depth, part 1

ModelLoads and manages the application data.

Usually in response to requests from the View

Wednesday, November 2, 11

Page 13: MVC In Depth, part 1

ViewManages the display of information and

UI controls

Wednesday, November 2, 11

Page 14: MVC In Depth, part 1

ControllerListens for inputs from the user, updates

Model and View

Wednesday, November 2, 11

Page 15: MVC In Depth, part 1

Model

Wednesday, November 2, 11

Page 16: MVC In Depth, part 1

View

Wednesday, November 2, 11

Page 17: MVC In Depth, part 1

Controller

Wednesday, November 2, 11

Page 18: MVC In Depth, part 1

We already had this

It was just all over the place

Wednesday, November 2, 11

Page 19: MVC In Depth, part 1

Definitely FailWednesday, November 2, 11

Page 20: MVC In Depth, part 1

Solution: Use Standards

Wednesday, November 2, 11

Page 21: MVC In Depth, part 1

Standards

Common Usage Patterns

Common File Structure

Common Toolchain

Wednesday, November 2, 11

Page 22: MVC In Depth, part 1

Model

Wednesday, November 2, 11

Page 23: MVC In Depth, part 1

View

Wednesday, November 2, 11

Page 24: MVC In Depth, part 1

Controller

Wednesday, November 2, 11

Page 25: MVC In Depth, part 1

File Structure

Wednesday, November 2, 11

Page 26: MVC In Depth, part 1

File Structure

Wednesday, November 2, 11

Page 27: MVC In Depth, part 1

Common Toolchain

Wednesday, November 2, 11

Page 28: MVC In Depth, part 1

Easy by hand too

Wednesday, November 2, 11

Page 29: MVC In Depth, part 1

Live Code*

* Might end in disaster

Wednesday, November 2, 11

Page 30: MVC In Depth, part 1

Questions?

Wednesday, November 2, 11