CISC124 Welcome! “Introduction to Computing Science II” Fall 2018 CISC124 2/1/2019 CISC124 “Introduction to Computing Science II” Course Web Site: http://research.cs.queensu.ca/home/cisc124w Lecture notes, and other stuff will be and is posted. Today: Course Intro. and Overview. Welcome! Note Fall 2018 CISC124 - Prof. McLeod Prof. Alan McLeod
CISC124 Introduction – Who? Me: Prof. Alan McLeod mcleod@cs.queensu.ca GOO542 (office hours Tuesdays 9:30 to 12:30) TA’s: Yue Cai Taher Ghaleb Ricky Zhang Dominic Phillips Tyler Mainguy Allan Legemaate Mackenzie Furlong Mattgew Nicastro Fall 2018 CISC124 - Prof. McLeod
Contacting Me Email is the best way. Use the mcleod@cs.queensu.ca address, or alan.mcleod@queensu.ca, if you must. Please don’t email mcleod@queensu.ca. Prof. David McLeod does not want to hear from you! Use your queensu email address only. I cannot guarantee a response to non-queensu addresses. Fall 2018 CISC124 - Prof. McLeod
Grading Next week is “Week 1”. This is “Week 0”… Grading scheme 24% - three quizzes, (weeks 4, 8 and 11) 25% - five assignments, (due weeks 3, 5, 7, 9 and 12) 51% - one final exam Fall 2018 CISC124 - Prof. McLeod
Quizzes Must be written in the lab. 30 to 60 minutes. Limited. In onQ. Read and write Java code. T/F, multiple choice, short answer. Fall 2018 CISC124 - Prof. McLeod
Final Exam Three hours long. On paper – no aids. Read and write Java code. Short answer as well. Old exams in exam bank and on exam prep page: An exam prep page including an exact list of examinable topics will be provided near the end of the course. Fall 2018 CISC124 - Prof. McLeod
Assignments Not trivial! They are already posted. Electronic submission to onQ. Web site describes policy of diminishing returns for late submission. One submission per person, please! TAs will mark assignments. Fall 2018 CISC124 - Prof. McLeod
Assignment Rules Assignments are graded out of 20 – your marks and comments will be uploaded to onQ by your TA. Late submission: Your mark will be reduced by 2 marks per day late for five days, unless you can prove extenuating circumstances, such as a serious illness or a Queen’s activity. Minimum of 2 marks removed after 7pm Friday. Late assignments will not be accepted by onQ after the following Wednesday. Don’t leave your assignment to the night before!!! Fall 2018 CISC124 - Prof. McLeod
Assignment Rules, Cont. “Group Efforts”: I encourage you to discuss your difficulties with your peers, myself and your TAs. You may look at other people’s code. You cannot copy other people’s code! Submissions may be electronically and physically checked for code duplication. If you are caught with duplicated code – all parties with such code will get zero on the assignment for starters, and you may get prosecuted for a failure of academic integrity. You will not learn anything if you copy someone else's code! Fall 2018 CISC124 - Prof. McLeod
Exercises Nothing is graded or handed in. But, the exercises are designed to prepare you to do the assignments, and Some exercise topics (Console I/O and File I/O, for example) will not be taught in class. Install your IDE and you can start on Exercise 1 any time. Fall 2018 CISC124 - Prof. McLeod
Labs Get help from your TA on lecture material, exercises, assignment work, quiz prep, exam prep, etc. No lab this week or next. Fall 2018 CISC124 - Prof. McLeod
onQ Site Please Check your login – if the course does not show up for you, let me know. (If you just registered in the course it will take a day for you to be able to get into onQ.) Submit assignments to onQ Dropbox. Write quizzes in onQ. View grades. Use the forums for questions and discussion. View and/or download lecture videos. Fall 2018 CISC124 - Prof. McLeod
Aside – Attend Class Or Not?... At some point most of you will decide on whether or not to attend lectures. Consider: You will not be there to ask questions. The slides are just to keep me on track and to lead discussion. They don’t contain everything! Not all lectures get recorded (technical difficulties…). Lecture videos are not edited at all. You will not hear questions in the videos. You will not know what I’m pointing at, what code I am focused on or what I am writing on the board. You will miss some “special features” – discussions and the new segment “What’s wrong with this code?”. Fall 2018 CISC124 - Prof. McLeod
onQ Survey Please fill out a onQ quiz called “Lab Section Survey” to indicate which lab section you will attend. Not graded. This is especially important for quizzes. You must write your quiz in the lab you have indicated. And you know which TA will be grading your assignments. Fall 2018 CISC124 - Prof. McLeod
Course Web Site (public) Summary - What’s Where Course Web Site (public) Resources. Lecture topics. Lecture notes and sample code. Assignment statements and sample solutions. Exercises. Grading scheme. Non-urgent notices. onQ (login) Forums. Lecture Videos. Urgent Notices in News Forum. Assignment submission. Quizzes. Quiz and assignment grades. Assignment feedback. Fall 2018 CISC124 - Prof. McLeod
CISC124 Introduction, Cont. Resources Recommended Textbook: Fall 2018 CISC124 - Prof. McLeod
Eclipse IDE Preferred development environment: Multiplatform, open source, free. Available from www.eclipse.org See the Resources web page. Works well with JavaFX for GUI construction and JUnit testing. Fall 2018 CISC124 - Prof. McLeod
JavaFX We will learn to build GUIs with JavaFX. Swing has been effectively depreciated – replaced by this new technology. JavaFX does a great job of separating design from functionality by using separate css and fxml files See the Resources page for configuring Eclipse to use JavaFX. Fall 2018 CISC124 - Prof. McLeod
Other IDEs (What does “IDE” stand for anyways? Netbeans, for example. Others are listed or linked off the Resources page. Your TA will not (and should not) know what tool was used to aid the development and testing of your code. Fall 2018 CISC124 - Prof. McLeod
Eclipse – Normal Working View Fall 2018 CISC124 - Prof. McLeod
Scene Builder In Eclipse Fall 2018 CISC124 - Prof. McLeod
Java, Version “10” The JDK or “Java Development Kit” is available from oracle.com The JDK and Eclipse are available in Jeff lab (and many other labs, in Goodwin and WLH). Install the JDK first and then Eclipse. See the Resources page. You might also wish to download the API docs. Fall 2018 CISC124 - Prof. McLeod
Purpose of CISC124 To learn how to program in Java. To increase your programming proficiency. To learn OOP principles with a modern, object oriented programming language. To improve your programming style. To practice modular program design. To explore GUI programming. Fall 2018 CISC124 - Prof. McLeod
Why Java? Not Vendor - Specific. Platform independent. Most fundamentally sound application of OOP principles. Huge community support base. Many free, mature development tools. Once you have learned Java, you will find it easy to pick up any other OOP language (like C++ or C#). Fall 2018 CISC124 - Prof. McLeod
Compared to Other Languages In terms of web-visible activity, see the Tiobe Index: http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html Fall 2018 CISC124 - Prof. McLeod
Syllabus See the course web site – the “Lecture Topics” page. Fall 2018 CISC124 - Prof. McLeod
What You Need to Do Next Review course web site. Check onQ login. Add photo please. Fill out lab section quiz in onQ. Install Eclipse, if you want to use this IDE – see the Resources page. Start Exercise 1. This covers console I/O and will not be discussed in class. At a minimum – do Exercises 1 and 3 before starting assignment 1. Fall 2018 CISC124 - Prof. McLeod
First Example – “Hello World” in Java Let us have a quick look at Eclipse, create an empty project and add a program that displays “Hello World” to the console window. Fall 2018 CISC124 - Prof. McLeod