As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
I am looking to adopt Plone as CMS solution and want to know is there any IDE available to do all the programming for Plone CMS?
Plone is written in Python and any Python IDE is good.
I personally used Aptana Studio 3 (Eclipse + PyDev) before moving to Sublime Text 2 one year ago.
Setting up Eclipse for Plone tutorial (old):
http://plone.org/documentation/kb/developing-plone-with-eclipse
Some sample integration scripts for Eclipse for Plone (no longer work with the latest Aptana as it doesn't ship with MonkeyEclipse):
http://pypi.python.org/pypi/collective.eclipsescripts
How to tune Sublime Text 2 for Plone and Python
http://opensourcehacker.com/2012/05/11/sublime-text-2-tips-for-python-and-web-developers/
Here are the pros and cons why I moved from Aptana to Sublime Text 2
Aptana + PyDev
Integrated Git and SVN explorer
You can click tracebaxk in a console window and it will take you to the line in that exception
Autocompletion
Linter warns on the background about bad code
Hard to integrate with other Python tools (buildout, eggs). In fact you spend more time fighting with IDE than running the commands directly from the command line.
In dynamic languages like Python you cannot apply most of Eclipse's powerful code analysis and refactoring features which are desgined Java in mind.
Sublime Text 2
Faaast. In fact has 3D acceleration.
Quick go to anywhere (CMD+T) is the best what any IDE or editor can provide. Makes your working and navigating source really efficient.
Autocompletion (SublimeCodeIntel, works in fact better than in Eclipse)
Linter warns on the background about bad code
PEP-8 style guide check
Needs some time to set-up and get confortable with
Kind of integrated SVN and Git, but does not come even close the level of Eclipse
Still haven't figured out how to run Plone process in a window to make tracebacks clickable
The plone.ide is a recent effort by Franco Pellegrini to produce a user-friendly IDE for Plone. Give it a spin.
https://github.com/collective/collective.ploneide
You don't need an IDE to be a plone-developer but an good editor or a IDE might help your productivity depending on your style of coding.
Some options for good editors and IDE's are:
sublime text (commercial, see http://opensourcehacker.com/2012/05/11/sublime-text-2-tips-for-python-and-web-developers for some tips on how to setup sublime for plone-development. If setup smartly it is a true IDE)
textmate (mac only, open source since version 2)
vim
emacs
Aptana Studio (open source, a eclipse-spinnoff which includes pydev)
Eclipse (open source, you might want pydev and other addons)
Wing IDE (commercial)
ploneide (a IDE running on top of Plone, still work in progress)
I now use sublime after having used Eclipse/Apatana Studio for a long time.
You haven't ask for a free solution.
So you must read a very good analysis at this Lennart's post and (all) comments:
Is there a better Python IDE
My choice is WingIDE. Is commercial, but also free depending on your project.
Keep in mind that it is written in pure python and you are going to write python code.
It has specific project settings to develop zope application and you can start to code in a couple of minutes after downloading it.
It has a debugger that binds with zope process and provide you live breakpoint capabilities. Just need to add "WingDBG" in eggs section of your buildout.
You are free to learn all other features by yourself, just google it.
Take look at the IDE that you can use to consomise the CMS related stuff for PLONE.
Related
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 11 years ago.
I have been using the Zend Studio for quite somewhile for my Zend projects and am looking for an IDE that would work well with Yii Framework.
Yii is just PHP. So any IDE for PHP will work fine.
I use Eclipse. If you include the framework correctly you get all of the hints and code completion benefits. I like step-through debugging and breakpoints with Xdebug, which is why I use an IDE instead of Emacs/Vim/Notepad++, but they would work just fine too.
I don't know how integrated Zend Studio is with the Zend Framework, but it should work just fine for Yii development. Don't make life harder for yourself by learning a new environment. Save time and jump in with Zend. Again: any PHP 5 IDE will work just fine for Yii, the best one is the one you are most familiar with! ;)
I recommend NetBeans as it gives you autocompletion of variables as well as PHPDOC comments, and a whole lot of other goodies. :)
Enjoy!
There seems to be a good number of people on the Yii boards using NetBeans as the preferred IDE (as well as a lot of discussion regarding the topic of IDEs).
Here is a wiki post on how to make the most out of your Yii/NetBeans development environment: http://www.yiiframework.com/wiki/83/
Update:
NetBeans 7.3 now has an community supported plugin for Yii which has some great features:
http://plugins.netbeans.org/plugin/47246/php-yii-framework-netbeans-phpcc
And is openly developed on github:
https://github.com/nbphpcouncil/nb-yii-plugin/issues
I'm not sure there is any IDE made to work with Yii (like Zend Studio supports Zend Framework). On Yii Wiki page you can find a way to configure IDE to work with Yii framework better, and choise there is limited to NetBeans, Eclipse, PHPStorm IDEs (last one seems to be not free). You can take a look at that wiki page as well as at IDEs description and see which IDE provides easier way to code, framework integration, debug etc. and make your decision.
As it's said before the NetBeans is good, but also if you like something more lightweight then go for vim or emacs.
I use Nusphere phpEd, code autocompletion & navigation by ctrl+click on class/method name works great for Yii.
Advice to improve IDE intelligence:
White DocBlock comments with #var ClassName.
For example:
$cs = Yii::app()->clientScript;/**#var CClientScript */
Also if you include Yii from external directory to your project, you can specify it in project settings of Nusphere phpEd.
I prefer phpEd because it's written not on Java (fast!), have great degugger (not xdebug) + profiler and nice, aesthetically beautiful interface.
I really enjoy using Netbeans, it just feels right. However I found setting up debugging and unit testing was a bit of a pain. I recently had to reinstall my computer so am giving Zend Studio 8 a try, the debugging, and profiling (I use Zend Server) are very good and require little to no setting up. However it doesn't feel as nice as Netbeans, not quite as polished maybe... it's hard to explain. Zend does have some very good features and ties in with Zend Server, however some of the other configuration options are very complex. Seems to be too many options at times, whilst Netbeans keeps it simple.
In an ideal world Netbeans would come with debugging, unit testing etc build in as I want to make websites not set up servers. I think it's part of the problem with some open source/free software, they require a bit of a learning curve or willingness to manually configure settings - it's understandable they are free. But it also holds back their more main stream acceptance. Sorry, that was a little off topic at the end!
Can use eclipse with PDT + Yiiclipse. Yiiclise adds wizard for creating new yii application (with initializiation of one of the demo application). But the most cool feature is Navigation. Now one can easily navigate between render methods and appropriate views, between widget method and widget source. Really useful.
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
I'd like to play around a bit with pure web app programming.
Coming from a VB6 background, some features I'd like are:
step-by-step debugging
Visual UI design
If we decide to do our next app as a web app, price isn't terribly important (a better IDE being more productive and pleasant to use).
Update: I'm looking for something like (what I hear you get with) jQuery where there is an underlying framework that takes care of all the browser differences. So I just plop a UI widget (Drop-down combo box, etc.) onto the IDE and the framework takes care of the javascript, etc. dealing with all the variations of browsers and O/S's.
I think you'll struggle by starting off with those requirements.
Step-by-step debugging: More commonly, you're going to want to do this in the browser itself rather than in the IDE. If you have a bug that only happens in Chrome 6 then being able to debug JavaScript in an IDE isn't going to help you much
Visual UI design: Again the issue is that, in the end, what it looks like visually in your IDE is unimportant, it's what it looks like in different browsers, on mobile phones etc. that matters
Probably the closest thing to what you're after is Dreamweaver, or if you're more comfortable with MS products you could try Expression Web (never used it myself). Personally I use Komodo Edit, the latest version has support for HTML5 and CSS3, and there's a paid version which adds a number of features, but neither are IDEs like you're (apparently) expecting.
In response to your edit: Komodo Edit has built in support for jQuery (ie. it offers code completion and tooltips), and you'll probably get a long way with a CSS framework (or even an HTML5 one) for ironing out the browser differences, but primarily front end web development is about editing text files and looking at them in browsers. The sort of things that IDEs are generally helpful for are not really major factors.
Further edit: Also, if you want a JavaScript widget framework, you probably should look at one of:
jQueryUI
YUI
Dojo
ExtJS
Clay, web development is nothing like software development. I have done both and I can assure you that there's no way you can make web development work like software development or visa versa. You just have to learn a new way of programming with Dreamweaver (that's what I use) or HTMLPad or any HTML editor would do.
Even jQuery is NOT a visual IDE - you don't just drag the icon and drop it on a webpage. You have to CODE it (you insert its javascript and then add your code to manipulate the widgets) and then check the webpage online (or offline with local server). You have to know WHERE to put the widget. You need to learn HTML and CSS. It's required.
Another option I've seen is Google Web Toolkit which lets you develop in Java using Eclipse and debug within Eclipse (even at the browser level) and then "compiles" that to Javascript, creating one version of your code for each type of browser (so you only need on "set" of Javascript). Lots of built in stuff to otimize the speed of the code.
And another suggestion is : http://www.visualwebgui.com/ but I don't know much about it other than it's targeted at .net developer.
For a free IDE that covers most languages you can try RJ textedit. Has code folding. You can add to it's syntax definitions. Allows you to zoom your IDE font with the middle mouse wheel and ctrl, for those of us with bad eyes. Hitting f10 - f12 to test your code on IE, Firefox or Chrome, respectively makes it easy to see how it works on all three major browsers. Just download it, unzip it, make a shortcut to TEXTEDIT.exe in the RJ textedit folder and go. I find it the easiest to program in, no bull about workspaces or long set ups, just type in some JavaScript and or HTML code and run. With HTML5 elements being so easy to set up, I see no need for a visual editor myself. I just like typing something in and seeing the results. But then again we all walk the path differently don't we. Hope this helps.
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
I was taking a look on Go language, but I want to know if there is any IDE developed only for it, but that have a GUI design feature, as Visual Studio and Netbeans.
Go isn't really designed for GUIs - it's precisely designed to meet the kind of needs that Google has.
I dare say it's entirely possible to develop GUI frameworks with/in it, but it's not the team's priority as far as I'm aware.
You can also find an Eclipse plugin here: http://code.google.com/p/goclipse/
However, at the moment of writing this is still at an early development stage.
lite ide is little, cross platform and open source.you can try it.
http://code.google.com/p/golangide/
For my Go programming I use the Zeus editor. It's definitely NOT a Go GUI IDE but at least for me the gocode auto complete feature is great.
You can also use Notepad++ for now, there is a language file for it here:
http://go-lang.cat-v.org/text-editors/notepad-plus-plus/
I've been using gedit with C syntax highlighting selected and bash shell for compiling and testing. I keep the Linux version of Google Chrome browser running local copy of Go documentation. Under Xubuntu window manager I can flip the browser window up and down out of the title bar for whenever I need to look at package APIs.
Go compiles and links very fast - I'm just as productive with this set of tools as I've ever been using Java and C# IDEs. Kind of refreshing to write software with just "stone knives and bear skins".
Most of the main Go developers use Acme A programming environment by Rob Pike, it is very different from a traditional IDE, but if you are open-minded and get over the first shock, it can be extremely pleasant to use.
Use Cloud-IDE.com online editor and online deploy - All FREE !!
I believe the best options for developing Go are TextWrangler, Vim, or BBedit.
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 11 years ago.
I am just starting at a job in which I will be using a lot of ColdFusion. What is the best IDE/Editor to use?
I'd like to provide my personal reasoning behind why you might choose any of these editors (at least the ones I'm familiar with). Just saying "use this, use that" is not at all helpful. To large degree, the question is wrong. There's rarely a "best IDE" for a language; rather, there are multiple environments, each suiting particular needs. Here goes:
1) Dreamweaver
Why you would use it: its history as a designer tool makes it much easier for "non-coder" types to start cranking out websites. If you're a solo developer building a lot of "Tom's Corner Store" type of sites, even if they require some CF Coding (mailing list, subscribers, current specials, light content management, etc), its design tools, "template" features, and ease-of-deployment (ftp) make it an attractive choice. It has good-enough code coloring and code completion for the built-in CF tags and functions. It can interrogate user-defined functions in the same page. It has excellent CSS support. You can find a wealth of extensions, too. It's pretty stable and, in my experience, hasn't been very "crashy". It will do a fair amount of code generation for you as well (whether that code is "good" is debatable). All in all Dreamweaver is incredible software for web site designers.
Why you wouldn't use it: It is not free, and it is certainly not a "coder's editor". While it provides for extensions, they're typically interface-focused (javascript validation, etc), unlike say Eclipse plugins, which can run the gamut. For large projects, it simply does not have the code navigation features that many coders come to expect. It's web-focused. So if you're a polyglot, or even just like to dabble in compiled languages (java, etc), then you'll need to keep another editor on hand for those tasks.... you won't be able to do it all in one place. ColdFusion unit testing support is nonexistent in Dreamweaver. There is no step debugging for ColdFusion.
2) CFEclipse plugged into Eclipse.
Why you'd use it: CFEclipse is going on 6 years old now and has matured significantly. It's been quite stable for the last few years and most crashiness has been due to Eclipse itself and not CFEclipse (which was not true in the early days). Recently CFEclipse has seen an infusion of fresh blood and features are being added to make coding in it even more productive. It contains a wealth of keyboard shortcuts, many of the toolbar features people love from ColdFusion Studio days, and Eclipse's in-built code navigation features (namely, Ctrl-Shift-R for finding files quickly).
It has content assist for native CF Tags and functions, and some support for in-page variables, though that's never worked all that well. It does not support in-page functions, nor does it provide native true component insight (i.e. insight into components that you write and use in other code). It will support component insight to some extent with Dictionaries, but even then, it requires a lot of work on the part of the dictionary creator. Most people find dictionaries too much work to maintain, in my experience.
The lastest version of CFEclipse contains the best CFML formatting you'll find.
For me, "method explorer" and "Snip Tree View" -- particularly keyboard shortcuts for inserting snippets -- have been big productivity boosters.
If you work with ColdSpring, ModelGlue, Mach-II, ColdBox, and other frameworks with xml configuration files, CFEclipse's Framework Explorer is brilliant.
Because it's a plugin to Eclipse, you can do everything else you'd want to do in Eclipse. You wanna code java? You can. You want webservice support? you got that. You want to do step debugging, you can do so with the free Adobe-provided extensions for Eclipse.
The large plugin ecosystem is one of the most attractive features of Eclipse, and you shouldn't discount this when deciding on an editor. For example, I would not want to work without Mylyn, which integrates with issue tracking and in my experience has transformed the way I work, much for the better.
Eclipse's version control system support is excellent as well. Subversion is well supported; there's a VSS plugin; and recently a git plugin (if not two) has been accepted into the Eclipse foundation so we'll see native git support very soon (you can get it now with a plugin).
Eclipse's ANT support is excellent.
You can easily plug the MXUnit Eclipse plugin into Eclipse for unit testing your CFML (full disclosure: I contribute to MXUnit).
Finally, I have full confidence that the folks working on CFEclipse -- Denny, Mark, Jim, Peter, et al. -- will continue to work toward keeping CFEclipse as the best open source CFML IDE available. These are some of the brightest minds in the ColdFusion community and are passionate about their mission. If you choose to use CFEclipse, you are not choosing to use an IDE that will be supplanted by ColdFusion Builder. This project is in good hands.
Why you wouldn't use it: it's a code IDE, not a design tool like Dreamweaver. It's not perfect... code assist can be too aggressive in its suggestions. Eclipse itself, especially when you pile it up with all kinds of plugins, can get unstable on lesser machines. Finally, people who don't like the "Project" view of the world often have complaints about it because they're used to working directly with the file system view of the world. Its deployment support is nowhere near as simple as Dreamweaver, though you can find plugins that get close.
3) ColdFusion Builder
Why you'd use it: all of what I said previously about Eclipse itself applies to CFBuilder when used as a plugin to Eclipse. I cannot speak to the Standalone version because as of this writing, it still doesn't support plugins very well. This will most surely be fixed by the time it is released, but I don't want to speculate on what the Standalone may or may not do.
One of CFBuilder's big draws is "Extensions". These are a way to plug in CFML code into your editor. It's hard to describe, so I'd suggest googling for "ColdFusion Builder Extensions", and you'll most likely be amazed. Adobe's Terry Ryan has created "Apptacular" for scaffolding applications from a database, and Brian Rinaldi has a series of posts on building CFBuilder extensions. These are huge and will prove themselves to be a developer's best friend after CFBuilder is released.
CFBuilder's deployment support is, in my opinion, on par with if not superior to Dreamweaver's.
CFBuilder does not require an additional plugin to do step debugging. Just hit the debug button and off you go.
CFBuilder contains true component insight, meaning that it can introspect components you write and provide ctrl-space content assist. It can be wonky, however, and does require some configuration. But please remember that as of now, CFBuilder is still in beta. My best guess is that it'll be at least a few versions until all the kinks are worked out of this feature. Still, it's a big productivity and learning booster to get content assist on your own components.
CFBuilder provides a "Servers" view for stopping/starting your CF Server. It's built on Aptana and so contains the Aptana "tail log" view, which is great for watching log files. Just like CFEclipse, it has a Snip Tree View.
The CFBuilder "vision" is led by Adobe's Adam Lehman. He's passionate about CF and is a force of nature. I have great hopes for CFBuilder because of Adam's leadership.
Why you wouldn't use it:
For one, it won't be free. Noone outside Adobe knows yet how much it will cost, however. "Extensions" and the deployment features alone may be worth the price. Time will tell.
Because it's an Adobe product, I think it's reasonable to assume that releases will come as frequently as most Adobe products, which means... not very often. While CFEclipse deploys rather frequently lately -- and makes available a "nightly" site for the brave -- CFBuilder will most likely not do such daring-do. CFEclipse can afford to make potentially unstable builds available to the public, while it is perhaps not in Adobe's best interests to do so with CFBuilder.
Finally, it's still in Beta and might not be released for some time. If you get it now and start using it, remember that. In my experience, debugging is wonky, content assist sometimes works, sometimes doesn't, and a lot of people have experience crashiness. It's free beta software... you're getting what you pay for. But know that the more you work with this beta release, and particularly if you provide feedback via the public bug database, the better off all of us will be if it provides a best of breed editor for CFML.
Personally:
At home, when I do "designer" work, I use Dreamweaver when I feel that its Templates will help me build a site as quickly as possible. For existing side projects which require maintenance coding and easy deployments, I use ColdFusion builder.
At work, where I do almost no design work, CFEclipse has been my IDE since 2006. I've begun using ColdFusion builder a lot, though currently I split my time between CFBuilder and CFEclipse. One reason is that as of this writing, CFEclipse is more stable (i.e. it doesn't crash and I don't lose work). I fully expect stability problems to be mitigated by the time CFBuilder costs money.
Both CFBuilder and CFEclipse have public bug databases. CFEclipse has a well-attended public mailing list, and if you have questions, you'll get answers quickly. I cannot yet speak to the speed with which CFBuilder questions are answered.
Finally, for "coders", it's my experience that once you invest the time in learning the tools and shortcuts, Eclipse provides superior productivity compared with designer tools like Dreamweaver. For cranking out a designed site, a designer tool like Dreamweaver confers significant advantages.
The answer to the best ColdFusion IDE isn't an answer, but a question: "What are you trying to do with ColdFusion?" The answer to that question will lead you to an IDE that suits your needs for a particular project. Different circumstances or projects may lead you to a different tool which better suits your needs.
Notepad++ with CF syntax highlighting.
For free: Eclipse with CFEclipes plugin
For cost: If you're a developer, use Coldfusion Builder, if you're a front end designer Dreamweaver edits Coldfusion pretty well. I use it quite often.
I have heavily used Dreamweaver, CFeclipse with eclipse and now Coldfusion Builder. What I found is this:
1) Dreamweaver is only good for the few times you have to do some wysiwyg wizardry. The newer versions do have SVN integration so you might be able to get away with using it. I did use it for a few years on windows.
2) CFEclipse + Eclipse - Generally the standard of what' sbeen used for a while. Runs well, once you add in the Adobe dictionary files and subclipse, you have a good environment
3) Coldfusion Builder - This is Adobe's version of CFeclipse. It's still pretty new and getting to later beta. I switched to it about 6 months ago and haven't looked back. It's got a lot of wizards, including the ability to write your own plugins in CFML that will run right inside CFbuilder. It's free right now on beta but will likely be pretty cheap like the first flex builder that came out.
My Choice: Coldfusion Builder. It doesn't mean the others aren't capable, but you'll spend the least amoutn of time getting setup and maintaining your plugins, etc.
Since I had paid for and used Dreamweaver for a lot of years (Eclipse was generally sluggish sometimes on PCs' a while back until the excess of ram + cpu today), spending to have an adobe maintained copy of eclipse is okay with me. The wizards available in CFbuilder, especially for flex are excellent.
Hope that helps, good luck and share what you ended up picking and why!
For anyone who might stumble here from Google, you should also take a look at Sublime Text coupled with the ColdFusion package.
If you are familiar with Eclipse I would recommend Eclipse with coldfusion plugin.
http://www.cfeclipse.org/
Some use Eclipse, some use ColdFusion Builder, some use emacs or TextMate or vim. I use vim.
It doesn't take much time to try out an IDE or editor. Give them all a shot and stick with the one you like most.
The best IDE is ColdFusion Builder. It allows RDS, In Line Debugging, Extensions (written in ColdFusion!), Code Generation, Refactoring, supports JavaScript, CSS and HTML and so much more. It is currently in beta and should be released in production sometime this year.
CFEclipse is a great IDE for CFML and is the right choice if you are writing CFML for the open source engines. It is free and like most open-source free products it can do almost anything Builder can do if you invest the time to install the additional plugins (like Aptana) and tweak your setup just right.
I use both. At work, we use Builder. At home, I use CFEclipse.
Welcome to the CFML community!
Notepad++. Light and easy to use.
I'll vote for jEdit. While it doesn't offer great ColdFusion support beyond syntax highlighting, and therefore probably isn't great for learning ColdFusion, its flexibility in working with other languages (which seems to happen fairly often while working on the web), powerful macros, plug-in support, proper text wrapping, and loads of other features, make it the editor to which I always end up returning after trying out the "next best thing".
CFEclipse appears to be the most popular. Adobe has a beta of ColdFusion Builder (also based on Eclipse) but when I tried it a few months ago it was still buggy.
Personally I use TextMate (OS X) a pretty bare bones text editor.
I have used textpad, for 6 years, still a solid app, provides syntax coloring/highlighting, regular expressions support. Can easily search inside any file, through tons of folders/subfolders.
Just a fast loading, easy to use, tool.
Also has macros, and macro programming...
http://www.texptad.com
I'd like to throw E TextEditor for the Windows users in here as well. Its similar to sublime but it does have its advantages. E is more or less Textmate for windows and will allow you to run the cftextmate bundles. In addition to being lightweight and extremely fast you get the huge Textmate community developing bundles, color schemes, and other community driven content.
Some of the highlights of E is that it will allow you to open a directory and treat it directory as a project. Hitting Shift-Ctrl T will allow you to browse all the files in your project in a flattened hierarchy which allows you to find files extremely fast.
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 11 years ago.
I know the blackberry has a custom IDE but if memory serves me it's quite a sub par IDE. Does anyone know if there's a different IDE out there for the device?
For 'native' BlackBerry app development (i.e. Java app development), there are basically 4 options:
RIM's JDE - pretty much a terrible
editor, but the most stable, most
feature-full (from a BlackBerry
perspective) solution.
RIM's JDE Plugin for Eclipse - you get all the
niceties of the Eclipse environment,
but there are a lot of problems.
Netbeans with the Mobility Pack - I haven't really seen anyone use this for a while, but a few developers swore by it a couple of
years ago
Custom Eclipse/JDE
environment - using ant scripts and
RIM's JDWP debugger interface (the component package section on that page). This
used to be the only way to go for
Eclipse development for BlackBerry
before the JDE Plugin
Options 3 and 4 I haven't seen used for a long time, not sure if they're still viable - though I don't see why #4 wouldn't be.
I used #4 for a long time, until RIM put out their plugin. While there are still a lot of problems with it, for me the productivity gains of working with something like Eclipse outweigh them.
So either 1 or 2, with the caveat that you should chose one or the other for your whole team, as they're really not compatible with each other (differences in project structure and how they handle resources). You can move from 1 to 2 easily, but not really the other way around.
The IDE provided by RIM is called the JDE. It is true that for many this product leaves much to be desired. RIM does support the use of Eclipse and Microsoft development environments as well so you can take your pick. Personally, I use the JDE. Don't construe this as a recommendation, I'm not saying it is the best, just what I use.
Aside from RIM's JDE, the only other option that I know of is RIM's JDE plugin for Eclipse.
The .NET plugin is very limited in what you can do, it doesn't give you much access to internal classes.
I've been using the JDE plugin and i've not encountered too many difficulties.