O único propósito das abstrações de software é ocultar detalhes funcionais. Se não fosse por essas abstrações, não seria possível avançar além de um certo ponto na computação, porque os sistemas simplesmente entrariam em colapso sob o peso de sua própria complexidade. O cérebro humano só pode compreender tanta informação ao mesmo tempo.
Considere o que acontece quando você escreve um método. Quando você escreve um método, o que você está fazendo é esconder um pouco da funcionalidade do software por trás de uma chamada de método. Uma vez que o método tenha sido escrito e provado que funciona ao escrever testes de unidade sobre esse método, você não precisa mais pensar sobre o que está dentro desse método a menos que precise alterar algo sobre sua implementação.
Grandes sistemas de software são construídos sobre muitas camadas dessas abstrações. Você tem uma camada de microcódigo no processador, código de máquina, endereço e data buses, compiladores de linguagem, orientação a objeto, estruturas de dados, domínio - idiomas específicos e assim por diante. Você tem bibliotecas construídas sobre outras bibliotecas, que por sua vez são construídas sobre um sistema operacional. Você não entende completamente como funciona qualquer uma dessas coisas, mas ainda é capaz de escrever com sucesso programas de computador que fazem algo útil.
Isso disse ...
Você não pode simplesmente copiar / colar o código sem entender como ele funciona . A pessoa que tenta fazer seu programa funcionar copiando o código que ele não entende está se preparando para falhar. Você precisa entender o código que você escreve. Isso não significa que você precisa saber como o WCF trabalha internamente, mas você faz precisa saber qual é o propósito do WCF. , como escrever código que o integre corretamente e como o código que você escreve funciona em conjunto com ele. Muitos programadores copiar / colar nem sequer têm uma compreensão decente da linguagem de programação que estão copiando / colando, e muito menos do conhecimento profundo das bibliotecas que estão usando.
Então você precisa ter algumas habilidades decentes, e você precisa entender o código que você escreve (ou cola) que chama o WCF. Mas você não precisa ter um conhecimento profundo sobre como o WCF funciona internamente.Da mesma forma, os programadores que pensam que podem costurar um programa por meio de padrões aleatórios de software estão faltando o ponto. Nós chamamos essas pessoas de programadores Cargo Cult .