<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<html>
    <head>
        <title>NetBeans IDE -  NetBeans Rich-Client Platform Development (RCP)</title>
        <link rel="stylesheet" href="../../netbeans.css" TYPE="text/css">
        <link rel="stylesheet" href="../../features.css" type="text/css" >
        <meta name="description" content="NetBeans IDE - Developing Java desktop application based on the NetBeans Rich-Client Platform (RCP) framework">
        <meta http-equiv="content-language" CONTENT="en">
        <meta name="author" content="Ruth Kusterer" />

        <!-- include necessary js for the image cycling -->
        <script type="text/javascript" src="/images_www/js/jquery-1.2.1.pack.js"></script>
        <script type="text/javascript" src="/images_www/js/jquery.cycle.all.pack.js"></script>

    </head>

    <body>
  
        <h1>The NetBeans Platform</h1>

        <table><tr><td align="center" width="250">
        <img src="/images_www/v6/platform-screens.png" width=246" height="232" alt="NetBeans platform applications"/>
        <p class="align-center"><img src="/images_www/v6/arrow-button1.gif" width="15" height="12" alt="arrow" style="display:inline-block;margin-bottom:-3px;"/> <a href="https://platform.netbeans.org/screenshots.html">More screenshots</a></p>
        </td>
        <td>
           <p><strong>
                Building a desktop application on top of the NetBeans Platform can save years of development time.
            </strong></p>


        <p>
            The NetBeans Platform is a generic framework for Swing applications.
            It provides the &quot;plumbing&quot; that, before, every developer
            had to write themselves&mdash;saving state, connecting
            actions to menu items, toolbar items and keyboard shortcuts;  window
            management, and so on.
        <p/>
        <p>
            The NetBeans Platform
            provides all of these out of the box. You don't need
            to manually code these or other basic features, yourself, anymore.
            See what <a href="https://platform.netbeans.org/screenshots.html">some NetBeans-based applications
                look like</a>.  The platform does not add a lot of overhead to
            your application &mdash; but it can save a huge amount of time and work.
        <p/>
        </td></tr></table>
        <p>The NetBeans Platform provides a reliable
            and flexible application architecture. Your application
            <a href="https://netbeans.org/images_www/screenshots/platform/blueMarine.jpg">
                does not have to look anything
                like an IDE</a>.  It can save you years of development time.
            The NetBeans Platform gives you a time-tested
            architecture for free.  An architecture that encourages
            sustainable development practices.
            Because the NetBeans Platform architecture
            is modular, it's easy to create applications that are robust
            and extensible.
        </p>
    </body>
</html>
