Integrated Development Environments Integrated Development Environments Hadi ForghaniHadi Forghani Salman MostafaviSalman Mostafavi Special Thanks to:Special Thanks to: Sadegh AliakbarySadegh Aliakbary
Basics about IDEs First : An environment for text editing Second : A tool for Compiling and Linking Third : An environment for debugging 1964 Dartmouth Basic –John G Kemeny & Thomas E Kurtz –Beginners All-purpose Symbolic Instruction Code
But Newer IDEs… Project browsing Database Connectivity Code Completion User Assistant –Help –Coding assistant Powerful debuggers Even Simulators! –Mostly used in microprocessor programming
IDEs & Languages Mostly an IDE is designed for a Special Language Some believe that : –IDEs must be independent of Languages –More concern about human factors –Weak debugging is the result Text Pad as an example –Powerful editing environment –External commands can be added –Syntax highlighting plug-in
Review of Different Companies’ IDEs Microsoft Borland Java Related IDEs ;-) Linux Related IDEs
Microsoft QBasic 1.0 – 6.0 ( ) –Offered free with MS-DOS Package –MS-DOS Text Editor –Debugger & Interpreter –Nor it had a Compiler neither a Linker
Microsoft Quick C ( From 1988 to … ? ) –Just Like QBasic 1.0 QBasic 7.0 ( 1990 ) –Added a Compiler and Linker
Microsoft Visual Basic 1.0 ( May 20, 1991 ) Visual Basic 2.0 ( November 1992 ) Visual Basic 3.0 ( 1993 ) Visual C ( 1993 ) Visual C ( 1994 ) Visual Basic 4.0 ( 1995 ) Visual Basic 5.0 ( 1997 ) Visual Studio 6.0 ( 1998 ) –Visual Basic 6.0 –Visual C++ 6.0
Microsoft Visual Studio 7 (.Net ) ( February 2002 ) –Visual Basic 7.0 –Visual C –Visual C# Visual Studio 7.1 (.Net ) ( April 2003 ) –Added Visual J#
Borland Turbo Pascal 1.0 ( 1983 ) –Text Editing –Compiler & Linker –Debugger Turbo C 1.0 ( 1983 ) –Just Like Turbo Pascal 1.0 Turbo Pascal ( ) –Syntax Highlighting –Added Object Pascal –Turbo Vision Full GUI Design –Clipboard Integrated use of Clipboard Turbo C ( 1987 ) –Just like Turbo Pascal 7.0 –Added Win 3.1 Environment Simultaneously Borland Pascal & Borland C where released with more powerful graphical Libraries
Borland Borland C & 5.1 ( 1995 ) –Just for Ms Windows 95 Borland Delphi 1.0 – 7.0 ( ) –For Object Pascal Development –First RAD ( Rapid Application Development ) –A complete visual IDE Borland CBuilder 1.0 – 6.0 ( Ended in 2001 ) –Just like Borland Delphi –For C++ Development Borland Kylix 3.0 ( 2000 ) –Just like Borland CBuilder & Delphi for Linux Borland Delphi 8.0 ( 2002 ) –.Net support
Java Related Poor Java! –From 1991 to 1994 there was no IDE! –Of course they could write their code in Ms windows 3.1 editors ! –Presence of a new tool with Windows 95 ! –Made everybody happy! NOTE PAD !!!
Java Related No IDE before Symantec’s IDE –Named Café –Released in 1994 –Available for Windows –Available for Linux –Even for Apple !
Java Related Borland JBuilder 2.0 – 9.0 ( ) –First GUI designer for Java! Java ?! GUI ?! :-)) –It was all SWING
Java Related Intellij IDEA 1.0 – 4.5 ( 2000 – 2004 ) –No GUI designer before 4.5
Java Related Eclipse –First release in December 19, 2001 –Last release ( Version 3.1 ) in September 24, 2004
Linux Related Intellij IDEA Eclipse JBuilder
Linux Related Kylix –Object Pascal –Code Completion –Syntax Highlighting
Linux Related KDevelop –Code Completion –Project Management –Syntax highlighting
Linux Related Emacs –A Complete language independent IDE –Syntax highlighting plug-in –Menus and Buttons…
Linux Related VIM –VI Improved! –Works in two modes: Silent mode Beep mode ! :D –Really it is not an IDE –Just a word processor
Next Generation of IDEs Where are we going?! Tow aspects: –Language dependent Visual Basic –Language independent Web-based IDE !
New IDE for Visual Basic Beryl Plimmer –Computer Science –University of Auckland Mark Apperley –Computer Science –University of WaiKato New Zealand
What is the idea?! An electornic Pen An electronic white board Is all what you’re dealing with! You can write! You can draw! What else do you need?! –Nothing!
Procedure Students’ complain about GUI –Too much work for sketching…! Let’s just draw the Interface! And Integrate it with VB 6.0 Both Code & GUI
An Example First Prototype
Another Example! Second Prototype
What is the benefit? Human Factors You draw & draw once! Feel what user might feel!
Distributed Programming Environment DPE is introduced as a Web-Based IDE Client / Server Technologies Multimedia Chats Fully implemented by Java :-O –Client/Server -> CORBA IIOP –Multimedia -> RTP
What does it do?! Code submission Project Management –Different roles –Different Access levels Discussion & Meetings
In one word…
THANK YOU!