Java程序辅导

C C++ Java Python Processing编程在线培训 程序编写 软件开发 视频讲解

客服在线QQ:2653320439 微信:ittutor Email:itutor@qq.com
wx: cjtutor
QQ: 2653320439
CSCI455: Introduction to 
Programming System Design
Claire Bono
bono@usc.edu
Spring 2022
http://bytes.usc.edu/cs455/
455 Intro [Bono] 1
Today’s topics
• Course overview and logistics
• Academic integrity
• Java naming conventions (time permitting)
455 Intro [Bono] 2
Announcements
• For initial announcements see course website:
http://bytes.usc.edu/cs455/
(after that course announcements will be on piazza)
• Please put exam dates on your calendar.
• Office hours this week: 
– Tu and Th after lecture on the same zoom meeting
– also, Tu and Th 4 – 4:30 (zoom code will be on 
piazza)
– Ben (head TA) Wed 5 - 6
455 Intro [Bono] 3
Announcements (cont.)
To Do after lecture:
• if you are not officially enrolled yet, or have no 
programming experience please see me after class 
or zoom office hours today
• non-DEN students: look out for email from DEN 
about how to get on DEN d2l.
• activate your piazza account (if you already 
registered for CS 455, you got an email invitation)
• activate your pollEverywhere account and log in 
on your browser
• get textbook and start readings for this week
455 Intro [Bono] 4
What's going on these days…?
• The Covid situation is still evolving.  We will all need to have  … 
– empathy / understanding
– flexibility / adaptability
– resilience
• Some specifics: 
– some things may change if what we are doing isn't working
– we are doing what we can to accommodate different time zones (lab 
times, exam times, office hour times) for those who can't make it in 
person
– (after week 2) in-person lecture attendance is enouraged but not 
required (e.g., you have symptoms)
– (after week 2) the labs are mostly in person (does not apply to DEN 
students)
– do not attend classes if you have Covid symptoms or have to quarantine 
– if you have a special circumstance (e.g., time zone, connectivity) that 
makes any part of the course extra difficult, please discuss your 
situation with me (email, office hours)
455 Intro [Bono] 5
Where to find course materials
• Course web page: http://bytes.usc.edu/cs455/
• DEN d2l course management system for
– zoom lecture link
– videos of lectures
– grades
– links to Vocareum assignments
• Piazza for 
– announcements
– discussion boards
• Use this to ask (and answer) each other / us questions about course 
material, assignments – not email.
• Vocareum for
– assignment/lab/lecture code
– completing and submitting assignments
– (initial access to an assignment has to go through d2l)
455 Intro [Bono] 6
CS 455 Syllabus
• we'll go over highlights today, however,
syllabus is required reading
• CS 455 goals
– learn scalable development techniques
– programming in an OO language (Java)
– programming with linked lists/dynamic data in C++
– using Linux (Unix) environment
– learn some data structures and algorithm analysis
455 Intro [Bono] 7
Prerequisites
• You should have a working knowledge of the 
following ideas:
– variables
– assignment statements and expressions
– if statements
– loops
– functions with parameters (calling and writing)
• No prev experience?  See me.
455 Intro [Bono] 8
How to succeed in CS 455
• Have a “growth mindset”
– Everyone can succeed!
… but you need to put in the effort.
• How we facilitate:
• Interactive lectures
• Lecture slides
• Supervised Labs
• Sample Exams
• Interactive exercises in readings
• Programming Assignments
• Office hours
• Piazza forum
455 Intro [Bono] 9
Textbook
• required textbook for Java:
Big Java, 7th ed., by Cay Horstmann, Wiley (e-book 
rental version: ~$39 – see announcements on web 
page)
– do readings before lecture
– sidebar features
– interactive exercises
• for C++ we'll use web-based material
455 Intro [Bono] 10
Computing environment
• Vocareum cloud-based environment:
• For each assgt, on Vocareum:
– Get code: starter-files available there
– Develop code: has editor, compile/run on command line (linux
shell)
– Submit code there
– code is graded on Vocareum
• If you install your own local IDE make sure it's using 
version 1.8 (8.0) of Java compiler, run-time system, and 
API.
• Documentation section of course website has info about 
using a local environment: local javac/java, IntelliJ, or 
Eclipse, as well as some tutorials and command summaries.
455 Intro [Bono] 11
Coursework
• Readings and videos
• In-class work (5%)
– answer questions in classroom polls (can by done asynchronously)
– solve problems in pairs
• Exams (55%)
– MT 1 (10%)
– MT 2 (20%)
– Final  (25%)
• Programming assignments (30%)
– 4 - 6 total (30% total)
– important learn-by-doing for development techniques
• Labs (10%)…
455 Intro [Bono] 12
See week-by-week 
schedule for exam dates.
Labs
• 2 hour lab session – not optional
• allowed to work on it ahead of time, but work is due in 
your lab section (contact me if your ongoing situation 
does not permit this)
• pair-programming (pairs start second week)
• only 80% of lab points count for grade
• DEN students:
– complete on your own time (due Sun night)
– generally no partners
– get lab assistant help by DEN office hours (on Zoom) / 
piazza / email
• First week only: everyone can submit it by Sunday 
night; but please attend lab to work on it
455 Intro [Bono] 13
How lab attendance will work this 
semester
(Applies to non-DEN students)
• If you can't make it to the US because of visa issues or 
are otherwised approved for remote participation, you 
can attend 7 – 9pm Thur lab on zoom.
(also please send Claire email so I know who you are)
• If you have Covid symptoms or have to quarantine, do 
not come to class, and if you have to miss lab, let your 
lab TAs know, and they'll let you know what to do.
• Otherwise, we look forward to seeing you in your 
scheduled lab session (including on-campus students 
enrolled in Th 7 – 9pm).
455 Intro [Bono] 14
Grading
• Fixed-scale grading
– Not in competition with other students.
– Everyone can succeed!
• Detailed grading / late policies on the course 
syllabus
455 Intro [Bono] 15
Academic integrity policy
• See Course Syllabus for details.
455 Intro [Bono] 16
Some reasons not to cheat
• Dishonest 
• USC reputation 
• Real world consequences
• Losing learning opportunity
• Academic consequences
455 Intro [Bono] 17
Java naming conventions 
// CarDriver.java
public class CarDriver {
public static final double MILES_PER_GALLON = 35.6;
public static void main(String[] args) {
double distanceTraveled = 10;
double gasUsed =
distanceTraveled/MILES_PER_GALLON; 
System.out.println(gasUsed)
}
}
455 Intro [Bono] 18