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

.NET CDK developer experience improvements #4245

Closed
costleya opened this issue Sep 25, 2019 · 2 comments
Closed

.NET CDK developer experience improvements #4245

costleya opened this issue Sep 25, 2019 · 2 comments
Assignees
Labels
language/dotnet Related to .NET bindings management/tracking Issues that track a subject or multiple issues

Comments

@costleya
Copy link
Contributor

We launched CDK GA support for TypeScript and Python on July 11th. Since GA, have been busy making API usability changes to improve the .NET developer experience for CDK. Recently, we rolled out quite a few changes for .NET developers. We would love to hear your reactions. Add your comments on this pinned issue. The CDK team will actively watch for your feedback and will follow-up on them as part of ongoing feature improvements and bug fixes priorities. See below a quick run-down for key changes —

  • Usability improvements:

    • Optional and variadic parameters support: The CDK for .NET now supports optional and variadic (params keyword) parameters in method signatures. Previously, a null value had to be passed to some of the CDK constructs methods parameters.
      Example:
            var bucket = new Bucket(stack, "MyBucket", null);
            // The third parameter is now optional
            var bucket = new Bucket(stack, "MyBucket");
    • Naming improvements (syntax): In the dev preview version, underscores sometimes polluted the code. With the recent release, we solved this problem with nested classes and you no longer have to deal with class names ending with underscores. Here is an example of how you see the classes without the underscores. (https://docs.aws.amazon.com/cdk/api/latest/dotnet/api/Amazon.CDK.AWS.Glue.CfnJob.JobCommandProperty.html)
    • Improved view-ability of warning messages in the IDE: We have introduced a new NuGet package (Amazon.JSII.Analyzers (https://www.nuget.org/packages/Amazon.JSII.Analyzers/) or the Roslyn Analyzer) to help .NET developers for showing errors in their IDE when developing for the CDK. For example, developers will now see a warning when a required property is not supplied to a CDK construct.
    • .NET CDK documentation now displayed in the IDE: We have updated the .NET generator to get documentation in NDoc format. You can now see documentation displayed in the IDE.
    • More syntax improvements (Double I prefix for interfaces): In some occurrences, interfaces names could start with two capital I letters in prop objects. The second capital I prefix is now removed.
  • Heads up on few other changes

    • The CDK .NET now targets .NET Core 2.1 (netcoreapp2.1).
  • Bug fixes

@costleya costleya added the needs-triage This issue or PR still needs to be triaged. label Sep 25, 2019
@fulghum fulghum pinned this issue Sep 25, 2019
@NGL321 NGL321 added language/dotnet Related to .NET bindings management/tracking Issues that track a subject or multiple issues and removed needs-triage This issue or PR still needs to be triaged. labels Sep 25, 2019
@SomayaB SomayaB added language/dotnet Related to .NET bindings and removed language/dotnet Related to .NET bindings labels Sep 25, 2019
@McDoit
Copy link
Contributor

McDoit commented Oct 2, 2019

Yeah after the most recent fixes and updates, the dotnet experience is really smooth
Most of my issues raised with the jsii is fixed and using the dotnet cdk for some minor projects already

The main issue blocking me now is #3284 regarding CloudFront

I have also noticed that I sometimes have problems with auto completion in VS2017, don't know if it is just my computer or if it's related to the CDK

@RomainMuller
Copy link
Contributor

@McDoit - with respects to auto-completion... We've actually changed how our symbols & documentations packages are built & distributed. The symbols package is now served from NuGet's own symbols server (https://symbols.nuget.org/download/symbols). This might improve the situation for you.

@eladb eladb unpinned this issue Nov 21, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
language/dotnet Related to .NET bindings management/tracking Issues that track a subject or multiple issues
Projects
None yet
Development

No branches or pull requests

5 participants