Java has evolved beyond just being a programming language. It can now be used to run various other languages by compiling them to bytecode that runs on the Java Virtual Machine. This opens up new possibilities and ways of programming. While Java once had issues with complexity and verbosity, new technologies like Bean Scripting Framework and Java Specification Requests have helped make it easier to integrate other languages and scripting into Java applications.
Eu vim aqui hoje falar de outras linguagens. Outras formas de fazer as coisas que não em java. Mas ao mesmo tempo eu vim para falar de java.\n
Eu vim aqui hoje falar de outras linguagens. Outras formas de fazer as coisas que não em java. Mas ao mesmo tempo eu vim para falar de java.\n
Eu vim aqui hoje falar de outras linguagens. Outras formas de fazer as coisas que não em java. Mas ao mesmo tempo eu vim para falar de java.\n
Eu vim aqui hoje falar de outras linguagens. Outras formas de fazer as coisas que não em java. Mas ao mesmo tempo eu vim para falar de java.\n
Eu vim aqui hoje falar de outras linguagens. Outras formas de fazer as coisas que não em java. Mas ao mesmo tempo eu vim para falar de java.\n
Eu vim aqui hoje falar de outras linguagens. Outras formas de fazer as coisas que não em java. Mas ao mesmo tempo eu vim para falar de java.\n
\n
\n
\n
\n
Aqui estabelecer uma linha do tempo do Java e do mercado de TI. Mostrar como as coisas foram evoluindo e como a linguagem acompanhou\n
A linguagem evolui para atender diversas demandas. Cresceu e cresceu muito. Evolui na tentativa de atender a todos os pedidos e necessidades de sua comunidade.\n
\n
Conforme cresceu ela também aumentou demais a sua complexidade. A sua curva de aprendizado é enorme. Para fazer qualquer coisa em java, simples, como um site com um CRUD o conhecimento tem que ser grande.\n
Então ela virou uma enorme sopa de letrinhas. É JPA, J2EE, JAX, JAX-RPC, J2ME, Java NIO, JSPs, Spring, Struts, Maven ... \n
Virou uma visão de bala de prata. Pronta para resolver qualquer problema. Virou uma panacéia. A cura para todos os males. Se tornou o grande ORACULO (piadinha com o Oracle)\n
\n
\n
\n
\n
\n
\n
\n
Outras linguagens com outros paradigmas podem se mostrar ferramentas melhores para sermos mais produtivos. Podemos resolver os problemas com menos código, menos horas e muitas vezes de formas muito mais eficiente pelo simples fato de estarmos em outro paradigma. Um exemplo é o Clojures, Scala, etc. \n
\n
\n
\n
Para mim a JVM é a grande invenção. ela trouxe a verdadeira. Embora tenha sido feita para a linguagem, ela em si é um avanço gigantesco\n
Eu vim aqui hoje falar de outras linguagens. Outras formas de fazer as coisas que não java.\n
Eu vim aqui hoje falar de outras linguagens. Outras formas de fazer as coisas que não java.\n
Eu vim aqui hoje falar de outras linguagens. Outras formas de fazer as coisas que não java.\n
Eu vim aqui hoje falar de outras linguagens. Outras formas de fazer as coisas que não java.\n
Eu vim aqui hoje falar de outras linguagens. Outras formas de fazer as coisas que não java.\n
Eu vim aqui hoje falar de outras linguagens. Outras formas de fazer as coisas que não java.\n
Com isso podemos partir para outra linguagens que facilitam a resolução dos meus problemas ou me façam mais produtivos e conviver bem com meu ambiente e meu legado feito em java mesmo. Não preciso jogar tudo no lixo nem esquecer do que eu sei em java.\n
\n
\n
Alguns exemplos de linguagens dentro da JVM\n
Alguns exemplos de linguagens dentro da JVM\n
Alguns exemplos de linguagens dentro da JVM\n
Alguns exemplos de linguagens dentro da JVM\n
\n
\n
Bean Scripting Framework\n
é a jsr de scripting dentro da linguagem. É a definição da api para escrever engines para interpretar outras linguagens dentro do contexto de java\n
This specification will standardize BeanShell, a Java syntax compatible scripting language for the Java platform.The BeanShell language bridges Java into the scripting domain in a natural way, allowing developers to mix static Java syntax with scripting conventions such as optional typing, simple closures, dynamic commands, and other conveniences.\nBeanShell is a VM hosted language, supporting dynamic execution of the full Java grammar and semantics as well as transparent access to Java objects and APIs. Additional scripting and convenience features are brought into the language as a strict superset of the the Java language syntax. In this way BeanShell attempts to minimize both the syntactic and runtime barriers between Java application code and scripts, easing development and facilitating migration between scripts and static Java.\nThis specification will standardize the BeanShell language syntax and a minimal set of core commands and environmental components.\n\n
é a especificação para invocação dinamica de métodos dentro da jvm\n
\n
\n
\n
Graças a algumas jsrs a jvm passou de simplesmente tratar código escrito exclusivamente em java para se tornar uma plataforma poliglota. Nisso podemos citar o BeanShell ... E mais por final a parte de implementação a questão dos invoke dinamics e outras coisas que tornaram a jvm mais aderente a novas linguagens e seus paradigmas.\nJSR 223, 274, 292, 338, \n