Lecture 24 Epilogue. Performance is very important, especially if you are writing computation or...

14
Lecture 24 Epilogue

Transcript of Lecture 24 Epilogue. Performance is very important, especially if you are writing computation or...

Page 1: Lecture 24 Epilogue. Performance is very important, especially if you are writing computation or information handling intensive applications. A great.

Lecture 24

Epilogue

Page 2: Lecture 24 Epilogue. Performance is very important, especially if you are writing computation or information handling intensive applications. A great.
Page 3: Lecture 24 Epilogue. Performance is very important, especially if you are writing computation or information handling intensive applications. A great.

Performance is very important, especially if you are writing computation or information handling intensive applications. A great tool

for seeing what slows down your programs is Optimize It! Also, if you have a chance,

please read Java performance programming (I) and Java performance programming (II)

Performance

Page 4: Lecture 24 Epilogue. Performance is very important, especially if you are writing computation or information handling intensive applications. A great.

Refactoring

Refactoring is extremely useful technique to compliment your designs. The idea

is to constantly improve and change your code to make it better and easier to

read. An absolute must read is

Refactoring, by Martin Fowler

Page 5: Lecture 24 Epilogue. Performance is very important, especially if you are writing computation or information handling intensive applications. A great.

Embedded and Consumer Technologies

EmbeddedJavaTM -

Java Application Environment for dedicated embedded devices

PersonalJavaTM - API for network-connectable applications on personal

consumer devices

Page 6: Lecture 24 Epilogue. Performance is very important, especially if you are writing computation or information handling intensive applications. A great.

Enterprise API'sEnterprise JavaBeansTM -

reusable, cross-platform components architecture

Java Naming and Directory InterfaceTM (JNDI) - provides applications written in the Java programming language with a unified interface to multiple naming and directory services in the enterprise

Java Message Service (JMS) - provides a common way for programmers writing in the Java programming language to access enterprise messaging systems

Java Transaction API (JTA) - defines a high-level transaction management specification intended for resource managers and transactional applications in distributed transaction systems

InfoBus - enables dynamic exchange of data between JavaBeansTM components

Page 7: Lecture 24 Epilogue. Performance is very important, especially if you are writing computation or information handling intensive applications. A great.

Graphics

Java 2DTM API - set of classes for advanced 2D graphics and imaging

Java 3DTM API - set of classes for writing three-dimensional graphics applications and 3D applets

Page 8: Lecture 24 Epilogue. Performance is very important, especially if you are writing computation or information handling intensive applications. A great.

Books on C++ Effective C++, More Effective C++

By Scott Meyers

Outstanding, fun tricks & tips on programming in C++

Mastering Object-oriented programming in C++

By Cay Horstmann

Very good OOP book, good examples and issues

Page 9: Lecture 24 Epilogue. Performance is very important, especially if you are writing computation or information handling intensive applications. A great.

STLSTL tutorial and reference

By Musser & Saini

Good (if not the only one) book on Standard template library (precursor of generic Collections in Java)

Page 10: Lecture 24 Epilogue. Performance is very important, especially if you are writing computation or information handling intensive applications. A great.

Books on Java

I would recommend entire O'reilly series: Threads, Swing, JDBC, etc.

Their books are always nicely written with lots of examples and not too

many stupid Hello-world-applet-in-the-browser!!! pictures.

Page 11: Lecture 24 Epilogue. Performance is very important, especially if you are writing computation or information handling intensive applications. A great.

General books

Godel, Escher, Bach by Douglas Hofstadter. It is one of the most unbelievable, breathtaking and ingenious books written in this century. I can't tell you whatis it about. For two reasons:

1) it would spoil all the fun

2) I have no idea :)

Page 12: Lecture 24 Epilogue. Performance is very important, especially if you are writing computation or information handling intensive applications. A great.

General books

Complexity by Mitchell Walldrop would bring you up to date on complex

adaptive systems, Santa Fe institute and all eye-opening discoveries that have been made in the study of complexity in the last 3 decades.

Page 13: Lecture 24 Epilogue. Performance is very important, especially if you are writing computation or information handling intensive applications. A great.

General books

If you haven't read

Richard Dawking: 'Blind watchmaker'

and interested in contemporary Darwinism, please do so. It is simple and fascinating.

Page 14: Lecture 24 Epilogue. Performance is very important, especially if you are writing computation or information handling intensive applications. A great.

General books

Finally, if you feel courageous to face some of the most amazing discoveries

about human mind, I would recommend:

The User Illusion by Tor Norretrandes.