40
CTF & CSE Using the Udacity Java CS MOOC Platform Wordsmithing & Rearrangements but limited authoring is by Gerry Donaldson. Attribution – Slides that describe substantial content, pedagogy and resources of the Udacity platform were copied directly or indirectly from the Udacity course web site. Those materials were reorganized and paraphrased for this presentation. University of Calgary CSE Teachers Symposium 20 June 2

CTF & CSE Using the Udacity Java CS MOOC Platform

  • Upload
    rex

  • View
    59

  • Download
    0

Embed Size (px)

DESCRIPTION

CTF & CSE Using the Udacity Java CS MOOC Platform. University of Calgary CSE Teachers Symposium 20 June 2014. Attribution – Slides that describe substantial content, pedagogy and resources of the Udacity platform were copied directly or indirectly from the Udacity course - PowerPoint PPT Presentation

Citation preview

Page 1: CTF & CSE Using  the Udacity Java CS MOOC Platform

CTF & CSE Using the Udacity Java CS MOOC Platform

Wordsmithing & Rearrangements but limited authoring is by Gerry

Donaldson.

Attribution – Slides that describe substantial content,pedagogy and resources of the Udacity platform werecopied directly or indirectly from the Udacity courseweb site. Those materials were reorganized andparaphrased for this presentation.

University of Calgary CSE Teachers Symposium 20 June 2014

Page 2: CTF & CSE Using  the Udacity Java CS MOOC Platform

Introduction to Programming in Java

Page 3: CTF & CSE Using  the Udacity Java CS MOOC Platform

Udacity Course Syllabus1. Intro to Computers & Java2. Intro to Classes & Objects3. Graphics4. Fundamental Data Types5. Decisions (Branching)6. Iterations (Loops)7. Arrays & ArrayLists 8. Methods 9. Inheritance

Page 4: CTF & CSE Using  the Udacity Java CS MOOC Platform

3 and 5 Credit Alberta Education Courses Based on Udacity MOOC

Computer Science Education 101 (3 credits)# Lesson Assignment Big Java 5th Edition

SectionsCSE 1010, CSE 1110, CSE

11201 Introductio

nBlueJ Installation

1.1 - 1.7 Introduction 1010 (Nil) Computer Science 1

2 Objects Draft Problem Set 1Final Problem Set 1

2.1 - 2.8 Using Objects2.9 - 2.10 Graphics

(Ellipses, Lines, Text, Color)

1110 (Nil) Structured Programming 12110 (1120) Procedural Programming 1[ 2140 Second Lang Programming 1 ]

3 Classes Draft Problem Set 2Final Problem Set 2

3.1 - 3.7 Implementing Classes

3.8 Graphics (Shape Classes)

1110 (Nil) Structured Programming 12110 (1120) Procedural Programming 1

4 Fundamental Data Types

No MOOC Assignment

4.1 – 4.5 Fundamental Data Types

2120 Data Structures 1 (first part)

5.1

Decisions Draft Problem Set 3Final Problem Set 3

5.1 – 5.8 Decisions 1120 (1110) – Structured Programming 2

5.2

Decisions No MOOC Assignment

1120 (1110) – Structured Programming 2

Page 5: CTF & CSE Using  the Udacity Java CS MOOC Platform

3 and 5 Credit Alberta Education Courses Based on Udacity MOOC

Computer Science Education 201 (3 credits)# Lesson Assignment Big Java 5th Edition

SectionsCSE 2110, CSE 2120, CSE

29106.1

Loops Draft Problem Set 4Final Problem Set 4

6.1 – 6.9 Loops6.10 Using a Debugger

1120 (1110) – Structured Programming 2

6.2

Loops Draft Problem Set 5Final Problem Set 5

6.1 – 6.9 Loops6.10 Using a Debugger

1120 (1110) – Structured Programming 2 

7.1

Arrays and ArrayLists

Draft Problem Set 6Final Problem Set 6

7.1 Arrays7.2 Enhanced FOR Loop7.3 – 7.5 Algorithms7.6 Two-Dimensional Arrays7.7 ArrayLists7.8 Regression Testing

2110 (1120) – Procedural Programming 1  2120 (2110) – Data Structures 1

– arrays (1D &2D) and records.

Records are implemented as objects in Java. [ 3140 Second Language Programming 2 ]

7.2

Arrays and ArrayLists

Draft Problem Set 7Final Problem Set 7

7.3

Arrays and ArrayLists

No MOOC Assignment

Not In

MOOC

Project Dossier Program

  2910 CSE Project B

Page 6: CTF & CSE Using  the Udacity Java CS MOOC Platform

3 and 5 Credit Alberta Education Courses Based on Udacity MOOC

Computer Science Education 301 (3 credits)# Lesson Assignment Big Java 5th Edition

SectionsCSE 2910, CSE 3120, CSE

31308 More About

ClassesDraft Problem Set 8Final Problem Set 8

8.1 – 8.5 Designing Classes8.6 Unit Test Frameworks

3120 (2110) – OOP 1 (accessors, modifiers)

9 Interfaces and

Inheritance

Draft Problem Set 9Final Problem Set 9

9.1 – 9.3 Inheritance9.4 Polymorphism

3120 (2110) – OOP 1 (Encapsulation, Modularity, Polymorphism)

3130 (3120) – OOP 2 (Inheritance) 

9 Interfaces and

Inheritance

No MOOC Assignment

10.1 – 10.6 Interfaces10.7-10.10 GUI (not in MOOC)

Not In MOOC

Project Program Dossier 12.1 – 12.2 OOP Design 3910 CSE Project D

Program Dossier Modelled After Dossier for International Baccalaureate Organization Analysis --> Problem Definition, Testing, Review Antecedents, Prototype Detailed Design --> Data Structures, Algorithms, Modular Organization The Program --> Style & Internal Documentation, Usability, Handling Errors, Evaluating Success Regression Testing --> Test Driven: JUnit Testing Documentation --> Hard copy of test output: Data Validity, User Documentation, JavadocsPublication --> Web Page: all files, executable JAR file, data files, Javadocs, Screen Recording

Page 7: CTF & CSE Using  the Udacity Java CS MOOC Platform

3 and 5 Credit Alberta Education Courses Based on Udacity MOOC

Computer Science Education 30 (5 credits)# Lesson Assignment Big Java 5th Edition Sections CSE 3110, 3120, 3130, 3310, 3910,8 More About

ClassesDraft Problem Set 8Final Problem Set 8

8.1 – 8.5 Designing Classes8.6 Unit Test Frameworks

3120 (2110) – OOP 1 (accessors, modifiers)

9 Interfaces and

Inheritance

Draft Problem Set 9Final Problem Set 9

9.1 – 9.3 Inheritance9.4 Polymorphism

3120 (2110) – OOP 1 (Encapsulation, Modularity, Polymorphism)

3130 (3120) – OOP 2 (Inheritance) 

9 Interfaces and

Inheritance

No MOOC Assignment

10.1 – 10.6 Interfaces10.7-10.10 GUI (not in MOOC)

 Not In MOOC

Recursion No MOOC Assignment

13.1 – 13.6 Recursion[ Kjell Tutorials 70-74 ]

3310 (3110, 3120) Recursive Algorithms 1

Not In MOOC

Sorting & Searching

No MOOC Assignment

14.1 – 14.8 Sorting & Searching

2010 (1010, 1120) – Com Science 2 – Sort, Search, Efficiency, Coupling, Merging

3110 (2120) – Iterative Algorithm 1 - Sequential & Binary Search. Bubble, Selection, Insertion, Merge Sorts.

Not In MOOC

Project Program Dossier 12.1 – 12.2 OOP Design 3910 CSE Project D

Page 8: CTF & CSE Using  the Udacity Java CS MOOC Platform

NanodegreesIndustry credentials for jobs in techCompact, hands-on, and flexible

online curriculumDeveloped between Udacity and

partner companies in Silicon Valley and beyond

Companies build curricula for their own employees

Page 9: CTF & CSE Using  the Udacity Java CS MOOC Platform

NanodegreesExample: AT&T is partnered with

Udacity.Nanodegrees are being developed

for Front-End Web Developers,  Back-End Web Developers, and Mobile iOS Developers.

AT&T is reserving 100 internships for graduates of these programs.

Page 10: CTF & CSE Using  the Udacity Java CS MOOC Platform

Nanodegrees

Page 11: CTF & CSE Using  the Udacity Java CS MOOC Platform

Course Home Pagehttps://

www.udacity.com/course/cs046

Page 12: CTF & CSE Using  the Udacity Java CS MOOC Platform

Sign Up For An Account.

Page 13: CTF & CSE Using  the Udacity Java CS MOOC Platform

Verify From Your Email Account.

Page 14: CTF & CSE Using  the Udacity Java CS MOOC Platform

An email verifies your account.

Page 15: CTF & CSE Using  the Udacity Java CS MOOC Platform

Typical Learning Progression

MASTERY LEARNINGEvery task on every screen had to be100% completed before certificatewas awarded!

Lesson == Video Instruction withPresentation, Examples & Interaction.

Problem Set Draft == Several PracticeExercises Code is submitted online!

Problem Set Final == Extension ofDraft Exercises == Increased Difficulty.

Midterm & Final Done online. Allresources may be accessed.

Page 16: CTF & CSE Using  the Udacity Java CS MOOC Platform

Textbook Parallels Udacity Course

Textbook worksfor teachers:• Test Banks• Exercises with solutions.• PowerPoints• Explanations

Not neededFor Students!

Page 17: CTF & CSE Using  the Udacity Java CS MOOC Platform

Horstmann Gifts Resources

Note: Above Yellow Highlighting Emphasis Added by Gerry Donaldson.

Page 18: CTF & CSE Using  the Udacity Java CS MOOC Platform

San Jose Confirms Horstmann

Page 19: CTF & CSE Using  the Udacity Java CS MOOC Platform

Udacity Confirms Horstmann

Page 20: CTF & CSE Using  the Udacity Java CS MOOC Platform

Develop code in BlueJ IDEIDE: Integrated Development EnvironmentBlueJ == A free Java Development Environment designed for beginners

http://www.bluej.org/

Page 21: CTF & CSE Using  the Udacity Java CS MOOC Platform

Install BlueJ with JDKJDK == Java Development Kit

Page 22: CTF & CSE Using  the Udacity Java CS MOOC Platform

Launch BlueJ IDE

Page 23: CTF & CSE Using  the Udacity Java CS MOOC Platform

Create a BlueJ ProjectProject New Project … Select Directory “PrintName”

Page 24: CTF & CSE Using  the Udacity Java CS MOOC Platform

Create a “class” (chunk of code)New Class… “DoName” Ok

Page 25: CTF & CSE Using  the Udacity Java CS MOOC Platform

Open the “doName” class file.Double click the “DoName” class

icon.Striped icon == Not Yet

Compiled.

Page 26: CTF & CSE Using  the Udacity Java CS MOOC Platform

A Generic Template Appears.

Select and delete the default code.

Page 27: CTF & CSE Using  the Udacity Java CS MOOC Platform

Add main method to classpublic static void main(String [] args){

System.out.print("My name is Gerry.");}

Page 28: CTF & CSE Using  the Udacity Java CS MOOC Platform

Compile Your Program.Compiling converts source code

to ML.

Page 29: CTF & CSE Using  the Udacity Java CS MOOC Platform

Check for syntax errors.Check that code compiled

Close.

Page 30: CTF & CSE Using  the Udacity Java CS MOOC Platform

Create new object from class.Right click class icon Select “ void main (String[ ]

args) ”

Page 31: CTF & CSE Using  the Udacity Java CS MOOC Platform

Execute “Ok” & View Output.

Page 32: CTF & CSE Using  the Udacity Java CS MOOC Platform

“Discussions” allow exchange of help & advice with other students.See next slide for detailed example.

Page 33: CTF & CSE Using  the Udacity Java CS MOOC Platform

Select for detailed discussions.

Page 34: CTF & CSE Using  the Udacity Java CS MOOC Platform

Read Past Detailed Discussions!

Page 35: CTF & CSE Using  the Udacity Java CS MOOC Platform

Exercises Are Coded Comments.

Page 36: CTF & CSE Using  the Udacity Java CS MOOC Platform

Copy code from BlueJ to Canvas.

Page 37: CTF & CSE Using  the Udacity Java CS MOOC Platform

Test Code On Canvas Window.

Page 38: CTF & CSE Using  the Udacity Java CS MOOC Platform

Output Appears Below Code.

Page 39: CTF & CSE Using  the Udacity Java CS MOOC Platform

Course Credit at San Jose SU

Page 40: CTF & CSE Using  the Udacity Java CS MOOC Platform

Certificates Could Be Earned, BUTFree Certificates Are Discontinued.