SNiFF + Basic Concepts
What is SNiFF+?
SNiFF+ is an open and scalable programming environment for C, C++, Java, Fortran and IDL. SNiFF+ supports the following development tasks:
- Code comprehension and browsing--SNiFF+ provides very powerful browsing and
cross referencing features. Powerful filtering and visualization techniques work even with
very large projects with many thousands of files, tens of thousands of symbols, and millions
of lines of code. No compilation is necessary to extract the symbol information, as
SNiFF+ has its own fast and fault-tolerant parsers.
- Development--SNiFF+ provides strong development support. All changes in the code
are immediately reflected in all the browsing tools--no recompilation is necessary.
- Documentation building--SNiFF+ offers an integrated Documentation Editor that supports
incremental and iterative documentation building. The hypertext-like linking provides
quick navigation between source code and documentation. The generated documentation
can be converted to other document publishing formats.
- Project and code management for teams--SNiFF+'s project and working environment
concepts allow for the organization of large projects and effective cooperation in teams.
- Version and configuration management--All files of any file type can be managed with
SNiFF+. Advanced tools facilitate the management of versions of files and configurations
of projects.
- Build support--SNiFF+'s Make Support allows you to set up and activate your build processes
using SNiFF+'s GUI. It provides automatic support for multi-platform development
and works with compilers, linkers, archivers and other build tools of your choice. Furthermore,
it provides (recursive) make rules for C/C++, Java, IDL and FORTRAN. Using these
rules, you can completely regulate the make process (e.g., by choosing the order in which
your targets are built).
- Debugging support--SNiFF+ provides interfaces to a wide range of debuggers under a
consistent user interface that tightly integrates debugging tasks with browsing tasks.
- Tool and control integration--Together with adaptors to external tools like compilers,
debuggers and version and configuration tools, the
sniffaccess
interface provides a
flexible means for integrating SNiFF+ with third-party tools.