<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    "http://www.w3.org/TR/html4/loose.dtd">
<html>
    <head>
        <title>Vídeo da Migração Inteligente para JDK 8 no NetBeans IDE</title>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" >
        <meta name="description" content="A screencast that introduces JDK 8 in NetBeans IDE.">
        <link rel="stylesheet" type="text/css" href="../../../netbeans.css">
    </head>
    <body>

        <!--
        Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
        -->

        <h1>Vídeo da Migração Inteligente para JDK 8 no NetBeans IDE</h1>

        <table>
            <tr>
                <td class="valign-top">

                    <p>Este screencast é um guia para as principais funcionalidades dos aprimoramentos de linguagem em Java 8, especialmente lambdas, operações funcionais e referências de método, e como usar o IDE para ajudar na migração de código para Java 8.
                    </p>
                    <p>Autor: Geertjan Wielenga<br>Hora: 14:00</p>
                    <p><a href="http://bits.netbeans.org/media/smart-migration-java8.mp4">Download / Veja em tamanho completo</a> (60 MB)</p>

                </td>

                <td width="486" class="valign-top align-center">

                    <script src="/images_www/js/mediaplayer-5.9/jwplayer.js" type="text/javascript"></script>                   
                    <div id="player" >
                        <center>
                            <div id="flashContent"></div>
                        </center>
                    </div>
                    <script type="text/javascript">
                        $(function() {
                            var targetFile = 'http://bits.netbeans.org/media/smart-migration-java8.mp4';
                            jwplayer('flashContent').setup({
                                'id': 'flashContentId',
                                'width': '530',
                                'height': '340',
                                'autostart': 'true',
                                'file': targetFile,
                                'controlbar': {position: 'bottom'},
                                'modes': [
                                    {type: 'html5'},
                                    {type: 'flash', src: '/images_www/js/mediaplayer-5.9/player.swf'},
                                    {type: 'download'}
                                ]
                            });
                        });
                    </script>

                </td>

            </tr>

            <tr>
                <td colspan="2">
                    <br style="clear:both;">
                    <div class="feedback-box">
                        <a href="/about/contact_form.html?to=3&amp;subject=Feedback: Smart Migration to JDK 8 in NetBeans IDE">Enviar Feedback neste Tutorial</a>
                    </div>
                </td>
            </tr>

        </table>


        <h2>Links relacionados</h2>

        <ul>
            <li><a href="http://openjdk.java.net/projects/jdk8/">Página do Projeto JDK 8</a></li>
            <li><a href="https://netbeans.org/kb/docs/java/javase-jdk8.html">Visão Geral do Suporte a JDK 8 no NetBeans IDE</a></li>
            <li><a href="https://netbeans.org/features/java/index.html">Páginas de Funcionalidades do NetBeans: Java</a></li>
            <li><a href="https://netbeans.org/kb/trails/java-se.html">Trilha de Aprendizado NetBeans do Desenvolvimento Geral em Java</a></li>
            <li><a href="http://docs.oracle.com/javase/tutorial/java/javaOO/lambdaexpressions.html">Os Tutoriais do Java: Expressões Lambda</a></li>
            <li><a href="http://apex.oracle.com/pls/apex/f?p=44785:24:114639602012411::::P24_CONTENT_ID,P24_PREV_PAGE:7919,24">Oracle Learning Library: Java SE 8 Lambda Series</a></li>
        </ul>

    </body>

</html>
