Teacher: Fred Kral, Ph.D.
Email me: fkral
Call or text me: 415-857-KRAL (5725)
Call classroom: 415-339-9336 x111
Get info on homework and more: http://teach.kralsite.com or google "Fred Kral"
Course Description
The Java 2 elective is a continuation of Java 1, teaching students to express algorithms in the standard object-oriented computer programming language Java. Java 2 emphasizes more independent thinking and more depth of understanding than Java 1. Procedural programming, basic control structures, arrays, classes, inheritance, and interfaces are revisited in more detail. Topics that are mostly new to students include collections, recursion, searching and sorting, stacks, queues, linked lists, binary trees, and advanced data structures. Students complete several substantial projects. In addition to programming, students continue to learn about computer architecture.
Text and materials
- Reges, Stuart and Marty Stepp. Building Java Programs, Third Edition. Upper Saddle River, NJ: Pearson (Addison-Wesley), 2014. ISBN-13: 978-0-13-336090-5. Student Value Edition, loose leaf: ISBN-13: 978-0-13-337527-5. Ordered by school. Required.
- MyProgrammingLab with Pearson eText—Access Card—for Building Java Programs, Third Edition. ISBN-13: 978-0-13-337978-5. Ordered by school. Packaged with textbook as ISBN-13: 978-0-13-345102-3. Required.
- MyProgrammingLab website, http://www.myprogramminglab.com. Required.
- Practice-It! website, http://practiceit.cs.washington.edu. Required.
- Textbook companion site, http://www.buildingjavaprograms.com. Recommended.
- The Java Tutorial, Oracle website, http://docs.oracle.com/javase/tutorial. Strongly recommended.
- Stackoverflow website, http://stackoverflow.com. Strongly recommended.
- Laptop computer. Windows, Mac OS X, or Ubuntu. Required.
- USB flash memory stick. Required.
- Binder for loose-leaf textbook. Required.
- Organizer of paper: holes punched and not; Pencils (mechanical recommended).
Assessment
| Progress in work ("HW"): completing assignments. Assessed relative to each student's goal. | 20% |
| Quantity of work: taking on work that goes further and deeper. Assessed relative to the full curriculum. | 5% |
| End-Semester Assessment: Final Project. | 20% |
| Participation: positive energy and interest level during in-class work including listening to others, contributing to discussion, completing assignments, working on projects, helping others, volunteering to research questions, and practicing during class. Assessed informally. | 20% |
| Commitment to learning: Taking on what is challenging to you, getting help, communicating with the teacher, engaging with the material, and documenting work in an online notebook and in the computer code itself. Assessed informally. | 5% |
| Projects: quality, design, complexity, difficulty, originality, correctness, executability, code comments, and documentation. | 20% |
| Resourcefulness: developing self-reliance and independence by getting help in multiple ways including using textbooks, finding Internet help, looking at old code (from yourself or others), getting help from different students, forming a group of students, and asking the teacher for help. | 10% |
Late work policy and tardy policy
The teacher enters grades once per week on a weekday communicated to the students. Students get credit for late work up to that weekly deadline. Students who are late to class or leave the classroom for an extended time during class receive a maximum of 60% of the day's in-class work credit.
I encourage study groups. You may work with others (not just students) unless instructed otherwise as long as all of you contribute. It is wise to put the name of each contributing student on an assignment to avoid issues with plagiarism.
Come visit, text, or email as often as you like! – Fred
Please see the web site for other information.