This is an overview of articles focusing a single topic or explaining our experiences while developing Sw!ftalyzer.
Instructions
Learn more about different features and settings of Sw!ftalyzer to get the most out of your analysis.
- Learn more about Dependency WarningsHighlight unintended dependencies between your modules, groups, files or entities with Warnings, so that you can find and fix them easily.
- Learn more about File Length Information & WarningsSw!ftalyzer shows you an overview of the lengths of all files in a histogram. This gives you more context than looking at each file individually and helps to spot outliers. Learn more about how Sw!ftalyzer helps you improving your app.
- Learn more about Non-Final Class Information & WarningsSw!ftalyzer automatically analyses the declarations of the classes in your app and knows, which ones don’t have the final keyword. It also sees all inheritances and thus knows, which classes can not be final because of subclasses. Learn more about how to improve your app with Sw!ftalyzer.
- Learn more about Shared Target Membership Information & WarningsSharing code via Target Memberships is easy but has a bunch of disadvantages. Learn more about the problems and how Sw!ftalyzer helps you identify shared files.
- Learn more about Unused Entities Information & WarningsWhen removing an old and unused feature or refactoring code, it’s easy to miss that some part of the code stays in the project although it’s no longer in usage. Sw!ftalyzer analyses all dependencies and can find entities without any incoming dependencies.
Metrics
Learn more about software architecture metrics Sw!ftalyzer is calculating for you.
- Understanding your Project with metrics: CCDThe architecture of a software project is often large and complex. This makes it hard to see if a change in the source code reduces or adds more complexity, making the software harder to maintain in the future. Find out how to measure this complexity with Sw!ftalyzer.
- Understanding your Project with metrics: Framework DependenciesThis metric shows how many of your code entities depend on frameworks. The more of your entities use a framework, the higher is the dependency to that framework. A high dependency is not always bad, but it can increase the maintenance costs and your vulnerability in case of breaking changes in a framework.
- Understanding your Project with metrics: InstabilityInstability measures the relative susceptibility to breaking changes of a software component. A component with a high Instability is likely to change more often than one with a low Instability.
- Understanding your Project with metrics: Module DeepnessSplitting an app into modules is an essential technique for managing software complexity. Modules allow us developers to focus on smaller parts of the app at a time by hiding away complexity. Learn more about how to create modules that hide complexity instead of adding to it.
Insights
Learn more about various topics of Sw!ftalyzer and its development.
- A Deep Dive into Apple’s Toolbox: How to Explore First-Party FrameworksHow does Sw!ftalyzer know which entities belong to which of Apples frameworks? In this article we’ll show you where this information is coming from and how you can get this data yourself.