Por que a contagem de linha no Visual Studio não é baseada em zero? [fechadas]

4

Isso me pareceu um descuido da Microsoft. Como as matrizes e outras estruturas de dados dentro da estrutura .NET começam de zero (baseadas em zero), por que não temos uma linha 0 dentro da visualização de código no Visual Studio?

Pense nisso: -)

    
por billy.bob 18.08.2011 / 13:11
fonte

6 respostas

40

Como eles fizeram um bom trabalho ao separar o modelo do usuário do modelo de programação, é por isso. A mesma razão pela qual a maioria dos aplicativos não pergunta, por exemplo,

Please enter a varchar(200) representing your name.

Tire uma lição disso.

    
por 18.08.2011 / 14:43
fonte
27
  1. Todos os arrays e estruturas de dados são indexados com base em zero, não apenas no .NET.
  2. Os índices da matriz são numerados para o computador, as linhas de texto em um documento são numeradas para nós.
  3. Veja a captura de tela :)

    
por 18.08.2011 / 13:16
fonte
21

Existe uma diferença entre contagem e indexação. O índice pode começar em qualquer número (alguns idiomas suportam isso), mas, por muitas razões, é mais prático começar com zero. A contagem também começa em zero, mas assim que se conta um conjunto que não está vazio, o primeiro elemento é 1 e assim por diante.

    
por 18.08.2011 / 15:11
fonte
4

Porque não é natural supor que a linha primeiro é a 0ª linha. Assim como não é natural que o elemento arrays first esteja em 0. No entanto, esse é o primeiro número que pode ser usado em um inteiro não assinado para indexar uma matriz. Então, ao invés de desperdiçar um elemento, nós o usamos.

    
por 18.08.2011 / 13:16
fonte
3

Por convenção, humanos normais contam a partir de 1, enquanto muitos programadores e alguns matemáticos contam a partir de 0.

A pergunta que você levantou sobre os números de linha não é específica do Microsoft Visual Studio. Ele se aplica a todas as outras ferramentas de edição de texto, porque as linhas de contagem de 1 foram adotadas como uma convenção universal no software.

As inúmeras outras ferramentas que contam linhas de texto de 1 incluem o Windows Notepad, editores de texto IDE, editores de texto no Linux, console JavaScript do Firefox, mensagens de erro do compilador e assim por diante.

Embora não seja errado contar as linhas a partir de 0, isso quebraria a convenção estabelecida e causaria uma enorme confusão para todos os envolvidos, desde os desenvolvedores até os usuários.

Veja também:

por 18.08.2011 / 16:02
fonte
-2

Um link que contesta alguns dos pontos de Dijkstra (em um artigo que mais cedo ou mais tarde será lançado nessa discussão).

Por que a numeração deve começar em um

    
por 18.08.2011 / 16:32
fonte