CSE 403 Topic: IDEs
Most programmers today use integrated development environments (IDEs) to write code. IDEs provide a number of useful features: they compile code as it is written, they include auto-complete tools for code, they include automated refactoring tools, they allow users to easily search code, and more.
Some examples of modern IDEs include:
A modern trend is "cloud IDEs" that do all of their computation on a remote server, and are accessible via the browser. See, for instance, https://aws.amazon.com/cloud9/ or https://codeanywhere.com/.
Interesting resources:
Project ideas:
- can you think of something else that could be useful for an IDE to do in the background? Static analysis? Something else? Implement a plugin for your favorite IDE that does it!
- code navigation is one of an IDE's core features. Right now, it's done in a relatively straightforward way - if the thing you're looking for is in the index, it succeeds, and otherwise, it gives up. Could you build a tool that takes over when searching the code fails, and searches e.g. the web in an intelligent way?
- the IDE already does a lot, but it doesn't interact much with other parts of the development process, like e.g. bug tracking or deployment. Could it?