« first day (1673 days earlier)      last day (2111 days later) » 

12:01 AM
Aparentemente, mas eu focaria mais do fator "ser uma string"
Se vai ler apenas um caractere, por que precisar de 5?
Se for char, pode fazer sex == "m"
E comentar que não precisaria definir as variáveis f e m
E recomendar o switch no lugar de vários ifs, quem sabe
 
scanf("%s", &sex); está errado, fica a dica :D, assumindo o char sex[5] que está na pergunta
 
int main(void) {
    char sex;

    printf("Sexo? [m/f]: ");
    scanf("%c", &sex);

    switch(sex) {
        case 'm':
        case 'M':
            printf("Bem-vindo, senhor\n");
            break;
        case 'f':
        case 'F':
            printf("Bem-vinda, senhora\n");
            break;
        default:
            printf("Sexo não reconhecido\n");
    }

    return 0;
}
 
Facil bonito e simples :)
 
12:25 AM
@MagicHat Eu estava até agora pouco tentando entender o título do e-mail e só agora me toquei que era você hahaha
Editor de texto: OniVim onivim.io
Irei testar nos próximos dias
@Bacco conhece?
 
@Isac depende
só que aí como eu disse tem que usar o strcmp
ele pode dizer que char sex[10] como ele pode indicar como char * sex;
só que a segunda opção é a mais tenebrosa digamos assim
pq ela é puramente string, já a outra tu pode usar como string e manipular as partes dela como vetor de char
 
12:46 AM
@YODA o problema não está ai
scanf recebe o endereço onde vai colocar os dados, ou seja o ponteiro, obtido pelo &
char[] já é o ponteiro
 
*sex == 'm' também seria possível :D
 
logo é scanf("%s", sexo);
@YODA para comparar strings seria strcmp sim, mas como o @AndersonCarlosWoss mostrou, é bem melhor guardar como char e poder comparar de forma facil como se faz num char
A ideia é, se vai guardar uma letra, deve ser char a menos que tenha uma razão muito boa para não ser
@AndersonCarlosWoss Não conhecia esse OniVim. Parece um follow up do neo vim
Tem mesmo bom aspeto haha
 
Cara, ele abre o navegador dentro do editor...
 
Já instalei e tudo só para experimentar xD
 
E está só na versão 0.3 haha
 
12:55 AM
este tutorial com badges é a melhor coisa de sempre num editor hahaha
nunca tinha visto
excelente ideia
parece um jogo
 
Sim
E pode ativar a webgl para as animações, se entendi bem
 
1:18 AM
@AndersonCarlosWoss leio o puts "Hi, #{name}" do Ruby longo penso "PUTS QUE SHOW!"
 
Isso não é Ruby?
 
@AndersonCarlosWoss isso, eu que to viajando
 
Penso a mesma coisa
 
-.- sono + treino
 
puts "Erro, o que faço agora?"
 
1:20 AM
puts "grila"
 
@gato então, mas usamos como dissimulado, mas em outras culturas, o que me faz pensar que é neologismo ou equivocou de uso mesmo, é que o cinicos na verdade agem com desprezo de cara limpa e mostram seu desprezo pelas pessoas ou coisas, o que é quase ao contrário do dissumulado, aonde as coisas são feito de maneira encoberta, talvez até "velado"
@gato Ai eu volto na palavra "criticar", ela me soa ambígua, mas para as pessoas soa como "falar mal", talvez encontre uma palavra para substituir melhor para podermos argumentar, "não é uma critica e sim X", eu gosto da palavra retificar, só não sei se é comum ... tipo alguém se ofende com algum apontamento seu ai vc diz não estou te criticando, estou retificando
 
1:37 AM
@Bacco creio que faça mais sentido:
Se for servidor de produção: Podem ser muitos problemas, pode ser a estrutura da(s) tabela(s) relacionada(s) que não esta indexada ou não esta bem planejada, pode ser o SELECT que esta feito de uma forma que acabe consumindo demais para ler tudo, pode ser a execução de multiplas querys desnecessárias ... eu acho que setar o timeout para um tempo maior nestes casos pode ser pior, corrigi de inicio mas depois você começará a ter efeitos colaterais devido ao consumo ou tempo de conexão, é melhor analisarmos a estrutura dos teus .hh ou .php (para ver as querys) e das tabelas que criou. — Guilherme Nascimento 28 secs ago
 
@GuilhermeNascimento manja de java?
@AndersonCarlosWoss
 
@YODA queria não manjar
xD
to zoando, que manda
 
quando eu crio exceções personalizadas eu posso chamar com throw new ExcecaoDeInclusaoEmListaCheia(); ?
ou tem que ser sempre com try e catch?
ta dando uns erros aqui
e usei assim ele n apontou mais
 
minha estrutura do método ficou assim
 public void incluir(T obj) throws ExcecaoDeInclusaoEmListaCheia
        {

        if(tamanho<capacidade)
        {
            osObjetosDaLista[tamanho] = obj ;
            tamanho++;

        }else
        {
            throw new ExcecaoDeInclusaoEmListaCheia();
        }


     }
eu posso aplicar um novo if de procura e jogar uma exceção assim pra objetos já existentes?
 
1:46 AM
Não entendi essa última frase
 
@AndersonCarlosWoss esse modo que fiz de jogar exceção
 
@YODA mas ai vai uma opinião sobre Expcetions em qualquer linguagem de programação, Expcetions proprias não são para usuario final e nem sempre são necessarias, tem coisa que um IF/ELSE já resolve, é uma coisa do mundo java o pessoal querer tacar expcetion em tudo, mas exception do meu humilde ponto de vista é para quem esta desenvolvendo e não para quem vai usar o APP
 
posso após isso jogar outra exceção?
 
O pessoal em java parece que usa expcetion como se fosse manteiga no pão
 
@GuilhermeNascimento não cara sou obrigado a usar kkk
é trabalho mesmo
@GuilhermeNascimento vou te explicar
 
1:48 AM
public void incluir(T obj) throws ExcecaoDeInclusaoEmListaCheia
{
    if (tamanho >= capacidade) {
        throw new ExcecaoDeInclusaoEmListaCheia();
    }

    osObjetosDaLista[tamanho] = obj;
    tamanho++;
}
 
Tinha um método de incluir, certo?
 
@YODA entendi, pessoal que evangeliza JAVA costuma ensinar assim mesmo, alguns pq acreditam ser o certo, outros para que vc entenda o esquema de exception
 
Eu faria assim
 
Isso é mesma coisa se tu usasse try e catch né?
@GuilhermeNascimento tenho um método de incluir que tinha retorno int, .... 1 se incluiu certo, 0 se a lista estava cheia e 2 se obj já existe... tenho que trocar isso e por exceções
 
@GuilhermeNascimento eu acho q poderia ser "avaliar" no lugar de "criticar", não consigo pensar em outra palavra
 
1:52 AM
@gato mas avaliar soa quase como opinião, acho que a força da palavra, como retificar faria a diferença de entender que já avaliei e que entendo do que estou falando para estar apontando um erro em uma resposta por exemplo
@YODA se o obj já existe então ele dá erro?
 
@GuilhermeNascimento a questão é ... cada if que possuia um tipo de retorno posso usar throw new ?
no lugar
 
@GuilhermeNascimento hum, uma questão interessante, esta. Bom eu posso usar ela aqui no SOpt e ver os resultados
 
@YODA pode usar em todos
 
@GuilhermeNascimento me indicaram esse anime vc ja viu?
 
@gato haha, vou usar também, eu ando pegando no pé de alguns respondedores
 
1:54 AM
@GuilhermeNascimento gostei... estava tentando usar try e catch antes mas só dava erro ... agora assim é mais fácil com throw new
pelo menos ao meu ver
 
@GuilhermeNascimento faça este teste e compartilha aqui p a gente avaliar os resultados
 
@gato magica sintetizada pela tecnologia? Se entendi a sinopse, meu inglês tá bem fraco :P
Parece bom :D
 
cade o @WallaceMaxters p me recomandar uns animes? eu ja to entrando de férias fa faculdade :P
 
@gato MUHAHAHAHAHA
 
@GuilhermeNascimento vou fazer o teste dos três ep haha
eu vo la deitar um pouco pessoal \o/
falo p qm fica :)
fui();
 
2:01 AM
@gato se curti me avisa :)
 
2:32 AM
Não acredito, só pode ser SPAM:
Somos um site de perguntas e respostas e não de indicação de links, video-aulas e afinas. Fora que essa história de boas praticas é uma armadilha que acaba a levar a pessoa a acreditar em coisas que muitas vezes podem ser relativas. Faça o tour pt.stackoverflow.com/tour e leia o help: pt.stackoverflow.com/help/answeringGuilherme Nascimento 1 min ago
 
 
5 hours later…
7:56 AM
Bom dia malta
 
8:08 AM
bons dias :)
@JorgeB. mas so para ai, aqui para este lado vao uns meloes que mete dó
 
8:43 AM
@Omni ahahahahah grita ai "CROÁCIA" :D
 
8:59 AM
@JorgeB. nahh eu gosto do meu trabalho e tenho amor ao corpo xD
 
9:10 AM
@Omni eheheheheh
user image
4
by @Maniero
 
9:43 AM
Saudações terráqueos
 
 
1 hour later…
11:08 AM
@AndersonCarlosWoss e isso quer dizer?...
 
\o/ Salve Salve \o/
 
@JeffersonQuesado Que no python 3.8 teremos Assignment Expressions xD
 
olá
 
11:28 AM
Saudações
 
Saudações
 
Hallo
 
Fala alemão @LINQ? Só por curiosidade, eu não falo :P
 
@mutlei Falo não haha Eu aprendi umas palavras com um pessoal numa viagem que fiz pro Uruguai, mas só isso
 
@LINQ XD que nem eu. Meu colega fez alemão e me ensinou umas coisas tb rs
 
11:38 AM
chucrute, eisbein
 
11:50 AM
😆😆
 
@AndersonCarlosWoss, faz uma pergunta auto respondida da PEP 572?
Ou então eu mesmo vou precisar abrir a pergunta xD
@mutlei Pilsner, Bier
 
@JeffersonQuesado dafuq is Pilsner?
 
@mutlei traduziram para pilsen em português/ inglês
Deixa eu confirmar
 
Eu acho que é erro de digitação seu em
 
@mutlei, confirmei
 
11:56 AM
O que eu vejo de pergunta boa, fácil, simples, recebendo downvote no site é absurdo pqp
 
Mas em inglês é Pilsner também
@mutlei meu urso pediu link
 
0
Q: Duvidas Java + Mysql qual diferença em execute.query e execute.Update

Felipe HenriqueQual a diferença e quando devo usar executeQuery ou executeUpdate?

-2
Q: For - laço de repetição

B.BarbosaOlá, sou novo aqui e no mundo da programação. Gostaria de saber como fazer a última parte desse exercício, utilizando o For. Até agora fiz isso: for(int i = 1; i<=100; i++) { if(i%2==0) { System.out.println(i+" é par"); }else { System.out.println(i+" é ímpar"); } ...

Essa ultima acho que foi mais por ser um "façam por mim"
 
@JeffersonQuesado Em PT também, não?
 
Segundo o translate, o "por favor" seria "bitte" em alemão lel
 
@JeffersonQuesado É uma boa xD
Essa é a ideia de fazer o blog
Criar a série "PEP minha de cada dia" para falar sobre cada PEP
 
12:01 PM
@mutlei bitte bitte, danke schön
 
Bom dia
 
@LINQ pilsen, pelo menos é o mais padrão aqui no Brasil
 
Algum de vocês usam a api do pagseguro?
 
@mutlei tá mal redigida, e acho que é dup
@mutlei essa não fala nada no título, portanto já se mostra inadequada; redação parece carente também
@mutlei, portanto, parece que os negativos eram justos
 
12:20 PM
@JeffersonQuesado tema legal para um blog de Python?
 
0
Q: Os packages do R devem ter um tag proprio?

Márcio MocellinFiquei me questionando se seria interessante colocar tag do package do R, uma vez que eles correspondem ao ambiente que o problema ocorreu, mas por ser um tag muito específico poderia torna-lo menos interessante.

 
@AndersonCarlosWoss Sendo metido: achei bacana. Tá hospedando você mesmo ou é no GH Pages?
 
@LINQ No meu servidor mesmo
 
@AndersonCarlosWoss Nice
pt.stackoverflow.com/q/313805/18246 Alguém ajuda a fechar aí?
 
feito
aparentemente, quer formatar um TimeSpan, mas como conseguiu fazer uma pergunta tao ruim...
 
12:48 PM
@AndersonCarlosWoss Qual server você tem?
É shared?
 
Sim, hostgator
Plano mais básico possível
 
Ela não usou o snippet :O :O :O
Ainda há esperanças...
 
hahahahaha
é verdade
 
1:13 PM
Bom dia!
 
@RenanCarlos Bom dia!
 
Bom dia
4
A: Construção de Query no MySQL

William John Adam TrindadeO problema é o nulo no campo comentario_pai. Uma das formas de resolver é usando o COALESCE. COALESCE é uma função que que faz parte da especificação SQL-92. Todas os motores de banco de dados que respeitam essa especifição suportam essa função. O que COALESCE faz? Retorna o primeiro elemento n...

conforme o comentário do autor, eu adicionei uma explicaçã da função COALESCE.
sugestões de melhoria?
 
Olá alguém sabe alguma maneira de parar uma thread a partir de uma outra thread em cpp?
 
A outra thread que criou a primeira?
 
um programa com 2 threads e uma das threads para a outra
 
1:26 PM
Você tem a referência da thread que será parada na thread que irá pará-la?
 
Alguém usa? iron.io
 
Pseudocódigo:

Thread1.start()
Thread2.start()

Thread1:
Thread2.stop()
algo assim
@WallaceMaxters Nunca ouvi falar...
 
É pra fazer procesasmento de filas
 
Thread2.start()
Thread1.start( Thread2 )  <-- passa a referência para Thread1
Não precisa de algo assim?
 
sim e depois a thread1 para a thread2
(para de parar)
 
1:29 PM
@WallaceMaxters push() e pop() não são suficiente hoje em dia?
 
Então...
A pergunta é: Thread1 possui a referência de Thread2 para ele conseguir invocar o método stop?
 
sim
o problema é como eu invoco o método stop
 
Então qual é o problema?
 
porque aqui: cplusplus.com/reference/thread/thread não encontro nada sobre como parar uma thread
 
@LINQ filas assícronas, jobs.. Acho que costumam chamar de "Worker"
@LINQ dá pra fazer até com Websocket, se pá.
Eu estou pensando seriamente sobre, kkkkkk.
@LINQ C# tem alguma coisa simples para isso? Para mandar uma tarefa pra uma fila e depois processá-la separado?
 
1:34 PM
@WallaceMaxters ainda não percebi para que serve...
 
@Simplecoder fazer uma coisa "pesada" em um processo separado.
 
@WallaceMaxters Threads?
 
@Simplecoder acho que é um pouco diferente.
 
@WallaceMaxters Depende do que vc diz. Provavelmente isso não seria uma tarefa pra linguagem
 
@Simplecoder A ideia de um Worker é colocar a obrigação de execução de uma tarefa em outro plano.
@LINQ digo, se tem algo pronto (biblioteca que vc conheça) em C#.
 
1:37 PM
@WallaceMaxters então serve para mandar os dados para o server deles e eles que o processem?
 
@LINQ é que lembro de você ter citado o Signal-R, que fazia um de um jeito que me pareceu bem mais simples coisas com Webscoket.
@Simplecoder Eu uso no Laravel o esquema de processamentos de filas, mas o "driver" que uso é o Database. Uma das opçẽos do laravel é usar o iron
 
@WallaceMaxters desculpa, mas o que é laravel?
 
@Simplecoder Framework para desenvolvimento web em php
 
@AndersonCarlosWoss para parar uma thread tenho de usar mutex? Ou posso criar uma variável bool que controla o funcionamento da thread?
@WallaceMaxters entendi, não cheguei a mexer muito com php...
 
@Simplecoder dê graças a Deus por isso.
kkkkk
PHP não tem thread por exemplo :p
 
1:41 PM
kkkkk
O.o
@WallaceMaxters manda-se um exe tratar dos dados
 
@Simplecoder ?
 
Eu não sei se é essa a ideia, mas a Ideia da Thread seria essa @AndersonCarlosWoss?
Num contexto HTTP, eu uso Filas para evitar o apache "agarrar" com um processo de envio de e-mail, por exemplo.
 
@WallaceMaxters shell_exec("abc.exe");
e depois é só mandar arguments
:)
 
@Simplecoder mas o que te garante que foi executado?
Acho que a ideia dos worker é mais elaborada que isso.
 
1:45 PM
@WallaceMaxters podes colocar uma variável para receber os dados de saída e verificar se foi tudo processado
:D
 
@WallaceMaxters Não, pois encerrar a thread principal finalizando a requisição sem finalizar a thread poderia ser problemático
 
@WallaceMaxters $answer = shell_exec("abc.exe");
 
A thread seria mais para, por exemplo, você precisa se comunicar com uma API para utilizar o retorno
Mas tem outras coisas para fazer...
No início do código você pode iniciar uma thread que faça a comunicação com a API, enquanto na principal você faz o resto
Quando precisar do retorno, faz o join na thread e pegue o retorno
Para depois finalizar a requisição
 
@AndersonCarlosWoss sabes como é que eu paro thread2 a partir da thread1?
tenho de usar mutex?
 
Pode também mover um arquivo para um servidor enquanto salva o registro no banco com threads diferentes
Do envio de e-mail eu colocaria em uma pull, como você havia feito uma vez, ou uma CRON
@Simplecoder Sei que há várias pecularidades para não permitirem você parar uma thread diretamente
Mas geralmente tem como você emitir um stop signal para a thread para pará-la
 
1:51 PM
@AndersonCarlosWoss Como assim?
 
> Aviso Relying on the engine to determine when a Thread should join may cause undesirable behaviour; the programmer should be explicit, where possible.
Documentação do PHP recomenda utilizar o thread->join() explicitamente
 
@AndersonCarlosWoss desculpa, estava a exprimir-me de forma errada, eu queria pausar a thread em vez de matá-la
vou ver se consigo encontrar no pato
 
Mas fazendo isso, você não consegue enviar a resposta HTTP ao cliente enquanto a thread está rodando
Você precisa esperar ela finalizar
A única coisa é que, possivelmente, a resposta será entregue mais rápida por enviar o -email em paralelo
@Simplecoder O que seria "pausar" uma thread?
 
@AndersonCarlosWoss nãoe ntendi
 
O que não entendeu?
 
1:55 PM
@AndersonCarlosWoss Ah, você respondeu ao outro comentário, na verdade
 
@AndersonCarlosWoss quando lhe dermos um sinal, a thread descansa até lhe darmos outro sinal para continuar
 
@Simplecoder E se ela está no meio de um processo executando?
Ela deve parar onde está ou pausar apenas quando terminar o processo?
 
pausar quando termina o processo
 
E essa threadh executa um loop infinito?
 
não
 
2:00 PM
Então por quê iria querer pausá-la?
 
@AndersonCarlosWoss preciso enviar um e-mail quando os créditos de uma isntituição cadastrada no meu sistema está acabando. Esse e-mail não pode ser enviado toda hora, mas toda hora que executo uma tarefa preciso saber a quantidade de créditos para saber se envio o e-mail ou não (porém o e-mail só pode ser enviado uma vez). Como você faria para saber se o e-mail foi enviado ou não?
Eu usei um arquivo chamado "instituicao_bloqueio_{id}.lock", mas acho isso meio gambiarra
kkkkk
Acha que deveria colocar um campo para isso, numa tabela?
 
@WallaceMaxters Sim
 
@AndersonCarlosWoss tô até pensando em fazer algo mais elaborado
 
Principalmente se houver algum "evento" de recarga de crédito que possa utilizar para resetar este campo
 
Tipo, salvar a data de envio do e-mail. Se passar "X" data, pode enviar outro, caso a condição anterior não seja atendida
@AndersonCarlosWoss é que as vezes pensar em algo "em background" parece diferente de "web" kkkkk
Tem que tomar cuidado com algumas coisar pra não fazer cagadas (principalmente quando você está num while(true))
 
2:09 PM
Eu faria uma coluna enum com status intermediários
0: empresa possui créditos, tudo ok
Faria uma CRON que verifica os créditos das empresas e, se estiver abaixo do limite estipulado, envia o e-mail, trocando a coluna para 1
 
Ae mestres é uma boa prática utilizar variáveis globais em JQuery
 
Armazenando a data de envio
Na recarga de crédito, voltaria o valor para 0
Se passados X dias e valor ainda é 1 (empresa está com poucos créditos e já foi notificada a X dias), eu mandaria um segundo e-mail, com uma mensagem diferente
Mudando para 2 o valor
Se ficar por vários dias em 2, poderia até definir inatividade do cliente - se for o caso
 
Já vi que não :D
 
18 hours ago, by LINQ
@FelipeOliveira Pasme: boas práticas é uma coisa que inventaram pra cagar regra sem embasamento.
 
33
Q: Por que usar variáveis globais não é uma boa prática?

ZigndEstou lendo um livro de JavaScript chamado "JavaScript The Good Parts" e nele em vários momentos o autor fala que não se deve utilizar variáveis globais porque elas são do "mal". Por que elas são consideradas do "mal"? Que tipo de problemas elas podem causar?

@LINQ kkk' pesado
 
2:15 PM
@JoanMarcos Aí é que tá, o pessoal respondeu e embasou as paradas
 
@LINQ sim sim, deu para entender o porquê
 
Se precisa usar, use
Só não use "a rodo", sem necessidade
Nas bibliotecas do Arduino é comum você instanciar a classe globalmente dentro da própria biblioteca para torná-la única ("singleton")
 
vlw galera
 
class SerialBase {
   ...
}

SerialBase Serial = new SerialBase();
 
0
Q: O programa 'ng' não está instalado no momento. Você pode instalá-lo digitando: sudo apt-get install ng-common

Cris.talEstou aprendendo a trabalhar com Angular e estou numa bronca aqui. Estou tentando criar uma nova pasta usando o comando ng new "nome da pasta", mas está aparecendo a mensagem O programa 'ng' não está instalado no momento. Você pode instalá-lo digitando: sudo apt-get install ng-common`

 
2:33 PM
@Piovezan bom dia
 
@Simplecoder o ideal é que a thread saiba a hora de parar, assim ela pode fazer seu "tear-down" sem medo
O que você pode fazer é enviar uma mensagem / alterar um espaço de memória para indicar que deseja que ela morra
E confie no assíncrono, você não quer que ela morra de imediato , mas em pontos específicos
Sendo assíncrono, e sendo a thread assassinada apenas leitora da variável, a thread assassina não precisa se preocupar com mutex nem nada
E o primeiro que escrever para matar (contanto que não escrevam para ficar vivo) a thread morre
Apoptose vulgo autodestruição
 
Que conversa pesada
hahahaha
Se fosse um laço infinito, poderia utilizar um semáforo para pausar a thread, certo?
 
2:50 PM
@WallaceMaxters Sênior, se eu usar ->take(10) é tipo limit do sql certo? e se nao tiver 10 registros da ero?
 
@JulioHenrique Não, meu jôvem.
Ele retorna o que tiver
 
ariGATO
 
Tem como mudar '20.000,00' pra '20000.00' apenas com regex, javascript, ou tem que ir no replace da vida ? o valor pode inclusive aumentar '1.200.000,00'
Alguma luz ? ou apenas replace hahaha
 
  '20.000,00'.replace('.', '').replace(',', '.') /// isso ?
 
@MateusVeloso mas o regex não seria para você validar o que ele digitou ? assim você formata sem precisar usar o replace
 
2:57 PM
Verdade, que bad, me confundi! na verdade o valor vem do banco logo ninguem digitou, vou ter que brincar com replace ;)
 
0
A: Parar animação CSS após interação

Anderson Carlos WossAo invés de ficar preso a uma classe com a animação, eu faria um tanto quanto diferente. Eu definiria um atributo data-animation que define, no elemento, qual animação ele possuirá. Para adicionar a animação, basta adicionar o atributo e, de forma semelhante, para parar com a animação, basta remo...

#desapegaDasClasses
 
elseif ($instituicao->bloqueio_sistema == 1) {

    $this->writeLn('Essa instituição está bloqueada.');

    // Aumentamos o tempo de espera de acordo como número de tentativas de rodar essa tarefa

    return $job->release(600 * $job->attempts());

}
@AndersonCarlosWoss olha a técnica avançada kkkkkk
 
@AndersonCarlosWoss quem mandou o cliente ficar bloqueado?
Melhor jogar a tarefa dele lá pra casa do caramba.
 
Aqui temos travas geométricas
Primeiro, bloqueia por 5 min, depois por 25 min, depois por 125 min, ...
 
3:14 PM
@AndersonCarlosWoss você quer pausar ou parar a execução pra sempre?
 
@JeffersonQuesado Acredito que no contexto dele seria apenas pausar
 # thread 2
 while True:
        semaphore.lock()
        do_things()
        semaphore.release()
Na thread 1, para pausar a thread 2, bastaria dar o lock no semáforo, que ela ficaria "pausada" no início do loop
 
@Simplecoder aaahhh, não vi essa parte do diálogo xD
Cc @AndersonCarlosWoss
 
Mas como não é um loop inifinito, não vi motivos para se pausar a thread
 
@AndersonCarlosWoss O que isso significa? Modificar a Interface de Usuário para receber em um construtor as instâncias de Lista que serão utilizadas nas variáveis:
osAlunosDaUniversidade
osCursosDaUniversidade
asDisciplinasDaUniversidade
devo mudar pra generic?
 
Mestre tem como eu saber no laravel se eu vim de uma rota para outra ? exemplo: sair da rota index para a rota consulta. Tem como eu saber disso de alguma maneira ? @WallaceMaxters
 
3:25 PM
"Na Interface de Usuário não devem aparecer mais os tipos das classes concretas que implementam listas!"
to em duvida agora nisso uahuhsashuhusa buguei
@JeffersonQuesado entende de java?
 
@YODA sim
 
@JeffersonQuesado eu tenho isso ó
private ListaComEncadeamento<Aluno> osAlunosDaUniversidade =
        new ListaComEncadeamento<Aluno>(1000)  ;

    private ListaComEncadeamento<Curso> osCursosDaUniversidade =
        new ListaComEncadeamento<Curso>(1000);

    private ListaComEncadeamento<Disciplina> asDisciplinasDaUniversidade =
        new ListaComEncadeamento<Disciplina>(1000);
@JeffersonQuesado como eu mudo isso pra lista genéricas?
 
@YODA retorne List<V>, não ArrayList<V>
 
Tens um exemplo?
 
Qual a interface que ListaComEncadeamento implemento?
 
3:34 PM
/**
 * Escreva a descrição da classe Interface aqui.
 *
 * @author (seu nome)
 * @version (número de versão ou data)
 */
public interface  Interface<T>
{
   public void ordena();

   public void incluirEmOrdem(T obj);
   public void incluir(T obj, int indice);
   public void incluir(T obj) throws ExcecaoDeInclusaoEmListaCheia;

   public int tamanho();
   public boolean pesquisa(T obj);
}
essa
 
@YODA public List<String> coisas() { return new ArrayList<>(); }
@YODA que nome de bosta
Então retorne Interface
É isso que ele fala, não retorne a classe concreta, retorne o contrato/interface
 
@JeffersonQuesado então vai ser private ListaComEncadeamento<Interface> osAlunosDaUniversidade =
new ListaComEncadeamento<Aluno>(1000) ;
??
=( acho que estou errado
 
Desenh o diagrama de classes e interfaces
Manda uma foto pra cá
Pode ser no paint
 
ok está no blueJ fica mais fácil
1 seg
 
@YODA o que é blueJ?
 
3:41 PM
 
Quando eu falei "desenha", é para você entender o que está fazendo, não delegando a uma ferramenta fazer a magia
 
@JeffersonQuesado isso
 
Você entende esse diagrama?
 
sim
é a ferramenta de programar
tipo uma IDE
 
Certo, então por que Interface tem essas setas?
 
3:43 PM
@JeffersonQuesado para que fazer se posso mandar algo fazer para mim? Hahaha
 
Por que não há seta direta entre Aluno e Interface?
 
A Interface normal pq ela é uma interface e está sendo implementada na lista encadeada e na lista com array
 
@YODA o que isso significa a nível de contrato?
 
Que a lista com array e lista encadeada tem que ter os métodos ditos na interface
 
Contrato de código ? Já que estamos falando de tipagem estática
 
3:45 PM
@JeffersonQuesado certo?
 
@YODA isso
Então, tem algo abstrato e algo concreto
Quem é o quê?
 
abstrato é a interface e concreto é os métodos das classes lista...
certo?
 
@YODA especifique, nomes
Dê nomes
Abstrato: @AndersonCarlosWoss, concreto: @Articuno @LINQ
 
@JeffersonQuesado como?
Abstrato é a Interface , concreto é listacomArray e listaEncadeada
isso?
 
Pronto
Entende o porquê disso?
 
3:51 PM
+/-
,@JeffersonQuesado interface não diz o que os métodos fazem
apenas diz o que tem que ser aplicado nas outras
 
olá, alguém sabe como criar um CHAR_INFO num contexto de memória dinâmica?
new CHAR_INFO[ConsoleSize.X*ConsoleSize.Y];
 
Por quê eu sou abstrato? :/
 
isto dá o erro: cannot convert 'CHAR_INFO* {aka _CHAR_INFO*}' to 'int*' in assignment
 
@AndersonCarlosWoss Python xD
Você é contrato
@YODA então se ele fala para não retornar a classe concreta , mas para retornar algo abstrato, o que você espera?
Retornar ListaComArray ou Interface?
 
Entendi mas como eu faria isso?
uma lista pra todos?
e como eu vou saber o tipo de objeto que eu vou por nessa lista?
@JeffersonQuesado
 
3:59 PM
O que todos os tipos tem em comum?
 
@AndersonCarlosWoss por falar no site que linkou
 

« first day (1673 days earlier)      last day (2111 days later) »