Early vs Late binding

{ October 1st, 2007 }


cmilfont

Autor: cmilfont

Nas linguagens de programação o conceito de “Name Binding” é uma abstração que está relacionado a associação de valores com seus identificadores. Um identificador garante ao valor o que é referenciado a esse valor.

Em linguagens fortemente tipadas o binding é estático (”Early Binding”) e suas propriedades são definidas em tempo de compilação e/ou interpretação garantindo a montagem do código de máquina. Isso garante de antemão a inexistência de erros de atribuição e oferece ao ambiente de desenvolvimento um melhor suporte a IntelliSense (a capacidade que dá ao desenvolvedor listar as propriedades de determinado objeto) com os tipos de cada propriedade.

Em linguagens fracamente tipadas o tipo do valor é referenciado em tempo de execução (”Late ou Virtual Binding”) e o compilador/interpretador só conhece esse tipo quando o código faz a checagem e então determina o suporte necessário à propriedade sem ocorrer penalidades.

Linguagens de tipo estático executam menos operações, notadamente pela checagem prévia e oferecem um suporte melhor na garantia da execução mas em contrapartida não possuem a flexibilidade das linguagens dinâmicas.

ECMAScript somente suporta “Late Binding”. O interpretador resolve os tipos de dados na última hora, em tempo de execução, algumas linguagens (como Ruby e Smalltalk) utilizam uma forma particular de Late Binding, a Duck Typing.

Categories: JavaScript ~ ~ Trackback


Assine os comentários deste artigo.


Adicionar ao Rec6

One Response to “Early vs Late binding”

  1. 1
    Resumo javascript - Jan 2008 - CMilfont Tech

    [...] http://www.milfont.org/tech/2007/10/01/early-vs-late-binding/ [...]

Leave a Reply