mascot Duke The Java revolution mascot Duke

[ Anfang ], [ Internet ], [ Coding ], [ Java ], [ Marketing ], [ Information ], [ Discussion ]

This material was developed for a presentation I had to give in my English lessons at the Technical University in Dresden, so it's rather basic and not complete by far. I hope you'll find something interesting, though. You may use this material freely for non-commercial purposes. © 1997 by Combat Man of the Muscle Soft Crew!
[=> word] this topic is handled elsewhere in the text
[word] an example (not in the text) fits in here


  1. the Internet
  2. client - server

    services:

    terminalremotely control another computer
    ftpget/send files
    talk, ircimmediate text transmission
    mail, newsmessage sent to private/public box
    WWW[=> WWW]

    the WWW:

    Java and its history:


  3. Programming languages and styles
  4. programming languages:

    machine codevery fast, low memory consumption, the language of the machine
    Assemblersource compiled to ML, simpler because of labels, trivial names for mnemonics
    Interpreterexecuted line by line, each command is translated into ML during execution
    Compilersource is compiled into ML and then bound, most-used, statically bound API produces fatware
    Javacompiled into bytecode, very small, ML of a virtual machine, not bound, classes rely on std. API

    Interpreter languages can often also be compiled, most common example is BASIC.

    coding styles:

    Coding styles

    common terms and special features:

    spaghetti code procedural programming object oriented programming
    memory is automatically allocated program: collection of functions and methods that manipulate data easily maintainable and reusable code
    procedure: function not returning value data & functions are grouped
    data kept seperately from functions can exclusively manipulate the data
    changes may have side effects methods: member functions
    functions share data instance vars: private variables [getX]
    object: generic ADT & its methods
    encapsulation: access data only through methods [list]
    class: code reused to create objects
    instance: individual object [car]
    subclass: derived, spec., inherits [colRect]
    composite obj.: subsystems [4 seats]
    message: request receiver to perfrom a selected method [Obj-C]
    polymorphism: [tv & lamp]
    abstraction, hierarchy
    imagine system as a collection of classes that knows how to perform tasks

    an example for each one (write sth. onto the screen):

    spaghetti code procedural programming object oriented programming
    code code for clear_Screen; class screen {
    for code for writeToScreen(argument); method clear;
    clear screen; method write(argument);
    code main program { }
    for call the clear_Screen function
    write call the writeToScreen function main program {
    on screen; ... tell the screen to clear itself
    ... } tell the screen to write text
    ...
    }


  5. What is Java all about?
  6. Sun: " Java is a simple, object-oriented, distributed, interpreted, robust, secure [=> C++], architectural neutral, portable, high-performance, multithreaded, and dynamic language."

    Fusion of four kinds of programming:

    Object oriented like Smalltalk
    Numeric like FORTRAN
    Systems like C
    Distributed like nothing else

    Development tools:

    Unicode, huge API [=> API]
    free SDK contains javac, java, applet viewer, jdb, API docs and other tools

    the Java API packages:

    Java in contrast to C++:

    Applets and applications:

    Applets and Applications

    the differences:

    Applications Applets
    stand-alone Web browser needed
    main() like C++ embedded into HTML
    local IO possible no main()
    general-purpose no local IO
    security checks

    a small sample application:

    1: /**
    2:  * this application writes silly text to the console
    3:  */
    4: public class test {
    5:   public static void main(String argv[]) {
    5:     System.out.println("this is a test");
    6:   }
    7: }
    


  7. Marketing
  8. general issues:

    hardware platforms:

    before Java with Java
    cost and effiency less important [Risc-PC] most important
    available proprietary software most important Java runs anywhere [settop boxes]

    the future:


  9. Sources of information
  10. additional information:


  11. Discussion
  12. some questions:



zurück zur Hauptseite des Java-Tutorials