Dois exemplos vêm à mente:
Um dos motivos pelos quais os programadores .Net são incentivados a usar arquivos .config em vez do Registro do Windows é que os arquivos .config são XML e, portanto, legíveis por humanos.
Da mesma forma, o JSON às vezes é considerado legível por humanos em comparação com um formato proprietário.
Os formatos legíveis por humanos são realmente legíveis por humanos? No exemplo de dados de configuração:
- O formato não altera o significado subjacente das informações - nos dois casos, os dados representam a mesma coisa.
- O registro e o arquivo .config são armazenados internamente como séries 0s e 1s. Nessa medida, a representação subjacente é igualmente ilegível pelos seres humanos.
- O registro e o arquivo .config exigem uma ferramenta para ler, formatar e exibir os 0s e 1s e convertê-los em um formato que os humanos possam ler. No caso de configuração armazenada no Registro do Windows, este é um Editor do Registro. No caso de XML, pode ser um editor de texto ou um leitor de XML. De qualquer forma, a ferramenta torna os dados legíveis, não o formato dos dados.
Então, qual é a diferença entre formatos de dados legíveis por humanos e formatos não legíveis por humanos?
terminology
Kramii
fonte
fonte
Respostas:
Legível por humanos significa basicamente que, se o conteúdo é exibido por um programa que não possui conhecimento direto e específico do formato desse arquivo, há pelo menos uma chance razoável de que uma pessoa possa ler e entender pelo menos parte dele.
Porém, seu argumento básico sobre a falta de uma linha clara de delimitação é absolutamente correto - uma vez eu conheci um cara que podia diagnosticar problemas com programas (principalmente escritos em Fortran) frequentemente em cinco minutos ou menos - indo apenas de um octal despejo de núcleo, sem olhar o código fonte. Para a maioria das pessoas, esse formato dificilmente se qualificaria como "legível por humanos", mas obviamente ele era uma exceção ...
fonte
Legível por humanos significa que posso abrir a coisa no bloco de notas, se quiser, e alterar "password = foo" para "password = bar" se assim o desejar. Não preciso usar uma ferramenta proprietária para examinar ou editar o conteúdo.
Contraste com um PDF que você não pode editar com um simples editor de texto - você precisa de uma ferramenta específica que conheça o formato. Ou um arquivo .dat binário que veio com algum aplicativo de 25 anos atrás que você não pode ler, editar ou entender.
fonte
Em resposta à sua pergunta "Os formatos legíveis por humanos são realmente legíveis por humanos", por definição, sim, eles são, é isso que significa legível por humanos.
Não existe uma definição técnica de legível por humanos, é subjetiva e pode haver perguntas sobre qual nível de conhecimento o ser humano pode precisar para se qualificar (por exemplo, eles precisam entender os princípios muito básicos do XML, como tags e hierarquias , eles devem entender o domínio comercial em que os dados existem - pessoalmente, eu diria que sim a ambos), mas seu teste básico deveria ser se eu o mostrasse a alguém com habilidades técnicas básicas que entendesse o básico do que os dados deveriam representá-los , eles podem ler?
Em um nível prático, isso geralmente significa o seguinte:
1) Os dados são armazenados como texto ASCII ou algum outro formato similarmente comum e facilmente reconhecível
2) Que existe uma estrutura razoável que é evidente por um exame básico. Por exemplo, você não precisa saber que os primeiros caracteres X estão relacionados a Y, e o próximo X está relacionado a Z
3) Que os dados e os metadados geralmente estão em inglês (ou seja qual for o seu idioma local) e requerem apenas conhecimento limitado do domínio do problema para entender. Portanto, um número de fatura estaria em uma tag "invoiceNumber", em vez de " uDef_Inbr "
4) Para dados não textuais sensíveis, convenções previsíveis foram usadas (por exemplo, TRUE, FALSE, Y, N, 1, 0, em vez de algo mais aberto à interpretação)
fonte
Os arquivos .config são muito mais fáceis de editar (para a maioria das pessoas) do que o Registro. É mais fácil abrir um arquivo de configuração dedicado, encontrar os dados relevantes e fazer alterações sem abrir a possibilidade de editar algo que afetará outros programas.
fonte
É tudo sobre facilidade de entendimento (e provavelmente mudança). Então "X é legível por humanos?" não deve ser respondido com um "sim" ou um "não". Em vez disso, a resposta deve estar em algum tipo de escala móvel.
Exemplos potenciais:
Fora de um contexto que explica o que "legível por humanos" realmente significa, a frase não ajuda muito. (Alguns humanos em algum lugar provavelmente podem ler qualquer um dos formatos, se você não contar tentando observar a polaridade magnética dos bits de hardware ...)
fonte
Uma grande diferença entre formatos legíveis por humanos e formatos não legíveis por humanos é a robustez. Em um sistema Linux, todo tipo de informação será espalhado em vários arquivos de texto. Você precisa saber onde elas estão, mas sempre pode encontrar as informações, ler e alterá-las com um editor de texto. Se um arquivo desaparecer, geralmente você poderá substituí-lo. Se um arquivo ficar corrompido, você poderá descobrir o que deve ser e corrigi-lo.
Em um sistema MS Windows, a maior parte disso estará no Registro, que é, do ponto de vista dos usuários, um grande sistema opaco, acessível em parte através de várias ferramentas (como alguns arquivos de configuração nos sistemas Linux) e, em geral, com um editor de registro. Desde que tudo corra bem, tudo bem. Se quebrar, não há nada que possa ser feito sem o conhecimento especializado.
fonte
As verificações mais fáceis que posso considerar qualificadas como "legíveis por humanos" são:
JohnSmith|34|T|F
é menos amigável do que<User><Name>JohnSmith</Name><id>34</id><isActive>T</isActive><isAdmin>F</isAdmin></User>
, como sabem quais são os campos (pelo menos geralmente) no segundo.fonte
Eu acho que você pode estar se perguntando se "legível por humanos" como um termo às vezes é aplicado incorretamente, e sem dúvida é. No exemplo de entradas de registro vs arquivos .config, acho que ajuda você a organizar o XML de maneiras diferentes, dependendo dos dados, comentários intercalados e assim por diante.
As coleções nos arquivos .config geralmente são tratadas como vários elementos, enquanto é mais difícil no registro, geralmente como um MULTI_SZ.
Você também pode ver mais dados de configuração de um aplicativo de uma só vez - com o regedit, para ver algo que está em uma chave diferente, é necessário navegar até essa chave, o que significa que você não pode mais ver as entradas que estava visualizando anteriormente. Com os arquivos .config, você pode ver o arquivo inteiro de uma vez, mesmo que esse arquivo possa conter dados hierárquicos.
fonte
Contraste "legível por humanos" com binário. Por exemplo, você geralmente não pode abrir um executável ou um índice de banco de dados em um editor de texto vanilla e entender qual é o conteúdo. Os bytes abaixo de 32 decimais nem têm representações padrão globalmente como caracteres visíveis.
fonte
Resposta curta: significa que a informação é inserida como texto, em vez de binário ou hexadecimal, etc. Algo que equivale a uma "linguagem" legível, em vez de uma "linguagem de máquina" do computador. Além disso, a definição fica obscura.
fonte
Isso também se aplica ao código - você estrutura seu programa de maneira lógica e ponderada, de modo que o trabalho de quem o veja pela primeira vez seja um pouco mais fácil.
fonte