COMP 110 - bYTEBoss

Download Report

Transcript COMP 110 - bYTEBoss

COMP 110
Introduction to Programming
Jingdan Zhang
June 20, 2007
MTWRF 9:45-11:15 am
Sitterson Hall 014
What Is Programming?
• Crafting a set of instructions to solve a
problem
• Must be clear and well-structured, analogy:
cooking recipes
– Ingredients (potatoes, banana, tofu, milk)
– Procedures (cut, fry, stew, mix)
– Results (potato banana ice cream)
• Who “reads” computer programs?
– The physical computer
– Humans (yourself, your coworkers, your instructor)
– Another computer program (Zen)
• You don’t need a computer to do
programming, pen and paper will do
About COMP 110
• Learn how to develop algorithms
• Learn the basic components of computer
programming
– can be applied to any programming language
(Java, C++, etc.)
• Is COMP 110 right for you?
– Require basic computer skills
– no programming knowledge assumed
– Math, algebra
Is COMP 110 Right for You?
• Do you have web programming experience
with Java, perl, php?
• Experience with “classes” in C++?
• Some experience with Matlab, Mathematica?
• Do you know what is meant by Object,
method, member variable, recursion, array,
sorting algorithms?
If yes to any, you may be ready for COMP401 instead.
About Me
• UNC grad student, will start 5th year
• Research interests
- computer vision, machine learning, graphics
• http://www.cs.unc.edu/~zhangjd
• [email protected]
• Sitterson 111, 919-538-4661
About You
• Introduce yourself to the class
- name
- year
- major
- something special about you …
Course Web Page
• http://www.cs.unc.edu/~zhangjd/comp11
0/index.html
• UNC Blackboard System
- http://blackboard.unc.edu
- Course Documents
- Assignments
- Checking Grades
Weekly Schedule
• Lecture
– MTWRF, 9:45-11:15 am, Sitterson SN 014
– Please bring your notebook computer
• Office Hours
– Before class: MTWRF 9:00-9:45am, Sitterson
SN 014
– After class: MTWR 2:00-3:00PM
Lecture Format
• Review previous material
– questions
• Present new material
– Notebook computers closed please
• In-class exercises and programming
– use notebook computer
– work individually or in groups
• Lecture notes are posted, but may be
modified shortly after lecture. .
Textbook
Required
Java Programming: From Problem
Analysis to Program Design
D. Malik
Either the 2nd or the 3th edition can be used.
The 2nd edition: ISBN 0-619-06497-8
The 3rd edition: ISBN 1-4239-0135-5
Software
• Java SDK (JDK)
• jGRASP
– Please install them on your laptop
• See the homework 0
• We’ll do a tour later...
Grades
• Programming Assignments 45 %
– both programs and book
•
•
•
•
•
Quizzes(3)
Midterm Exam
Final Exam
Class Participation
Challenge problems
10 %
15 %
25 %
5%
extra 20%
Assignments
• Homework assignments from textbook
– practice for exams
• Programming assignments
– May need to demonstrate the executable code by
yourself
– budget 8-10 hours per program
• design, code, debugging
– start early!
• Deadline
– For assignments needed to turn in, the deadlines
are due at 11:59pm on the due date
– For assignments needed to demonstrate, the
deadlines are before the demo time.
Submitting Assignments
• All programming assignments will be submitted through
Blackboard
– Include the demo codes
– I still can not access blackboard, more details about
in next lecture
• All assignments must include the honor code pledge
– I need signed pledge on paper.
– Make it the first thing you put onto any assignment.
• http://cs.unc.edu/~Zhangjd/comp110/assignme
nts.html
Collaborating
• Don’t cheat!
– You can
• talk to each other about the lecture topics
• talk about assignment requirements
• work in groups during recitation on recitation
assignments only
– You should
• do your own assignments -- design and code
– You should never
• talk to each other about assignment solutions
• share code -- it is easy to detect and we will
prosecute
• Pledge Form
Late Policy
• Late submission
- if less than 24hrs : 25% off
- if less than 48hrs : 50% off
- not accepted after 48 hrs
Challenge problems
• Beyond the the comp110 requirement
• To give motivations and provide more insight
in programming.
• To encourage more interaction among us.
• Any progress on these questions will be
credited, maximum 20%.
• Welcome teamwork, the gained score will be
evenly distributed to team member
• The problems will be posted in the next week.
– Please send in your problems, let us solve it
together.
Before Coding
• Before you open jGRASP and start coding
–
–
–
–
read the assignment
think about what the assignment is asking for
review lectures and examples on the topic
write (yes, on paper) your plan for completing the
assignment (i.e., your algorithm)
• talk to/email me if you’re having trouble at this point
Backup Your Work!
• Backup your work frequently!
• You will lose something at some point
– you might have to learn the hard way
• Use your AFS(Andrew File System) space
– use of AFS space is not required, but is recommended
– you can install the AFS Client to your notebook
Help!
• For help on general computer problems,
including getting AFS enabled on your
laptop or at home
http://help.unc.edu
962-HELP
• For help on the course related problems,
ask the instructor
Sending Email to me
• Put COMP 110 in subject line
• For example:
– COMP 110, I’m lost
– COMP 110, This course is too easy
Homework 0
• Install JDK & jGRASP
– Sign the paper pledge form
– Answer the answers in the survey
– Install Download Java SDK and jGrasp
– Read jGrasp tutorial and run sample Java
program
• Due tomorrow
– If you cannot install or run JDK or jGrasp,
bring your notebook computer tomorrow to
the class.
Introduction of jGrasp
Next Class
• Overview of computers and programming
languages
• Turn in pledge form and the survey