When the team at Siemens Audiology was tasked with building a new WPF implementation for two of its leading hearing system software applications, a big challenge was to find a way to save coding time for developers implementing ViewModels while increasing code readability.
The team chose PostSharp and saved 15% development time plus improved code readability by removing unwanted boilerplate code.
When the team at ATS Global needed to build a complex shop floor simulation, they faced the challenge of potential multithreading issues and the complexity of writing synchronization code.
The team turned to PostSharp and was able to write thread-safe code without training all team members in advanced multithreading and delivered required features with 16% fewer lines of code.
When the team at Thales Information Systems was tasked with a big refactoring on a project, one of the challenges was to simplify architecture by reducing boilerplate code. The architect chose PostSharp to implement custom aspects to handle logging, performance counters and INotifyPropertyChanged and keep junior team members better focused on business logic.
Gamesys serves around one million daily active users across its social games. Their backend services handle more than 250 million requests per day. Despite its massive scale, this distinctive service is being maintained by a remarkably small development team of just seven super-productive individuals.
They chose PostSharp to automate the implementation of their design patterns, outsourcing mundane tasks to the compiler so they can focus on what matters..
When Cognitive X was looking for ways to deliver value to their clients while differentiating themselves from the competition, the team chose PostSharp as one of the core pieces of their strategy. By decreasing the actual lines of code they were writing, as well as helping them enforce best practices, PostSharp allowed them to produce new features for their clients faster, at lower cost, and with fewer errors.
When the lead developers at mobileX began a huge refactoring project, migrating the company’s codebase to the .NET 3.5 framework and then rewriting their flagship application from WinForms to WPF, the biggest challenge was to improve code maintainability by reducing code complexity.
They chose PostSharp for its out-of-the-box solutions that eliminate code repetition without changing application architecture.
Queue-it is an online queue system designed to manage website overload during extreme end-user peaks. Queue-it serves 600+ million users worldwide and has customers across all online industries, including ticketing, retail, education, and the public sector.
The Queue-it team chose PostSharp to automate implementation of patterns and dramatically improve the quality of their code base: it is now cleaner, easier to maintain, and contains fewer defects. Queue-it considers PostSharp an essential tool for software development.
When the team at Mitchell International was asked to deliver a new suite of client-facing applications, one of its greatest challenges was to keep code repetition to a minimum. After evaluating a number of solutions, the development team at Mitchell chose PostSharp to deliver a significant decrease in boilerplate code and software defects — saving them from having to write tens of thousands of lines of code.
"PostSharp is a pretty amazing piece of software."
Stay DRY with aspect oriented programming by injecting repetitive code directly into your application. Abstractions like AOP are the whole point of what the computer is supposed to do for us, work that’s not fun, like logging and transactions. So why not hide that?
"PostSharp should be part of every C# developers' toolset."
PostSharp is amazing! If you are not using it, you should! The amount of code that can be reduced in logging alone is worth the price! I believe that PostSharp should be part of EVERY C# developers toolset.
"Working declaratively is a dream!"
PostSharp is the best way to implement cross-cutting functionalities in a very elegant and efficient way. And when you want to enforce some design rules in your code, working declaratively is a dream!
"PostSharp simplicity is simply amazing."
PostSharp rocks! And I mean that as someone who is doing AOP for a long while, and has implemented some not insignificant parts of Castle.DynamicProxy. Leaving aside the amount of power that it gives you, PostSharp simplicity is simply amazing, wow!
"It has reduced thousands of lines of code."
PostSharp was especially good when we had to embed applications and needed to transfer data between them. We would have had to write a lot of code if not for just one aspect and now we don’t even think about it. It’s made life a lot easier from a development point of view.
"PostSharp is very easy to use."
Releasing developers from writing boilerplate or infrastructure code helps my team to complete features faster. We definitely save coding time with PostSharp. We’re relieved from writing INotifyPropertyChanged and creating ICommand properties needed for data binding.
"No better system out there."
PostSharp enables me to achieve things unobtrusively where other frameworks are large, ungainly, intrusive, slow, and require me to alter my architecture. As a past user of other AOP systems I am convinced there is no better system out there right now.
"We consider the use of AOP and PostSharp a competitive advantage."
By multicasting into different namespaces, and associating a configuration key to each trace aspect woven into the code, our team can easily turn tracing on or off dynamically and get instant diagnostics. Even if we didn't extend our aspects any further, the base library of custom aspects we have continue to provide leverage as our technology evolves and grows.
"Dramatically improves the readability of my code."
PostSharp improves the readability of my code – my efficiency is improved too as I’m writing less boilerplate and more features. Before PostSharp I experimented with several alternatives, but all of them shared a common critical problem: terrible runtime performance. PostSharp solves this by doing most of its work at compile time, so everything runs smoothly at runtime.
I have been using PostSharp about two years; I have found it to be highly reliable and well thought-out system, and would have no hesitation in recommending it to other developers.
"Way to go, PostSharp!"
Manually implementing caching on a large service layer to an application already in production isn't easy. So instead I wrote a caching and logging block, and used PostSharp's multi-casting feature to apply them to our service layer, and voilà! Within minutes we had a phenomenal increase in our tests. If not for PostSharp we wouldn’t have fixed the issue so quickly.
"PostSharp simplifies our code, without making our code simple."
By using PostSharp, we've been able to consolidate and vastly simplify our code, making it more readable and maintainable. It's allowed us to more consistently leverage code throughout the code base without having to continually rewrite the same functionality over and over again. We've been so satisfied with PostSharp and AOP, that we've begun looking for other ways to leverage such a powerful framework.
Install PostSharp from Visual Studio Gallery. A single download includes all features of all editions.
After the 45-day trial, you can choose to buy the product or to use the free PostSharp Essentials.