IDE Bake Off IntelliJ IDEA 3.0 Austin Java Users Group Razvan Surdulescu March 25, 2003.

Slides:



Advertisements
Similar presentations
6 Copyright © 2005, Oracle. All rights reserved. Building Applications with Oracle JDeveloper 10g.
Advertisements

Introduction to Maven 2.0 An open source build tool for Enterprise Java projects Mahen Goonewardene.
Developing in CAS. Why? As distributed you edit CAS 3 with Eclipse and build with Maven 2 – Best Practice for Release Engineering – Difficult edit-debug.
Professional Toolkit V2.0 C:\Presentations - SmartCafe_Prof_V2.0 - bsc page 1 Professional Toolkit 2.0.
Internetteknologi (ITNET1) Extra Presentation Java IDE Tool Support.
Introduction To Java Objectives For Today â Introduction To Java â The Java Platform & The (JVM) Java Virtual Machine â Core Java (API) Application Programming.
ANT: Another Nice Tool Ali Beyad October 1, 2003.
ANT: Another Nice Tool Ali Beyad October 1, 2003.
MC365 Ant. Today We Will Cover: Overview of Ant Installing Ant Using the Ant command line tool Various Ant commands available Using Ant in Eclipse.
NetBeans IDE Tal Maoz Na’ama Zahavi.
Object-Oriented Enterprise Application Development Tomcat 3.2 Configuration Last Updated: 03/30/2001.
Integrated Development Environments. Today We Will: Go over more advanced functionality of Eclipse. Break up into teams to work on presentation and final.
Fall 2007CS 2251 Programming Tools Eclipse JUnit Testing make and ant.
20-Jun-15 Eclipse. Most slides from: 2 About IDEs An IDE is an Integrated Development Environment.
Presented by IBM developer Works ibm.com/developerworks/ 2006 January – April © 2006 IBM Corporation. Making the most of The Java Development Tools project.
Eclipse[10] MIPSinEclipse. Overview Goal: To provide a friendly development environment for CS students programming in MIPS (particularly CS33 at UCLA),
Eclipse Introduction Dwight Deugo Nesa Matic
Low level CASE: Source Code Management. Source Code Management  Also known as Configuration Management  Source Code Managers are tools that: –Archive.
Chapter 2: The Visual Studio.NET Development Environment Visual Basic.NET Programming: From Problem Analysis to Program Design.
Enhancing Developer Productivity using Eclipse Presented by: Tom Sausner.
Slide 1 of 9 Presenting 24x7 Scheduler The art of computer automation Press PageDown key or click to advance.
NetBeans IDE Vishnuvardhan.M Dept. of Computer Science - SSBN.
Eclipse IDE. 2 IDE Overview An IDE is an Interactive Development Environment Different IDEs meet different needs BlueJ and DrJava are designed as teaching.
03 Using Eclipse. 2 IDE Overview An IDE is an Interactive Development Environment Different IDEs meet different needs BlueJ and DrJava are designed as.
Standards for Technology in Automotive Retail STAR Workbench 1.0 Michelle Vidanes & Dave Carver STAR XML Data Architects, Certified Scrum Masters.
© 2006 by IBM 1 How to use Eclipse to Build Rich Internet Applications With PHP and AJAX Phil Berkland IBM Software Group Emerging.
Using Ant to build J2EE Applications Kumar
Getting started with Eclipse By Alexander Butyaev.
© Blackboard, Inc. All rights reserved. Developing Blackboard Building Blocks: Getting Started John Knight Senior Engineer Blackboard Inc. July 18 th.
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.
M. Taimoor Khan * Java Server Pages (JSP) is a server-side programming technology that enables the creation of dynamic,
WaveMaker Visual AJAX Studio 4.0 Training Studio Overview.
Servlets Environment Setup. Agenda:  Setting up Java Development Kit  Setting up Web Server: Tomcat  Setting up CLASSPATH.
Apache Ant Presented by Donato Testardo Nathan Stark.
The NetBeans IDE CSIS 3701: Advanced Object Oriented Programming.
© 2012 LogiGear Corporation. All Rights Reserved Robot framework.
DELTA TAU Data Systems, Inc. 1 UMAC TurboTurbo PMAC PCIGeo Drive Single Source Machine Control motion logic data Power PMAC Project Management November.
Understanding Eclipse Development Environment Hen-I Yang July 7, 2006
Apache Ant Java-Based Build Tool. Making your builds boring… Building projects should be easy and standardized. You should not be spending a substantial.
Keith Elder Microsoft MVP
Apache Ant A gateway to test-driven Java development.
|Tecnologie Web L-A Anno Accademico Laboratorio di Tecnologie Web Introduzione ad Eclipse e Tomcat
OXygen XML Editor Support for eXist DB XQuery debugging. Stefan Vasile
1 v1.6 08/02/2006 Module Road Map 1.Overview 2.Installing and Running 3.Building and Running Java Classes 4.Refactoring 5.Debugging 6.Testing with JUnit.
Plug-in Development Environment. Session Outline Tools Installation Configuration New Project Basic Debugging Remote Debugging.
Introduction to Eclipse CSC 216 Lecture 3 Ed Gehringer Using (with permission) slides developed by— Dwight Deugo Nesa Matic
July 2011CMSC 341 CVS/Ant 1 CMSC 341 Java Packages Ant CVS Project Submission.
Enterprise Development with IntelliJ IDEA Mike Aizatsky Project Manager JetBrains, Inc.
Eclipse Eclipse An IDE is an Integrated Development Environment Different IDEs meet different needs – BlueJ, DrJava are designed as teaching.
9/2/ CS171 -Math & Computer Science Department at Emory University.
Eclipse 24-Apr-17.
3 Copyright © 2004, Oracle. All rights reserved. Working in the Forms Developer Environment.
Eclipse. An IDE is an Integrated Development Environment Different IDEs meet different needs BlueJ, DrJava are designed as teaching tools Emphasis is.
Introduction to Common Java Development Tools (1) 1.
Chapter 1 Introducing Ant. What is ant? Ant is a build tool  Automate the tasks of compiling code, running test, and packaging the results for redistribution.
Build Systems Presentation December 14, 2015 Noon-1pm Kathy Lee Simunich Bldg. 203/ D120 Brought to you by: Argonne Java.
All the dSoftArk Tools Getting started!. Tools dSoftArk is a semi-realistic, agile, development project –Industrial strength software (programming, TDD,
10 Copyright © 2004, Oracle. All rights reserved. Building ADF View Components.
Eclipse 27-Apr-17.
Visual Programming Borland Delphi. Developing Applications Borland Delphi is an object-oriented, visual programming environment to develop 32-bit applications.
Java IDE Dwight Deugo Nesa Matic
An Introduction to Ant. What is Ant? How do you use it? Why would you want to?
Ant Presented by: Mindaugas Idzelis Tatum Krawczyk.
ATS Application Programming: Java Programming
Eclipse 20-Sep-18.
J2EE Application Development
Java IDE Dwight Deugo Nesa Matic Portions of the notes for this lecture include excerpts from.
By Rajanikanth B Eclipse IDE Overview By Rajanikanth B
Review of Previous Lesson
Presentation transcript:

IDE Bake Off IntelliJ IDEA 3.0 Austin Java Users Group Razvan Surdulescu March 25, 2003

IDEA Overview IDEA is ~1.5 years old. Current version is 3.x. IDEA’s primary strength is refactoring: Rename/move/copy classes/methods/packages Extract field/method Many others … Excellent (and unobtrusive) “assistance”: parses the current source file provides hints, underlines errors, etc.

IDEA Overview cont’d Many useful plug-ins written by the developer community Not free: $499 (.com), $99 (.edu) Swing application Startup time: TogetherJ < IDEA < Eclipse Memory footprint: ~100MB when “warm” Processor: PIII equivalent or better

Bake Off Environment Windows 2000 SP3 Sun J2SE 1.3.1_06 IntelliJ IDEA ANT (built-in to IDEA) JUnit (built-in to IDEA) CVS Tomcat Electric XML 6.0.3

1a. Projects Setup new project You can change the “default project” properties You can use an existing source tree or create a new one. IDEA stores all project settings in a.IPR and.IWS file: very clean and unobtrusive.

1b. Projects Changing the default editor Not possible, although you can obviously edit the source files outside IDEA The editor is very powerful and configurable: Auto-complete, auto-indent, auto-import Class templates, code templates Many others …

1c. Projects Configuring the class path Add/remove JAR/ZIP/directories to the class path. All class path “elements” become candidates for auto-complete, code navigation, etc. You can setup “libraries”: Define associated classpath, JavaDoc, and source directory Use the library for compilation, documentation or source code navigation Share libraries across projects

2a. Integration ANT comes packaged with IDEA You can add an existing build.xml to your project IDEA will allow you to execute, filter and log ANT targets through the GUI In case of error, you can double click on the error line and go to the code that caused it IDEA can validate the ANT build file (find mistakes, unreferenced variables, etc.)

2b. Integration JUnit comes packaged with IDEA You can setup JUnit test targets and execute them In case of failure, you can double-click on the error line and go to the assertion that failed

2c. Integration CVS IDEA comes with support for CVS and Star Team If your sources are imported into CVS, you can do all CVS operations directly from the GUI If you rename or delete a source file, IDEA will prompt you to keep the CVS repository in sync IDEA comes with a nice visual diff tool, but you can use an external diff tool as well

3. Refactoring IDEA’s refactoring is exceptional: Rename/move package Rename/move/copy/delete class Rename/move/copy/delete method Rename/move/copy/delete field Extract method Change method signature Many others

3. Refactoring cont’d Once I started refactoring in IDEA, I could never go back to another IDE!

4. Debugging Local Full-featured debugger: Code breakpoints (normal, conditional, counted) Exception breakpoints Thread, field inspector, watches Remote Connect to a remote JVM via JPDA Source path permits source breakpoints and navigation while debugging

5. Time Savers Code navigation Go to class/file (ctrl+(shift)+N) Go to type/variable declaration (ctrl+(shift)+B) Go to override Go to JavaDoc (ctrl+Q) Class structure (ctrl+H, ctrl+F12) Code format, layout (optimize imports) Standardized formatting => easy diffs Refactoring (rename, move, delete, etc.)

5. Time Savers cont’d Search (usages, text in file, text in path) Code generation Live templates (“psf-TAB”, “soutv-TAB”) Implement methods (interface) Generate getX() / setX() accessors Generate equals() / hashCode() Surround with Smart complete

5. Time Savers cont’d Logical layout Almost everything can be done without the mouse Key combinations and menus are very logical Configurable key bindings (e.g. Emacs, Visual J++, …) Able to save multiple code styles, and use them per-project. Really useful if you have multiple teams with different coding standards.

5. Time Savers cont’d XML support Text format Auto-complete DTD, XML Schema validation Validation of XML references/external resources

5. Time Savers cont’d CVS Integration (operations, parse output) JUnit, ANT integration (parse output) Easy debugging (break points, source path) JAVAC launched in process (fast) Inspect code (critique) Many useful plug-ins written by the community (Plug-in Manager)plug-ins

6. Visual Modeling No built-in features SimpleUML plug-in covers the basics SimpleUML

7. Build a GUI No built-in features

8. Build/deploy a JSP Strong JSP and Tomcat 4.x support Java syntax checking, code completion, and refactoring in scriptlets Integrated JSP and Servlet debugging Web application file management Pre-deployment JSP compilation checks JSP tag completion and syntax checking, including custom tag libraries

8. Build/deploy a JSP cont’d No support for packaging WAR IDEA expects un-expanded WAR-like directory structure Easy to package this directory structure from ANT (using the task)

9. Deploy an EJB Nominal support for creating new EJBs Automatic management of deployment descriptor Easy to add/delete EJBs Easy to setup Entity CMP relationships Functionality is still somewhat buggy/hokey No support for packaging/deploying EJBs This is always container specific anyway

10a. Customization/Extension Installing/using plug-ins Copy the.JAR file to /{idea_home}/plugins Start IDEA The plug-in “Plug-In Manager” allows you to see what plug-ins exist, download and install them directly from the GUI

10b. Customization/Extension Writing a plug-in IntelliJ Plug-in Documentation Plug-in FAQ Two kinds of plug-ins: application-level (created and initialized at start-up) and project-level (created for every project) The plug-in configuration is provided in {plug-in JAR}/META- INF/plugin.xml

10b. Customization/Extension cont’d VssIntegration Vss integration plug-In 1.0 Foo Inc. com.foo.Component1Interface com.foo.Component1Impl com.foo.Component2