Slideshare.net (beta)

 
Post: 
Myspace Hi5 Friendster Xanga LiveJournal Facebook Blogger Tagged Typepad Freewebs BlackPlanet gigya icons



All comments

Add a comment on Slide 1

If you have a SlideShare account, login to comment; else you can comment as a guest


Showing 1-50 of 0 (more)

Java platform and free software

From amaneiro, 5 months ago

399 views  |  0 comments  |  0 favorites  |  15 downloads
 
 
 

Groups/Events

Not added to any group/event

 
 

Privacy InfoNew!

This slideshow is Public

 
CC Attribution-ShareAlike LicenseCC Attribution-ShareAlike License
Embed in your blog
Embed (wordpress.com)
custom

Slideshow Statistics
Total Views: 399
on Slideshare: 399
from embeds: 0* * Views from embeds since 21 Aug, 07

Slideshow transcript

Slide 1: Java Platform & Free Software José María Casanova Crespo Master on Free Software

Slide 2: Introduction Agenda ● Basic ideas ● OO programming and basic syntax. ● History and Versions ● License ● Java Community Master on Free Software

Slide 3: Basic Ideas ● Java ... – is an object oriented programming language – programs are compiled once and executed everywhere (bytecode and Virtual Machine) – syntax is derived from C++ – is supposed to be platform independent – implements automatic memory management – platform is almost Free Software ;-) Master on Free Software

Slide 4: Object Oriented programming Concepts ● Classes ● Inheritance ● Objects ● Encapsulation ● Methods ● Abstraction ● Message passing ● Polymorphism Master on Free Software

Slide 5: Remembering Syntax Practice ● Create a class Animal that Sleeps. ● Create a Main class for playing with animals. ● Create a Subclass Pet that has a Name and Owner that is a Person. ● Re-factor it to define Pet and Animal as abstract classes and create Dog and Elephant ● Overwrite methods and make possible not animal pets (Interfaces) ● Introduce the use of packages Master on Free Software

Slide 6: The Father: James Gosling ● 1955, Born in Calgary ● 1983, PhD at Carnegie Mellon University. ● 1984, joins SUN Microsystems. ● 1991, invents Java Programing Language ● 2006, he shaved for the first time in decades. Master on Free Software

Slide 7: The early years ● Created in June 1991 ● Initially called Oak .... – ... later called Green.... ● ... finally renamed to JAVA ● SUN launched JAVA on May 23, 1995 ● More info: – http://java.sun.com/features/1998/05/birthday.html Master on Free Software

Slide 8: Oak ● Oak goals: – Platform independent – Extremely reliable – Compact ● Target market: Interactive TV and PDAs ● But in 1993 SUN changed the target because of Internet. Master on Free Software

Slide 9: Java Versions ● JDK 1.0 (1995) – 8 packages, 212 classes. – Included in Netscape 2.0-4.0 – Other companies licensed Java ● JDK 1.1 (1997) – 23 packages, 504 classes – inner classes,improved JVM, SWING – MS develops a VM for IE Master on Free Software

Slide 10: Java Versions ● JDK 1.2 (2000), known as JAVA2) – 59 packages, 1520 classes – Java Foundation Classes (SWING) included in the core. – Collections: support for lists, sets, hashmaps. – Code and Tools distributed as the SDK Master on Free Software

Slide 11: Java Versions ● JAVA 1.3 (2000) – 76 packages, 1842 classes – Better performance (Hotspot VM) ● JAVA 1.4 (2002) – 135 packages, 2991 classes – Improved IO, XML Master on Free Software

Slide 12: Java Versions ● JAVA 1.5 (2004) renamed to JAVA5 – Generics – Faster startup and improved memory usage – Improved multithreading features ● JAVA 6 – new desktop related features – simplified GUI development – integrated with NetBeans 5.5 Master on Free Software

Slide 13: Multiple Platforms ● – Java Enterprise Edition (JAVA EE) – Java Micro Edition (JAVA ME) – Java Standard Edition (JAVA SE) ● JRE vs JDK Master on Free Software

Slide 14: Java License Questions ● Look for the current License of JDK, go for downloading. ● Which is the current state of Java as FLOSS? ● Operating System Distributor License for Java (DLJ) ... what is it? ● Lets review History .... Master on Free Software

Slide 15: The JAVA TRAP ● Richard Stallman Apr 12, 2004 ● http://www.gnu.org/philosophy/java-trap.html ● Nov 15, 2006 ● SUN “releases Java” under GPL ● http://www.sun.com/2006-1113/feature/story.jsp – Hotspot VM, javac Master on Free Software

Slide 16: The Classpath Exception (1/2) Linking this library statically or dynamically with other modules is making a combined work based on this library. Thus, the terms and conditions of the GNU General Public License cover the whole combination. Master on Free Software

Slide 17: The Classpath Exception (2/2) As a special exception, the copyright holders of this library give you permission to link this library with independent modules to produce an executable, regardless of the license terms of these independent modules, and to copy and distribute the resulting executable under terms of your choice, provided that you also meet, for each linked independent module, the terms and conditions of the license of that module. An independent module is a module which is not derived from or based on this library. If you modify this library, you may extend this exception to your version of the library, but you are not obligated to do so. If you do not wish to do so, delete this exception statement from your version. Master on Free Software

Slide 18: Current State ● Several Open Source projects – Java SE -> OpenJDK – Java ME -> Mobile & Embedded (PhoneME) – Java EE -> Glass Fish ● http://www.sun.com/software/opensource/java/index.jsp Master on Free Software

Slide 19: JAVA Communities ● APACHE Foundation – JAVA related projects (JAKARTA) ● http://jakarta.apache.org ● Ant, Tomcat, Structs, Lucene, ... ● Lets review the website. ● Open Source in Java – Open source directory about Java Apps. ● http://java-source.net/ Master on Free Software

Slide 20: Java Community Process ● http://www.jcp.org/en/home/index – Introduced in 1998 – an open, participative process to develop and revise the Java™ technology specifications – define reference implementations and test suites Master on Free Software

Slide 21: ECLIPSE ● http://www.eclipse.org ● Version 3.3 called Europa (Jupiter moon) ● written in Java. ● lots of plug-ins for different languages. ● Eclipse Java Development Tools, incremental Java Compiler, visual editor interfaces. ● Eclipse Public License Master on Free Software

Slide 22: NETBEANS ● http://www.netbeans.org ● Directly from SUN Microsystems ● NetBeans 6 is the last version ● Lately supporting more languages ● Oct 2007, CDCL and GPLv2 License Master on Free Software

Slide 23: JDEE EMACS ● http://jdee.sourceforge.net/ – JDEE menu with compile, run, debug, build, browse, project, and help commands – syntax coloring – auto indentation – compile error to source links – source-level debugging – source code browsing – make file support – automatic code generation – Java source interpreter (Pat Neimeyer's BeanShell) Master on Free Software

Slide 24: Compiling game ● Working in pairs based in knowledge in each IDE platform. ● Choose a JAVA not web based project in Source Forge (the simpler the easier) ● Compile it and execute ● Analyze the possibilities with Source Code Repositories (SVN,CVS) ● Which is the better IDE ? Master on Free Software