IT 313 -- Announcements
- Mar 18. The dropbox for the Takehome Final Exam is posted on D2L. Reminder: if you have not already done so, please email me to let me know that you downloaded the Takehome Final.
- Mar 18. For the Takehome Final Exam, just to clarify:
Part A: Do all problems 1 through 10.
Part B: Write 1 of 3 short essays.
Part C: Do 1 or 2 problems.
Part D: Do all problems 1 through 4. - Mar 17. Here is the zipfile
takehome-final.zip, which
contains the TakehomeFinal materials. The contents.txt
file contains is an overview of the zipfile contents. The final-exam.txt file
contains the questions and problems for the exam.
For Part B, do only 1 of 3 essays. For Part C, do only 1 out of 2 problems.
You should submit two items: a text file or MS Word file, with the answers to Part A and an IntelliJ project named FinalExamSmith (replace Smith by your last name) that contains the answers to parts B, C, and D).
The Takehome Exam closes on Sunday night, Mar 22, at 11:59pm. - Mar 8. There will be no on-campus final exams next week, due to the Corona virus. Instead of an in-class final exam, we will have a takehome exam, which will be posted on D2L, and which you will submit on D2L. This takehome exam will open on Tuesday, Mar 17, and will close on Sunday night, Mar 22.
- Mar 8. Our IT 313 class will meet as usual today, although there will not be a missed attendence penalty if you choose not to attend. We will review for the final exam.
- Mar 8. For the final exam, you are allowed to bring copies of your submissions for projects 4, 5, 6a, 6b, 7, and 8.
- Mar 8. Reminder: For Project 6a, both the LibraryManager and the
LibraryItem classes
must implement the Serializable interface:
public class LibraryItem implements Comparable<LibraryItem>, Serializable { // body of class goes here. } public class LibraryManager implements Iterable<LibraryItem>, Serializable { // body of class goes here. }
As you know, the Serializable interface does not require any methods. - Mar 6. Please take Quiz 7 by Sunday night, Mar 8. Quiz 8 is posted, which will close on Sunday, Mar 15.
- Mar 5. To help you out for Project 6b, see Review Exercise 1 in the Feb 5 Notes for the definition of the getCheckedOut method of the LibraryManager class.
- Mar 4. Submit your online instructor evaluation by Saturday, Mar 14.
- Mar 3. For Project 6b, name your traditional test file Test3.java. If you choose to submit it, name your unit test file Test4.java. The unit test file Test4.java for Project 6b is for extra credit. With the names Test3.java and Test4.java, you can include your Test1.java and Test2.java files from Project 6a with no naming conflicts.
- Mar 3. The due date of Project 6b has been changed to Mar 9. If you fix any errors in the Project 6a classes, including Test2,
your score can increase for Project 6a. A 15% resubmit penalty will only be applied to the score increase. For example, if your
original score for Project 6a is 60 and your score for the resubmission is 95, the score the Project 6a will increase to
60 + (95 - 60) * 0.85 = 89.75 - Mar 2. The definition of the iterator method for the
LibraryManager class:
public Iterable<LibraryItem> iterator( ) { return col.values( ).iterator( ); }
Recall that the iterator method is the required method of the Iterable interface. - Feb 27. Reminder: Take Quiz 5 by Sunday night, Mar 1. Quiz 6 is posted. It closes on Sunday, Mar 8.
- Feb 26. Here are some hints for Project 6a.
- Feb 25. Project 6a is due on Friday, Feb 28.
- Feb 25. Final exam registration is open on D2L for online students.
- Feb 22. Remember to use IntelliJ to create the zipfile of your submission
instead of creating it yourself:
File >> Create zipfile
This because it does not include any unnecessary folders. It reduces the size of your submission from more than 1 Meg to about 2 K, by not including the out folder of your project. - Feb 18. Schedule for remainder of quarter:
Tuesdays Thursdays Feb 18:
Interfaces
HashMap Collections
Discuss Project 6aFeb 20:
Practice ProblemsFeb 25:
HashMap Iterators
Serialization
Project 6bFeb 27:
Software Patterns
Factory and
SingletonMar 3:
More about Software
Patterns: Observer
State, Strategy
Project 7Mar 5:
Technologies Related
to Java and the JVM.Mar 10:
Discuss Project 7
Java and SQLite
Project 8Mar 12:
JReview for FinalMar 17:
In-class Final Exam - Feb 14. Reminder: take Quiz 5 before Sunday, Feb 16, at 11:59 pm.
- Feb 14. Check out Exercise 1 in the Review Exercises section of the Feb 17 Notes. This modified BarChart class reads currency codes and exchange rates from an input file and creates a barchart file from them. This example may help you with Project 5. Look at the source code in the Project 5 section of the May 6 class notes. Also look at the pseudocode at the bottom of the Project 5 Description.
- Feb 6. The in-class midterm exam is on Thursday, Feb 13.
- Feb 6. Quiz 5 is posted. It is due on Sunday, Feb 16. Quiz 4 is due this coming Sunday, Feb 9.
- Feb 6. In class today, I wrote in the Project 4 pseudocode a way to convert a
char digit to an int, but wasn't sure that
it would work. It does, in fact, work. Here is how I tested it:
char digit = '5'; int intDigit = (int)(digit - '0'); System.out.println(intDigit); // Output: 5
- Feb 6. I will not be available for office hours on Monday, Feb 10.
- Feb 6. The due date for Project 4 is moved back to Saturday, Feb 8, which means that it won't be counted late if you submit it by Saturday. Here is the Project 4 pseudocode that we came up with in class today.
- Feb 6. The in-class final exam is on Thursday, Feb 13.
- Feb 5. Here is the page of some of the Project 2 images. It includes a random circles image with source code.
- Feb 1. The questions and answers are posted for Quizzes 1, 2, and 3. Quiz 4 closes on Sunday night, Feb 9, at 11:59pm.
- Jan 31. Take Quiz 3 by Sunday night, Feb 2. Also, Quiz 4 is posted, which closes on Sunday, Feb 9.
- Jan 28. Reminder: Project 3 is due on Thursday, Jan 30.
- Jan 24. Quiz 3 is open. It closes on Sunday, Feb 2. Don't forget to take Quiz 2, which closes tomorrow (Sunday, Jan 26.)
- Jan 23. On a Mac, Alt-Enter for quick fixes might not work. If not, try this instead:
(1) Click on the item for which you want a quick fix, (2) press the Control key and click the item again, (3) select "Show context actions," (4) click the desired action (such as Create Test). To create a test, the item you want to select is the class name. - Jan 23. Project 2 is due today. It won't be counted late if you submit it tomorrow.
- Jan 22. On Monday and also last week, we have been creating unit test classes for various situations.
The easiest thing to do is to create the unit test class in the src folder with the other source code files.
However, many programmers prefer to place the unit test classes in a separate test folder. To do this you
set this test folder as a Test Source. Here is how to do this using IntelliJ:
- In the Project Explorer, right click on the project name. Then select
New >> Directory. Enter test as the new directory name. - Open a Project Structure Dialog: in the IntelliJ main menu, select
File >> Project Structure... - In the Project Structure Dialog, select Modules and select the module that contains the class that you want to test if you are not already there.
- Select the test folder that you created in Step 1, then click Mark as Tests.
- Go to the class that you want to test and click on the class name. Press Alt-Enter for Quick Fixes and select Create Test to pull up the Create Test Dialog.
- In the Create Test Dialog, set JUnit5 as the testing library and Test2 as the class name. Also check the Generate setUp box and check the methods that you want to test (usually all of them). Click the Fix button to fix the issue that JUnit5 Library not found in the module. Click OK. The JUnit5 test class stub will be created and placed in the test folder automatically.
- Write assertEquals methods to test your class methods.
- In the Project Explorer, right click on the project name. Then select
- Jan 21. If you are in the online section, don't forget to submit your study log for Week 2. Study logs are submitted every week and are due on Sunday for the preceding week.
- Jan 21. Project 2 is due on Thursday, Jan 23. It will not be counted late if you submit it on Friday.
- Jan 21. Registrations are open for the online midterm exam. Take the midterm in the Loop testing center. If you don't live in the Chicagoland area or can't make it to the Loop for the midterm, find a local proctor. See me for more details on local proctors.
- Jan 19. The Project 1 scores are posted. Here are some observations and
recommendations:
- Read the Project Submission Guidelines before submitting projects. Also, carefully read the Project Description.
- 10% deduction for not including a loop for repeated inputs. Extra credit for using a better loop than
while(true) { // body goes here }
- 2% deduction for not including a source code header like this:
// Christine Applegate // Project 1 // Jan 21, 2020
For future projects, the deduction will be 5%. - 2% deduction for naming your project incorrectly. Project should be named Proj1Applegate, not MetarProject or Project 1. It is not enough to name your zipfile proj1applegate.zip. Deduction will be 5% for future projects.
- Use IntelliJ to create your project zip file; don't create it yourself. The IntelliJ created zip file does not contain any unnecessary folders such as the out folder. Don't save the zipfile inside your project folder.
- if..else statements should not have break statements unless you intend to break out of the a while or for loop that contains the if..else statements.
- Jan 16. Project 1 is due tonight at 11:59pm.
- Jan 15. Would you like a chance to put your Java skills to use after this quarter? Consider enrolling
in IT 372 (Intro to Android Programming) for the Spring Quarter. Every year, majority of Java code lines written for companies are
written for Android applications. Here is the course description of IT 372:
Introduction to the Android platform and life cycle, including Activities, Intents, layouts, resource files, and event handlers. Designing, implementing, and testing GUI applications that use widgets displayed in a layout, using images and audio files, displaying information from and storing information to a local database.
IT 372 is taught by Steve Jost in Spring 2020. It can count for a major requirement in the Information Technology Program. - Sep 11. My cell number is listed on the Prof Info Page. If you text me, please identify yourself because I don't have a list of your phone numbers. If you email me over the weekend, you may want to also text me to let me know that I should check for your email. If you have an email address that doesn't include you name, also identify yourself.
- When you download, unzip, and open a Java class of an example posted on the Examples Page, you may receive the error message "Project SDK is not defined." (This is usually caused by a Java or IntelliJ version mismatch.) You fix this by clicking on "Setup SDK" on the right, selecting the Java version (11.0.4) that you are using, and clicking OK.
- Jan 11. To Online Studends: a link to the StudyLogs Submission Box is posted. Remember to submit a study log once a week (due on Sunday night for the preceding week) to receive credit for attendence. In-class students receive credit for attendance by physically attending class and do not submit study logs.
- Jan 9. Quiz 1 is posted on D2L. You have three attempts to take Quiz 1 and two hours for each attempt. This quiz covers material from Week 1, but you may want to wait until the end of Week 2 (Jan 14 and 16) before taking your third attempt. Your score is the maximum score from the three attempts; if you obtain 5/5 on Attempt 1, no need to take attempts 2 and 3. Quiz 1 closes on Sunday night, Jan 19, at 11:59pm. Quizzes cannot be taken late, so set up a way to remind yourself to take Quiz 1 on time, e.g., an alarm on your phone, sticky notes on your desk, a string around your finger, etc.
- Jan 9. Every quarter, the university asks instructors to submit a list of no-shows in each course.
In the in-class section, a you get off of the no-show list by attending at least one class session.
For the online section, you get off of the no-show list by submitting a document to this
AttendenceVerification dropbox that states that you wish to remain in the class. Submitting this document
also means that you have read the syllabus, in particular Item 8 about study logs
in the Additional Regulations Section, posted below as a Jan 6 Announcement.
Please submit a document to the AttendanceVerification dropbox by noon, Monday, Jan 13, stating that you with to remain in IT 313 as soon as possible and that you have read the syllabus. - Jan 7. The first in-class meeting of IT 313, Section 401, will be on Tuesday, January 7, at 11:50 am in CDM 216.
- Jan 7. Office hours are Tuesday and Thursday, from 11:45 am to 12:30 pm, either in my office at CDM 744 or in the 4th floor computer lab also in the CDM Building. Make an appointment if you want to see me at a different time.
- Jan 7. The midterm and final dates are posted on the Lecture Notes Page.
- Jan 7. Install Java and Eclipse on your computer (or use this software in the computer labs).
Here are installation directions:
Important: install Java Version 11 on your machine to be compatible with the version of Java in the labs. The computer labs have version 11.04 installed. - Jan 7. Items listed under Additional Regulations in the class Syllabus:
- The late penalty for class projects is 10% per day. No projects are accepted more than 10 days late. An exception to this penalty requires documentation submitted through the office of the Dean of Students. Such documentation must be submitted on or before the date the the project is due. Even if an exception to this policy is granted, the late penalty may be reduced, but it will not be not entirely eliminated.
- No late assignments will be accepted after the Sunday following finals week, 11:59pm.
- All projects must be submitted on D2L.
- An incomplete is hard to get in CDM. It is usually only allowed for a major
illness (typically requiring hospitalization) or a death in the family. In
any case documentation is required, which must be submitted to the Dean of Students Office.
More than one half of the work must be completed for the course for a student's incomplete request to be considered. - If you have trouble submitting any project, email the completed project to the professor to prove that you completed it on time, then submit the assignment on the D2L system as soon as possible.
- Students in the in-class section that must miss an exam must contact the professor before the exam is given to the in-class section to reschedule the exam.
- Students in the online section must register to take the midterm and final exams on D2L.
- Attendence counts 10% of your grade. Students in the in-class
section get credit by attending class, so study logs do not apply to them. Students in the online section get
credit for attendence by submitting weekly study logs to the StudyLogs dropbox
on D2L. (There is only one dropbox for the entire quarter to which you should
submit one study log per week.) Study logs are due on each Sunday night for
the preceding week and are subject to the same late penalties as projects.
In your study log, itemize what you did in the preceding week to study for IT 212, including watching the recorded lectures, the materials that you read, the examples that you ran, the quiz that you took. What did you find easy; what did you find difficult. What questions did you have? Estimate the number of hours that you spent on each item in your study log. - Submitting a wrong version is not a reason to waive a late penalty for a project.
- Class registration is not allowed after the first week of class.
- Students must keep backup copies of all submitted projects.
- Extra credit assignments are not given.
- This syllabus is subject to change as necessary during the quarter. If a change occurs, it will be announced during the class and posted on the course announcements page.
- Jan 7. Weekly quizzes count 10% of your grade. Each week on Friday, a D2L quiz will be posted, which will be due the following Sunday in 10 days. Each quiz will have 5 multiple choice questions. Quizzes cannot be submitted late.
- Jan 7. Each Friday, except for the weeks of the midterm and final exams, a multiple choice quiz will be posted on D2L for that week. That quiz will be due on Monday, ten days later, at 11:59pm. Quizzes can be taken a maximum of three times. Weekly quizzes cannot be submitted late. The lowest quiz score will be dropped.
- Jan 7. Set the Microsoft Explorer on your Windows PC to show file extensions:
- Invoke the MS File Explorer by selecting Start, All Programs, Accessories, and Windows Explorer.
- From the MS File Explorer, select Tools, Folder Options.... Select the View tab and uncheck the box for "Hide extensions for known file extensions.