The Ultimate List of C# Tools: IDEs, Profilers, Automation Tools, and More (Part 2)
The Ultimate List of C# Tools: IDEs, Profilers, Automation Tools, and More (Part 2)
Welcome back to the ultimate list of C# tools. If you're tired of using the same C# development tools, this compilation should give you an of what is out there.
Join the DZone community and get the full member experience.Join For Free
FinalBuilder is a great commercial option for a build automation tool. With FinalBuilder, you don’t need to edit XML or write scripts to automate your build process.
- Makes builds easy by including visual debugging.
- Visually define and debug your build scripts.
- Schedule scripts with Windows scheduler.
- Integrates with Continua CI, Jenkins, or any other CI Server.
SemanticMerge understands your code and is designed to handle code that has been moved or modified, making it a powerful tool for team collaboration.
- Enables collaboration and a distributed approach to development.
- Starts with structural merge, and then moves to more specific text-based merge when conflicts occur.
- Merges based on structure rather than location.
- Deals with language-specific conflicts.
- Avoids incorrectly identified automatic merges.
- Maintain cleaner code and understand changes.
Git really needs no introduction. It’s a free, open-source version control system – and the most popular version control system used today.
- Modern version control tool for today’s geographically distributed teams.
- Includes strong defaults for conflict resolution, auto recovery, and more.
- Cheap local branching.
- Convenient staging areas.
- Multiple workflows.
TF Version Control is Microsoft’s alternative to Git, and it’s well-integrated into Visual Studio. It’s enterprise-ready, so it’s a good choice for teams of any size working with VS projects.
- Leverages Visual Studio features to provide a native experience.
- Tracks code changes across branches.
- Provides feedback before code is checked in.
- Integrates with the most popular tools for CI and build automation.
BitBucket is Jira’s alternative to Git and is also a capable version control tool – “the only collaborative Git solution that massively scales.”
- Collaborate faster with inline commenting options.
- Host it yourself as the code is open sourced, or let Jira manage it for you.
- Pull requests allow for more efficient code review approvals.
- Uninterrupted access with BitBucket Data Center.
- Unlimited private repositories.
SourceTree is another Jira offering, a free Git client for Windows and Mac, with a simple Git GUI for managing your repositories.
- Supports Windows and Mac.
- Visually interact with your repositories.
- Simplified distributed version control.
- Simple enough for beginners; powerful enough for experts.
Testing Tools & VS Extensions
A tool to instantly test code snippets in C#, F#, and VB, LINQPad lets you query databases interactively.
- Has its own query language – LINQ, which is a powerful way to query databases quickly.
- Great for learning C# as it gives you many of the features of an IDE without the bloat.
- Query databases in LINQ (or SQL) — SQL/CE/Azure, Oracle, SQLite, and MySQL.
- Rich output formatting.
- Script and automate in your preferred .NET language.
Selenium is one of the most popular testing tools available today. It automates web browsers so you can run tests at scale and with precision.
- Automate boring web-based administration tasks.
- Create robust regression automation suites and tests.
- Scale and distribute scripts across environments.
- Build your own Selenium server or use a vendor-provided hosted option.
ReSharper, created by JetBrains, is a Visual Studio extension for .NET developers. Use it to analyze code quality on the fly, eliminate errors, safely change the code base, and more.
- Provides on-the-fly code analysis.
- Quick fixes for errors.
- Assists with complex refactoring.
- Multiple code-editing helpers.
OzCode is a Visual Studio extension for C# offering powerful debugging tools so you can spend more time developing and less time debugging.
- Makes it easier to find and fix bugs right within Visual Studio.
- Works great with ReSharper.
- Figure out complex expressions with Magic Glance.
- Powerful search, reveal, and compare features.
CodeRush helps you find and fix issues easily and, like several other testing tools in this section, is a VS extension.
- Visually highlights problems across the codebase and helps you spot issues quickly.
- Quickly create new tests and test suites with shortcuts.
- Easy refactoring.
A lightweight developer tool for .NET and Java, Prefix shows you logs, errors, queries, and more in real-time. It works within your existing workstation – and it’s free.
- Provides a detailed trace of every web request.
- No messy config or code changes.
- Instant download; get immediate code insights.
- View logs by request.
- Find hidden exceptions.
- View SQL queries.
- Quickly pinpoint suspicious behavior.
dotTrace, from JetBrains, is a profiler that helps troubleshoot performance issues and speed up applications.
- Understand how SQL queries and HTTP requests affect application performance.
- View line-by-line profiling data and get specific performance metrics.
- Get data on calls execution time.
- Profile SQL queries and HTTP requests.
- Profile static methods and unit tests.
- Profile and visualize results within Visual Studio.
ANTS Performance Profiler is a profiling tool for .NET code, including C#, that provides line-by-line profiling statistics.
- View performance data for SQL queries and HTTP requests.
- Provides line-by-line results.
- Shows historic performance over time.
- Get insight into long-term performance.
37. N Profiler
A profiling tool that claims to be faster than any other profiler, N Profiler provides rich .NET performance data to save you up to 90% of optimization time.
- Find out the exact cause for performance issues – database queries, or long I/O times.
- Performance metrics are organized in a Call Tree and can be viewed at the overview or details level.
Retrace is the only developer tool that combines APM, logs, errors, metrics, and monitoring in a single platform to help you build better. It’s designed for production and pre-production servers and starts at just $10 per month.
- Collects performance data at the code level.
- Application and server logging.
- Application metrics from a variety of sources.
- Error tracking and monitoring.
- Works out of the box with your existing stack.
- Free Trial.
The leading deployment automation tool for C#, Octopus takes the reins where your CI tool ends, making it possible to automate complex application deployments.
- Provision and configure new machines to deploy your app.
- Integrates with CI servers to extend build automation and CI processes into deployment.
- Promote releases between environments.
- Repeatable, reliable deployments.
A CI build server that takes care of not just builds, but deployments too, Appveyor is robust, secure, and requires no setup to get started.
- End-to-end solution for builds, testing, and deployment.
- Easy to use and requires no setup.
- Isolated build environments.
- Developer-friendly build configs using UI or YAML.
- Built-in deployment and NuGet server.
- Multi-branch builds.
AppHarbor does more than deployment: it’s a fully-hosted .NET Platform-as-a-Service. It’s used to host everything from personal blogs to high-traffic web apps.
- Takes code from a source code repository and deploys it on its own hosted platform.
- Instantly deploy and scale .NET applications using your favorite versioning tool.
- Don’t worry about scaling your infrastructure to keep up with load, AppHarbor takes care of it all for you.
More than a deployment automation tool, Jenkins is the most popular CI server that’s extending its reach to the deployment and delivery phases as well.
- Rich collection of extensions to suit every stack.
- End-to-end solution from build to deployment.
- Hundreds of plugins to support building, deployment, and automation.
Docker.DotNet is a C# client library for the Docker API. With it, you can interact with the Docker Remote API programmatically.
- Can be installed via the NuGet library manager for Visual Studio.
- Enables fully asynchronous, non-blocking, object oriented code in .NET.
A powerful tool to containerize C# applications, Distelli helps you automate your container workflow from end to end. See this helpful tutorial for how to build and deploy a C# application with Distelli. This tutorial provides step-by-step instructions for building and deploying a Docker C# application.
- Automate your container workflow end-to-end using Distelli.
- Deploys to Kubernetes for state-of-the-art container orchestration.
With C# and .NET Core poised to be huge in 2018 and beyond, honing your C# skills will serve you well in the next few years. We hope you’ve found a tool or two that you can put to use today and improve the quality and productivity of your C# development. Let us know if there’s any tool we missed out on that deserves a spot in this toolkit.
Published at DZone with permission of Angela Stringfellow , DZone MVB. See the original article here.
Opinions expressed by DZone contributors are their own.