Na língua inglesa, as palavras "dog" e "puppy" referem-se a animais caninos, mas são usadas em contextos diferentes devido ao significado específico de cada uma.
A palavra "dog" é um termo geral que se refere a qualquer cão, independentemente da idade ou do tamanho. Pode ser usado tanto para falar de um cão adulto quanto de um jovem, desde que já tenha passado da fase inicial de vida.
Por outro lado, "puppy" é um termo específico usado para descrever um cão jovem, geralmente com menos de um ano de idade. É o equivalente ao termo "filhote" em português. A palavra "puppy" transmite uma ideia de juventude, inocência e muitas vezes de pequeno tamanho.
Em termos práticos, quando você quer falar sobre um cão em inglês sem especificar a idade, use "dog". Por exemplo: "I have a dog" (Eu tenho um cachorro). Se você quer especificar que o cão é ainda muito jovem, use "puppy". Por exemplo: "I have a puppy at home" (Eu tenho um filhote em casa).
É importante notar também que o plural de "dog" é "dogs" e o plural de "puppy" é "puppies". Essa mudança no final da palavra ("y" para "ies") é comum em inglês quando substantivos terminados em "y" são precedidos por uma consoante.
Espero que essa explicação ajude a entender melhor quando usar cada uma dessas palavras ao falar ou escrever em inglês!