-
Fri Sep 7 |
- 1st class Monday Sep. 10.
|
|
Mon Sep 10 |
- This week's reading: Ch.1 & 2 Nino & Hosch
|
|
Wed Sep 12 |
- No tutorials this week. See main course web site, Labs and Tutorials
section for tutorial room number
|
|
|
Fri Sep 14
|
-
There is an IDE
from Borland which you can download if you agree to answer some questions
for them about the product. This may be useful if you want to work at home.
However, be warned that neither I nor the TAs have experience installing
or running this product, so if you choose to use it you're on your own.
They do also provide documentation
and code samples which you can download. Only choose this product if
you know what you're doing, or like the sense of adventure and can afford
the time. Buying a product gives you access to technical support which you won't have if you use this.
-
Reading for next week: Ch. 3 & 4, Nino & Hosch.
|
|
Mon Sep 17 |
- See above for midterm exam times and a link to some old midterms.
- Note that although the 'memory model' won't be tested for explicitly on the midterm,
it was taught in order to give you the tools to analyse program behaviour, which will
be tested on the midterm.
|
|
|
Fri Sep 28 |
- The code that I put on the board this morning was missing a couple of things which are necessary
to compile. Look here for the correct code and an explanation.
- Take a look in the API
(which has a No frames version )
at the classes String and Math in the package java.lang and the class System in java.io.
Knowing how to read and interpret the API is important...
For people who are more inquisitive, take a look at The Java Language Specification and/or the The Java Virtual Machine Specification . These are fairly advanced technical documents which are not required reading, but might be
interesting to some people in the class.
-
More lecture notes will be coming soon: please stand by...
|
|
Wed Oct 7 |
-
MIDTERM IS COMING! Friday Oct 19, 10am in the usual classroom (SS2102). It will cover material
presented up to and including the class on Friday Oct. 12. The memory model is a tool for you to understand
the ideas of scope and lifetime of variables -- to be able to analyze programs. It will not be tested for explicitly, but
you must understand these ideas that it explains.
-
The best way to succeed is to have practiced programming, as I mentioned at the beginning of the course.
Java is a language; to learn a language you must 'speak' it; Java can only be 'spoken' by sitting at a computer and
programming. In addition, you should make sure that you understand and can do all the assignment questions
that you have seen so far. Finally, it is a good idea to be able to do the questions on midterm exams of previous years
(see the link above), the relevant final exam questions from previous years, and relevant questions from assignments
of previous years. If you understand and can do all these, then it is likely that you will do well on this midterm.
-
This week's reading: Ch. 6 Nino & Hosch
-
The best place to deal with questions about assignments is to 1) read the newsgroup 2) post a question to the newsgroup.
You can find a link to the newsgroup above under General Information.
|
|
Mon Oct 15 |
-
Bring your API to the midterm
-
Check the lecture notes via the link above. They are growing daily.
-
This week's reading: Ch. 7 Nino & Hosch
|
|
Mon Oct 22 |
-
Midterm was generally well done: average was close to 75% (Solutions)
-
If you scored (out of 36):
-
> 30, keep doing what you're doing.
- 25-30, Ok. Could brush up on a few things.
- 20-25, cause for some concern. Make sure you learn the things that you got wrong; come to see me if you like. Things will get tougher.
- < 20, you need to change the way you're learning. Best to come see me, and we'll figure out what's going wrong.
- For those in the second two categories, be aware that it's not too late to do something about solidfying your knowledge and developing effective
learning techniques. In a few weeks, it
will become much more difficult. ACT NOW.
-
What's the best way for you to learn? I don't know. Humans are complex creatures; different people learn in different ways. I would have to be clairvoyant to know how you see the world and how you apprehend information. To learn how you learn best should be one of your goals. I can help you in this regard by
telling you about my personal experiences and the experiences of others with whom I've interacted, but learning how to learn best is up to you. If you come to see me, I can help you with some suggestions, you can experiment with them, and decide what's good for you.
-
This week's reading: Ch. 8, 12 Nino & Hosch
-
If you think that an assignment was unfairly marked, the remarking procedure is described in the Course Information Sheet . You will need to fill out the Esubmission Appeal form, hand it to me (among other things), and I'll send it on for remarking. Remember that you are responsible for reading the assignment handout
carefully and resolving any ambiguities.
-
Variable Shadowing: a clarification.
|
|
Tue Oct 23 |
-
I'd like to reschedule office hours this week only . Instead of the usual (Thursday 4-5 SF2110), office hours
this week will be 3pm - 4pm Thursday . (same day, same room, one hour earlier.) I'll have to leave promptly
at 4, so please come early. As always, you can send me an email and we can arrange another time to meet.
|
|
Wed Oct 24 |
-
For assignments
-
Read the handout carefully
-
For A5 especially, note the sentence "you must provide a
constructor whose parameters should be all the instance variables of the class,
in the same order we use to describe the instance variables in the questions."
|
|
Fri Oct 26 |
-
An error today in the code I wrote. Thanks to Mike for trying to bring it to my attention.
My apologies for the error.
-
Please don't be shy about dropping by during office hours. The exam should give you and I some idea about
what difficulties you're having, so stop by and we'll try to figure out how things can go better for you.
|
|
Sun Oct 28 |
-
If you have questions about assignments, don't forget to consult the
assignments
page of the main course website, and look under Hints, tips, and
announcements. The news group is also a good place to ask questions and/or see the answers to other common questions.
|
|
Mon Oct 29 |
-
I mentioned that Ch. 6 of the text speaks of a package called OOJ.utilities which is available
from the authors. (This is the package that contains the classes Require, Ensure, and Assert discussed in Ch. 6 and
mentioned in class.) Follow the Downloads link, and you'll find a number of resources that you might find useful. The package
itself is under Libraries .
-
Last class I mentioned a book: Godel Escher Bach: An Eternal Golden Braid by Douglas Hofstadter.. This is well worth reading. (See also stuff on Gödel, Escher , Bach ).
|
|
Fri Nov 2 |
-
I'd like to move the second midterm from Friday Nov 16 to Monday Nov 19 (still in class). Please email me if this is a problem for you. The reason
is that on Friday Nov 16 there is a day of lectures by Nobel Prize winners. This is taking place at Convocation Hall, next to the Sandford Fleming
Building. I urge all of you to take this opportunity to listen to some very interesting people. This is a rare opportunity, in celebration of the 100th
year of the Nobel Prize. Tickets are free, and can be picked up at the Nona MacDonald Visitors Center, between Convocation Hall and Knox College.
For more information..
-
I've posted a link in the General Information section above to some
more midterm and final exams.
|
|
Tue Nov 27 |
-
Midterm 2 was generally well
done, with the exception of the array question. The average was close
to 67% (Solutions)
-
Make sure
that you understand how to manipulate arrays and their relative
the Vector . This is an important
topic, and is very likely to appear on the final exam. In particular,
a good exercise would be to take question 2a) from the midterm, and
reimplement the problem using the Vector class.
|
|
Wed Nov 28 |
-
Remember to read your mail on your CDF-PC account! You can
also have mail forwarded from that account to another account by creating a file called
.forward in your home directory, which has the email address of the other
account as the contents. There are important messages which are sent to those accounts
from time to time, and you must read them.
|
|
Wed Dec 5 |
-
Remember to bring your API to the exam!
- The date and time of the exam along with other exam related information. The initial letters
of your last name determine the location at which you should write.
-
I mentioned The Art of Computer Programming (TAOCP)
by Donald E. Knuth today in class. This is intended for those of you
who would like to do some extra reading; it is not required reading for the course. From the web page:
...these books were named among the best twelve scientific monographs of the century by American Scientist...
|
|