TweetFollow Us on Twitter

Sep 97 Viewpoint

Volume Number: 13 (1997)
Issue Number: 9
Column Tag: Viewpoint

Viewpoint

by Eric Gundrum

Java Still Brewing

There has been more hype surrounding Sun's Java than anything else I remember about the computer industry. I am not entirely sure why Java has generated so much excitement. I suspect it has something to do with the promise of truly portable computing; that is, write code once and run it anywhere and everywhere. Unfortunately Java is still very far from realizing that promise. In fact, it is about as close to that promise as bad diner coffee is to a cup of home-brewed Sumatra.

Don't get me wrong, I want a product to do what Java promises just as much as everyone else. I would love to be able to sit down in a cafe with a public Java terminal, log into my web site, read mail, review my financial accounts, work on a few articles and write some code. Doing this from any computer, anywhere, and at any time would be wonderful. This capability would likely result in computers becoming more ubiquitous than telephones. However, Java is not up to it just yet.

A Well Designed Language

In recent weeks, I have been doing some research into Java. This language seems well designed when compared to the likes of C++ and the other common object-based languages. The Java designers seem to be well versed the various object-oriented languages and pulled the best principles and techniques from many of them.

I particularly like the appropriate mix of keywords and punctuation. People cite C++ as an obfuscating language partly because it tends to use punctuation for everything; just look at how many different meanings there are for a colon. C programmers complain about Pascal's use of keywords for everything. They get irritated by having to type "BEGIN" and "END" an infinite number of times when simple braces will do just fine.

Java's syntax looks a lot like C++ on the surface, but it includes some of the verbosity of Pascal where the extra verbiage can be a real benefit. Java's designers did not go overboard; they use C-style braces to define scope, so you won't get tired fingers from typing "BEGIN" and "END" all over the place. However, they added "implements," "extends," and other keywords to make the structure and meaning of the code clear from the text, rather than relying on your memory and the terse symbols of C++.

Another nice improvement is the absence of header files. Classes are declared in the same file in which they are implemented. The class declaration is included in the resulting binary object. Want to use a Java class in your applet? Just "import" the library file containing the class. The lack of header files, coupled with dynamic binding can eliminate many of the common problems coordinating the build process on multi-person projects. It also means fewer source files to maintain.

One of the most touted improvements is having memory management built into the language. No longer do we have to waste so much time tracing down rogue handles or other memory errors. Unfortunately, the implementations of garbage collection in most Java environments still leave a lot to be desired, but this is just an implementation issue. Sooner or later the Java vendors will provide more efficient garbage collection to gain performance better than their competitors.

Too Many Flavors

The biggest problem with multi-platform Java development is that there are too many flavors of Java and they don't quite work the same. This means that we must test our applications on all of the available Java platforms if we want to be sure it works for the multi-platform audience. Java programmers have reported to me that they can spend as much as 80% of their development time tracing and resolving platform-specific idiosyncrasies. Unfortunately, it looks like this problem will get much worse before it gets any better. There are many more implementations on the way, including those embedded in microchips.

What we need is an unambiguous specification for the language and libraries, and a certification process to ensure each implementation abides by the spec. For the moment, Sun seems too busy pumping the Java media wave to deal with this issue. (Sun's "100% Java" campaign is an example of this hype.) If this problem is not solved soon, it will likely be what stops the seeming endless momentum of Java.

Conclusions

Java is a nice evolutionary step beyond C++, but it is not the be-all and end-all of languages. Java incorporates features other languages have had for years, bringing these features into the mainstream, but the implementation is still immature. In time, Java should improve significantly, the programming community will become familiar with these "new" features and they will demand them of whatever succeeds Java. First, we have to get them working in Java.

Apple has made a lot of noise about Java being important to their future success, and to ours. This makes sense. If Apple's hardware business dries up, and their OS business dries up, what's left for them to do with their valuable brand name? Apple has been positioning themselves to be an important player in the Java sandbox.

Even so, Apple's Java strategy is way behind that of the rest of the world. Currently, Mac developers have to wait far too long if they want to use the latest Java technologies on the Mac. Many developers don't wait, they use another OS. Hopefully, Apple is fixing this problem; only time will tell.

 

Community Search:
MacTech Search:

Software Updates via MacUpdate

ffWorks 3.3.5 - A Comprehensive Video Co...
ffWorks, focused on simplicity, brings a fresh approach to the use of FFmpeg, allowing you to create ultra-high-quality movies without the need to write a single line of code on the command-line.... Read more
Arq 7.19.11 - Online backup to Google Dr...
Arq is super-easy online backup for Mac and Windows computers. Back up to your own cloud account (Amazon Cloud Drive, Google Drive, Dropbox, OneDrive, Google Cloud Storage, any S3-compatible server... Read more
Opera 97.0.4719.28 - High-performance We...
Opera is a fast and secure browser trusted by millions of users. With the intuitive interface, Speed Dial and visual bookmarks for organizing favorite sites, news feature with fresh, relevant content... Read more
Google Chrome 111.0.5563.110 - Modern an...
Google Chrome is a Web browser by Google, created to be a modern platform for Web pages and applications. It utilizes very fast loading of Web pages and has a V8 engine, which is a custom built... Read more
Vivaldi 5.7.2921.65 - An advanced browse...
Vivaldi is a browser for our friends. We live in our browsers. Choose one that has the features you need, a style that fits and values you can stand by. From the look and feel, to how you interact... Read more
Ableton Live 11.2.11 - Record music usin...
Ableton Live lets you create and record music on your Mac. Use digital instruments, pre-recorded sounds, and sampled loops to arrange, produce, and perform your music like never before. Ableton Live... Read more
Adobe Acrobat DC 23.001.20093 - Powerful...
Acrobat DC is available only as a part of Adobe Creative Cloud, and can only be installed and/or updated through Adobe's Creative Cloud app. Adobe Acrobat DC DC with Adobe Document Cloud services is... Read more
Adobe Acrobat Reader 23.001.20093 - View...
Adobe Acrobat Reader allows users to view PDF documents. You may not know what a PDF file is, but you've probably come across one at some point. PDF files are used by companies and even the IRS to... Read more
Paragon NTFS 15.10.590 - Provides full r...
Paragon NTFS breaks down the barriers between Windows and macOS. Paragon NTFS effectively solves the communication problems between the Mac system and NTFS. Write, edit, copy, move, delete files on... Read more
Slack 4.31.152 - Collaborative communica...
Slack brings team communication and collaboration into one place so you can get more work done, whether you belong to a large enterprise or a small business. Check off your to-do list and move your... Read more

Latest Forum Discussions

See All

Recapping All the Best Drama – The Touch...
In this week’s episode of The TouchArcade Show we recap all the big drama of the week, because drama=clicks baby! I also talk about the new WaterField Magnetic Gaming Case for the Steam Deck, which just arrived in my hot little hands a couple of... | Read more »
TouchArcade Game of the Week: ‘Well Word...
We were already big fans of developer BJ Malicoat, who does business under the name Bird Cartel, due to the release of Pine Tar Poker late last year. Poker is one of those games that kind of is what it is, so it’s always very hard to come up with... | Read more »
SwitchArcade Round-Up: Reviews Featuring...
Hello gentle readers, and welcome to the SwitchArcade Round-Up for March 24th, 2023. It turned out to be a fairly busy one today. We’ve got a little news to look at, plus a review from our pal Mikhail. After that, we get into the many new releases... | Read more »
‘Honkai Star Rail’ Release Date Announce...
Last month, Genshin Impact and Honkai Impact 3rd developer HoYoverse began pre-orders and pre-registrations for the upcoming space fantasy turn-based RPG Honkai Star Rail. | Read more »
Tactical Card Battling RPG ‘Black Book’...
Developer Merteshka and publisher HypeTrain Digital just revealed an iOS version of the card battling tactical RPG Black Book . Black Book is available on PC, Nintendo Switch, Xbox One, and PS4 right now. It will be coming to iOS on April 21st with... | Read more »
Clue/Cluedo: Hasbro’s Mystery Game+ Is T...
Clue: Hasbro’s Mystery Game+ from Marmalade Game Studios is this week’s new Apple Arcade release and it is out now alongside some notable updates. Clue: Hasbro’s Mystery Game+ or Cluedo: Hasbro’s Mystery Game+ depending on your region joins the... | Read more »
‘Stakes Winner ACA NEOGEO’ Review – A Ho...
When it comes to the NEOGEO, a few genres come to mind. Fighting games. Side-scrolling action games. Maybe shooters and beat-em-ups. The usual array of sports. You probably don’t think of horse racing games, but this was an arcade platform that was... | Read more »
SwitchArcade Round-Up: Reviews Featuring...
Hello gentle readers, and welcome to the SwitchArcade Round-Up for March 23rd, 2023. In today’s article, we kick things off with a couple of reviews. I take a look at Playism and kouri’s Ib, while our pal Mikhail has a look at the latest DLC... | Read more »
Snowbreak: Containment Zone is the lates...
Mobile gaming enthusiasts will soon be able to get their fill of sci-fi shooting, with Amazing Season announcing their upcoming game, Snowbreak: Containment Zone. Pre-registrations are now open for fans, and we also have their first trailer to get... | Read more »
Square Enix’s Card RPGs Voice of Cards:...
Back in late 2021, Square Enix released a new card-based RPG Voice of Cards: The Isle Dragon Roars on PS4, Nintendo Switch, and PC featuring some of the staff behind the NieR and Drakengard games. This included Yoko Taro, Yosuke Saito, Keiichi Okabe... | Read more »

Price Scanner via MacPrices.net

Shop our Apple MacBook Price Trackers for the...
We’ve updated our Apple award-winning MacBook Price Trackers with the latest information on prices, bundles, and availability for 16″, 14″, and 13″ MacBook Pros along with 13″ MacBook Airs from Apple... Read more
Back in stock: M1-powered Mac minis for only...
Apple has restocked clearance M1-powered Mac minis in their Certified Refurbished section starting at only $469. Each mini comes with Apple’s one-year warranty, and shipping is free. The following... Read more
Apple to release updated AirPods Pro 2 with U...
Analyst Ming-Chi Kuo, in his latest post, suggests that Apple will soon release an updated version of AirPods Pro 2 with a new USB-C case, replacing the current case using an Apple Lightning... Read more
16″ M2 Pro MacBook Pros on sale for $150 off...
Apple retailer Expercom has 16″ M2 Pro MacBook Pros in stock today and on sale for $150 off MSRP, valid through March 28, 2023. In addition to their MacBook Pro sale prices, take $50 off AppleCare+... Read more
13-inch M2 MacBook Pros on sale for $100 off...
Expercom has 13″ MacBook Pros with Apple M2 processors in stock and on sale today for $100 off MSRP through March 28, 2023. Shipping is free: – 2022 13″ MacBook Pro M2 CPU/256GB SSD: $1199, save $100... Read more
Amazon is selling Apple’s 24″ M1 iMacs for $2...
Amazon has Apple’s 24″ M1 iMacs on sale for $200 off MSRP. Their prices are currently the lowest available for new iMacs among the Apple retailers we track: – 24″ M1 iMacs (8-Core CPU/7-Core GPU/... Read more
Apple’s 10th-generation 10.2″ iPads are on sa...
Amazon has Apple’s 10th-generation iPads on sale for $50 off MSRP starting at only $399. Their discount applies to all models and all colors. With the discount, Amazon’s prices are the lowest... Read more
Apple 13-inch MacBook Pros are on sale for $1...
Amazon has 13″ MacBook Pros with Apple M2 processors in stock and on sale today for $150 off MSRP. Their prices are the lowest currently available these MacBook Pros. Be sure to purchase from Amazon... Read more
Apple Pro Display XDR with Nano-Texture Glass...
Apple Authorized Retailer Adorama has the Pro Display XDR with Nano-Texture Glass on sale for $500 off MSRP today. Shipping is free: – Apple 27″ Pro Display XDR Nano-Texture Glass: $5499 $500 off... Read more
10-Core M1 Max Apple Mac Studio on sale for $...
Adorama has the base 10-Core M1 Max Mac Studio in stock and on sale today for $1799 including free shipping. Their price is $200 off Apple’s MSRP, and it’s the lowest price available for a new Mac... Read more

Jobs Board

Omnichannel Associate - *Apple* Blossom Mal...
Omnichannel Associate - Apple Blossom Mall Location:Winchester, VA, United States (https://jobs.jcp.com/jobs/location/191170/winchester-va-united-states) - Apple Read more
Hair Stylist - *Apple* Blossom Mall - JCPen...
Hair Stylist - Apple Blossom Mall Location:Winchester, VA, United States (https://jobs.jcp.com/jobs/location/191170/winchester-va-united-states) - Apple Blossom Read more
Beauty Consultant - *Apple* Blossom Mall -...
Beauty Consultant - Apple Blossom Mall Location:Winchester, VA, United States (https://jobs.jcp.com/jobs/location/191170/winchester-va-united-states) - Apple Read more
Sales Floor Associate - *Apple* Blossom Mal...
Sales Floor Associate - Apple Blossom Mall Location:Winchester, VA, United States (https://jobs.jcp.com/jobs/location/191170/winchester-va-united-states) - Apple Read more
Cashier - *Apple* Blossom Mall - JCPenney (...
Cashier - Apple Blossom Mall Location:Winchester, VA, United States (https://jobs.jcp.com/jobs/location/191170/winchester-va-united-states) - Apple Blossom Mall Read more
All contents are Copyright 1984-2011 by Xplain Corporation. All rights reserved. Theme designed by Icreon.