É mais um erro de experiência do usuário, mas vamos lá: em um sistema crítico encontrei um recurso que possibilitava excluir todos os registros referentes a uma tabela (especialmente importante).
O usuário clicava em excluir e era exposta uma caixa de diálogo escrito: “Tem certeza de que deseja excluir todos os registros da tabela?”
Havia uma única opção: “Ok”
E se a janela fosse fechada, a exclusão mesmo assim era executada.
Descobrimos isto quando sentimos um tremor de grau 9.4 da escala Richter após um usuário acidentalmente executar a operação.
[quote=kicolobo]É mais um erro de experiência do usuário, mas vamos lá: em um sistema crítico encontrei um recurso que possibilitava excluir todos os registros referentes a uma tabela (especialmente importante).
O usuário clicava em excluir e era exposta uma caixa de diálogo escrito: “Tem certeza de que deseja excluir todos os registros da tabela?”
Havia uma única opção: “Ok”
E se a janela fosse fechada, a exclusão mesmo assim era executada.
Descobrimos isto quando sentimos um tremor de grau 9.4 da escala Richter após um usuário acidentalmente executar a operação.[/quote]
[quote=kicolobo]É mais um erro de experiência do usuário, mas vamos lá: em um sistema crítico encontrei um recurso que possibilitava excluir todos os registros referentes a uma tabela (especialmente importante).
O usuário clicava em excluir e era exposta uma caixa de diálogo escrito: “Tem certeza de que deseja excluir todos os registros da tabela?”
Havia uma única opção: “Ok”
E se a janela fosse fechada, a exclusão mesmo assim era executada.
Descobrimos isto quando sentimos um tremor de grau 9.4 da escala Richter após um usuário acidentalmente executar a operação.[/quote]
OH MY GOOD,
é a legitma funcionalidade que ninguem devia ver e sempre tem um usuário que ve auhauhuhauha
[quote=kicolobo]É mais um erro de experiência do usuário, mas vamos lá: em um sistema crítico encontrei um recurso que possibilitava excluir todos os registros referentes a uma tabela (especialmente importante).
O usuário clicava em excluir e era exposta uma caixa de diálogo escrito: “Tem certeza de que deseja excluir todos os registros da tabela?”
Havia uma única opção: “Ok”
E se a janela fosse fechada, a exclusão mesmo assim era executada.
Descobrimos isto quando sentimos um tremor de grau 9.4 da escala Richter após um usuário acidentalmente executar a operação.[/quote]
Só de imaginar a situação já senti calafrios, imagine então vivencia-la =Z
E era requisito executar a operação mesmo que o usuário fechasse a janela sem clicar em OK?
[quote=Tchello][quote=kicolobo]É mais um erro de experiência do usuário, mas vamos lá: em um sistema crítico encontrei um recurso que possibilitava excluir todos os registros referentes a uma tabela (especialmente importante).
O usuário clicava em excluir e era exposta uma caixa de diálogo escrito: “Tem certeza de que deseja excluir todos os registros da tabela?”
Havia uma única opção: “Ok”
E se a janela fosse fechada, a exclusão mesmo assim era executada.
Descobrimos isto quando sentimos um tremor de grau 9.4 da escala Richter após um usuário acidentalmente executar a operação.[/quote]
Só de imaginar a situação já senti calafrios, imagine então vivencia-la =Z
E era requisito executar a operação mesmo que o usuário fechasse a janela sem clicar em OK?[/quote]
não sei como é apresentado para usuário mas é em JS?, o cara q desenvolveu não sabia do famoso confirm?
Bom, não foi em Java, foi em Delphi (ótima IDE para encontrar pérolas), mas vale a pena o frio na espinha. Seria algo assim:
(...)
int maiorID = [acha o maior id de um conjunto de dados];
ArrayList<String> array = new ArrayList<String>(maiorID + 1);
for (int id : [ids do cojunto de dados])
array.set(id, ...)
(...)
Dessa forma, se eu quero uma informação relacionada ao código 25, uso array.get(25). No caso em questão, o conjunto de dados tinha 4 registros e os códigos iam de 17202010 até 17242010! Ou seja, um array de quase 2 milhões de posições para guardar 4 valores!
Eu fiquei assustado. Mas nada se compara a utilização desta variável:
for (Entry<Integer, Map<Integer, Map<Integer, Map<Integer, Map<Integer, List<Carta>>>>>> _entryEnc : cartas.entrySet()) {
for (Entry<Integer, Map<Integer, Map<Integer, Map<Integer, List<Carta>>>>> _entryOp : _entryEnc.getValue().entrySet())
for (Entry<Integer, Map<Integer, Map<Integer, List<Carta>>>> _entryProd : _entryOp.getValue().entrySet())
for (Entry<Integer, Map<Integer, List<Carta>>> _entryOper : _entryProd.getValue().entrySet())
for (Entry<Integer, List<Carta>> _entryEmp : _entryOper.getValue().entrySet()){
Carta carta = _entryEmp.getValue().get(0);
....
Do caralho né?
[/quote]
Agora imagina vc entrando em uma empresa que tem um código desse… e os caras mais velhos jogam essa bomba na sua mão(o cara novo ta empolgado da isso pra ele)… kkkkk…