csc116: introduction to computer programming › courses › csc116-common › csc... · message...
TRANSCRIPT
![Page 1: CSC116: Introduction to Computer Programming › courses › csc116-common › CSC... · Message Board •The course message board (Piazza) is a great place to ask questions and discuss](https://reader030.vdocument.in/reader030/viewer/2022040215/5ed8eedf6714ca7f4768d758/html5/thumbnails/1.jpg)
CSC116: Introduction to Computing - Java
![Page 2: CSC116: Introduction to Computer Programming › courses › csc116-common › CSC... · Message Board •The course message board (Piazza) is a great place to ask questions and discuss](https://reader030.vdocument.in/reader030/viewer/2022040215/5ed8eedf6714ca7f4768d758/html5/thumbnails/2.jpg)
Intro to CSC116Course Information
• Introductions
• Website
• Syllabus
• Schedule
Computing Environment• AFS (Andrew File System)
• Linux/Unix Commands
• Helpful Tricks
Computers
First Java Program• Text Editor
• Remote Access
• Java Download
![Page 3: CSC116: Introduction to Computer Programming › courses › csc116-common › CSC... · Message Board •The course message board (Piazza) is a great place to ask questions and discuss](https://reader030.vdocument.in/reader030/viewer/2022040215/5ed8eedf6714ca7f4768d758/html5/thumbnails/3.jpg)
Instructors• Course Instructor:
– Mrs. Michelle Glatz, [email protected]
• Office Hours: Tues/Thurs 5:00 – 6:00 in DAN 200 and by appointment
• Email used to set up appointments
• Support email: [email protected]
• TAs:– Varsha Gopal, [email protected]
• Office Hour: Fridays 11am–12pm in Daniels 200
– Brenden Lech, [email protected]
• Office Hour: Wednesdays 5 – 6 pm in Daniels 200
![Page 4: CSC116: Introduction to Computer Programming › courses › csc116-common › CSC... · Message Board •The course message board (Piazza) is a great place to ask questions and discuss](https://reader030.vdocument.in/reader030/viewer/2022040215/5ed8eedf6714ca7f4768d758/html5/thumbnails/4.jpg)
Office Hours
• CSC116 Office Hours:– http://go.ncsu.edu/csc116teachingstaffofficehours
• We will use My Digital Hand during office hours to manage questions:
– http://mydigitalhand.org
– You should have received an email invite
– Please register now
![Page 5: CSC116: Introduction to Computer Programming › courses › csc116-common › CSC... · Message Board •The course message board (Piazza) is a great place to ask questions and discuss](https://reader030.vdocument.in/reader030/viewer/2022040215/5ed8eedf6714ca7f4768d758/html5/thumbnails/5.jpg)
Textbook• Building Java Programs
A Back to Basics Approach4th EditionReges and Stepp
• NCSU CSC Department, Style Guidelines
![Page 6: CSC116: Introduction to Computer Programming › courses › csc116-common › CSC... · Message Board •The course message board (Piazza) is a great place to ask questions and discuss](https://reader030.vdocument.in/reader030/viewer/2022040215/5ed8eedf6714ca7f4768d758/html5/thumbnails/6.jpg)
Course Website
Moodle login page:
http://wolfware.ncsu.edu
Moodle Course Page (direct link)
– course materials
– submit coursework
– feedback returned
– grade book
![Page 7: CSC116: Introduction to Computer Programming › courses › csc116-common › CSC... · Message Board •The course message board (Piazza) is a great place to ask questions and discuss](https://reader030.vdocument.in/reader030/viewer/2022040215/5ed8eedf6714ca7f4768d758/html5/thumbnails/7.jpg)
Moodle • Syllabus Link
– Syllabus
• Schedule Link
– Schedule
– In class exercise due before end of class
– Other lab exercises due on Sunday night
•Assignments due at 11:45 pm
![Page 8: CSC116: Introduction to Computer Programming › courses › csc116-common › CSC... · Message Board •The course message board (Piazza) is a great place to ask questions and discuss](https://reader030.vdocument.in/reader030/viewer/2022040215/5ed8eedf6714ca7f4768d758/html5/thumbnails/8.jpg)
Course Structure
• The course structure is a mixture of lecturing and practicing as we go through material.
• The idea is to reinforce the learning of new material with hands on experience using it right away.
![Page 9: CSC116: Introduction to Computer Programming › courses › csc116-common › CSC... · Message Board •The course message board (Piazza) is a great place to ask questions and discuss](https://reader030.vdocument.in/reader030/viewer/2022040215/5ed8eedf6714ca7f4768d758/html5/thumbnails/9.jpg)
Exercises• In-class: Group assignments completed in-class.
Similar to examples
• Lab: Apply new concepts. Due Weekly.
• Practice-It! Exercises: Every 2 chapters turn in list of problems solved as Homework (screenshot pdf: cntrl-P, capture your userid)– https://practiceit.cs.washington.edu/
– create an account
– choose a problem from list
– Type a solution and submit it.
– The system will test it and tell you whether your solution is correct.
![Page 10: CSC116: Introduction to Computer Programming › courses › csc116-common › CSC... · Message Board •The course message board (Piazza) is a great place to ask questions and discuss](https://reader030.vdocument.in/reader030/viewer/2022040215/5ed8eedf6714ca7f4768d758/html5/thumbnails/10.jpg)
Programming Assignments
• There will be 6 programming projects in addition to the Lecture Exercises.
• MUST BE DONE INDIVIDUALLY!!
![Page 11: CSC116: Introduction to Computer Programming › courses › csc116-common › CSC... · Message Board •The course message board (Piazza) is a great place to ask questions and discuss](https://reader030.vdocument.in/reader030/viewer/2022040215/5ed8eedf6714ca7f4768d758/html5/thumbnails/11.jpg)
Academic Integrity
• Do your own work (projects)
– Don’t copy from outside resources (don’t google it!)
– Don’t look at other student’s code
– Don’t show your code to another student
• See syllabus for violation penalties
![Page 12: CSC116: Introduction to Computer Programming › courses › csc116-common › CSC... · Message Board •The course message board (Piazza) is a great place to ask questions and discuss](https://reader030.vdocument.in/reader030/viewer/2022040215/5ed8eedf6714ca7f4768d758/html5/thumbnails/12.jpg)
Exams
• Two midterm exams
• One final exam
• Check the course schedule on our website for dates.
• Paper exams, closed book, closed notes, closed computer.
![Page 13: CSC116: Introduction to Computer Programming › courses › csc116-common › CSC... · Message Board •The course message board (Piazza) is a great place to ask questions and discuss](https://reader030.vdocument.in/reader030/viewer/2022040215/5ed8eedf6714ca7f4768d758/html5/thumbnails/13.jpg)
Message Board• The course message board (Piazza) is a
great place to ask questions and discuss topics with the Instructor, TAs, and all the other students in class– piazza link
• The only rule is that you may not publicly post any code that directly comes from an assignment, but example code is permitted
• Make the question private if need to post your code.
• Post to Group 007 if specific to our section
![Page 14: CSC116: Introduction to Computer Programming › courses › csc116-common › CSC... · Message Board •The course message board (Piazza) is a great place to ask questions and discuss](https://reader030.vdocument.in/reader030/viewer/2022040215/5ed8eedf6714ca7f4768d758/html5/thumbnails/14.jpg)
Grading• Minimum Grade Requirement
➢ Need a 73 to advance to CSC216➢To earn a C- or higher you must:
•have an exam average of at least 60AND
•have a project average of at least 60Activity Weight
Exercises:(.2 * In-class avg + .6 * Weekly Exercise avg + .2 * Practice-it! avg)
14
Projects 30
Comprehensive Exercise 2
Exam 1 17
Exam 2 17
Final Exam 20
![Page 15: CSC116: Introduction to Computer Programming › courses › csc116-common › CSC... · Message Board •The course message board (Piazza) is a great place to ask questions and discuss](https://reader030.vdocument.in/reader030/viewer/2022040215/5ed8eedf6714ca7f4768d758/html5/thumbnails/15.jpg)
Regrade Requests
• The TA’s will send out an email to inform you when they have completed grading of each assignment.
• To request a regrade (within one week):➢ Send an email to the Teaching Staff support email
with Regrade Request as the subject line.
➢ Include the name of the assignment and why you think it should be regraded.
![Page 16: CSC116: Introduction to Computer Programming › courses › csc116-common › CSC... · Message Board •The course message board (Piazza) is a great place to ask questions and discuss](https://reader030.vdocument.in/reader030/viewer/2022040215/5ed8eedf6714ca7f4768d758/html5/thumbnails/16.jpg)
Computing Environment
• Review of E115 topics that will be important for the course.
• The materials come from the E115 Textbook
(http://ncsu.orgsync.com/org/e115/)
![Page 17: CSC116: Introduction to Computer Programming › courses › csc116-common › CSC... · Message Board •The course message board (Piazza) is a great place to ask questions and discuss](https://reader030.vdocument.in/reader030/viewer/2022040215/5ed8eedf6714ca7f4768d758/html5/thumbnails/17.jpg)
AFS
• AFS: Andrew File System
• Distributed file system used to organize files, which is used at NC State
• Personal home directory –/afs/unity.ncsu.edu/users/y/yourhome /afs/unity.ncsu.edu/users/m/mlglatz
![Page 18: CSC116: Introduction to Computer Programming › courses › csc116-common › CSC... · Message Board •The course message board (Piazza) is a great place to ask questions and discuss](https://reader030.vdocument.in/reader030/viewer/2022040215/5ed8eedf6714ca7f4768d758/html5/thumbnails/18.jpg)
Handy UNIX Commands• cd
• pwd
• ls
• mkdir
• cp
• mv
• rm
• rmdir
![Page 19: CSC116: Introduction to Computer Programming › courses › csc116-common › CSC... · Message Board •The course message board (Piazza) is a great place to ask questions and discuss](https://reader030.vdocument.in/reader030/viewer/2022040215/5ed8eedf6714ca7f4768d758/html5/thumbnails/19.jpg)
Traverse Directory Tree & Find Current Location
• cd: change directory
• pwd: print working directory
• Log on, open a terminal window, and try entering these command at the prompt: – cd ..
– pwd
– pwd
– cd username
– pwd
– cd ../../..
– pwd
– cd ( or cd ~ )
– pwd
![Page 20: CSC116: Introduction to Computer Programming › courses › csc116-common › CSC... · Message Board •The course message board (Piazza) is a great place to ask questions and discuss](https://reader030.vdocument.in/reader030/viewer/2022040215/5ed8eedf6714ca7f4768d758/html5/thumbnails/20.jpg)
What’s in a directory?
• ls: list contents of directory
• Try it:
– cd /afs/eos.ncsu.edu/courses/csc/
– ls
– ls -l
– cd
– ls -a
– ls –al
![Page 21: CSC116: Introduction to Computer Programming › courses › csc116-common › CSC... · Message Board •The course message board (Piazza) is a great place to ask questions and discuss](https://reader030.vdocument.in/reader030/viewer/2022040215/5ed8eedf6714ca7f4768d758/html5/thumbnails/21.jpg)
Organize your CSC116 Files
• mkdir – make directory
• Try it: – cd
– mkdir csc116
– cd csc116
– mkdir exercises
– mkdir projects
– cd exercises
– mkdir Lab1
– cd Lab1
![Page 22: CSC116: Introduction to Computer Programming › courses › csc116-common › CSC... · Message Board •The course message board (Piazza) is a great place to ask questions and discuss](https://reader030.vdocument.in/reader030/viewer/2022040215/5ed8eedf6714ca7f4768d758/html5/thumbnails/22.jpg)
Helpful Tricks/Shortcuts
• Up/Down arrows – Recall previous commands
• Tab completion – Completes commands/file names
• Ctrl + C – to regain command prompt if system is “hung up”
![Page 23: CSC116: Introduction to Computer Programming › courses › csc116-common › CSC... · Message Board •The course message board (Piazza) is a great place to ask questions and discuss](https://reader030.vdocument.in/reader030/viewer/2022040215/5ed8eedf6714ca7f4768d758/html5/thumbnails/23.jpg)
What you will learn in CSC116…
• Problem solving – the purpose of writing a program is to solve a problem
• Java programming language
• Concepts of Object-Oriented Programming (OOP) – encapsulated collection of data variables and methods
• Documentation techniques
• Testing methods
![Page 24: CSC116: Introduction to Computer Programming › courses › csc116-common › CSC... · Message Board •The course message board (Piazza) is a great place to ask questions and discuss](https://reader030.vdocument.in/reader030/viewer/2022040215/5ed8eedf6714ca7f4768d758/html5/thumbnails/24.jpg)
Computers
• Hardware
• Software
• Number Systems– Base 10 (decimal)
– Base 2 (binary)
• Bits and Bytes
• Programming
![Page 25: CSC116: Introduction to Computer Programming › courses › csc116-common › CSC... · Message Board •The course message board (Piazza) is a great place to ask questions and discuss](https://reader030.vdocument.in/reader030/viewer/2022040215/5ed8eedf6714ca7f4768d758/html5/thumbnails/25.jpg)
Hardware
• The physical components that make up a computer:
– CPU (Central Processing Unit)
•Executes program instructions (brains)
– Memory (RAM)
•Used to store current program and data
– Hard Disk
• Permanent data storage
![Page 26: CSC116: Introduction to Computer Programming › courses › csc116-common › CSC... · Message Board •The course message board (Piazza) is a great place to ask questions and discuss](https://reader030.vdocument.in/reader030/viewer/2022040215/5ed8eedf6714ca7f4768d758/html5/thumbnails/26.jpg)
Software
• Computer programs
• Operating System
• Bridge between hardware, programs, user
• Allocates memory and send instructions to CPU
• Applications
• Programs run within the operating system
![Page 27: CSC116: Introduction to Computer Programming › courses › csc116-common › CSC... · Message Board •The course message board (Piazza) is a great place to ask questions and discuss](https://reader030.vdocument.in/reader030/viewer/2022040215/5ed8eedf6714ca7f4768d758/html5/thumbnails/27.jpg)
Binary and Decimal
• Typically, we (humans) use the base-10 (decimal) notation.
– Uses the digits 0 through 9
• All information is stored on a computer as binary numbers– 1’s and 0’s (base 2)
– 10 (1 * 21 + 0 * 20) = 2 base-10
– 11 (1 * 21 + 1 * 20) = 3 base-10
– 100 (1 * 22 + 0 * 21 + 0 * 20) = 4 base-10
![Page 28: CSC116: Introduction to Computer Programming › courses › csc116-common › CSC... · Message Board •The course message board (Piazza) is a great place to ask questions and discuss](https://reader030.vdocument.in/reader030/viewer/2022040215/5ed8eedf6714ca7f4768d758/html5/thumbnails/28.jpg)
Binary and Decimal
• Binary (Base-2)
• Decimal (Base-10)
24 23 22 21 20
16 8 4 2 1
104 103 102 101 100
10,000 1,000 100 10 1
![Page 29: CSC116: Introduction to Computer Programming › courses › csc116-common › CSC... · Message Board •The course message board (Piazza) is a great place to ask questions and discuss](https://reader030.vdocument.in/reader030/viewer/2022040215/5ed8eedf6714ca7f4768d758/html5/thumbnails/29.jpg)
Convert between Decimal and Binary
• 20 Decimal to Binary (20 – 16 = 4, 4 – 4 = 0)
• 1 1 1 0 0 Binary to Decimal
16 + 8 + 4 + 0 + 0 = 28
24 23 22 21 20
1 1 1 0 0
16 8 4 0 0
![Page 30: CSC116: Introduction to Computer Programming › courses › csc116-common › CSC... · Message Board •The course message board (Piazza) is a great place to ask questions and discuss](https://reader030.vdocument.in/reader030/viewer/2022040215/5ed8eedf6714ca7f4768d758/html5/thumbnails/30.jpg)
Bits and Bytes
• Bit – Binary Digit
• Byte – 8 Bits
• Kilobyte (KB) 210 – 1024 bytes
• Megabyte (MB) 220 – 1,048,576 bytes
• Gigabyte (GB) 230 – 1,073,741,824 bytes
![Page 31: CSC116: Introduction to Computer Programming › courses › csc116-common › CSC... · Message Board •The course message board (Piazza) is a great place to ask questions and discuss](https://reader030.vdocument.in/reader030/viewer/2022040215/5ed8eedf6714ca7f4768d758/html5/thumbnails/31.jpg)
Programming Languages• We can write a program using only 0s and 1s, but that
has many disadvantages
– Hard to look at and understand
– Very tedious!
• We use a programming language instead - we write code in English instead of 0s and 1s, which is much easier to read and understand
• The code we write is interpreted by a program called a compiler, which translates our English into 0s and 1s for the processor to understand
• Java is the programming language we will use in this course
![Page 32: CSC116: Introduction to Computer Programming › courses › csc116-common › CSC... · Message Board •The course message board (Piazza) is a great place to ask questions and discuss](https://reader030.vdocument.in/reader030/viewer/2022040215/5ed8eedf6714ca7f4768d758/html5/thumbnails/32.jpg)
Computer Programming
• Algorithm - A step‐by-step description of how to accomplish a task.
• Program – A list of instructions to be carried out by a computer.
• Computer Programming – the art of designing and writing a group of instructions that the computer’s processor executes.
![Page 33: CSC116: Introduction to Computer Programming › courses › csc116-common › CSC... · Message Board •The course message board (Piazza) is a great place to ask questions and discuss](https://reader030.vdocument.in/reader030/viewer/2022040215/5ed8eedf6714ca7f4768d758/html5/thumbnails/33.jpg)
Computing Environments
• Use Classroom/campus linux desktop computers– During class, used for lecture demos
– Ensures that programs work on linux
• Connect Remotely to campus linux computers– Work from home
– Need wifi connection
– Ensures that programs work on linux
• Work natively on your laptop– Efficiently work at home
– No need for wifi
– Must transfer final files to afs and run using one of the other
methods to ensure programs work on linux.
![Page 34: CSC116: Introduction to Computer Programming › courses › csc116-common › CSC... · Message Board •The course message board (Piazza) is a great place to ask questions and discuss](https://reader030.vdocument.in/reader030/viewer/2022040215/5ed8eedf6714ca7f4768d758/html5/thumbnails/34.jpg)
Remote Access Windows: • https://www.itecs.ncsu.edu/software/catalog/
• Run X-Win32 and then run PuTTY.
• X-Win32 is a X11 Windows System that enables you to display a Unix or Linux application with a graphical user interface (GUI) on your Windows computer.
• PuTTY is a SSH client that gives you terminal access to run commands and command-line applications (make sure to enable X11 forwarding).
• Click on application to download
• Brings you to software download page
• There is a documentation/installation link for each application.
Macintosh:• Download and Install XQuartz: https://www.xquartz.org/
• Run XQuartz then open terminal window
• Application → Utilities → Terminal
• ssh -X -Y [email protected]
![Page 35: CSC116: Introduction to Computer Programming › courses › csc116-common › CSC... · Message Board •The course message board (Piazza) is a great place to ask questions and discuss](https://reader030.vdocument.in/reader030/viewer/2022040215/5ed8eedf6714ca7f4768d758/html5/thumbnails/35.jpg)
File TransferTransfer Files between Your Laptop and AFS
• https://www.itecs.ncsu.edu/software/catalog/• For the desired application:
– Click on supplication name
• Brings you to software download page
• Click on desired download
Windows:
• Use FileZilla and/or WinSCP.
Macintosh:
• Use FileZilla
![Page 36: CSC116: Introduction to Computer Programming › courses › csc116-common › CSC... · Message Board •The course message board (Piazza) is a great place to ask questions and discuss](https://reader030.vdocument.in/reader030/viewer/2022040215/5ed8eedf6714ca7f4768d758/html5/thumbnails/36.jpg)
Software• You may download the Java 2 Standard Edition (J2SE)
Software Development Kit (JDK) from http://www.oracle.com/technetwork/java/javase/downloads/index.html
– Download JDK version 8u191, DO NOT download version 11.
• Text Editor• Campus Linux Computers
• gedit (gedit filename & - opens in new window)
• Mac• TextWrangler, Aquamacs
• Windows• Notepad++
![Page 37: CSC116: Introduction to Computer Programming › courses › csc116-common › CSC... · Message Board •The course message board (Piazza) is a great place to ask questions and discuss](https://reader030.vdocument.in/reader030/viewer/2022040215/5ed8eedf6714ca7f4768d758/html5/thumbnails/37.jpg)
Configure Editor• Configure to convert tabs to 4 spaces• https://pages.github.ncsu.edu/engr-csc116-staff/CSC116-
Materials/course-resources/style-guidelines-resources/text-editor-spaces.html
– TextWrangler : Preferences->Editor Defaults->Auto-expand tabsSet tabs to 4 spacesrestart TextWrangler for changes to take place
– Notepad++ : Settings->Preference->LanguageSet Tab size to 4Check Replace by space box
– Gedit: gedit icon in the application bar (top of screen)Go to Preferences. Insert spaces instead of tabs
![Page 38: CSC116: Introduction to Computer Programming › courses › csc116-common › CSC... · Message Board •The course message board (Piazza) is a great place to ask questions and discuss](https://reader030.vdocument.in/reader030/viewer/2022040215/5ed8eedf6714ca7f4768d758/html5/thumbnails/38.jpg)
Java Download for Laptop
• The next set of slides show the java download and set up process.
• The current version on the download site is Version 11.– We will be using version 8
• The java version used for demonstration is version 8 update 152 (current version is 191)
• http://www.oracle.com/technetwork/java/javase/downloads/index.html
![Page 39: CSC116: Introduction to Computer Programming › courses › csc116-common › CSC... · Message Board •The course message board (Piazza) is a great place to ask questions and discuss](https://reader030.vdocument.in/reader030/viewer/2022040215/5ed8eedf6714ca7f4768d758/html5/thumbnails/39.jpg)
Download JavaCurrent Download is Version 11, don’t download this one.
![Page 40: CSC116: Introduction to Computer Programming › courses › csc116-common › CSC... · Message Board •The course message board (Piazza) is a great place to ask questions and discuss](https://reader030.vdocument.in/reader030/viewer/2022040215/5ed8eedf6714ca7f4768d758/html5/thumbnails/40.jpg)
Download JavaPage down to the following Version 8 downloads. Click
on the JDK download
![Page 41: CSC116: Introduction to Computer Programming › courses › csc116-common › CSC... · Message Board •The course message board (Piazza) is a great place to ask questions and discuss](https://reader030.vdocument.in/reader030/viewer/2022040215/5ed8eedf6714ca7f4768d758/html5/thumbnails/41.jpg)
Accept Agreement
![Page 42: CSC116: Introduction to Computer Programming › courses › csc116-common › CSC... · Message Board •The course message board (Piazza) is a great place to ask questions and discuss](https://reader030.vdocument.in/reader030/viewer/2022040215/5ed8eedf6714ca7f4768d758/html5/thumbnails/42.jpg)
Installation• Save the file to the desktop and run it• Install to default location
The installation screen should read (don't change it):
Install to:C:\Program Files\Java\jdk1.8.0_152\
![Page 43: CSC116: Introduction to Computer Programming › courses › csc116-common › CSC... · Message Board •The course message board (Piazza) is a great place to ask questions and discuss](https://reader030.vdocument.in/reader030/viewer/2022040215/5ed8eedf6714ca7f4768d758/html5/thumbnails/43.jpg)
Installation
![Page 44: CSC116: Introduction to Computer Programming › courses › csc116-common › CSC... · Message Board •The course message board (Piazza) is a great place to ask questions and discuss](https://reader030.vdocument.in/reader030/viewer/2022040215/5ed8eedf6714ca7f4768d758/html5/thumbnails/44.jpg)
Install Directory
![Page 45: CSC116: Introduction to Computer Programming › courses › csc116-common › CSC... · Message Board •The course message board (Piazza) is a great place to ask questions and discuss](https://reader030.vdocument.in/reader030/viewer/2022040215/5ed8eedf6714ca7f4768d758/html5/thumbnails/45.jpg)
Setting the Path – Windows• Once the installer is finished, you must set your computer's path
before Java will work correctly – FOR WINDOWS ONLY
➢Go to the Control Panel and double-click System
➢ Select the Advanced tab
➢Click on the Environment Variables button
➢ Look under System Variables for "Path"Click on "Path" and then click edit
➢Add the following to the end of the Path:
;C:\Program Files\Java\jdk1.8.0_152\bin
• Click OK.
![Page 46: CSC116: Introduction to Computer Programming › courses › csc116-common › CSC... · Message Board •The course message board (Piazza) is a great place to ask questions and discuss](https://reader030.vdocument.in/reader030/viewer/2022040215/5ed8eedf6714ca7f4768d758/html5/thumbnails/46.jpg)
Setting CLASSPATH - Windows
• Look to see if there is a variable named CLASSPATH
• If there is not, then Click the "New" button.
➢ For the variable name, type:
CLASSPATH
➢ For the value, type: .; (that period semicolon)
➢Click OK. Exit out of all the open windows
![Page 47: CSC116: Introduction to Computer Programming › courses › csc116-common › CSC... · Message Board •The course message board (Piazza) is a great place to ask questions and discuss](https://reader030.vdocument.in/reader030/viewer/2022040215/5ed8eedf6714ca7f4768d758/html5/thumbnails/47.jpg)
Installed Correctly?• Open up a command prompt.
– On Windows:
➢ Open Command Prompt
- On MAC OSX:
➢ Open the Applications folder,
open the Utilities folder, then open the Terminal application.
• Type java and hit enter
➢ "command not found“ means java is not installed correctly
➢ list of options for running java means installed ok
• Type java -version and hit enter
➢ It should list version you installed (e.g. 1.8.0_152)
![Page 48: CSC116: Introduction to Computer Programming › courses › csc116-common › CSC... · Message Board •The course message board (Piazza) is a great place to ask questions and discuss](https://reader030.vdocument.in/reader030/viewer/2022040215/5ed8eedf6714ca7f4768d758/html5/thumbnails/48.jpg)
Write Compile Execute • A human writes Java code, known as source code (.java file)
– gedit HelloWorld.java &
• The Java compiler converts the source code into machine code or byte code (.class file)
– javac HelloWorld.java
• The computer has a Java Virtual Machine (JVM), which translates the byte code into instructions that the specific computer’s processor can understand.
– java HelloWorld
• A .class file can be used on any computer that has a Virtual Machine, no matter what platform the class file was created on (platform independence)
• Output – messages printed to the screen
![Page 49: CSC116: Introduction to Computer Programming › courses › csc116-common › CSC... · Message Board •The course message board (Piazza) is a great place to ask questions and discuss](https://reader030.vdocument.in/reader030/viewer/2022040215/5ed8eedf6714ca7f4768d758/html5/thumbnails/49.jpg)
Classic First Program• Write a program that prints the text “Hello, World!” to the
screen
public class HelloWorld {
public static void main(String[ ] args) {
System.out.println(“Hello, World!”);
}
}
RULE:
The name you give your class MUST be the same name you give your file. Thus, the above program must be saved in a file called HelloWorld.java
![Page 50: CSC116: Introduction to Computer Programming › courses › csc116-common › CSC... · Message Board •The course message board (Piazza) is a great place to ask questions and discuss](https://reader030.vdocument.in/reader030/viewer/2022040215/5ed8eedf6714ca7f4768d758/html5/thumbnails/50.jpg)
In-Class Assignment• Go to our Moodle page and work on the
HelloWorld.java assignment:/**
* This is an example class that illustrates printing a message to the screen
*
* @author YOUR NAME
*/
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello World! My name is [put your name here].");System.out.println("I [am new to programming, have done some Java/C/etc. programming].");
System.out.println("I am a [freshman, sophomore, junior, senior] in the [department name] department.");
System.out.println("At home, I use a [pc, mac, etc] with the [Windows 7/8/10, OSX, Linux, etc] operating system.");
}
}