Thursday, March 30, 2023

Integrate ChatGPT with Visual Studio for Faster Development

The development landscape constantly evolves, and new technologies are emerging daily. The AI models are changing the way developer's day to day work.

The ChatGPT, a language model powered by OpenAI, ChatGPT can assist developers in their day-to-day work. One of the most significant ways ChatGPT can help is by serving as a pair programmer.

As a pair programmer, ChatGPT can provide developers with valuable suggestions and insights that can make the process of programming more efficient and effective. For example, ChatGPT can suggest coding techniques, syntax, and algorithms help developers write more efficient and concise code. Additionally, it can assist in debugging code by analyzing the code and providing feedback on potential errors or bugs.

The Genie AI ChatGPT extension for Visual Studio Editor — ChatGPT — Genie AI — Visual Studio Marketplace( multiple extensions are available, but I felt this one looked good) enables the pair programming capabilities to the developers. This extension supports different models, e.g., GPT-4, GPT3.5, GPT3, etc., that the developers can use to simplify their day-to-day development works.

You should be able to optimize the code, Add Tests, Find Bugs, Explain, Add Comments, and Complete Code operations.

Install the extension — ChatGPT — Genie AI — Visual Studio Marketplace

Configure the extension — e.g., Enable Conversation History, Configure the model — reference list of OpenAI models from Models — OpenAI API

I used one of the existing Java files to test it; requested to optimize the selected code.

You should add the API Key to integrate with the ChatGPT API; executing the first-time operation will prompt the OpenAI API key.

Generate the OpenAI API key from https://platform.openai.com/account/api-keys

Add the API key and click enter.

The ChatgPT has given the optimized code block; you can copy the optimized code or even replace the existing code block with the recommended one.

These features look great; this will reduce the code review effort and helps to build the code aligned with the latest improvements.

The AI tools help the developer stop focusing on language syntax; they can focus more on building the optimal logic to solve their business problems (the AI even helps to create the business logic but some level)

We should utilize the available tools and technologies to simplify our day-to-day job; at the same time, we can spend time learning new technology trends.

Additional details using ChatGPT to generate AEM code.

#Question1 — “Create a sling servlet to export AEM tag details

The servlet generated with SCR annotations.

@SlingServlet(
paths = "/bin/exporttags",
methods = "GET",
extensions = {"csv", "json"}
)

public class ExportTagsServlet extends SlingAllMethodsServlet {

#Question2 — “Please use OSGI 6 annotations

This time the same servlet with OSGI 6 annotations; even we can request for OSGI 7 annotations.

@Component(
service = Servlet.class,
property = {
Constants.SERVICE_DESCRIPTION + "=Export Tag Details Servlet",
"sling.servlet.methods=" + HttpConstants.METHOD_GET,
"sling.servlet.paths=" + "/bin/exporttags",
"sling.servlet.extensions={\"csv\", \"json\"}"
}
)
public class ExportTagsServlet extends SlingSafeMethodsServlet {

No more writing the code from scratch and searching through search engines to find the optimal code, but the AI models can help to write the optimized code quickly. I look forward to learning how these AI models will affect the future development landscape.

Watch out for sharing sensitive information with AI engines; we should use AI models responsibly.



No comments:

Post a Comment