Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

🔬Look for areas of dotnet 7 & 8 improvements #810

Open
2 tasks
CalvinWilkinson opened this issue Nov 16, 2023 · 0 comments
Open
2 tasks

🔬Look for areas of dotnet 7 & 8 improvements #810

CalvinWilkinson opened this issue Nov 16, 2023 · 0 comments
Assignees
Labels
low-priority Low Priority 🔬research Research collection / investigation

Comments

@CalvinWilkinson
Copy link
Member

CalvinWilkinson commented Nov 16, 2023

Complete The Item Below

  • I have updated the title without removing the 🔬 emoji.

What To Research

Look for areas of improvement and csharp 11 & 12 features to take advantage of throughout the code base. For each feature, create issues if possible to perform the refactoring work to implement the changes.

Resources:


Ideas:

  1. use of required keyword (C# 11):
    Look for areas where the required properties can and should be used.
    • Go here for more information on required properties.
  2. Use of CollectionsMarshal
    • Goto this video (Nick Chapsas)
  3. nameof improvements (C#11):
    Go through the code base and improve places where the nameof keyword can be used. One of the biggest improvements can be in attributes.
  4. Use Of SearchValues struct(C#12):
    • This can give us some huge perf benefits. Especially when it comes to rendering text. Go through the code base and find all areas where this could help us out.
    • Go here for a video on details of the new type.
  5. Look for .ToArray() uses and find how to remove them to reduce allocations
  6. Look into this blog post for more string perf opportunities
  7. Look for opportunities for improvement by using the SearchValues<T> feature.
    • This requires dotnet 9

Research Results

No response

Acceptance Criteria

Tasks

ToDo Items

  • Priority label added to this issue. Refer to the Priority Type Labels section below.

Issue Dependencies

No response

Related Work

No response

Additional Information:

Priority Type Labels

Priority Type Label
Low Priority low priority
Medium Priority medium priority
High Priority high priority

Code of Conduct

  • I agree to follow this project's Code of Conduct.
@CalvinWilkinson CalvinWilkinson added low-priority Low Priority 🔬research Research collection / investigation labels Nov 16, 2023
@CalvinWilkinson CalvinWilkinson self-assigned this Nov 16, 2023
@github-project-automation github-project-automation bot moved this to ⚪Not Set in KD-Team Nov 16, 2023
@CalvinWilkinson CalvinWilkinson changed the title 🔬Look for areas to use required props 🔬Look for areas of dotnet 7 & 8 improvements Nov 16, 2023
@CalvinWilkinson CalvinWilkinson pinned this issue Jan 4, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
low-priority Low Priority 🔬research Research collection / investigation
Projects
Status: ⚪Not Set
Development

No branches or pull requests

1 participant