Programming for J2ME

Total Page:16

File Type:pdf, Size:1020Kb

Programming for J2ME Programming for J2ME Romulus Grigoras ENSEEIHT Life-cycle of Java Applications ● Unmanaged (supported by CDC and CDLC, but not by MIDP) public class NeverEnding extends Thread { public void run(){ while( true ){ try { sleep( 1000 ); } catch( InterruptedException e ){ } ● Managed } } – Applets public static void main( String[] args ){ NeverEnding ne = new NeverEnding(); – Midlets ne.start(); } – Xlets } Bibliography: http://developers.sun.com/techtopics/mobility/midp/articles/models/ The Applet Model ● java.applet.Applet (extends java.awt.Panel) ● supported by the Personal Profile ● states – loaded public class BasicApplet extends java.applet.Applet { public BasicApplet(){ – stopped // constructor - don't do much here } – started public void init(){ // applet context is ready, perform all one-time – destroyed // initialization here } public void start(){ // the applet is being displayed } public void stop(){ // the applet is being hidden } public void destroy(){ <applet code="BasicApplet.class " // free up all resources width="300" height="200 " > } </applet> } The Midlet Model MIDP 1.0 Specification: ● The application management software provides an environment in which the MIDlet is installed, started, stopped, and uninstalled. It is responsible for handling errors during the installation, execution, and removal of MIDlet suites and interacting with the user as needed. ● It provides to the MIDlet(s) the Java runtime environment required by the MIDP Specification. ● javax.microedition.midlet.MIDlet MIDP Event Handling ● Bibliography: http://developers.sun.com/techtopics/mobility/midp/articles/event/ The Midlet Model (2) ● managed by special-purpose application-mgmt software (AMS) built into the device ● may be interrupted at any point by outside events ● import javax.microedition.midlet.*; public class BasicMIDlet extends MIDlet { public BasicMIDlet(){ ● // constructor - don't do much here states } – protected void destroyApp( boolean unconditional ) paused throws MIDletStateChangeException { – // called when the system destroys the MIDlet active } – protected void pauseApp(){ destroyed // called when the system pauses the MIDlet } protected void startApp() throws MIDletStateChangeException { // called when the system activates the MIDlet } } ● javax.microedition.midlet.MIDlet The Midlet Context (1) ● Methods that let a MIDlet interact with its operating context: – getAppProperty() returns initialization property values – resumeRequest() asks the AMS to reactivate the MIDlet – notifyPaused() shifts the MIDlet to the paused state – notifyDestroyed() shifts the MIDlet to the destroyed state. The Midlet Context (2) ● MIDlet initialization properties are name-value pairs in the MIDlet's application descriptor or in its manifest ● the application descriptor = text file that lists important information about a set of MIDlets packaged together into a single JAR file (a MIDlet suite) ● the manifest is the standard JAR manifest packaged with the MIDlet suite ● when getAppProperty() is invoked, it searches the application descriptor first, then the manifest ● MIDP 2.0 introduces the concept of trusted suites, in which case getAppProperty() searches only the manifest A Better Midlet import javax.microedition.lcdui.*; import javax.microedition.midlet.*; public class BetterMIDlet extends MIDlet { private Display display; public BetterMIDlet(){ } protected void destroyApp( boolean unconditional ) throws MIDletStateChangeException { exitApp(); // call cleanup code } protected void pauseApp(){ // add pause code here } protected void startApp() throws MIDletStateChangeException { if( display == null ){ initApp(); // perform one-time initialization } // add per-activation code here } private void initApp(){ display = Display.getDisplay( this ); // add initialization code here } public void exitApp(){ // add cleanup code here notifyDestroyed(); // destroys MIDlet } } The Xlet Model ● Originally part of the Java TV API, Xlets have been adopted for use in the Personal Basis Profile (PBP) and in its superset, the Personal Profile (PP) import javax.microedition.xlet.*; public class BasicXlet implements Xlet { private XletContext context; public BasicXlet(){ // constructor - don't do much here } public void initXlet( XletContext context ) throws XletStateChangeException { // called by the system to initialize the Xlet this.context = context; // stash the context // put other initialization code here } public void destroyXlet( boolean unconditional ) throws XletStateChangeException { // called when the system destroys the Xlet } public void pauseXlet(){ // called when the system pauses the Xlet } public void startXlet() throws XletStateChangeException { // called when the system activates the Xlet } } Installation of a Midlet ● Direct install from files (stored on a memory card or received by Bluetooth/infrared) ● OTA (Over The Air) – download by http from a web server – the jad file has a pointer to the jar file on the server – MIDlet-Jar-URL : http://server/dir/file.jar Launching a MIDlet : Push "Push" : mechanism to receive and act on information asynchronously, as information becomes available, instead of forcing the application to use synchronous polling techniques that increase resource use or latency ● network- and timer-initiated MIDlet activation; Biblio: http://developers.sun.com/techtopics/mobility/midp/articles/pushreg/ Push MIDlet activation and lifecycle Programming for J2ME Romulus Grigoras ENSEEIHT Life-cycle of Java Applications ● Unmanaged (supported by CDC and CDLC, but not by MIDP) public class NeverEnding extends Thread { public void run(){ while( true ){ try { sleep( 1000 ); } catch( InterruptedException e ){ } ● Managed } } – Applets public static void main( String[] args ){ NeverEnding ne = new NeverEnding(); – Midlets ne.start(); } – Xlets } Bibliography: http://developers.sun.com/techtopics/mobility/midp/articles/models/ Although the operating system can terminate the application without notice at any time, the application effectively has complete control over its life-cycle - when it terminates and when it acquires or releases system resources. The application is really an unmanaged application; the operating system participates only in its activation. If the operating system suddenly terminates the application, the application may not have the chance to save its state or release the system resources it has acquired. The Applet Model ● java.applet.Applet (extends java.awt.Panel) ● supported by the Personal Profile ● states – loaded public class BasicApplet extends java.applet.Applet { public BasicApplet(){ – stopped // constructor - don't do much here } – started public void init(){ // applet context is ready, perform all one-time – destroyed // initialization here } public void start(){ // the applet is being displayed } public void stop(){ // the applet is being hidden } public void destroy(){ <applet code="BasicApplet.class " // free up all resources width="300" height="200 " > } </applet> } The Midlet Model MIDP 1.0 Specification: ● The application management software provides an environment in which the MIDlet is installed, started, stopped, and uninstalled. It is responsible for handling errors during the installation, execution, and removal of MIDlet suites and interacting with the user as needed. ● It provides to the MIDlet(s) the Java runtime environment required by the MIDP Specification. ● javax.microedition.midlet.MIDlet MIDP Event Handling ● Bibliography: http://developers.sun.com/techtopics/mobility/midp/articles/event/ The Midlet Model (2) ● managed by special-purpose application-mgmt software (AMS) built into the device ● may be interrupted at any point by outside events ● import javax.microedition.midlet.*; public class BasicMIDlet extends MIDlet { public BasicMIDlet(){ ● // constructor - don't do much here states } – protected void destroyApp( boolean unconditional ) paused throws MIDletStateChangeException { – // called when the system destroys the MIDlet active } – protected void pauseApp(){ destroyed // called when the system pauses the MIDlet } protected void startApp() throws MIDletStateChangeException { // called when the system activates the MIDlet } } ● javax.microedition.midlet.MIDlet The Midlet Context (1) ● Methods that let a MIDlet interact with its operating context: – getAppProperty() returns initialization property values – resumeRequest() asks the AMS to reactivate the MIDlet – notifyPaused() shifts the MIDlet to the paused state – notifyDestroyed() shifts the MIDlet to the destroyed state. The Midlet Context (2) ● MIDlet initialization properties are name-value pairs in the MIDlet's application descriptor or in its manifest ● the application descriptor = text file that lists important information about a set of MIDlets packaged together into a single JAR file (a MIDlet suite) ● the manifest is the standard JAR manifest packaged with the MIDlet suite ● when getAppProperty() is invoked, it searches the application descriptor first, then the manifest ● MIDP 2.0 introduces the concept of trusted suites, in which case getAppProperty() searches only the manifest A Better Midlet import javax.microedition.lcdui.*; import javax.microedition.midlet.*; public class BetterMIDlet extends MIDlet { ● Click t o aprdivdat ane Di sopluayt lidniseplay; public BetterMIDlet(){ } protected void destroyApp( boolean unconditional ) throws MIDletStateChangeException { exitApp(); // call cleanup code } protected void pauseApp(){ // add pause code here } protected void startApp() throws MIDletStateChangeException
Recommended publications
  • Incubating the Next Generation of Offshore Outsourcing Entrepreneurs
    Mobile Phone Programming Introduction Dr. Christelle Scharff Pace University, USA http://atlantis.seidenberg.pace.edu/wiki/mobile2008 Objectives Getting an overall view of the mobile phone market, its possibilities and weaknesses Providing an overview of the J2ME architecture and define the buzzwords that accompanies it Why mobile phones? Nowadays mobile phones outnumber desktop computers for Internet connections in the developer world A convenient and simpler alternative to the desktop/laptop for all (developed and developing countries) Mobile phones are computers! Some numbers and important facts: • Target of 10 million iphones sales by the end of 2008 (just one year after being launched) • Google phone to be launched in 2008 • 70% of the world’s mobile subscriptions are in developing countries, NY Times April 13, 2008 Global Handset Sales by Device Type http://linuxdevices.com/files/misc/StrategyAnalytics- mobilephone-segments.jpg Devices A wide variety of devices by the main vendors: • E.g, Nokia, Motoral, Sony Ericson A wide variety of operating systems • E.g., Blackberry, Palm OS, Windows CE/Mobile, Symbian, motomagx, linux A wide variety of development environments • E.g., Java ME, Qualcomm’s BREW, Google’ Android, Google App Engine (GAE) for mobile web applications, JavaFX Programming languages: • Java, Python, Flast-lith, Objective C Operating Systems http://mobiledevices.kom.aau.dk Mobile Web Access to wireless data services using a mobile device cHTML (Compact HTML) is a subset of HTML that excludes JPEG images,
    [Show full text]
  • Interactive Applications for Digital TV Using Internet Legacy – a Successful Case Study
    Interactive Applications for Digital TV Using Internet Legacy – A Successful Case Study Márcio Gurjão Mesquita, Osvaldo de Souza B. The Big Players Abstract—This paper describes the development of an interactive application for Digital TV. The architectural Today there are three main Digital TV standards in the decisions, drawbacks, solutions, advantages and disadvantages world. DVB is the European standard, ATSC is the of Interactive Digital TV development are discussed. The American one and ISDB is the Japanese standard. Each one application, an e-mail client and its server, are presented and has its own characteristics, advantages and disadvantages. the main considerations about its development are shown, The European standard offers good options for interactive especially a protocol developed for communication between Internet systems and Digital TV systems. applications, the Japanese is very good on mobile applications and the American is strong on high quality Index Terms—Protocols, Digital TV, Electronic mail, image. Interactive TV C. The Brazilian Digital Television Effort Television is one of the main communication media in I. INTRODUCTION Brazil. More than 90% of Brazilian homes have a TV set, EVEOLOPING software applications has always been a most of which receive only analog signals [1]-[2]. The TV D hard task. When new paradigms appear, new plays an important role as a communication medium difficulties come along and software designers must deal integrator in a country of continental size and huge social with it in order to succeed and, maybe, establish new design differences as Brazil, taking information, news and and programming paradigms. This paper describes the entertainment to the whole country.
    [Show full text]
  • Development of Mobile Phone Game Based on Java ME
    Yang Liu Development of Mobile Phone Game Based on Java ME Bachelor’s Thesis Information Technology May 2011 DESCRIPTION Date of the bachelor's thesis th 15 May, 2011 Author(s) Degree programme and option Yang Liu Information Technology Name of the bachelor's thesis Development of Mobile Phone Game Based on Java ME Abstract Recently, mobile phones have become more and more widespread in more than one aspect. Meanwhile, a large number of advanced features have also been applied into mobile devices. As we know, mobile phone game is one of them. In this final thesis, I develop a Chinese Chess game. Chinese Chess, also called Xiang Qi, is one of the most popular and oldest board games worldwide, which is more or less similar to Western Chess related to the appearance and regulations. In order to spread China culture and make individuals realize how fun and easy this game is, I introduce this Chinese Chess game as the topic in terms of my final thesis. In this final thesis, I use API (JSR 118) to build a user interface so as to set the board and pieces in the first place. Thereafter, some relevant basic rules are drawn up through logical control. This project is designated to be run on Java ME platform and Java SDK simulation software. Subject headings, (keywords) Java ME, JDK, Java SDK, MIDP, CLDC, API, Chinese Chess Pages Language URN 63 p.+app.28 English Remarks, notes on appendices Tutor Employer of the bachelor's thesis Matti Koivisto Mikkeli University of Applied Sciences ACKNOWLEDGEMENT In the first place, I would like to represent my greatest appreciation to my supervisor Mr.
    [Show full text]
  • Proceedings of the 2Nd Annual Digital TV Applications Software Environment
    NISTIR 6740 Proceedings of the 2nd Annual Digital TV Applications Software Environment (DASE) Symposium 2001: End-to-End Data Services, Interoperability & Applications Edited by: Alan Mink Robert Snelick Information Technology Laboratory June 2001 National Institute of Standards and Technology Technology Administration, U.S. Deportment of Commerce U.S. Department of Commerce Donald L Evans, Secretary National Institute of Standards and Technology Karen H. Brown, Acting Director Table of Contents Foreword ..................................................................................…………………………………………… vi Symposium Committee ................................................................................................................................ vii Opening Remarks Welcome to NIST Alan Mink A TSC Introduction Marker Richer, Executive Director. Advanced Television Systems Committee (ATSC) 1st Day Keynote Gloria Tristani, Commissioner, Federal Communications Commission (FCC) ATP at NIST Marc Stanley, Acting Director, Advanced Technology Program (ATP) 2nd Day Keynote Christopher Atienza. Associate Director of Technology, Public Broadcasting System (PBS) Session 1: DASE Components DASE Overview, Architecture & Common Content Types...............................................................1 Glenn Adams (ATSC T3/SI7 Acting Chair), XFSI, Inc DASE Declarative Applications & Environment .............................................................................31 Glenn Adams (ATSC T3/SI7 Acting Chair), XFSI, Inc DASE API Object Model
    [Show full text]
  • JAVA User's Guide Siemens Cellular Engine
    s JAVA User's Guide Siemens Cellular Engine Version: 08 DocID: TC65_AC75_JAVA User's Guide_V08 Supported products: TC65, TC65 Terminal, AC75 JAVA™ Users Guide JAVA User's Guide s Confidential / Released Document Name: JAVA User's Guide Supported products: TC65, TC65 Terminal, AC75 Version: 08 Date: June 12, 2006 DocId: TC65_AC75_JAVA User's Guide_V08 Status: Confidential / Released General Notes Product is deemed accepted by recipient and is provided without interface to recipient’s products. The documentation and/or product are provided for testing, evaluation, integration and information purposes. The documentation and/or product are provided on an “as is” basis only and may contain deficiencies or inadequacies. The documentation and/or product are provided without warranty of any kind, express or implied. To the maximum extent permitted by applicable law, Siemens further disclaims all warranties, including without limitation any implied warranties of merchantability, completeness, fitness for a particular purpose and non-infringement of third-party rights. The entire risk arising out of the use or performance of the product and documentation remains with recipient. This product is not intended for use in life support appliances, devices or systems where a malfunction of the product can reasonably be expected to result in personal injury. Applications incorporating the described product must be designed to be in accordance with the technical specifications provided in these guidelines. Failure to comply with any of the required procedures can result in malfunctions or serious discrepancies in results. Furthermore, all safety instructions regarding the use of mobile technical systems, including GSM products, which also apply to cellular phones must be followed.
    [Show full text]
  • Web Services Edge East Conference & Expo Featuring FREE Tutorials, Training Sessions, Case Studies and Exposition
    JAVA & LINUX FOCUS ISSUE TM Java COM Conference: January 21-24, 2003 Expo: January 22-24, 2003 www.linuxworldexpo.com The Javits Center New York, NY see details on page 55 From the Editor Alan Williamson pg. 5 Java & Linux A Marriage Made in Heaven pg. 6 TCO for Linux Linux Fundamentals: Tools of the Trade Mike McCallister ...and J2EE Projects pg. 8 Programming Java in Linux – a basic tour $40010 60 Linux Vendors Life Is About Choices pg. 26 Feature: Managing HttpSession Objects2003 SAVEBrian A. Russell 8 PAGE CONFERENCE Create a well-designed session for a better Web appEAST INSERT PAGE18 63 Career Opportunities Bill Baloglu & Billy Palmieri DGE pg. 72 Integration: PackagingE Java Applications Ian McFarland for OS X Have great looking double-clickable applications 28 Java News ERVICES pg. 60 S EB Specifications: JCP Expert Group Jim Van Peursem JDJ-IN ExcerptsW Experiences – JSR-118 An inside look at the process 42 SPECIALpg. 61 INTERNATIONAL WEB SERVICES CONFERENCE & EXPO Letters to the Editor Feature: The New PDA Profile Jim Keogh OFFER!pg. 62 The right tool for J2ME developers 46 RETAILERS PLEASE DISPLAY UNTIL MARCH 31, 2003 Product Review: exe4j Jan Boesenberg by ej-technologies – a solid piece of software 56 Interview: JDJ Asks ...Sun on Java An exclusive chance to find out what’s going on at Sun 58 SYS -CON Blair Wyman MEDIA Cubist Threads: ‘(Frozen)’ A snow-packed Wyoming highway adventure 74 Everybody’s focused on exposing applications as Web services while letting someone else figure out how to connect them. We’re that someone else.
    [Show full text]
  • Oracle® Java ME Embedded Getting Started Guide for the Windows Platform Release 3.3 E35132-02
    Oracle® Java ME Embedded Getting Started Guide for the Windows Platform Release 3.3 E35132-02 June 2013 This book describes how to use Oracle Java ME SDK to develop embedded applications, using both the NetBeans and Eclipse Integrated Development Environments, on a Windows XP or Windows 7 platform. Oracle Java ME Embedded Getting Started Guide for the Windows Platform, Release 3.3 E35132-02 Copyright © 2012, 2013, Oracle and/or its affiliates. All rights reserved. This software and related documentation are provided under a license agreement containing restrictions on use and disclosure and are protected by intellectual property laws. Except as expressly permitted in your license agreement or allowed by law, you may not use, copy, reproduce, translate, broadcast, modify, license, transmit, distribute, exhibit, perform, publish, or display any part, in any form, or by any means. Reverse engineering, disassembly, or decompilation of this software, unless required by law for interoperability, is prohibited. The information contained herein is subject to change without notice and is not warranted to be error-free. If you find any errors, please report them to us in writing. If this is software or related documentation that is delivered to the U.S. Government or anyone licensing it on behalf of the U.S. Government, the following notice is applicable: U.S. GOVERNMENT END USERS: Oracle programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, delivered to U.S. Government end users are "commercial computer software" pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental regulations.
    [Show full text]
  • J2ME: the Complete Reference
    Color profile: Generic CMYK printer profile Composite Default screen Complete Reference / J2ME: TCR / Keogh / 222710-9 Blind Folio i J2ME: The Complete Reference James Keogh McGraw-Hill/Osborne New York Chicago San Francisco Lisbon London Madrid Mexico City Milan New Delhi San Juan Seoul Singapore Sydney Toronto P:\010Comp\CompRef8\710-9\fm.vp Friday, February 07, 2003 1:49:46 PM Color profile: Generic CMYK printer profile Composite Default screen Complete Reference / J2ME: TCR / Keogh / 222710-9 / Front Matter Blind Folio FM:ii McGraw-Hill/Osborne 2600 Tenth Street Berkeley, California 94710 U.S.A. To arrange bulk purchase discounts for sales promotions, premiums, or fund-raisers, please contact McGraw-Hill/Osborne at the above address. For information on translations or book distributors outside the U.S.A., please see the International Contact Information page immediately following the index of this book. J2ME: The Complete Reference Copyright © 2003 by The McGraw-Hill Companies. All rights reserved. Printed in the United States of America. Except as permitted under the Copyright Act of 1976, no part of this publication may be reproduced or distributed in any form or by any means, or stored in a database or retrieval system, without the prior written permission of publisher, with the exception that the program listings may be entered, stored, and executed in a computer system, but they may not be reproduced for publication. 1234567890 CUS CUS 019876543 ISBN 0-07-222710-9 Publisher Copy Editor Brandon A. Nordin Judith Brown Vice President & Associate Publisher Proofreader Scott Rogers Claire Splan Editorial Director Indexer Wendy Rinaldi Jack Lewis Project Editor Computer Designers Mark Karmendy Apollo Publishing Services, Lucie Ericksen, Tara A.
    [Show full text]
  • Semi-Automated Mobile TV Service Generation
    > IEEE Transactions on Broadcasting < 1 Semi-automated Mobile TV Service Generation Dr Moxian Liu, Member, IEEE, Dr Emmanuel Tsekleves, Member, IEEE, and Prof. John P. Cosmas, Senior Member, IEEE environments from both hardware and software perspectives. The development results on the hardware environment and Abstract—Mobile Digital TV (MDTV), the hybrid of Digital lower layer protocols are promising with reliable solutions Television (DTV) and mobile devices (such as mobile phones), has (broadcast networks such as DVB-H and mobile convergence introduced a new way for people to watch DTV and has brought networks such as 3G) being formed. However the new opportunities for development in the DTV industry. implementation of higher layer components is running Nowadays, the development of the next generation MDTV service relatively behind with several fundamental technologies has progressed in terms of both hardware layers and software, (specifications, protocols, middleware and software) still being with interactive services/applications becoming one of the future MDTV service trends. However, current MDTV interactive under development. services still lack in terms of attracting the consumers and the The vast majority of current commercial MDTV service service creation and implementation process relies too much on applications include free-to-air, Pay Television (PayTV) and commercial solutions, resulting in most parts of the process being Video-on-Demand (VoD) services. When contrasted with the proprietary. In addition, this has increased the technical demands various service types of conventional DTV, MDTV services for developers as well as has increased substantially the cost of are still unidirectional, offering basic services that lack in producing and maintaining MDTV services.
    [Show full text]
  • Downloads and Documentation Are 12 Implementation Details
    Java™ Technology Concept Map SM 2 Sun works with companies become members of the JCP by signing JSPA has a is which What is Java Technology? onthe represented are supports the development of ... Java 0 within the context of the Java Community Process, Java Community Process The Java Specification Participation Programming language Java object model that is an that by is organized defines This diagram is a model of Java™ technology. The diagram begins with members join the JCP by signing the provides ... documentation 42 may function as ... developers 23 Agreement is a one-year renewable is defined by the ... Java Language Specification 43 logo owns the ... Java trademark 1 support the development of ... Java 0 agreement that allows signatories to is used to write ... programs 24 make(s) ... SDKs 29 make ... SDKs 29 Class libraries are An application programming interface is the Particular to Java, Abstract classes permit child explains Java technology by placing it in the context of related Java forums often discuss Java in Java developer become members of the JCP. is used to write ... class libraries 10 organized collections written or understood specification of how a interfaces are source code classes to inherit a defined method makes versions of a ... JVM 18 make versions of a ... JVM 18 Companies include Alternatively, developers can sign the syntax and 4 of prebuilt classes piece of software interacts with the outside files that define a set of or to create groups of related communities provides certify Java applications using IBM, Motorola, more limited Individual Expert The Java language has roots in C, Objective C, and functions used to world.
    [Show full text]
  • Entrevista Promoções Agenda De Eventos
    ENTREVISTA Bjjarne Stroustrup, o criador do C++ PROMOÇÕES AGENDA DE http://reviista.espiiriitolliivre.org | #024 | MarÇo 2011 EVENTOS Linguagens de ProgramaÇÃo Grampos Digitais ­ PÁg 21 TV pela Internet no Ubuntu ­ PÁg 70 SumÁrio e PaginaÇÃo no LibreOffice ­ PÁg 57 Navegando em pequenos dispositivos ­ PÁg 74 Teste de IntrusÃo com Software Livre ­ PÁg 65 Linux AcessÍvel ­ PÁg 88 Alterando endereÇos MAC ­ PÁg 69 Mulheres e TI: Seja tambÉm uma delas ­ PÁg 90 COM LICENÇA Revista EspÍrito Livre | Março 2011 | http://revista.espiritolivre.org |02 EDITORIAL / EXPEDIENTE EXPEDIENTE Diretor Geral Programando sua vida... JoÃo Fernando Costa Júnior Neste mês de março, a Revista EspÍrito Livre fala de um assunto que para muitos É um bicho de 7 cabeças: Linguagens de ProgramaÇÃo. Seja você Editor desenvolvedor ou nÃo, programar É um ato diÁrio. Nossos familiares se JoÃo Fernando Costa Júnior programam para seus afazeres, seu filho se programa para passar no vestibular, você se programa para cumprir as suas obrigaÇÕes. Programar­se É RevisÃo um ato cotidiano, e nÃo exclusivo dos desenvolvedores de programas. EntÃo AÉcio Pires, Alessandro Ferreira Leite, porque inÚmeras pessoas materializam na programaÇÃo os "seus piores Alexandre A. Borba, Carlos Alberto V. pesadelos? Será algo realmente complexo? Será fÁcil atÉ demais? A quem Loyola Júnior, Daniel Bessa, Eduardo Charquero, Felipe Buarque de Queiroz, diga e atÉ ignore tais dificuldades encontradas por várias pessoas nesse ramo Fernando Mercês, Larissa Ventorim da computaÇÃo, que sempre carece de mão­de­obra qualificada para o Costa, Murilo Machado, OtÁvio mercado. Alunos de diversos cursos de computaÇÃo encontram nesta parte da Gonçalves de Santana, Rodolfo M.
    [Show full text]
  • OPEN SOURCE VERSUS the JAVA Platformpg. 6
    OPEN SOURCE VERSUS THE JAVA PLATFORM pg. 6 www.JavaDevelopersJournal.com Web Services Edge West 2003 Sept. 30–Oct. 2, 2003 Santa Clara, CA details on pg. 66 From the Editor Best Laid Plans... Alan Williamson pg. 5 Viewpoint In Medias Res Bill Roth pg. 6 Q&A: JDJ Asks... IBM-Rational J2EE Insight Interview with Grady Booch 10 We Need More Innovation Joseph Ottinger pg. 8 Feature: JSP 2.0 Technology Mark Roth J2SE Insight The community delivers a higher performing language 16 Sleeping Tigers Jason Bell pg. 28 Graphical API: Trimming the Fat from Swing Marcus S. Zarra Simple steps to improve the performance of Swing 30 J2ME Insight The MIDlet Marketplace Glen Cordrey pg. 46 Feature: Xlet: A Different Kind of Applet Xiaozhong Wang The life cycle of an Xlet 48 Industry News for J2ME pg. 68 Network Connectivity: java.net.NetworkInterface Duane Morin Letters to the Editor A road warrior’s friend – detecting network connections 58 pg. 70 RETAILERS PLEASE DISPLAY Labs: ExtenXLS Java/XLS Toolkit Peter Curran UNTIL SEPTEMBER 30, 2003 by Extentech Inc. – a pure Java API for Excel integration 62 JSR Watch: From Within the Java Community Onno Kluyt Process Program More mobility, less complexity 72 From the Inside: The Lights Are On, SYS -CON MEDIA but No One’s Home Flipping bits 74 WE’VE ELIMINATED THE NEED FOR MONOLITHIC BROKERS. THE NEED FOR CENTRALIZED PROCESS HUBS. THE NEED FOR PROPRIETARY TOOL SETS. Introducing the integration technology YOU WANT. Introducing the Sonic Business Integration Suite. Built on the Business Integration Suite world’s first enterprise service bus (ESB), a standards-based infrastructure that reliably and cost-effectively connects appli- cations and orchestrates business processes across the extended enterprise.
    [Show full text]