NetBeans & Ruby David Botterill Software Engineer Global Technology Manager - Campus Ambassador Program Sun Microsystems, Inc.

Slides:



Advertisements
Similar presentations
Creating Web Services with Ruby on Rails Robert Thew Internet and Web Systems II.
Advertisements

Language of the Month If it’s December, it must be Ruby! Adam Coffman and Brent Beer.
Ruby on Rails Web development that doesn’t hurt By Mylore, Dung, Lee, Karen and Bryan.
1 JRuby on Rails GAO ANG Sun Functional Campus Ambassador 1.
20-Jun-15 Eclipse. Most slides from: 2 About IDEs An IDE is an Integrated Development Environment.
SUN-AI Review by Anastas Misev Institute of Informatics Faculty of Natural Sciences and Mathematics University “Ss Cyril and Methodius” Skopje, Macedonia.
Femto Java Developing Java applications for tiny footprint platforms Eduard de Jong QC Technology B.V. BOF 2187
Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 12 1.
Version Enterprise Architect Redefines Modeling in 2006 An Agile and Scalable modeling solution Provides Full Lifecycle.
Eclipse IDE. 2 IDE Overview An IDE is an Interactive Development Environment Different IDEs meet different needs BlueJ and DrJava are designed as teaching.
Introduction to Ruby CSE 413 Autumn 2008 Credit: Dan Grossman, CSE341.
A little engineering on Rails Robert W. Hasker. Goals Intro to the Rails framework ▫Basic concepts: MVC, Active Record ▫A bit of Ruby Using Rails to build.
RUBY ON RAILS Mark Zhang. In this talk  Overview of Ruby on Rails  Core ideas  Show a tiny bit of example code  Touch on several general web development/
1. 2 What’s New in NetBeans IDE What is NetBeans IDE?  Ready to use out of the box  Support for latest Java specifications & standards  Other.
A TOUR OF RUBY 2011 ACM Class, Dong Xie. What is Ruby?  Dynamic programming language  Complex but expressive grammar  A core class library with rich.
Advanced Java New York University School of Continuing and Professional Studies.
Background The Encyclopedio of Life (EOL) is an ROR open source project to create a free, online reference source and database for every one of the 1.8.
Ruby! Ronald L. Ramos. What is Ruby? Ruby is a scripting language designed by Yukihiro Matsumoto, also known as Matz. It runs on a variety of platforms,
Ruby. Who am I? 1- Bunlong Van 2- Sreyleap Lay, 3- Chhon Meily Blog:
Eclipse Eclipse An IDE is an Integrated Development Environment Different IDEs meet different needs – BlueJ, DrJava are designed as teaching.
USING RUBY An Introduction By Evgeny Rahman. About Me Principal Engineer at FirstFuel Software 10+ years in Software Engineering 5 years working with.
Eclipse 24-Apr-17.
Ruby/Ruby on Rails Yasushi Osonoi Open Dream corporation
Eclipse. An IDE is an Integrated Development Environment Different IDEs meet different needs BlueJ, DrJava are designed as teaching tools Emphasis is.
Rich Internet Applications 2. Core JavaScript. The importance of JavaScript Many choices open to the developer for server-side Can choose server technology.
1 Getting Started with Ruby. 2 What’s Ruby? Ruby is an OO, dynamic, agile language –Everything’s an object For example, try puts -1.abs –Derives strengths.
Sun Start-Up Essentials Get a jumpstart to success Gokhan DOGAN & Alper CELIK Sun Campus Ambassadors to KTH
Introduction to information systems RUBY dr inż. Tomasz Pieciukiewicz.
Eclipse 27-Apr-17.
Ruby Tien Ho and Brandon Hostetter. Overview ▸ Object-oriented, functional, imperative, and reflective ▸ Interpreted language ▸ Influenced by Perl, Smalltalk,
Presented By P.SRIVIDYA 085D1A0552 Programming Language.
Visual Mobile Applications with Netbeans 6.0 Your Name Sun Campus Ambassador Your Address.
Web Services with Netbeans 6.0 Your Name Sun Campus Ambassador Your Address.
Web Application Development with PHP in Netbeans 6.5 ● Angad Singh Campus Ambassador Tech Lead
David Botterill Sun Microsystems, Inc. Global Technical Manager/Software Engineer NetBeans 6.5 The Only IDE You Need!
Maximizing Ajax Development with NetBeans 6.5 Your Name Sun Campus Ambassador Your Address.
USEIMPROVEEVANGELIZE ● Introduction & Installation ●, CA, ●
Sun Small Programmable Object Technology (Sun SPOT) Your Name Sun Campus Ambassador Your Address.
Visual Mobile Gaming Your Name Sun Campus Ambassador Your Address.
Scripting with Java FX Your Name Sun Campus Ambassador Your Address.
Introduction to the NetBeans Platform Certified Training Course Geertjan Wielenga Sun Microsystems.
NetBeans & Ruby -Enhancements for Web 2.0 and beyond Your Name Sun Campus Ambassador Your Address.
1 NetBeans New and Cool Sun Microsystems, Inc.. 2 Goal of the Talk Learn how NetBeans IDE can help you become more productive Learn about the new features.
USEIMPROVEEVANGELIZE ● Yue Chao ● Sun Campus Ambassador High-Performance Computing with Sun Studio 12.
GlassFish Workshop 1 Dynamic Languages in GlassFish Arun Gupta blogs.sun.com/arungupta.
1 Charles Oliver Nutter Thomas Enebo Tor Norbye Martin Krauskopf JRuby: Understanding the Fuss Except where otherwise noted, the content of this presentation.
Netbeans: Beyond Java Silveira Neto Sun Campus Ambassador University of Ceará, Brazil.
JRuby on Rails Presenter Name
Cake PHP – OOPS approach for PHP
JRuby on Rails Brian Leonard ブライアン レオナルド
Visual Web & AJAX with Netbeans 6.0 Your Name Sun Campus Ambassador Your Address.
Programming Languages Dan Grossman 2013
Basic 1960s It was designed to emphasize ease of use. Became widespread on microcomputers It is relatively simple. Will make it easier for people with.
Ruby: An Introduction Created by Yukihiro Matsumoto in 1993 (named after his birthstone) Pure OO language (even the number 1 is an instance of a class)
Scope History of Ruby. Where can you use Ruby? General Features.
ATS Application Programming: Java Programming
Ruby Tooling in NetBeans
Netbeans 6.0 Your Name Sun Campus Ambassador Your Address.
Introduction Enosis Learning.
Ruby, Rails, GUIs, and More
CMPE419 Mobile Application Development
Eclipse 20-Sep-18.
PROGRAMMING IN JAVA. INTRODUCTION TO JAVA  Java is a general purpose computer programming language that is concurrent, class-based, object- oriented.
Introduction Enosis Learning.
Advanced Programming Fall 2017.
(Computer fundamental Lab)
IDE’s and Debugging.
By Rajanikanth B Overview Of Java By Rajanikanth B
CMPE419 Mobile Application Development
Presentation transcript:

NetBeans & Ruby David Botterill Software Engineer Global Technology Manager - Campus Ambassador Program Sun Microsystems, Inc.

2 Agenda Ruby JRuby Ruby on Rails NetBeans Ruby Support Next Steps

Ruby

4 Invented by Yukihiro Matsumoto (“Matz”) starting in 1993 > Goal: “Make Ruby natural, not simple” Released to the public in 1995 Popularity began in 2000, jumped in 2006 with Rails web framework

5 Ruby Ruby is an object-oriented programming language Ruby is a single-pass interpreted language The official implementation is free software written in C Ruby has a package manager called “RubyGems” that manages packages called “Gems”

6 Everything, including a literal, is an object Array and Hash support Ruby Language Basics Ruby

7 Demo Everything an Object Arrays and Hashes

8 Blocks and iterators > A block is defined between “{ }” or “do end” > An iterator is a method that processes blocks > The iterator “yield”s to the block > The block is a set of code that can process values from the iterator Ruby Language Basics Ruby

9 Demo Blocks and Iterators

10 Mixin > Ruby supports “Module”s - a collection of methods > Ruby only supports single inheritance > A Ruby class can “mixin” one or more modules to take advantage of the methods in the module Ruby Language Basics Ruby

11 Demo Mixins

12 Variables > Ruby is strongly typed > Ruby is dynamically typed > var.kind_of? Scope > var – could be a local variable – instance variable > – class variable > $var – global variable > Var – constant (can be changed in Ruby) Ruby Language Basics Ruby

13 Demo Variable Scope

14 Metaprogramming - “Programs that write programs” > missing_method > Code evaluation “class_eval” > Ability to add methods dynamically to an existing class even built-in classes Ruby Language Basics Ruby

15 Demo Metaprogramming

16 “Duck Typing” > If it walks like a duck and sounds like a duck, treat it like a duck > The class's methods are the important part, not the type > In other words, the objects action abilities are what's important regardless of what type of object it is > Eliminates casting > Natural for a language that is dynamically typed Ruby Language Basics Ruby

17 Demo Duck Typing

JRuby

19 JRuby is a Java Implementation of the Ruby Language JRuby is free software released under a three-way CPL/GPL/LGPL license. JRuby is tightly integrated with Java to allow the embedding of the interpreter into any Java application with full two-way access between the Java and the Ruby code JRuby offers all the performance benefits of using a JVM JRuby

20 Demo JRuby

Ruby on Rails

22 Ruby on Rails is a free web application framework RoR aims to increase the speed and ease with which database-driven web sites can be created Scaffolding - Ability to generate majority of the web application Applications developed using the Model-View- Controller design pattern Ruby on Rails

23 RoR Guiding Principles: > DRY - “Don't Repeat Yourself”, don't write the same code over and over again > Convention of Configuration – Rails makes assumptions about what you need to do and how you should do it (convention) rather than allowing you to configure all the details > REST (Representational State Transfer) is the best pattern for web applications Ruby on Rails

24 Demo Ruby on Rails

NetBeans & Ruby

26 Netbeans Ruby Support Comprehensive support for Ruby editing > Code Completion > Parameter Hints > Smart Indent > Smart Selection > Formatting > Pair Matching > RDoc Support and String Support > Spell Checking > Syntax highlighting > Navigation display > Code Folding > Background error parsing > Mark Occurrences > Go To Declaration > Instant Rename > Code Templates

27 Netbeans Ruby Support Refactoring > Find Usages > Rename > Other Refactorings Project support > Gem Support > File Type Recognition > Project Support > Unit Tests > IRB - Interactive Ruby Shell

28 Netbeans Ruby Support Debugging Support > Classic and fast debugger support > RHTML debugging > tool-tip variable and expression evaluation > Views (variables, stacks etc.) > Breakpoints > Session (multiple debugging session, finishing, switching support) > Thread (state, thread switching support) > Breakpoints management > Stepping (over/into/out/resume) into project, core, loadpath classes, RHTML

29 Netbeans Ruby Support Unit Test Support > Test::Unit – Ruby built-in test framework > Rspec – Behavior driven testing > AutoTest – optional continuous test environment

Next Steps

31 Get Involved Join the NetBeans Community! Next Steps Join the NetBeans OSUM !

32 Next Steps NetBeans: > Latest news and community information > Netbeans Plugins NetBeans & Ruby Wiki: NetBeans Community: > Forums, support, how to get involved NetBeans Ruby and Rails Learning trail Ruby developer Center at SDN Resources

33 Next Steps Free Ruby on Rails Training by Sang Shin Netbeans IDE Features for Ruby - Ruby User's Guide - doc.org/docs/UsersGuide/rg/index.html doc.org/docs/UsersGuide/rg/index.html The Programmatic Programmer's Guide - doc.org/docs/ProgrammingRuby/html/index.html doc.org/docs/ProgrammingRuby/html/index.html Ruby Essentials Resources

34 Get FREE Web-based training on Java TM, Solaris TM & more! > Visit: > Course registration code from your Campus Ambassador Increase earnings potential with a Sun Certification! > Sun Certified Associate/Programmer for the Java 2 Platform SE > Sun Certified Web Component Developer for Java EE > Sun Certified Mobile Application Developer for Java ME > Sun Certified System/Network Admin for Solaris Operating System Free practice exams Discounted exams fees for academic developers – only US$60 (US$40 in APAC and Latin America) Next Steps Fast Track Your Career with Sun!

THANK YOU! David Botterill NetBeans & Ruby