Animating the .NET execution model
Animating the .NET execution model. Jim Bown University of Abertay Dundee. Context. Year 1. Year 2. Year 3. Year 4. BSc Computing, Computing (Games Development) Entry levels: 1st year CCD at A-Level (One articulation route requires 1 A-Level). Background. Year 1. Year 2. Year 3.
Animating the .NET execution model
E N D
Presentation Transcript
Animating the .NET execution model Jim Bown University of Abertay Dundee
Context Year 1 Year 2 Year 3 Year 4 BSc Computing, Computing (Games Development) Entry levels: 1st year CCD at A-Level (One articulation route requires 1 A-Level)
Background Year 1 Year 2 Year 3 Year 4 Java (1.5) for core OOP concepts Taught using visualisation aids
Supportive technologies Program formulation Syntactic Context-sensitive SNOOPIE Semantic Generic warnings Problem formulation Schematic Construct relationships Strategic Required constructs Feedback Tool operation
Year 3, .NET Framework • Visual teaching tools and other supportive aids used throughout first exposure to Java • But not for .NET teaching! • No (good) reason for this • HEA award used to address this and improve existing portfolio of work • 2 month ‘secondment’ for PGRA
The module • 1. Identify the outline architecture & components of an object-oriented execution environment. • 2. Describe the elements of a type system in the context of object- oriented programming. • 3. Explain the operation of an object-oriented program in the context of memory management. • 4. Appraise the use of a class library in facilitating the implementation of complex applications.
The project • Develop 3 visualisations and additional tutorial materials • Integrated into the main module • Highlighting interoperability and dynamic code generation • Visualisations for • Simple class • Memory management • Case study
Visualisation 1 • Visualisation of a basic class • Students explore C# implementation • Used as an introduction to C# + class use (.dll) • Interface in VB.NET • Short commentary on interoperability in tutorial • We used straight-line class • Teach them about equations too! • Set of questions relating to class properties • Students explore and extend class
Visualisation 2 • Animation of memory management • The stack and heap • An interactive (carefully constrained) editor • Focused on object creation & method calls • Linked in with existing (static) presentation and tutorial exercises
Dynamic code generation • Dynamic generation of compiled code at run-time based on string input • Need instance of a compiler and a little bit of packaging • Self-generating programs • No animation for this • Tutorial exercises developed within project
Case study: Research Teaching • Actually the start of the whole thing • Me advising (sort of) an RA on development of a file viewer • X-rays and soil
Sample slicer viewer animation • Files generated are >10Gb • Series of slices of images (tiff files) • RA was developing a tiff file viewer • Allowing loading of a stack • And stepping through slices • I thought it might be cool to let our students see it … hence HEA application
Spin-off Carnegie Trust Summer Student HEA Academy School-funded Summer Student
Summary • 2 month project made significant impact on teaching content • Animations of particular value • In line with student expectations • Some revisions to core exercises to link better to animations • Funded 1 2-month RA and led to funding for 2 students for 6 weeks
Main deliverable Acknowledgements Allan Milne (PI) Michael Idowu (RA) Natalie Coull Matthew Leonard Eilidh MacAdam Davina Button Linton Porteous Please take one! Also on HEA website