Syllabus

Here is the original pdf of the syllabus, and below is an updated weekly outline.
 
 
Week 1 - August 27
 
Week 2 - September 3
 
Week 3 - September 10
  • Java Basics
  • We'll continue working with the turtlegraphics scenario from last week, illustrating Java control flow, operators, numbers, strings, ...
  • Also we will check out the animation scenario.
  • Introduce Assignment 2, another Greenfoot activity:
    • Look through the Greenfoot scenarios page and gallery website for example Greenfoot programs.
    • Advanced students, for assignment 2, create your own original Greenfoot scenario, game, or whatever you wish, illustrating your knowledge of Java programming.
    • Beginning students, pick a simple existing game or scenario that interests you or can be adapted to something you are more interested in, and create your own version of it. 
      • For example, take the animation scenario and customize where the bird moves, or add other objects, or change it to a different animation.
      • Or take the turtlegraphics scenario and create new and original turtles, for example turtles that draw other shapes (like a face), or turtles that react to other turtles, etc.
    • See this video on how to create a new Greenfoot scenario from scratch, as well as other videos on things such as movement, or using the mouse for control.
    • The point of the assignment is to get some practice with Java Basics and Objects and Classes, and to have some fun doing it.
    • I will guide students on their Greenfoot projects in next week's class, which is optional if you don't need help.  Also, you can email me at any time for help.
    • Shoot to have your Greenfoot project done in 3 weeks (October 1st).  We don't have class Wednesday September 24th (conference).
 
Week 4 - September 17
  • Class optional
  • Help with Assignment 2
  • The Java Cheat Sheet should be ready by today.
 
Week 5 - September 24
  • NO CLASS - Open Education Conference
  • Email me if you need any help with the assignment, or you can schedule a meeting with me at the lab or my office Monday or Tuesday of this week.
 
Week 6 - October 1
Week 7 - October 8
  • We'll run the SwingSet3 demo of Swing's features (click the orange launch button)
  • Work on Assignment 3
  • Class optional
 
Week 8 - October 15
  • Java Graphics
  • Assignment 3 Due
  • Introduce Assignment 4, due in 2 weeks:
    • Assignment 4 is to create an application or applet that uses Swing and Java2D to show a ball dropping and bouncing like a real ball.  You should be able to click on the ball or the panel to re-drop the ball.
    • This applet from a course on java and simulations can help get you started, but note that it is an applet, not an application.  You can do the assignment as an applet if you wish, but that makes it harder to do in netbeans.
    • See also the 'animated colored balls' demo on the java2d samples page.
    • To start, create a new Java Desktop Project in Netbeans.  Then create a subclass of JPanel.  To do this right click on your project and select New->JPanel Form.  You might call it BallPanel, for example.
    • Override the paintComponent method in your BallPanel source code.  Click inside the class body, then hold down control-space, and start typing paintComponent.  Hit return, and netbeans will generate the override for you.  Inside that method is where you do all your drawing.
    • (optional) Make it so the BallPanel resizes when the window is resized.
    • (optional) Let people change gravity, to make the ball drop faster or slower, and/or change elasticity, to make the ball lose some energy each time it bounces (like the above applet does).
    • (advanced students, optional) Create another JPanel control that graphs the height of the ball over time.  I can send you some sample code.
  • Readings for next 2 weeks:
 
Week 9 - October 22
  • Work on Assignment 4 (Java Graphics)
  • Class optional
 
Week 10 - October 29
 
Week 11 - November 5
  • Work on Assignment 5 (JavaFX)
    • If you want to try this from home, you can just make a javafx demo in which you can drag around pictures, like the Duke Potato demo above.  Use your own pictures.
    • But in class, we will take this SVG vector graphic image of the US states and convert it to JavaFX code using Project Nile.
    • Then we'll create a JavaFX project in Netbeans and turn that image into an application in which you can drag around the states.
    • Here is an online demo of the app we'll be building.  It is slow to load, I didn't optimize the applet.
  • Class optional
Week 12 - November 12
Week 13 - November 19
  • Work on getting demos ready.
  • Class optional
Week 14 - November 26
  • NO CLASS - THANKSGIVING BREAK
Week 15 - December 3
Week 16 - December 10
  • FINALS WEEK - no class, no final
 
Groups:

Disclaimer

Any opinions expressed here, except as specifically noted, are those of the individual authors or commenters and do not necessarily represent the views or policies of the Department of Instructional Technology and Learning Sciences, the Emma Eccles Jones College of Education and Human Services, or Utah State University.