Suporte do servidor de idiomas para Pact

Apr 18 2023
As ferramentas que suportam o processo de desenvolvimento de software são cruciais para garantir a qualidade, segurança e pontualidade do software. Isso é especialmente importante no contexto de contratos inteligentes, que são programas autoexecutáveis ​​em um ambiente distribuído.

As ferramentas que suportam o processo de desenvolvimento de software são cruciais para garantir a qualidade, segurança e pontualidade do software. Isso é especialmente importante no contexto de contratos inteligentes, que são programas autoexecutáveis ​​em um ambiente distribuído. Como resultado, os contratos inteligentes exigem um alto nível de segurança para proteção contra vulnerabilidades que possam comprometer a integridade do contrato.

O Language Server Protocol (LSP) é um protocolo desenvolvido pela Microsoft para padronizar a comunicação entre ferramentas de desenvolvimento, como os editores e IDEs. O servidor de idiomas fornece serviços específicos de idioma, como preenchimento de código e verificação de erros. O LSP tornou-se cada vez mais popular na comunidade de desenvolvimento, com suporte de um número crescente de linguagens de programação e ferramentas de desenvolvimento.

Aproveitando o LSP, Kadena oferece uma melhor experiência de usuário e maior suporte para o desenvolvimento de contratos seguros dentro do ambiente de desenvolvimento integrado preferido do desenvolvedor.

Embora o suporte de ferramentas anterior fosse limitado principalmente ao Atom IDE , o servidor LSP agora permite a integração com uma ampla variedade de editores, incluindo Emacs e vim.

O suporte atual para o Language Server Protocol inclui uma variedade de recursos úteis para desenvolver contratos inteligentes com segurança. Um desses recursos é o diagnóstico de documentos , que pode fornecer feedback em tempo real sobre possíveis problemas e vulnerabilidades no código. Além dos diagnósticos padrão, esse suporte também inclui rastreamentos do Pact , que permitem aos desenvolvedores rastrear a execução de um contrato inteligente do Pact e identificar quaisquer problemas que possam surgir durante o tempo de execução. Outro recurso é o preenchimento automático de nativos , que pode economizar tempo e reduzir o risco de erros de sintaxe. Finalmente, documentação sobre nativospor meio de informações instantâneas, fornece contexto adicional para os desenvolvedores, permitindo que eles entendam as funções e os parâmetros disponíveis para nativos específicos.

Ao combinar esses recursos com outras ferramentas habilitadas para LSP, os desenvolvedores podem melhorar a segurança e a qualidade de seus contratos inteligentes, além de aumentar a produtividade e reduzir o risco de erros.

Os desenvolvimentos futuros para o servidor LSP estão focados em melhorar a experiência de desenvolvimento e a segurança dos contratos inteligentes. Um recurso atualmente em desenvolvimento é o salto para definição , que permite aos desenvolvedores navegar rapidamente para a definição de uma função ou variável em seu código. Isso pode economizar tempo e melhorar a produtividade, especialmente para projetos maiores e mais complexos. Outra área de foco são as ações de código de verificação formal , que permitirão o suporte de verificação automatizada de contratos inteligentes usando o método formal Pacts. Isso pode ajudar a identificar possíveis vulnerabilidades de segurança e garantir que o contrato se comporte conforme o esperado.

Por fim, os desenvolvimentos futuros incluirão a integração contínua com o Visual Studio Code (VSCode), uma escolha popular para o desenvolvimento de contratos inteligentes. Mas também estamos procurando suporte para o IntelliJ. Agora podemos até mesmo procurar opções para criar nosso IDE em um ponto no tempo para que possamos integrar a implantação de contrato inteligente em seu ambiente de desenvolvimento.

Com suporte contínuo para LSP, os usuários do Pact podem se beneficiar de uma variedade de recursos de linguagem e funcionalidade de análise de segurança em seu IDE preferido. No geral, esses desenvolvimentos demonstram um compromisso em melhorar a experiência de desenvolvimento e a segurança de contratos inteligentes usando ferramentas habilitadas para LSP.