IDE
An integrated development environment (IDE) is a software application that provides comprehensive facilities to computer programmers for software development. An IDE normally consists of a source code editor, build automation tools and a debugger. Most modern IDEs have intelligent code completion.[1]
line numbers text type syntax highlighting autocomplete (very helpful) code overview on right View -> layout -> 2 column view