implemente um tipo abstracto de dados “Dicionario” em que a chave é uma string e o valor é uma lista de string para os diversos significados das palavras
dicionario<String, list> xpto;
T
thingol
Defina qual é o escopo do seu projeto
Exemplo: dada uma palavra digitada pelo usuário em “romaji”*, retorna a tradução em português.
sayonara -> adeus
Defina as tecnologias
Web? Desktop?
Mãos à obra!
Romaji é o nome que se dá em japonês ao modo de grafar as palavras japonesas em letras latinas. Em japonês mesmo você grafaria “さようなら”
barbafh3
Nos pretendiamos fazer WEB, mas achamos melhor fazer desktop
no caso da busca, pensamos em ser o seguinte:
Considerando a palavra em portugues, em romaji, em hiragana e em kanji,
se buscar por uma delas, ela retornaria as outras 3 formas, Ex.:
Busquei: Cachorro
Retorno:
Port.-romaji-hiragana-kanji
Cachorro - Inu - いぬ 犬
ou
Busca: いぬ
Resultado:
hiragana-Port.-romaji-Kanji
いぬ - Cachorro - Inu - 犬
provavelmente mostrando o resultado num jTable…
q q vcs axam?
B
Bruno_Laturner
Com o primeiro caracter do método de entrada você pode escolher o campo de procura, caracteres latim p/ campos em portugues e romaji, hiragana e katakana, e kanji. Não sei se é possível ter kana no inicio de palavras com kanji.
Tenha em mente que também há vários métodos de romanização p/ se levar em consideração. Vogais longas podem ser escritas em romaji de diversas formas como em Tōkyō, Tôkyô, Toukyou, Tohkyoh, Tokyo, e outras variações. Eu sei a Oracle tinha um modo de procura fonético para seus produtos, veja se tem alguma solução livre p/ isso por aí (talvez na Apache?).
Terceiro é se lembrar que podem haver mais de um significado p/ uma mesma palavra procurada. Isso é válido principalmente em japonês, eles adoram fazer piadas com trocadilhos com kanjis com a mesma pronuncia (e por conseqüência o mesmo kana, já que eles são alfabetos fonéticos).
barbafh3
tava pensando em dividir em 4 tabelas, e so fazer 1 relacionamento palavra-significado, assim eprmite q eu coloke
varios valores apontanod prum mesmo significado, ou vice versa
B
Bruno_Laturner
Uma mesma palavra pode ter vários significados, um mesmo significado pode ter várias palavras. Relacionamento Many-to-Many.
A idéia é boa, mas e quando o significado é uma expressão de palavras, e não somente uma?
barbafh3
Se eu adicionar uma expressão, que no caso pode ser uma frase tambem,
sua resposta tambem seria uma frase, inves de tentar unir palavras e tal, eu simplesmente vou colokar
uma frase na tabela linkando com a expressão, pra mostrar a frase como significado, nao kero complicar
dimais sinaum n consigu fazer… outra duvida, n sei qual tipo de variavel eu usaria para receber os
caracteres hiragana e kanji, String aceita?
B
Bruno_Laturner
barbafh3:
outra duvida, n sei qual tipo de variavel eu usaria para receber os
caracteres hiragana e kanji, String aceita?
Sim, Java é Unicode, aceita tudo.
Ah, se você for usar um banco de dados, não se esqueça de colocar os campos explicitamente como unicode. Talvez UTF-16 p/ manter tudo consistente.
T
thingol
Outra coisa que ajuda é setar explicitamente o fonte dos JLabels e JTextFields que você for usar para uma que você sabe que suporta japonês, como MS Mincho (em uma máquina Windows normal) ou outra (em uma máquina Windows em japonês - infelizmente não sei o nome correto da fonte).
T
thingol
Outra coisa chata é “como entrar com os ideogramas”? No caso de uma máquina Windows em japonês isso não é problema devido ao IME (Input Method Editor), mas em português são outros 500.
B
Bruno_Laturner
No XP, até onde eu lembro, era só instalar o suporte à idiomas orientais via Painel de Controle.
barbafh3
No XP, até onde eu lembro, era só instalar o suporte à idiomas orientais via Painel de Controle
Sim, como o dicionario é so pra mim e mais uns 2 caras, e todos nos temos suporte ao japones, fika tranquilo....
Outra coisa que ajuda é setar explicitamente o fonte dos JLabels e JTextFields que você for usar para uma que você sabe que suporta japonês, como MS Mincho (em uma máquina Windows normal) ou outra (em uma máquina Windows em japonês - infelizmente não sei o nome correto da fonte).
Como eu passo a fonte de todo o jframe pra ms mincho? como não sei exatamente qual componente vai precisar, queria saber se tem como
mudar do frame inteiro...
Ah, se você for usar um banco de dados, não se esqueça de colocar os campos explicitamente como unicode. Talvez UTF-16 p/ manter tudo consistente.
Como eu faço isso? Eu uso hibernate + annotations + mysql
Outra coisa, eu tentei fazer o relacionamento ManyToMany com as 4 classes, pq em teoria, buscando 1 dos 3, tem q retornar os otros 3, mas eu n consigu gerar as tabelas nesse padrão.... Coloquei no codigo assim:
Portugues -> Portugues_Significado <- Significado
Kana -> Kana_Significado <- Significado
Kanji -> Kanji_Significado <- Significado
4 tabelas básicas + 3 tabelas de relacionamento.
barbafh3
Portugues -> Portugues_Significado <- Significado
Kana -> Kana_Significado <- Significado
Kanji -> Kanji_Significado <- Significado
N intendi bem Bruno… eh pra criar 1 tabela intermediaria entre, por ex. port e hiragana?
Port > Relacionamento < hiragana?
Como to gerando as tabelas pelo hibernate, ele n deveria criar essas tabelas intermediarias
automaticamente n?
B
Bruno_Laturner
barbafh3:
Portugues -> Portugues_Significado <- Significado
Kana -> Kana_Significado <- Significado
Kanji -> Kanji_Significado <- Significado
N intendi bem Bruno… eh pra criar 1 tabela intermediaria entre, por ex. port e hiragana?
Port > Relacionamento < hiragana?
Você não falou que o relacionamento seria todos apontando para um mesmo significado?
Então:
Port > Significado < hiragana
E como uma mesma palavra por ter vários significados, e vice-versa, daí coloca um relacionamento M:N entre cada um dos relacionamentos principais:
Port > Port_Sign > Significado < Kana_Sign < Kana
barbafh3
eu falei o seguinte, cada classe aponta direto pras otras 3, n tem 1 significado q conecta tudo, o significado ja são dados das otras 3 classes, intendeu?
agora minha estrutura ta assim
Port <-> Hiragana
Port <-> Kanji
Port <-> Romaji
Kanji <-> Hiragana
Kanji <-> Romaji
Romaji <-> Hiragana