Jump to content

pedrotuga

Member
  • Posts

    5,679
  • Joined

  • Last visited

pedrotuga's Achievements

try-catch user

try-catch user (3/5)

  • 1 Year
  • Author Bronze

Recent Badges

24

Reputation

3

Community Answers

  1. 10 anos! Obrigado a todos os que formam esta comunidade por terem nutrido o meu interesse por programação de forma tão intensa. Uma década. Tanta coisa acontece numa década. Miudos de 15 anos vinham para aqui absorver informação há dez anos... onde estarão hoje com 25 anos? Não tenho duvida que por aqui passaram muitos dos melhores programadores portugueses. Vamos erguer a taça a tudo o que esta comunidade conseguiu. Seja o que for que o futuro traga, o passado será sempre glorioso.
  2. O que estás a pedir é esticado. Tenta tu, assim que te encontrares encalhado, afixa aqui a dúvida.
  3. Para resolveres esse tipo de problemas precisas de uma biblioteca (há quem chame motor) de calculo simbólico. Isto é uma área avançada, o tipo de programação a que deves estar habituado com variáveis numéricas e fórumlas simples permite-te encontrar soluções aproximadas só. Se o num exercício em que te pedem para resolver um sistema, a respota correcta é por exemplo x=1 e y=1/3, tu colocas x=1 e y=0.33 tens o exercício mal.
  4. Abre isso com um editor de hexadecimal e vê tu, é a melhor e a única maneira que funciona garantidamente. Até o MSEDIT que vinha no MSDOS tem essa funcionalidade.
  5. Genéricos é uma sintaxe que permite passar o tipo de dados a construtores e métodos de estruturas de dados que podem alojar vários tipos de dados. A utilidade é que permitem que permitem às estruturas de dados armazenar um tipo de objecto genérico (daí o nome) mas ao mesmo tempo permitem que o compilador confira se há consistencia nos tipos pelo teu programa fora. Tirado da wikipedia: Exemplo sem genéricos: List v = new ArrayList(); v.add("test"); Integer i = (Integer)v.get(0); O ArrayList sempre aceitou qualquer objecto que herdasse do tipo Object, ou seja, todos os tipos. A diferença é que quando se adicionava, perdia-se a informação sobre o tipo. Tinha que se recorrer a um cast como mostra o exemplo. Mas isto é basicamente dizer ao compilador para não se preocupar com a compatibilidade de tipos, que em runtime se converte no que for preciso. Ora, não é possível converter a string "teste" num Integer, pelo qu ex emplo acima dá um erro em runtime, apesar de compilar. Com genéricos, passas ao compilador, a infromação sobre que tipo estas a utilizar: List<String> v = new ArrayList<String>(); v.add("test"); Integer i = v.get(0); // (type error) Compile time error Aqui, quando chegas À ultima linha já disseste que tipo é que vais meter em cada elemento do ArrayList, pelo já não é possível compilares este código. O compilador não te deixa dazres uma atribução de um valor que já sabe que é to tipo String a uma variável que já sabe que é do tipo Integer. Ou seja, é um mecanismo de type-safety para estruturas de dados. Fonte: http://en.wikipedia.org/wiki/Generics_in_Java Isto foi novidade no java 5, os programadores de java hoje em dia interrogam-se como é que se escrevia java antes dos genéricos.
  6. Não tenho a certeza se isto é possível fazer no excel ou noutras folhas de cálculo, mas penso ser possível. Não sei é como. Eu adquiro regularmente um bem, vamos dizer batatas, mas o preço flutua. Eu quero guardar os detalhes de todo o meu stock numa folha de calculo, a quantidade e o preço essncialmente. Depois, quando procedo a uma venda das minhas batatas, quero calcular o preço com base no stock e subtraír ao meu stock. Por exemplo. O meu stock pode seria uma conjunto de linhas mais ou menos assim, vou volucar uma coluna por linha aqui para facilitar a dactilografia Batatas compradas ao zé manel 50 arrobas 1 euro /quilo Batatas compradas ao antónio 10 arrobas 0,6 euro /quilo Batatas compradas no armazem bom-dia-batata 20 arrobas 0,5 euro/quil Quanto faço uma venda, vou ter que tirar daqui com base nalgum critério, por exemplo, a começar pelas mais baratas. Nesse caso, se estivesse a vender 35 arrobas, teria que tirar as 20 compradas no armazem mais as 10 compradas ao António mais cinco das mais caras. É possível vazer isto? meter um número numa célula e ir tirar a oturas células caso exista?
  7. Teoria da computação, state machines, context free grammars, context sensitive grammars, regular sets, tokenizers, parsers, expressões regulares, conceitos de compiladores, e por aí fora. Este curso é gratuito e até podes ver as aulas em vídeo: http://www.aduni.org/courses/theory/ é uma boa introdução, mas não esperes menos trabalho do que aquele que uma cadeira de faculdade requere.
  8. É um problema demasiado avançado para principiantes. Mesmo ignorando variable scope, o significado dos tokens depende do seu contexto. Pelo que um tokneizer não te basta, precisas de um lexer tambem. E só'para perceberes bem o que isto é, precisas de muitos conhecimentos de teoria de computação. Eu aconselho-te outro projecto, esse é do mais avançado que há.
  9. Parece um exercício típico em que lês um inteiro do standard input w fazes um ciclo for usnado esse inteiro como condição de paragem. Os obejctos podes por exemplo ir adicionando ao final de um ArrayList.
  10. Coloca os ficheiros disponíveis via http?
  11. Fiz uma pesquisa por servidores de wsgi, gosto do servidor que vem com o cherry.py. Parece que meter o nginx como proxy do que quer que seja é a solução que tem melhor performance, mas sinceramente aborrece-me um pouco ter um deploy com uma estrutura complexa.
  12. pedrotuga

    Polimorfismo

    Um problema frequente é não ter bem definido o que se quer fazer antes de nos atirarmos de cabeça ao código. A pergunta, sem dúvida que sugere código como o que tu tens. Se for esse o objectivo, desde já te posso dizer que ele não te vai ensinar a usar o object model em condições. O que fizeste é a solução óbvia que qualquer principiante se lembraria. Um if para ver qual é o tipo. Polimorfismo é, por definição, não precisar de fazer isso. A soluçã para este tipo de problemas está na forma como se utilizam os objectos e não tanto na sua implementação. O que se faz nesta situação é o seguinte: * uma interface 'Veiculo' com um cabeçalo int distanciaMaxima() * implementa essa interface nas classes carro e avião, isto consiste em usar a keyword implements na definição da classe e a implementar todos os métodos declarados na interface, neste caso: distanciaMaxima() class Carro implements Veiculo{ int distanciaMaxima(); } depois instancia-as da seguinte forma: Veiculo meyCarro = new Carro(); Veiculo meyAviao = new Aviao(); depois quando quiseres chamar o método, a implementação correspondente é utilizada. Tão simples quanto isso.
  13. Instalei o postfix num servidor mas não percebo nada disto. Por exemplo, aqui: https://help.ubuntu.com/community/PostfixBasicSetupHowto diz a certa altura "cria um utilizador antes de proseguir" mas eu não entendo porquê. A minha questao é: qual é o mínimo dos mínimos? Eu quero poder aceder ao email via IMAP, mas antes disso gostava de criar varios endenreços mas não preciso de mais utilizadores, os emails devem chegar todos às mesmas pessoas, só preciso de vários endereços por motivos logísticos/burocráticos. Eu instalei o postfix usando o apt-get, a versao que está nos repositórios. Agora como crio endereços?
  14. Rui, pelo que li por aí pelas internets, há muita gente a usa-lo com php-fpm directamente. Mas e em relação a outras linguagens? Ninguem experimentou mais nada que não seja LAMP????
  15. Gostava de reunir algumas opiniões e experiencias sobre utilização de plataformas de aplicações web. Pessoalmente já pus em produção muitas aplicações em ambientes LAMP e em java servlet containers, tomcat, jboss, glassfish. Em ambientes de produção, para data storage só usei mesmo bases de dados relacionais: postgres, mysql e oracle. Tambem já pontualmente instalei scripts perl via CGI, mas só em abientes controlados. Tanto servlets como o php são capazes de boa performance, mas hoje em dia está tudo a mudar para o nginx, se bem que pelo que percebo é só para usa-lo como proxy, pelo que no fim de contas acaba por ser um problema resolvido por via de cache. A mim pessoalmente, interessam-me soluções leves mas que sejam capazes de responder a grandes cargas. Mas estou a ter alguma dificuldade em encontrar informação relevante sobre isto. Partilhem aí o que já experimentaram e dêm uma opinião sobre a performance. Por exemplo, se eu escrever uma aplicação em python que implemente o wsgi, que opções é que tenho para um deploy que seja comparável ao php+nginx em termos de perfomance? Outr coisa que gostava de experimentar é o racket. Adorava escrever uma webapp em scheme. Que limitações é que o racket tem enquanto plataforma para webapps? rails, .net, python, perl, outras, digam aí de vossa justiça
×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.