Master's thesis

Source Generators in C#

Bc. Ondřej Slimák
Abstract

Source Generators jsou jednou z novějších funkcí v .NET, která má značný potenciál zlepšit několik aspektů vývoje software, jako jsou výkon a doba vývoje. Tato práce si klade za cíl poskytnout podrobného průvodce touto funkcí. Po přečtení této práce by čtenář měl porozumět této funkci, jejímu účelu a využití, jak se liší od ostatních možností generování kódu v C# a čtenář by měl být schopen ji využít …more

Abstract

Source Generators are a recent .NET feature with considerable potential to improve several aspects of software development, such as performance or development time. This thesis aims to provide a profound guide to this feature. After reading this thesis, a reader should understand Source Generators, their purpose and use cases, their difference from the other common code generation options in C#, and …more

Thesis description
Source generators is a new C# compiler feature shipped with the latest .NET 5. The feature allows C# developers to inspect source code and generate new code at compile time. Using a compile-time code generation instead of run-time code inspection could lead to a significant performance gain. Source generators are only a recent feature with having a stable version released by the end of 2020. Thus, no comprehensive guides are describing their capabilities yet, and only a few libraries use them. The primary goal of the thesis is to describe and explain C# source generators; additionally, the thesis should analyze in which standard constructs of the business logic of enterprise applications they might find their use. It is also expected to provide a solution to at least one of the constructs, which seemed appropriate during the analysis.
The thesis has been checked:
18/5/2022 08:41, RNDr. Jaroslav Pelikán, Ph.D., UČO 173
Language used
English English
Defence date
24/6/2022
The thesis was defended successfully

Supervisor

RNDr. Jaroslav Pelikán, Ph.D., UČO 173
KPSK FI MU

Reader

RNDr. Martin Macák, Ph.D., UČO 410452
KPSK FI MU

Literature

  • HOHPE, Gregor and Booby WOOLF. Enterprise Integration Patterns: Designing, Building, and Deploying Messaging Solutions. Boston: Pearson Education, 2011. ISBN 0-321-20068-3.
  • MARTIN, Robert C. Clean architecture : a craftsman's guide to software structure and design. Boston: Prentice-Hall, 2018, xxv, 404. ISBN 9780134494166.

Masaryk University Faculty of Informatics
Plan
Software Systems Development Management
  • Přidání souboru

    Soubor nebo složku lze nahrát pomocí tlačítka Přidat.
  • Další operace se soubory

    Podrobnosti lze zjistit označením příslušného řádku.
  • Pohled pro experty

    Pro častou práci je možné zvolit režim Více možností.
  • Vyhledávání souborů

    Vyhledávaný výraz můžete zadat přímo do adresního řádku.
  • Rychlý přístup k souborům

    Pomocí funkce Nedávné je možné se rychle vrátit k právě prohlíženým souborům. Oblíbené soubory je také možné označit Hvězdičkou.