locale:
o 'locale' está guardando informações sobre certas convenções que pessoas em uma certa 'área' (local entre elas) têm em relação a onde definir o ponto decimal de grandes números, como a formatação de data apropriada se parece, onde as pontuações aparecem etc. Exemplo dado:
- 1234567,89 (estilo SI (versão francesa), Albânia, Bélgica, Bósnia, Brasil, Bulgária, República Tcheca, Dinamarca, Estônia, Finlândia, França, França, Canadá, Alemanha, Grécia, Hungria, Itália, Europa Latina, Holanda (números não monetários, ver abaixo), Polónia, Portugal, Roménia, Eslováquia, Eslovénia, Espanha, Suécia)
- 1234567.89 estilo SI (versão em inglês), Austrália, inglês Canadá, China
- 1.234.567 · 89 Irlanda, Japão, Coréia, Malásia, Nova Zelândia, Filipinas, Cingapura, Taiwan, Tailândia, Reino Unido, Estados Unidos (mais antigos, geralmente escritos à mão)
- 1'234'567.89 Suíça (impresso, computação, moeda, requisito internacional, uso diário)
(tirada de link )
codificação:
a 'codificação' é uma convenção de como representar 'coisas' de um sistema em unidades de um segundo 'sistema'. Exemplo dado: você tem 10 ovos na sua mão. você não pode representar esses objetos físicos em um computador, você tem que "codificá-lo" para algo que o computador entenda. uma codificação possível seria: "10 ovos" (como texto), você tem agora uma versão codificada dos 10 ovos em sua mão.
a 'unidade' de um computador geralmente significa 'bytes'. cada byte é capaz de (normalmente) manter os números de 0 até 255. Se você quiser representar números maiores, você tem que concordar com outras pessoas em um esquema para representar (armazenar, recuperar) números tão altos. um caminho possível:
- para armazenar números até 65535, usamos 2 bytes
- a fórmula para recuperar o número é
(byte1 * 256) + byte2
voila, uma 'codificação', uma convenção de como representar as coisas de um sistema (números naturais) em diferentes unidades de um sistema diferente (bytes de um computador).
outro tópico comum é "como armazenar texto". as pessoas ao redor do mundo real usam muitos "desenhos" diferentes para expressar seus pensamentos (eles codificam seus pensamentos em palavras, frases, textos mais longos, etc.). a soma da maioria desses 'desenhos' é coletada em algo chamado unicode-table . Cada um desses "desenhos" é chamado de "glifo". você encontrará tais glifos como 'A', 'Ä', 'Ʌ', 'Ά', 'Ӑ', 'ڣ', '㈱', '⛽', '✪', '⬛' etc. (se você veja um sinal '?' ou um bloco vazio em algum lugar: que o glifo não faz parte da sua 'fonte' e, portanto, o seu computador não sabe como representar esse glifo na tela; mais sobre isso na próxima parte). cada 'glifo' tem uma posição nessa tabela e, assim, uma maneira de representar o texto em um computador é listar as posições nessa tabela:
104, 101, 108, 108, 111 -> 'h', 'e', 'l', 'l', 'o'
voila, 'texto codificado'. Às vezes, a posição nessa tabela não se encaixa em um byte, então você tem que 'codificar' a posição do glifo com vários bytes, conforme descrito acima.
fonte:
uma 'fonte' geralmente é um arquivo contêiner (semelhante a um .zip) que contém a representação gráfica de todos os glifos que a fonte-autor deseja estar nesse contêiner. o computador pode pesquisar o glifo nessa fonte e usar as instruções por glifo para representar / renderizar / desenhar a fonte na tela. existem várias maneiras de fazer isso:
- você poderia definir que cada glifo é 10x10 pixels e, em seguida, preencher os pixels de cada glifo (fontes de pixel)
- você pode armazenar uma receita para cada glifo de como desenhá-la em cada tamanho de tela possível ("começar no canto superior esquerdo, desenhar uma linha no centro da parte inferior, desenhar uma linha do centro para o canto superior direito") > 'V') (fontes vetoriais)