• No results found

IDE s for Java, C, C++ David Rey - DREAM

N/A
N/A
Protected

Academic year: 2021

Share "IDE s for Java, C, C++ David Rey - DREAM"

Copied!
24
0
0

Loading.... (view fulltext now)

Full text

(1)

IDE’s for Java, C, C++

(2)

Overview

Introduction about IDE’s

• What is an IDE

• What is not an IDE

• IDEs examples for java

• IDEs examples for C++

• Eclipse example: overview

Eclipse demo

• Project “hello world”

• Edition facilities

• Build: compilation and library creation

• Settings (eclipse and project)

• Other development tools

– Doc extractor

– Debugger

– The rest: cvs, junit, …

(3)

Overview

Introduction about IDE’s

• What is an IDE

• What is not an IDE

• IDEs examples for java

• IDEs examples for C++

• Eclipse example: overview

Eclipse demo

• Project “hello world”

• Edition facilities

• Build: compilation and library creation

• Settings (eclipse and project)

• Other development tools

– Doc extractor

– Debugger

– The rest: cvs, junit, …

(4)

What is an IDE

• IDE = Integrated Development Environment

• IDE = EDI (Environnement de Développement Intégré) in French

• Typical integrated development tools :

• editor (with auto-indent, auto-completion, colorization, …) ;

• version control ; • compiler/builder ; • documentation extractor ; • debugger ; • testing tools ; • refactoring tools.

• Generally language specific

(c/c++ specific IDE, java specific IDE, not yet good ones for Fortran)

(5)

What is not an IDE

Just a great (complicated?) text editor

A code generator

A GUI designer

(6)

IDEs examples - Java

Eclipse (

http://www.eclipse.org

)

JBuilder (

http://www.borland.com/us/products/jbuilder/index.html

-free for personnal and non-commercial use)

NetBeans (

http://www.netbeans.org/

)

JCreator (

http://www.jcreator.com/

)

(7)

IDE’s examples – C/C++

Visual C++ - com. license (

http://msdn.microsoft.com/visualc

)

C++ Builder - com. license

(

http://www.borland.com/us/products/cbuilder/index.html

)

Eclipse(CDT)/EasyEclipse (

http://www.easyeclipse.org/site/home/

)

Quincy (

http://www.codecutter.net/tools/quincy/

)

Anjuta (

http://anjuta.sourceforge.net/

)

KDevelop (

http://www.kdevelop.org/

)

Code::Block (

http://www.codeblocks.org/

)

BVRDE (

http://bvrde.sourceforge.net/

)

RHIDE (

http://www.rhide.com/

)

(8)

Eclipse software

Foundation:

http://www.eclipse.org

Downloads at

http://www.eclipse.org/downloads/index.php

Common Public License (CPL):

http://www.eclipse.org/legal/cpl-v10.html

royalty free source code / world wide redistribution rights

Supported languages: Java, C++, python, …

Supported platforms: Linux, Windows, … (java software)

Many tutorials on the web

A good one (in French):

(9)

Eclipse “philosophy”

Extensible with java plug-ins:

http://www.eclipse.org/projects/

&

http://www.eclipseplugincentral.com/

May be used with several programming languages via plug-ins (C++,

python)

Many other add-ons via plug-ins

svn plugin:

http://www.polarion.org/projects/subversive/download/1.1/update-site/

(Eclipse3.2 only using mylar plugin to be installed: http://www.eclipse.org/mylar/)

xml, soap, …

Aim: specific IDE depending on usage/user

(10)

Eclipse main features: demo

Powerful editing mode

• automatic indentation

• auto-completion (classes, methods, …)

• search/replace + refactoring

• …

Compiling/building

• Compilation

• Libraries creation (e.g. jar files)

Eclipse/project settings

Integrated tools

• Debugger

• Doc extractor (javadoc)

• Other tools: cvs, junit

• …

(11)

Overview

Introduction about IDE’s

• What is an IDE

• What is not an IDE

• IDEs examples for java

• IDEs examples for C++

Eclipse demo

• Project “hello world”

• Edition facilities

• Build: compilation and library creation

• Settings (eclipse and project)

• Other development tools

– Doc extractor

– Debugger

– The rest: cvs, junit, …

(12)

Conclusion

IDEs:

• Exist for many platforms and programming languages

• Java (e.g., Eclipse)

• C/C++

• Are useful for beginners as well as for experts

• Are time consuming at the beginning

• Learning curve

• Several tools need configuring

• Save time when often used:

• Powerful editing mode

• CVS/SVN

• Easy compiling/building/running, related to source files

• Easy refactoring

• Still in evolution and will be used in the future for

• RCP

• GUI designer

(13)
(14)
(15)

Configuring CVS access

• Check compatibility with CVS version

http://dev.eclipse.org/viewcvs/index.cgi/platform-vcm-home/docs/online/html-cvs/cvs-compatibility.html?rev=1.3

• Window

• Open Perspective →Other

• In CVS Repository

(16)

Configuring compiling/building

By default, an Eclipse project is compiled internally

Project

Properties

(17)
(18)

Using a build.xml

It is possible to use ant with xml build files

For specific build tasks

To set a given version of the compiler, javadoc, …

To set specific parameters for building (i.e., on a shared project with

people not under Eclipse, …)

Cf. Ant and Eclipse tutorial:

http://perso.wanadoo.fr/jm.doudoux/java/dejae/chap009.htm#chap_9

Cf. Ant documentation:

(19)

Configuring javadoc

(20)
(21)
(22)
(23)

Configuring JUnit

JUnit is a part of the Eclipse project by default

For more details on how to configure and use JUnit in Eclipse look

at

http://perso.wanadoo.fr/jm.doudoux/java/dejae/chap010.htm#chap_10

(24)

References

Related documents

Superior Court of Pennsylvania (1/7/13) No. Investigation led police to the defendant. They removed him to the police station. He was given the warnings before interrogation and he

As part of a whole council approach to effective and transparent performance monitoring, the Scrutiny Committee is invited to review corporate performance against the Council’s

(2003) analyze the impact of the changes of underlined fac- tors guiding the process of the mortality hazard rates and propose an im- munization model to calculate the optimal level

Function: To provide a record of general administration of the Property Assessment Department as carried out by the City Assessor Description: Correspondence, reports,

An applicant wishing to obtain a Transport Manager CPC for National operations and/or Community operations shall be required to pass the examinations described in this section

generally be lower than commercial code that has only been feature-tested, that is, received a comparable level of testing • Hypothesis 6: In successful open source developments,

contracts, discourses are text, social media content comes as JSON documents, open data is often structured in RDF graphs etc.; (iii) an answer stating, e.g., that a certain

The Cisco MDS 9506 multilayer director provides an open platform that delivers the intelligence and advanced features required to make multilayer intelligent SANs a reality,