18
©2004 BLACKBOARD, INC. ALL RIGHTS RESERVED. Integrated Development Environments(IDE) Savita deshmukh ME 1 st year

©2004 BLACKBOARD, INC. ALL RIGHTS RESERVED. Integrated Development Environments(IDE) Savita deshmukh ME 1 st year

Embed Size (px)

Citation preview

Page 1: ©2004 BLACKBOARD, INC. ALL RIGHTS RESERVED. Integrated Development Environments(IDE) Savita deshmukh ME 1 st year

©2004 BLACKBOARD, INC. ALL RIGHTS RESERVED.

Integrated Development Environments(IDE)

Savita deshmukh ME 1st year

Page 2: ©2004 BLACKBOARD, INC. ALL RIGHTS RESERVED. Integrated Development Environments(IDE) Savita deshmukh ME 1 st year

Contents

» Introduction» overview» History» Uses of IDE» Advantages and disadvantages» conclusion

Page 3: ©2004 BLACKBOARD, INC. ALL RIGHTS RESERVED. Integrated Development Environments(IDE) Savita deshmukh ME 1 st year

What’s an IDE?

» What does IDE stand for?

» Integrated Development Environment

Page 4: ©2004 BLACKBOARD, INC. ALL RIGHTS RESERVED. Integrated Development Environments(IDE) Savita deshmukh ME 1 st year

Overview» IDEs are designed to maximize programmer productivity by providing

tight-knit components with similar user interfaces. IDEs present a single program in which all development is done. This program typically provides many features for authoring, modifying, compiling, deploying and debugging software. This contrasts with software development using unrelated tools, such as vi, GCC or make.

» One aim of the IDE is to reduce the configuration necessary to piece together multiple development utilities, instead providing the same set of capabilities as a cohesive unit. Reducing that setup time can increase developer productivity, in cases where learning to use the IDE is faster than manually integrating all of the individual tools. Tighter integration of all development tasks has the potential to improve overall productivity beyond just helping with setup tasks. For example, code can be continuously parsed while it is being edited, providing instant feedback when syntax errors are introduced. That can speed learning a new programming language and its associated libraries.

Page 5: ©2004 BLACKBOARD, INC. ALL RIGHTS RESERVED. Integrated Development Environments(IDE) Savita deshmukh ME 1 st year

Conti……..

» Some IDEs are dedicated to a specific programming language, allowing a feature set that most closely matches the programming paradigms of the language. However, there are many multiple-language IDEs, such as Eclipse, ActiveState Komodo, IntelliJ IDEA, Oracle JDeveloper, NetBeans, Microsoft Visual Studio, Genuitec MyEclipse and WinDev. Xcode is dedicated to a closed set of programming languages.

Page 6: ©2004 BLACKBOARD, INC. ALL RIGHTS RESERVED. Integrated Development Environments(IDE) Savita deshmukh ME 1 st year

Introduction of IDE

IDEs are designed to maximize programmer productivity . IDEs present a single program in which all development is done. This program

typically provides many features for authoring, modifying, compiling, deploying and debugging

software. This contrasts with software development using unrelated tools, such as

Page 7: ©2004 BLACKBOARD, INC. ALL RIGHTS RESERVED. Integrated Development Environments(IDE) Savita deshmukh ME 1 st year

What IDEs are out there?

» There are number of commercial and non-commercial IDEs available today» Microsoft .NET Visual Studio» JBuilder» Sun ONE Studio» XCode (Apple)» Emacs» Eclipse

Page 8: ©2004 BLACKBOARD, INC. ALL RIGHTS RESERVED. Integrated Development Environments(IDE) Savita deshmukh ME 1 st year

IDE In Visual programming

» Visual programming is a usage scenario in which an IDE is generally required. Visual IDEs allow users to create new applications by moving programming, building blocks, or code nodes to create flowcharts or structure diagrams that are then compiled or interpreted. These flowcharts often are based on the Unified Modeling Language.

Page 9: ©2004 BLACKBOARD, INC. ALL RIGHTS RESERVED. Integrated Development Environments(IDE) Savita deshmukh ME 1 st year

IDE Language support

» Some IDEs support multiple languages, such as Eclipse, IntelliJ IDEA, MyEclipse or NetBeans, all based on Java, or MonoDevelop, based on C#.

» Support for alternative languages is often provided by plugins, allowing them to be installed on the same IDE at the same time. For example, Eclipse and Netbeans have plugins for C/C++, Ada, GNAT (for example AdaGIDE), Perl, Python, Ruby, and PHP, among other languages in use.

Page 10: ©2004 BLACKBOARD, INC. ALL RIGHTS RESERVED. Integrated Development Environments(IDE) Savita deshmukh ME 1 st year

To Use or Not to Use an IDE?

» "IDE's are not essential for Java development and should not be used for learning it". I've heard this opinion many times and I disagree with it. To some extent I can see the wisdom of learning Java on its own without the extra features of an IDE. But then again there is much to be learned while debugging a program, stepping through code and observing runtime information.

» As for long-term productivity I don't even know where to begin. Take a software-intensive system with tens, hundreds, perhaps thousands of classes. How long does it take to navigate to the class you want? An IDE understands the structure of a project and indexes Java types so can get you there in a few key strokes.

Page 11: ©2004 BLACKBOARD, INC. ALL RIGHTS RESERVED. Integrated Development Environments(IDE) Savita deshmukh ME 1 st year

Cont……..

» I once sat next to a developer who was using a powerful Unix text editor to correct what started out as 50 compilation issues and ended up taking two days. A single refactoring in an IDE can address a large number of issues across many classes instead of dealing with them one at a time.

» What IDE one uses doesn't matter, most are quite capable. I like Eclipse - it's free, rich in features, and with plenty of industry momentum behind it. Learning to use it wasn't as straight forward as I would have liked it to be but I do appreciate what it has to offer.

Page 12: ©2004 BLACKBOARD, INC. ALL RIGHTS RESERVED. Integrated Development Environments(IDE) Savita deshmukh ME 1 st year

Why Would I Want to Use One?

» IDEs generally…» Save you time» Allow you to be more efficient» Remember class/member/package names for you» Present your classes in a meaningful and

organized way» Allow you to debug code» Automate Repetitive Tasks» Make coding FUN!

Page 13: ©2004 BLACKBOARD, INC. ALL RIGHTS RESERVED. Integrated Development Environments(IDE) Savita deshmukh ME 1 st year

Advantages of Using an IDE» 1. Less time and effort: The entire purpose of an IDE is to make

developing faster andeasier. Its tools and features are supposed to help you organize resources, preventmistakes, and provide shortcuts.

» 2. Enforce project or company standards: Simply by working in the samedevelopment environment, a group of programmers will adhere to a standard way ofdoing things. Standards can be further enforced if the IDE offers predefinedtemplates, or if code libraries are shared between different team members/teamsworking on the same project.

» 3. Project management: This can be twofold. First, many IDEs have documentationtools that either automate the entry of developer comments, or may actually forcedevelopers to write comments in different areas.

Page 14: ©2004 BLACKBOARD, INC. ALL RIGHTS RESERVED. Integrated Development Environments(IDE) Savita deshmukh ME 1 st year

Disadvantages of Using an IDE

» 1. Learning curve: IDEs are complicated tools. Maximizing their benefit will requiretime and patience.

» 2. A sophisticated IDE may not be a good tool for beginning programmers: If youthrow the learning curve of an IDE on top of learning how to program, it can be quitefrustrating. Further, features and shortcuts for experienced programmers often hidecrucial but mundane details of a language. Details should not be overlooked whenlearning a new language. Using an IDE may hamper the learning of a new language.

» 3. Will not fix bad code, practices, or design: You still need to be proficient andmeticulous. An IDE will not eliminate efficiency or performance problems in your application.

Page 15: ©2004 BLACKBOARD, INC. ALL RIGHTS RESERVED. Integrated Development Environments(IDE) Savita deshmukh ME 1 st year

Having it Your Way: Non-IDE IDEs» In the future, even more people who aren’t

developers need to work with software artifacts» Expression BlendTM targets designers, not coders

» Most RCP apps aren’t conventional IDEs» …and one criticism of RCP is its “IDE-like” look

» Inspiration: WordPress, Joomla, PowerPoint themes

» Goals for IDEs» Making it easy to produce that non-IDE “look and

feel”» Declarative and skinnable UI

15

Page 16: ©2004 BLACKBOARD, INC. ALL RIGHTS RESERVED. Integrated Development Environments(IDE) Savita deshmukh ME 1 st year

Having it Your Way: Better Living Through Scripting» Today

» We have dynamic languages and extensible IDEs…» …yet customizing the IDE experience is still hard

» Macros common in office tools, MMORP games

» Tomorrow» Scripting as choreography – express your workflow» “Everyone can program”» Rapid customization and exploration through

scripting

» Challenges» Appropriate level of discourse» Existing APIs may not be ideal for scripting» Eliminating the cliffs

16

Page 17: ©2004 BLACKBOARD, INC. ALL RIGHTS RESERVED. Integrated Development Environments(IDE) Savita deshmukh ME 1 st year

ANY QUERRIES’S

Page 18: ©2004 BLACKBOARD, INC. ALL RIGHTS RESERVED. Integrated Development Environments(IDE) Savita deshmukh ME 1 st year

©2004 BLACKBOARD, INC. ALL RIGHTS RESERVED.

Thank You!