Skip to content

willmpaim/typescript

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Aprendendo TypeScript

Simulando metodos de negociacao de financeira:

Primieros passos

  • Download do TypeScript, Configuração do compilador e papel do tsconfig.json
  • Integração com scripts do Node.js
  • Modificadores de acesso private e public
  • Benefícios iniciais da linguagem TypeScript

    Benefícios da tipagem estática

    export class Negociacao {
        private _data: Date;
        private _quantidade: number;
        private _valor: number;
    
        constructor(data: Date, quantidade: number, valor: number) {
            this._data = data;
            this._quantidade = quantidade;
            this._valor = valor;
        }
        
     Importância dos modificadores de acesso *Private* e *Public* e a Tipagem nos metodos.
    

    Arrays

    import { Negociacao } from './negociacao.js';
    
    export class Negociacoes {
        private negociacoes: Array<Negociacao> = [];
    
        adiciona(negociacao: Negociacao) {
            this.negociacoes.push(negociacao);
        }
    
        lista(): ReadonlyArray<Negociacao> {
            return this.negociacoes;
        }
    }
    
    tipo *Generic* e *ReadonlyArray*
    
    

    Sugar Syntax no TS exemplos:

     lista(): ReadonlyArray <Negociacao> {
            return this.negociacoes;
            
     lista(): readonly Negociacao[] {
            return this.negociacoes;      
    
    Utilizando o metodo readonly como tipagem de maneira mais simplificada.
    
    constructor(data: Date, quantidade: number, valor: number) {
            this._data = data;
            this._quantidade = quantidade;
            this._valor = valor;
            
            constructor(
            private _data: Date,
            private _quantidade: number,
            private _valor: number
            ) {}
    
    Utilizando o modificador private diretamente no construtor, simplificando e tipando os parametros.
    
  • Releases

    No releases published

    Packages

    No packages published