| By Lahlali Issam | Article Rating: |
|
| November 26, 2011 11:00 AM EST | Reads: |
3,355 |
JRE 6 was released in 2006, five years after a major JRE version was released. For the past few years Java was looking stagnant, and many Java developers began to worry; this concern was amplified when Oracle purchased Sun.
We will try to discover if there's a big refactoring or maybe many features were added that can explain the time span between these two releases. In this first part we will focus on design and implementation changes, and the second part will focus on added features and breaking changes.
With JavaDepend we can compare two versions and detect any modifications concerning architecture, design or implementation. We can provide a summary of the changes using the following views.
Info View
JRE 7 has improved almost 10% compared to JRE 6. We noticed that the metrics ProjectCa and ProjectCe were decreased. When proofed with JRE7 there was less coupling between projects, and it's an indicator that a refactoring was made for this new release.
Class Browser
What’s interesting with this view is that we can easily discover what’s added (in bold), removed (crossed) and changed (underlined).
Dependency Structure Matrix
The Dependency Structure Matrix is a compact way to represent and navigate across dependencies between components. For most engineers, talking of dependencies means talking about the dependency graph. But the matrix can have the following advantages:
- Graph is more intuitive but can be totally confusing when the numbers of nodes and edges grow (a few dozens boxes can be enough to produce a graph that's too complex)
- DSM is less intuitive but can be a very efficient way to represent a large and complex graph. We say that DSM scales compare to graph.
After a comparison we can see what has changed - the sign (+) shows that a dependency is added, and the sign (-) indicates that a dependency was removed.
Published November 26, 2011 Reads 3,355
Copyright © 2011 Ulitzer, Inc. — All Rights Reserved.
Syndicated stories and blog feeds, all rights reserved by the author.
Related Stories
More Stories By Lahlali Issam
Lahlali Issam Lead Developer at JavaDepend, a tool to manage and understand complex Java code. With JavaDepend, software quality can be measured using Code Metrics, visualized using Graphs and Treemaps, and queried using CQL language, a SQL like to query the code base.
- Gartner Hype Cycle for Emerging Technologies 2011
- It's the Java vs. C++ Shootout Revisited!
- Adobe Sends Flex to the Apache Foundation
- Microsoft’s Second UI Innovation
- Five Years Waiting for JRE 7: Is It Justified? (Part 1)
- Book Excerpt: Java Application Profiling Tips and Tricks
- Java for Programmers (2nd Edition)
- OpenXava 4.3: Rapid Java Web Development
- Patterns for Building High Performance Applications
- Is Write Once Run Anywhere Ever Going to Be a Reality?
- Asynchronous Logging Using Spring
- Book Excerpt: Java Application Profiling Tips and Tricks - Part 2
- Gartner Hype Cycle for Emerging Technologies 2011
- It's the Java vs. C++ Shootout Revisited!
- Adobe Sends Flex to the Apache Foundation
- Microsoft’s Second UI Innovation
- Five Years Waiting for JRE 7: Is It Justified? (Part 1)
- Book Excerpt: Java Application Profiling Tips and Tricks
- The Great Oracle v Google Android Trial Postponed Indefinitely
- Java for Programmers (2nd Edition)
- OpenXava 4.3: Rapid Java Web Development
- Announcing Rapid Protect - A Comprehensive Mobile Application Geared to Address the Safety and Security Needs of the Families Worldwide
- Best Practices for Business Transaction Management
- Patterns for Building High Performance Applications
- Secrets Of The Masters: Core Java Job Interview Questions
- A Cup of AJAX? Nay, Just Regular Java Please
- SYS-CON Announces Readers' Choice Awards for SOA, Java, Linux, .NET, MX, ColdFusion, and XML Technologies
- Java Developer's Journal Exclusive: 2006 "JDJ Editors' Choice" Awards
- Rich Internet Applications with Adobe Flex 2 and Java
- Java vs C++ "Shootout" Revisited
- Reporting Made Easy with JasperReports and Hibernate
- Why Do 'Cool Kids' Choose Ruby or PHP to Build Websites Instead of Java?
- What's New in Eclipse?
- How and Why AJAX, Not Java, Became the Favored Technology for Rich Internet Applications
- Cover Story: What Is POJO Programming?
- Java Basics: Lesson 11, Java Packages and Imports (Live Video Education)





































Ulitzer content is offered under Creative Commons "Attribution Non-Commercial No Derivatives" License.
For any reuse or distribution, you must make clear to others the license terms of this work.
The best way to do this is with a link to this web page.
Any of the above conditions can be waived if you get written permission from Ulitzer, Inc., the copyright holder.
Nothing in this license impairs or restricts the author's moral rights.