Tópico da Programação (desenvolvimento de software)

Tópico da Programação (desenvolvimento de software)

  • Java

    Votes: 66 53.2%
  • C

    Votes: 77 62.1%
  • C++

    Votes: 58 46.8%
  • C#

    Votes: 47 37.9%
  • PHP

    Votes: 45 36.3%
  • BASIC (Visual e outros)

    Votes: 63 50.8%
  • Objective-C

    Votes: 2 1.6%
  • Python

    Votes: 23 18.5%
  • PERL

    Votes: 11 8.9%
  • JavaScript

    Votes: 55 44.4%
  • Ruby

    Votes: 6 4.8%
  • Pascal (ANSI, Turbo, Delphi, outros)

    Votes: 55 44.4%
  • Lisp

    Votes: 9 7.3%
  • Assembly (quais?)

    Votes: 35 28.2%
  • Fortran

    Votes: 12 9.7%
  • COBOL

    Votes: 16 12.9%
  • Haskell / OCaml

    Votes: 8 6.5%
  • Prolog

    Votes: 22 17.7%
  • .NET

    Votes: 37 29.8%
  • Struts/Hibernate

    Votes: 4 3.2%

  • Total voters
    124
Sobre aquilo que eu disse dos livros portugueses de autores académicos/teóricos, e
inventarem sobre o que não sabem...

Deixo duas imagens do mesmo livro (há mais, mas só fotografei as duas situações
das quais ainda me recordo), sobre as quais não me vou pronunciar. Quem quiser
que se pronuncie e debata o tema.

Uma das imagens enquadra-se bem neste tópico, uma vez que sendo sobre bases de
dados está ligado ao desenvolvimento de software. A outra não tem uma ligação assim
tão directa, mas de certo modo também se enquadra porque tem a ver com digitalização
(de sinais áudio), mais precisamente a conversão de digital para analógico.

attachment.php


attachment.php


da.jpg
tbbd.jpg

Há por aí alguns "barras" nestes temas capazes de iniciar um debate?
 
Livros em Português?
Não sei qual a vantagem.

Para fazer desenvolvimento de software convém saber bem inglês. As linguagens
de programação são todas em inglês. A maioria dos recursos (que interessam) são
todos em inglês.

Mais vale fazer 2-em-1 e começar logo a aproveitar para melhorar também as
capacidades em inglês.

(...)

Coding Horror: The Ugly American Programmer
(...)
A wildly disproportionate amount of programming information is available in English. The overwhelming majority of programming languages use English keywords. By any metric you can possibly measure, English is the lingua franca of programming.
(...)
I know many developers in Poland who prefer (as Joel mentioned) to get English documentation rather than Polish translation and the reason for that is that translations were not always accurate. Even Microsoft developer documentation was translated partially or with errors, so reading original English document was easier than English-Polish soup.


If everybody blogs and develops in English - our global repository of solutions and blog posts is much bigger and you have better chances of finding an answer to your problem.
(...)
Advocating the adoption of English as the de-facto standard language of software development is simple pragmatism
(...)
 
Last edited:
Boas, venho aqui chatear-vos mais uma vez.

Desta vez tenho um cartão de banda magnética, que contem informação, e basicamente o que eu quero, é que quando é passado o cartão no leitor que o programa faça algo.

Neste momento, eu tenho o programa a correr, e tenho uma outra thread à espera que seja escrito algo, mas esse algo só funciona quando é escrito na consola. Como é óbvio o programa não vai correr na consola, mas sim num interface gráfico.

O leitor de cartão emula um teclado, ou seja, quando se passa o cartão, ele escreve a informação que lá tem e de seguida muda de linha.

Qual será a melhor estratégia?
 
Boas, venho aqui chatear-vos mais uma vez.

Desta vez tenho um cartão de banda magnética, que contem informação, e basicamente o que eu quero, é que quando é passado o cartão no leitor que o programa faça algo.

Neste momento, eu tenho o programa a correr, e tenho uma outra thread à espera que seja escrito algo, mas esse algo só funciona quando é escrito na consola. Como é óbvio o programa não vai correr na consola, mas sim num interface gráfico.

O leitor de cartão emula um teclado, ou seja, quando se passa o cartão, ele escreve a informação que lá tem e de seguida muda de linha.

Qual será a melhor estratégia?

Bem, há muitas incógnitas, como linguagem, sistema operativo, etc.
Mas tipicamente a estratégia seria fazer essas experiências em modo
gráfico, pois nada te garante que possas ler o standard input sem ser
em modo de texto.

Esse leitor não tem nenhuma API?

É que se emula um teclado, o que irá acontecer é preencher o campo
que tiver o focus no momento em que se passa o cartão.

Aqui há muitos anos lembro-me de algo semelhante, mas para ler códigos
de barras. No entanto, o leitor era programável com um prefixo e sufixo que
poderia ser usado para detectar que o input era um código de barras, e assim
permitia que fosse tratado como tal, e não como conteúdo digitado no
teclado.

Isso não vem com código de exemplo?
Tem algum site oficial?
Há produtos que têm código de exemplo disponível, Lembro-me de fontes
de códigos de barras que tinham código de exemplo para codificar os EAN,
por exemplo.
 
Além do "sample & hold", há mais algum erro? Mas gralhas em livros, são inevitáveis... quer sejam Portugueses ou estrangeiros...

Mas reconheço que o texto está confuso, pois devia concentrar-se no erro de quantificação na digitalização e não na conversão D->A. Além disso, costumam ser aplicados filtros "passa baixo" para "alisar" o sinal e retirar as harmónicas de alta frequência...

De facto, tecnicamente deixa a desejar, mas como texto introdutório, não é muito escandaloso...
 
Last edited:
Realmente que estupidez a minha, esqueci-me de referir que era em java, o S.O. será o windows (7 penso eu).

O leitor foi comprado no ebay, não tem nenhuma API nem nada do gênero, pelo menos que eu saiba, apesar de quando eu o comprei ter visto um programa que dava para fazer exatamente o que tu disseste, de programar prefixos e sufixos, posso tentar ver se isso funciona com o meu.

Como ele emula teclado, a minha ideia era que ter uma thread a receber constantemente todas as strings que fosse digitadas no teclado, e depois trabalhar a string, já que a informação que contem o cartão, tem 7 caracteres sempre iguais, e a partir dessa substring conseguiria tratar o resto.

O meu problema é mesmo ter algo que leia o que é escrito pelo cartão/teclado, sem se utilizar qualquer textfield.

Eu tinha utilizado o Scanner(System.in) só que isso só funciona na consola.
 
Last edited:
Nuno156 ou alguém que perceba da poda... o que aconselham para um miúdo de 13 anos iniciar-se em programação? Será que há cursos em Lisboa específicos para a idade dele?



Thanks [;)]
Para um miúdo aprender, há uma combinação muito boa: Raspberry Pi + Linguagem Python [;)]

300px-RaspberryPi.jpg
 
Além do "sample & hold", há mais algum erro? Mas gralhas em livros, são inevitáveis... quer sejam Portugueses ou estrangeiros...

Mas reconheço que o texto está confuso, pois devia concentrar-se no erro de quantificação na digitalização e não na conversão D->A. Além disso, costumam ser aplicados filtros "passa baixo" para "alisar" o sinal e retirar as harmónicas de alta frequência...

De facto, tecnicamente deixa a desejar, mas como texto introdutório, não é muito escandaloso...

Este teu post teve pelo menos 3 versões...
Uma onde ainda não tinhas descoberto nenhum erro.
Outra onde viste o SAMPLE AND HOLD.
E esta última versão onde desenvolves mais um pouco.

Imagino que, pela primeira versão, que estivesses céptico com a minha crítica (por ainda não
teres encontrado nada de mal), e que esse cepticismo se tenha mantido depois de teres visto
o SAMPLE AND HOLD.

O problema é que não se trata apenas de uma gralha.
Uma gralha é um erro de escrita, que não é o caso.
Ninguém confunde SAMPLE AND HOLD com outra coisa qualquer.
Quando muito poderiam ter escrito D/A em lugar de A/D, e isso seria uma gralha.
Mas não. Todo o raciocínio está coerente com D/A, pelo que SAMPLE AND HOLD é algo que
não bate certo. O único modo de o SAMPLE AND HOLD ir aí parar é o autor não dominar o
assunto sobre o qual fala.

É mais escandaloso precisamente por ser introdutório. Ou seja, a maioria das pessoas que
lêem o livro não sabem o suficiente para não se deixarem enganar.

O livro é sobre Multimédia, pelo que tem muitas generalidades básicas, e claramente o autor
não tem conhecimentos suficientes (nem para o básico), pensa que tem, e não tem maturidade
suficiente para não inventar sobre o que claramente não sabe, nem pode ter lido em lado
nenhum (de fontes credíveis, entenda-se).

E não digo isto por causa do SAMPLE AND HOLD. O livro tem casos destes suficientes para
não se tratar de um erro esporádico. Existe uma clara tendência para inventar sobre o que não
sabe. E o outro exemplo que também coloquei (bases de dados) é gritante.

Eu não sou nenhum perito nestas áreas da Multimédia (antes pelo contrário, não me atrai
minimamente), mas sei o suficiente para detectar a enormidade de erros que este livro encerra.
Ou seja, há temas onde claramente sei mais que o autor, e por isso detectei os erros enquanto
lia o livro (não me recordo de todos, teria de ler novamente o livro).

O mais grave é que este é um livro que serve de bibliografia a cadeiras universitárias... e os
professores responsáveis deixam passar este tipo de erros.

Imagina que num exame saía a seguinte questão:

1. Diga em que processo de conversão é usado o SAMPLE AND HOLD
a) D/A
b) A/D
c) ambos
d) nenhum

Como é que respondes?
Segundo o que está certo?
Ou segundo o livro?
E se nem tivesses lido esse capítulo porque era um assunto que dominavas a 300%?


Gralha?
Gralha é escrever "pixéis" em lugar de "pixeis". Mas no caso deste livro não é gralha, porque
em todo o lado o autor escreve "pixéis"...
 
Realmente que estupidez a minha, esqueci-me de referir que era em java, o S.O. será o windows (7 penso eu).

O leitor foi comprado no ebay, não tem nenhuma API nem nada do gênero, pelo menos que eu saiba, apesar de quando eu o comprei ter visto um programa que dava para fazer exatamente o que tu disseste, de programar prefixos e sufixos, posso tentar ver se isso funciona com o meu.

Como ele emula teclado, a minha ideia era que ter uma thread a receber constantemente todas as strings que fosse digitadas no teclado, e depois trabalhar a string, já que a informação que contem o cartão, tem 7 caracteres sempre iguais, e a partir dessa substring conseguiria tratar o resto.

O meu problema é mesmo ter algo que leia o que é escrito pelo cartão/teclado, sem se utilizar qualquer textfield.

Eu tinha utilizado o Scanner(System.in) só que isso só funciona na consola.

Vê lá se isto ajuda:
java - Getting input from barcode scanner internally without textbox - Stack Overflow
 
Obrigado, já tinha visto o link do 2º post, vou analisar e testar o do 1º. Mais uma vez, muito obrigado pela ajuda.
 
Na empresa andamos (ando) a desenvolver um programa in-house para gestão integrada em SGBD, nomeadamente em Filemaker.

Isto tem avançado muito lentamente porque a proficiência em SGBD não abunda, e apesar de ir resolvendo uma questão pontual de vez em quando, com recurso à internet, isto precisava mesmo de ter o apoio de um especialista (tendo o projecto que se manter, obrigatoriamente, in-house) para poder avançar, pois está super atrasado.

Existe este tipo de consultoria?
 
Na empresa andamos (ando) a desenvolver um programa in-house para gestão integrada em SGBD, nomeadamente em Filemaker.

Isto tem avançado muito lentamente porque a proficiência em SGBD não abunda, e apesar de ir resolvendo uma questão pontual de vez em quando, com recurso à internet, isto precisava mesmo de ter o apoio de um especialista (tendo o projecto que se manter, obrigatoriamente, in-house) para poder avançar, pois está super atrasado.

Existe este tipo de consultoria?

Claro que existe, há empresas de outsourcing e freelancers que podem mexer nisso.

A pergunta que eu faco é, porque Filemaker?
 
Na empresa andamos (ando) a desenvolver um programa in-house para gestão integrada em SGBD, nomeadamente em Filemaker.

Isto tem avançado muito lentamente porque a proficiência em SGBD não abunda, e apesar de ir resolvendo uma questão pontual de vez em quando, com recurso à internet, isto precisava mesmo de ter o apoio de um especialista (tendo o projecto que se manter, obrigatoriamente, in-house) para poder avançar, pois está super atrasado.

Existe este tipo de consultoria?

Existe.
Pagas é por dia aquilo que muita gente não recebe por mês.

Além disso, tens um problema mais grave do que encontrar
alguém, e pagar uma fortuna... é o projecto já ter sido iniciado,
e usar tecnologia pouco usual e muito limitada (e que por isso
pode ser inapropriada para o objectivo final).
 
Claro que existe, há empresas de outsourcing e freelancers que podem mexer nisso.

A pergunta que eu faco é, porque Filemaker?
Filemaker porque é simples o suficiente, fácil de integrar com a plataforma mobile usada (graças ao cliente Filemaker Go). Não precisamos de nada mais complexo, a BD serve apenas 3-4 utilizadores.

Existe.
Pagas é por dia aquilo que muita gente não recebe por mês.

Além disso, tens um problema mais grave do que encontrar
alguém, e pagar uma fortuna... é o projecto já ter sido iniciado,
e usar tecnologia pouco usual e muito limitada (e que por isso
pode ser inapropriada para o objectivo final).
Compreendo. Mas eu não pretendo uma reformulação total do projecto, mas sim o endereçamento de questões especificas no que diz respeito ao relacionamento de tabelas para o nosso caso concreto, etc. Pessoalmente nem sempre consigo transladar o conhecimento existente online em tutoriais e afins para aplicar no nosso modelo real.

Por exemplo nos meus tempos de Universidade, nos módulos de informática que frequentei, um deles era de SGBD, em Access. O que pretendo nem é muito mais do que aulas de explicações particulares nesse campo, a esse nível.

Se calhar o ideal é mandar um email ao meu antigo professor de SI.

Algo muito mais dispendioso e complexo do que isso e provavelmente não será exequível.
 
(...)
Por exemplo nos meus tempos de Universidade, nos módulos de informática que frequentei, um deles era de SGBD, em Access. O que pretendo nem é muito mais do que aulas de explicações particulares nesse campo, a esse nível.
(...)

Os problemas começam precisamente aí... quando se ensina SGBD com Access e similares.
É o mesmo que ires para uma escola de condução aprender a conduzir, e o instrutor ensinar
condução num carrinho de rolamentos...

Quanto ao resto...
O facto de não quereres uma reformulação não implica que não seja necessária.

Nesse módulo de informática que dizes ter frequentado ouviste falar de:
- Formas Normais?
- Normalização?
- Desnormalização?
 
Os problemas começam precisamente aí... quando se ensina SGBD com Access e similares.
É o mesmo que ires para uma escola de condução aprender a conduzir, e o instrutor ensinar
condução num carrinho de rolamentos...

Quanto ao resto...
O facto de não quereres uma reformulação não implica que não seja necessária.

Nesse módulo de informática que dizes ter frequentado ouviste falar de:
- Formas Normais?
- Normalização?
- Desnormalização?

Shiu! Nao tires o trabalho ao pessoal. Projectos para mudar bases de dados Access para BDs a sério eram aos magotes há uns anos atrás.
 
Os problemas começam precisamente aí... quando se ensina SGBD com Access e similares.
É o mesmo que ires para uma escola de condução aprender a conduzir, e o instrutor ensinar
condução num carrinho de rolamentos...

Quanto ao resto...
O facto de não quereres uma reformulação não implica que não seja necessária.

Nesse módulo de informática que dizes ter frequentado ouviste falar de:
- Formas Normais?
- Normalização?
- Desnormalização?
Atenção, eram módulos de informática extra-curriculares mas obrigatórios. Não faziam mais do que arranhar a superfície, em 2 deles (num total de 4) não frequentei sequer as aulas, e em todos tive 19 ou perto disso [:D] Pena que não contava para a média.
Mas por simples que fossem, para muitos alunos eram um abre-olhos. A quantidade de analfabetismo total em folha de cálculo por exemplo era chocante. O ensino relacionado com a informática devia ter um peso muito maior a todos os níveis de escolaridade, mas isso são outras canções.

E sim, não ouvi falar de nada disso...

A licenciatura em si era de Gestão de Empresas.

Mas não pretendo que seja um programa 100% higiénico que sirva para futuras gerações, que possa ser atualizável etc. Se calhar é um pensamento egoísta, mas eu só quero uma coisa que sirva para o nosso dia-a-dia enquanto estou cá e enquanto posso ensinar o seu funcionamento.

Eu já tenho um modelo que funciona a alguns níveis e já está implementado. O problema é quero mais funcionalidade que não estou a conseguir obter sem criar problemas como duplicação de dados etc.

Vou-te dar um exemplo.

Tenho uma tabela para Créditos (recebimentos em atraso).
Tenho uma tabela para Pedidos de Orçamento.
Eu consigo que elas funcionem perfeitamente, e tenham um interface basicamente funcional. Isto para nós resulta. Só não está é optimizado.

Porque o pretendido como objectivo final é integrar ambas com uma tabela de clientes, com a devida chave primária para o cliente, que possa ser relacionado com todo o tipo de acções que pode fazer (contrair créditos, pedir orçamentos, fazer marcações, fazer pagamentos, etc).

Neste caso tenho apenas uma tabela "burra" de créditos em que insiro o nome do cliente de forma manual, não se relaciona de forma alguma com coisa nenhuma... mas pronto, serve para saber o que nos devem. E o mesmo se aplica às restantes tabelas. Ou seja há uma fartura de duplicação de dados desnecessária e que não permite tirar partido de uma base de dados relacional. Torna-se numa folha de cálculo glorificada.
 
Last edited:
Back
Top