Skip to content

Commit 89057f6

Browse files
committed
fix: update image paths in Blog 1, Blog 2, and Blog 3 for correct rendering
1 parent fe14f6f commit 89057f6

File tree

6 files changed

+30
-31
lines changed

6 files changed

+30
-31
lines changed

content/3-BlogsTranslated/3.1-Blog1/_index.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ Many organizations require dynamic API routing capabilities to support their evo
2020

2121
With this new launch, you can implement dynamic routing logic with a simple declarative configuration within the custom domain name settings. The new routing rule mechanism allows you to make routing decisions based on HTTP headers, base paths, or a combination of both. Developers are no longer required to create new or alter existing paths to smoothly transition between API versions, they can simply specify the desired value in the request HTTP header. Among other possibilities, you can implement cell-based architecture routing, A/B testing, or dynamic backend selection based on [hostname](https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-custom-domains.html#wildcard-custom-domain-names), tenant ID, accepted response media type, or cookie value. By implementing routing logic directly within the API Gateway, you can eliminate proxy layers and complex URL structures while maintaining fine-grained control over your API traffic. This new feature seamlessly integrates with existing API Gateway capabilities and supports both public and private REST APIs. The following diagram shows how you can use routing rules for header and base-path based routing. This example uses a single level resource /products to show path matching, however depending on your use-case you could also use multi-level paths like **/products/items**.
2222

23-
![image-1](images/3-BlogsTranslated/3.1/image-1.jpg)
23+
![image-1](/images/3-BlogsTranslated/3.1/image-1.jpg)
2424

2525
Figure 1. Using routing rules for header and base-path based routing
2626

content/3-BlogsTranslated/3.1-Blog1/_index.vi.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ Nhiều tổ chức yêu cầu khả năng định tuyến API động để đ
2020

2121
Với Dynamic Routing Rules, bạn có thể triển khai logic định tuyến động bằng một cấu hình khai báo đơn giản trong phần cài đặt custom domain name. Cơ chế routing rule mới cho phép bạn đưa ra các quyết định định tuyến dựa trên HTTP headers, base paths, hoặc kết hợp cả hai. Các nhà phát triển không còn cần phải tạo mới hoặc thay đổi các path hiện có để chuyển đổi mượt giữa các phiên bản API, họ chỉ cần chỉ định giá trị mong muốn trong request HTTP header. Trong số các khả năng khác, bạn có thể triển khai định tuyến kiến trúc cell-based, A/B testing, hoặc lựa chọn backend động dựa trên [hostname](https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-custom-domains.html#wildcard-custom-domain-names), tenant ID, accepted response media type, hoặc cookie value. Bằng cách triển khai logic định tuyến trực tiếp trong API Gateway, bạn có thể loại bỏ các proxy layers và các cấu trúc URL phức tạp trong khi vẫn duy trì quyền kiểm soát chi tiết với traffic API của bạn. Tính năng mới này tích hợp liền mạch với các khả năng hiện có của API Gateway và hỗ trợ cả REST APIs công khai và riêng tư. Sơ đồ sau cho thấy cách bạn có thể sử dụng routing rules cho định tuyến dựa trên header và base-path. Ví dụ này sử dụng một tài nguyên cấp một /products để minh họa khớp path, tuy nhiên tùy thuộc vào use-case bạn cũng có thể dùng các path nhiều cấp như /products/items.
2222

23-
![image-1](/images/3-BlogsTranslated/3.1/image-1.png)
23+
![image-1](/images/3-BlogsTranslated/3.1/image-1.jpg)
2424

2525
Hình 1. Sử dụng routing rules cho định tuyến dựa trên header và base-path
2626

@@ -125,7 +125,7 @@ Trong các kịch bản như API versioning, bạn có thể tạo rule để đ
125125

126126
Header-based routing cũng đơn giản hóa việc A/B testing bằng cách cho phép bạn định nghĩa các nhóm client dựa trên custom headers, cho phép thực hiện thử nghiệm có kiểm soát với các cấu hình khác nhau. Bạn có thể tạo rule kiểm tra một custom header như x-test-group để định tuyến người dùng cụ thể tới các implementation API khác nhau. Hệ thống priority đảm bảo hành vi định tuyến có thể dự đoán -- khi nhiều rule khớp với một request, rule có số priority thấp nhất (tức là precedence cao nhất) sẽ quyết định định tuyến. Việc kết hợp cả header và path conditions trong một rule duy nhất cho phép các kịch bản định tuyến phức tạp, ví dụ như định tuyến theo version cụ thể cho các tài nguyên API cụ thể thay vì toàn bộ API, như minh họa trong sơ đồ sau.
127127

128-
![image-2](images/3-BlogsTranslated/3.1-/image-2-1.png)
128+
![image-2](/images/3-BlogsTranslated/3.1-/image-2-1.jpg)
129129

130130
Hình 2. Cấu hình định tuyến với hai header và một bộ path conditions trong API Gateway Console.
131131

content/3-BlogsTranslated/3.2-Blog2/_index.md

Lines changed: 15 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,7 @@ pre: " <b> 3.2. </b> "
88

99
[Click here to read the orignal post](https://aws.amazon.com/vi/blogs/devops/introducing-an-agentic-coding-experience-in-visual-studio-and-jetbrains-ides/)
1010

11-
12-
*by Artur Rodrigues and Neeraj Handa on 05 JUN 2025*
11+
_by Artur Rodrigues and Neeraj Handa on 05 JUN 2025_
1312

1413
Developers spend countless hours on repetitive tasks like debugging code, writing unit tests, and validating build processes – time that could be better spent on innovation and problem-solving. To address these challenges, Amazon Q Developer has expanded its intelligent coding assistant capabilities to Visual Studio and JetBrains Integrated development environments (IDEs). This new agentic experience works proactively on your behalf, automatically analyzing your workspace, generating code fixes, and executing commands to streamline your development workflow.
1514

@@ -35,45 +34,45 @@ Context management extends to configuration through the .amazonq/rules/ director
3534

3635
Let us walk you through two use cases. In our example, we will use the Visual Studio IDE. Similar agentic capabilities are now supported in [JetBrains IDEs](https://docs.aws.amazon.com/amazonq/latest/qdeveloper-ug/q-in-IDE.html#supported-ides-features) as well. We invite you to follow along by cloning the [Bob’s Used Books sample repo](https://github.com/aws-samples/bobs-used-bookstore-sample) and opening it in Visual Studio 2022. Don’t forget to add or update the [Amazon Q Developer extension](https://marketplace.visualstudio.com/items?itemName=AmazonWebServices.AWSToolkitforVisualStudio2022).
3736

38-
***Creating unit tests***
37+
**_Creating unit tests_**
3938

4039
The **Bookstore.Domain** project contains domain objects such as **Book** and **ShoppingCart**.
4140

42-
![image-1](images/3-BlogsTranslated/3.2-/Figure1-QDevVSAgentic.jpg)
41+
![image-1](/images/3-BlogsTranslated/3.2/Figure1-QDevVSAgentic.jpg)
4342

4443
Figure 1: Domain objects in Bookstore.Domain
4544

4645
We have a separate project called Bookstore.Domain.Tests that contains tests for the Book class.
4746

48-
![image-2](images/3-BlogsTranslated/3.2-/Figure2-QDevVSAgentic.jpg)
47+
![image-2](/images/3-BlogsTranslated/3.2/Figure2-QDevVSAgentic.jpg)
4948

5049
Figure 2: Tests for Book class
5150

5251
We want to add unit tests for the **ShoppingCart** class. Let’s ask Amazon Q Developer to create unit tests for **ShoppingCart**. We also want Amazon Q Developer to follow the existing pattern of creating test classes in a separate test project.
5352

5453
By default, the agentic experience is on. If you are in the planning phase of the Software Development Lifecycle (SDLC) and prefer to use a traditional back-and-forth chat, you can turn the agentic experience. To toggle the agentic experience on and off, choose the angle bracket pair in the bottom left corner of your Q Developer chat window.
5554

56-
Then, we ask Q Developer *“Can you create a test for @ShoppingCart.cs? Look at existing test and use the same libraries”*. First, notice that we are giving a command instead of just asking a question. Second, we are referencing the file ShoppingCart.cs explicitly to provide Q Developer the appropriate context. In the following image, you can see that Q Developer is acting on our behalf. In agentic coding mode, Q Developer can take actions and run commands. In our example, it is reading files, writing to files, and running commands with your permission.
55+
Then, we ask Q Developer _“Can you create a test for @ShoppingCart.cs? Look at existing test and use the same libraries”_. First, notice that we are giving a command instead of just asking a question. Second, we are referencing the file ShoppingCart.cs explicitly to provide Q Developer the appropriate context. In the following image, you can see that Q Developer is acting on our behalf. In agentic coding mode, Q Developer can take actions and run commands. In our example, it is reading files, writing to files, and running commands with your permission.
5756

58-
![image-3](images/3-BlogsTranslated/3.2-/Figure3-QDevVSAgentic-537x1024.jpg)
57+
![image-3](/images/3-BlogsTranslated/3.2-/Figure3-QDevVSAgentic-537x1024.jpg)
5958

6059
Figure 3: Prompt to create new tests
6160

6261
Using commands, Q Developer was able to analyze our solution structure, understand that we have a project called **Bookstore.Domain.Tests**, and create a new file containing unit tests for **ShoppingCart**.
6362

64-
![image-4](images/3-BlogsTranslated/3.2-/Figure4-QDevVSAgentic.jpg)
63+
![image-4](/images/3-BlogsTranslated/3.2-/Figure4-QDevVSAgentic.jpg)
6564

6665
Figure 4: Summary of test cases
6766

6867
We can verify that there is a new file called **ShoppingCartTests** in the **Bookstore.Domain.Tests** project, which is aligned with our existing test creation strategy.
6968

70-
![image-5](images/3-BlogsTranslated/3.2-/Figure5-QDevVSAgentic.jpg)
69+
![image-5](/images/3-BlogsTranslated/3.2/Figure5-QDevVSAgentic.jpg)
7170

7271
Figure 5: New file with generated test cases
7372

7473
In Visual Studio, we can now run the unit tests and verify that they pass.
7574

76-
![image-6](images/3-BlogsTranslated/3.2-/Figure6-QDevVSAgentic.jpg)
75+
![image-6](/images/3-BlogsTranslated/3.2/Figure6-QDevVSAgentic.jpg)
7776

7877
Figure 6: Successful test run of new tests
7978

@@ -83,30 +82,30 @@ In the following example, we will demonstrate the power of the agentic coding ex
8382

8483
In our example, we have deliberately misspelled one of the methods in the **IShoppingCartRepository** interface. The **AddAsync** method is now incorrectly spelled **AddAsyn**.
8584

86-
![image-7](images/3-BlogsTranslated/3.2-/Figure7-QDevVSAgentic-1024x414.jpg)
85+
![image-7](/images/3-BlogsTranslated/3.2/Figure7-QDevVSAgentic-1024x414.jpg)
8786

8887
Figure 7: Spelling mistake in a method name
8988

9089
When we try to build the **Bookstore.Domain** project, we get a build error as expected. Let’s ask Q Developer to fix the error. Without the agentic coding experience, we would have to copy the text of the build error into the chat window and ask Q Developer to provide recommendations. Then we would have to act on its recommendations by manually making changes and trying to build. This is one of many examples of the power of the agentic chat, which runs commands and uses the command’s output to enrich the context of the prompt to take actions.
9190

92-
With the agentic coding experience, we just ask Q Developer *“Can you fix the error I am getting while building the solution? Please build and check it”*. In the following image, you will see how Q Developer runs the .NET build commands to get build errors and read the relevant files.
91+
With the agentic coding experience, we just ask Q Developer _“Can you fix the error I am getting while building the solution? Please build and check it”_. In the following image, you will see how Q Developer runs the .NET build commands to get build errors and read the relevant files.
9392

94-
![image-8](images/3-BlogsTranslated/3.2-/Figure8-QDevVSAgentic.jpg)
93+
![image-8](/images/3-BlogsTranslated/3.2/Figure8-QDevVSAgentic.jpg)
9594

9695
Figure 8: Building the solution
9796

9897
After it reads the files, it finds the spelling mistake and fixes it automatically. As shown in the following image, it then builds the solution to verify that its fix worked.
9998

100-
![image-9](images/3-BlogsTranslated/3.2-/Figure9-QDevVSAgentic.jpg)
99+
![image-9](/images/3-BlogsTranslated/3.2/Figure9-QDevVSAgentic.jpg)
101100

102101
Figure 9: Fixing the spelling mistake
103102

104103
In the following image, Amazon Q Developer provides a summary of the error, the actions it took to build it. It even helps me with some recommendations to fix the warnings it got while running the build.
105104

106-
![image-10](images/3-BlogsTranslated/3.2-/Figure10-QDevVSAgentic.jpg)
105+
![image-10](/images/3-BlogsTranslated/3.2/Figure10-QDevVSAgentic.jpg)
107106

108107
Figure 10: Summary of changes and suggestions
109108

110109
**Conclusion**
111110

112-
The addition of Amazon Q Developer’s agentic experience in Microsoft Visual Studio and JetBrains IDEs takes Amazon Q Developer beyond traditional chat-based interactions to intelligent, action-oriented assistance. The ability to automatically read files, generate code diffs, run shell commands, and validate changes demonstrates a level of autonomy that can significantly accelerate development tasks while maintaining code quality. The examples we’ve explored, from automated test creation to build error resolution, showcase how the agentic experience can streamline common development tasks that traditionally required multiple manual steps. This new capability, combined with multi-language support and customizable development standards, makes Amazon Q Developer a powerful ally in modern software development workflows. As development teams continue to seek ways to improve productivity without compromising code quality, Amazon Q Developer’s agentic experience represents a meaningful step forward in IDE-integrated AI assistance. Whether you’re writing tests, fixing bugs, or optimizing code, the ability to have an AI assistant that can not only suggest solutions but also implement them while maintaining context awareness is a game-changing addition to the developer’s toolkit.
111+
The addition of Amazon Q Developer’s agentic experience in Microsoft Visual Studio and JetBrains IDEs takes Amazon Q Developer beyond traditional chat-based interactions to intelligent, action-oriented assistance. The ability to automatically read files, generate code diffs, run shell commands, and validate changes demonstrates a level of autonomy that can significantly accelerate development tasks while maintaining code quality. The examples we’ve explored, from automated test creation to build error resolution, showcase how the agentic experience can streamline common development tasks that traditionally required multiple manual steps. This new capability, combined with multi-language support and customizable development standards, makes Amazon Q Developer a powerful ally in modern software development workflows. As development teams continue to seek ways to improve productivity without compromising code quality, Amazon Q Developer’s agentic experience represents a meaningful step forward in IDE-integrated AI assistance. Whether you’re writing tests, fixing bugs, or optimizing code, the ability to have an AI assistant that can not only suggest solutions but also implement them while maintaining context awareness is a game-changing addition to the developer’s toolkit.

0 commit comments

Comments
 (0)