Executando verificação de segurança...
1

[PT] Trabalhando no Netsuite com TypeScript

O TypeScript é uma poderosa extensão do JavaScript que adiciona tipagem estática e recursos avançados à linguagem. Como desenvolvedor trabalhando com o NetSuite, utilizar o TypeScript pode aprimorar sua produtividade, manutenibilidade e qualidade do código. Neste artigo, exploraremos como configurar o TypeScript no NetSuite e o arquivo tsconfig para utilizar o sistema de módulo AMD e o diretório de saída ES2015 (OutDir).

Pré-requisitos:
Antes de começarmos, é necessário que você tenha os seguintes pré-requisitos em vigor:

SuiteCloud SDK instalada em sua máquina local (incluindo Suite CLI e JDK17)

Conhecimento básico de TypeScript e JavaScript

Configurando o TypeScript no NetSuite:
Para trabalhar com o TypeScript no NetSuite, você precisa configurar seu ambiente de desenvolvimento corretamente. Siga os passos abaixo para começar:

Passo 1: Criar um Novo Projeto SuiteScript
Usando o Suite CLI, crie um novo projeto SuiteScript no diretório desejado. Abra o terminal ou prompt de comando e execute o seguinte comando:

bash

suitecloud createproject

Siga as instruções para escolher o tipo de projeto, nome do projeto e outros detalhes relevantes.

Passo 2: Instalar o TypeScript
Agora, instale o TypeScript como uma dependência de desenvolvimento no seu projeto:

bash

npm install typescript --save-dev

Passo 3: Inicializar a Configuração do TypeScript
Crie um novo arquivo chamado tsconfig.json na raiz do seu projeto. Este arquivo conterá as configurações do TypeScript para o seu projeto NetSuite.

Configurando o tsconfig.json para Módulo AMD e Diretório de Saída ES2015 (OutDir):


{
      "compilerOptions": {
            "target": "es5",
            "module": "amd",
            "lib": [
                  "es7",
                  "es2015.promise",
                  "dom"
            ],
            "sourceMap": false,
            "newLine": "LF",
            "outDir": "./src/FileCabinet/SuiteScripts/<Name of your Project>",
            "strict": false,
            "alwaysStrict": false,
            "moduleResolution": "node",
            "baseUrl": ".",
            "experimentalDecorators": true,
            "skipLibCheck": true,
            "paths": {
                  "N": [
                        "node_modules/@hitc/netsuite-types/N"
                  ],
                  "N/*": [
                        "node_modules/@hitc/netsuite-types/N/*"
                 ]
            }
      }
}


Vamos explicar as opções importantes:

  • "target": "es5": Define a versão do ECMAScript que o TypeScript irá compilar. O NetSuite atualmente suporta o ES5, então escolhemos esta versão para garantir compatibilidade.
  • "module": "amd": Configura o TypeScript para usar o sistema de módulo AMD. O NetSuite utiliza módulos AMD para gerenciar as dependências.
  • "outDir": Especifica o diretório de saída onde os arquivos JavaScript compilados serão gerados. Usamos "./src/FileCabinet/SuiteScripts/" como o diretório de saída neste exemplo, mas você pode personalizá-lo de acordo com a estrutura do seu projeto.
  • "strict": true: Habilita opções de verificação rigorosa de tipos para um código mais robusto.
  • "esModuleInterop": true: Habilita a interoperabilidade entre CommonJS e ES Modules, facilitando a integração com os módulos AMD do NetSuite.
  • "skipLibCheck": true: Ignora a verificação de tipos de arquivos de declaração, o que pode acelerar o processo de compilação.

Integrar o TypeScript em seus projetos NetSuite pode melhorar significativamente sua experiência de desenvolvimento e a qualidade do código. Ao configurar o arquivo tsconfig.json com as opções de Módulo AMD e Diretório de Saída ES2015 (OutDir), você garante a compatibilidade com o sistema de módulo do NetSuite e organiza seus arquivos compilados de forma eficiente.

Conforme você constrói aplicativos complexos do SuiteScript, a tipagem estática do TypeScript será inestimável para detectar erros precocemente e fornecer assistência aprimorada no código. Aproveite todo o potencial do TypeScript no seu processo de desenvolvimento no NetSuite e entregue soluções mais confiáveis e fáceis de manter. Feliz codificação!

Carregando publicação patrocinada...
1

Quanto a parte de mais facil de manter, não concordo muito.
Já tive que efetuar manutencao em codigo gerado por type script que o fonte não foi colocado no ambiente, se torna quase impossivel.
Tambem em termo de performance em alguns caso se carrega algumas coisas desnecessarias para o netsuite afetando a performance em cenarios onde qualquer segundo importa.

1

cara, compreendo seu ponto de vista, mas entenda que a ideia é você usar o codigo fonte para trabalhar, e não o gerado. Isso é falha das consultorias/empresas que nao dão atenção aos tecnicos.
Sobre performance, até 2019 o netsuite convertia para java usando o RhinoJS, depois usou o GraalVM para interpretar, então a performance se baseia mais no que foi gerado. Aplicando boas praticas, conceitos de BigO, padrões de desenvolvimento, e afins, você não teria provlema algum em performance e/ou manutenção.