Presentation is loading. Please wait.

Presentation is loading. Please wait.

25-Jun-15 Welcome to CIT 590 “Duke”

Similar presentations


Presentation on theme: "25-Jun-15 Welcome to CIT 590 “Duke”"— Presentation transcript:

1 25-Jun-15 Welcome to CIT 590 http://www.cis.upenn.edu/~matuszek/cit590-2009.html “Duke”

2 2 Labs On Fridays we have lab (not “recitation”) in Moore 207 (not in Towne 313) If you are registered for this course, you should be able to log in in Moore 207 Before you come to lab on Friday, go to Moore 207 and make sure you can log in there If you can’t, contact CETS immediately The lab is a required part of this course If you cannot make it to a particular lab, you must let me know in advance, otherwise it will cost you points

3 3 About this course I’m your instructor, David Matuszek (muh-TOOZ-ik) I prefer “Dave” or “Dr. Dave” This is a beginning programming course The programming language we are using is Java 6 The IDE (Integrated Development Environment) we are using is Eclipse (Classic version) There are two basic goals: 1.Teach you to program (that is, write programs that work) This is a skill, and requires practice 2.Teach you to program well (that is, write programs that aren’t total crap) This is more nearly an art

4 4 Versions of Java Java 1 Java 2 Java 5.0 Oak: Designed for embedded devices Java 1.1: Adds inner classes and a completely new event-handling model Java 1.2: Includes “Swing” but no new syntax Java 1.3: Additional methods and packages, but no new syntax Java 1.4: More additions and the assert statement Java 1.5: Generics, enum s, new for loop, and other new syntax Java: Original, not very good version (but it had applets) Java 6 (=1.6): A few new features, mostly at the advanced level

5 5 What’s ahead? Half-life of CS knowledge: about 5 years Typical length of career: about 40 years What does this tell you? Nobody expected: personal computers, graphical user interfaces, the mouse, the World Wide Web, the popularity of Java, the ascendance of XML, the DMCA, Amazon, Google, etc. There is only one safe prediction: You will be taken by surprise!

6 6 What does that mean for CS? What can we ask you to build in your classes? What will be expected of you in industry? We teach skyscraper-level skills, but we ask you to apply those skills to doghouses it’s silly, but what alternative do we have? It’s up to you: When you leave here, will you be able to build skyscrapers? or will you just be very good at building doghouses?

7 7 Java is a terrible language...That is, Java is a terrible first language Your first programming language should be simple, so that you can concentrate on learning the concepts Java is designed primarily for power, and only secondarily for simplicity Java is relatively elegant, for the amount of power it has This means: Java is more difficult to learn than many other languages In exchange, Java is a workhorse language that you can use in the so- called “real world” But this does not mean Java is the only language you will ever need! Java may be nearing the end of its popularity curve

8 8 Comparison with other languages Java is somewhat less complex than C++ and C# Java is more complex than C, but in different ways Java is much more complex than Basic or Pascal It is mathematically provable that anything you can compute in one programming language, you can compute in (almost) any other programming language Hence, Java = C++ = C# = Basic = Pascal = C = Python =... However, “possible”  “practical” In practical terms, you can do a lot more in Java than in Basic Java is a powerful general-purpose language In the future you are likely to use many special-purpose languages that are better for certain tasks than Java or its competitors

9 9 How to get a good grade in here Start your assignments early! This is the first and most important way to improve your grades Programming takes a lot of time It’s not easy to predict how long a program will take Work with your partner--help, and let yourself be helped Test your programs thoroughly One or two simple tests are not enough We often provide simple but incomplete tests, just to get you started We will do thorough testing, even if you don’t! Read the assignments carefully Do what is assigned, not “something like” what is assigned Learn to use your tools (Eclipse, JUnit, etc.) Use comments and good style right from the beginning, not as a last-minute addition To prepare for tests, review and understand the lectures

10 10 The End He who works with his hands is a laborer. He who works with his hands and his head is a craftsman. He who works with his hands and his head and his heart is an artist. -- St. Francis of Assisi


Download ppt "25-Jun-15 Welcome to CIT 590 “Duke”"

Similar presentations


Ads by Google