Ir para o conteúdo
  1. Re: Software disenchantment

    nunopicado
    Por nunopicado,

    Acho que é de dividir o que é software que se sabe à partida onde vai correr e o que não se sabe, e em que condições ele vai correr.

    Se faço um software para correr uma vez, admito que também não me preocupo em demasia.
    Mas se faço um software que vai correr não sei em que PCs durante não sei quantas vezes e em quanto tempo... Convém ter cuidado com o que se faz.

    Lógico que não estou a dizer que temos de entrar em paranóia com isso. Mas uma gestão de memória consciente, com noção mínima do que uma acção implica a nível de performance não é de descartar.

    Se o fiz sempre? Não, infelizmente. Hoje olho para os programas em que não o fiz e, mesmo que os PCs sejam agora mais rápidos e portanto ainda se note menos o problema, gostaria de os ter feito correctamente de início, porque sei que cedo ou tarde, havendo tempo, vai-me dar comichão olhar para lá e vou refazer esses programas, mesmo que sem benefício para o utilizador, simplesmente por ficar melhor comigo próprio ao olhar para o código. :cheesygrin:

    • 3 respostas
  2. Re: Software disenchantment

    M6
    Por M6,
    2 hours ago, nunopicado said:

    Há muitos anos que eu digo que o PC de teste de um programador deveria ser um chaço arcaico.
    Só assim para alguns programadores perceberem que, independentemente de tudo o resto, o programa deveria ser o mais eficiente possível, e dever-se-ia apostar em fazer o melhor possível logo à primeira, para evitar depois a 'perca de tempo' a refactorar.

    Não concordo totalmente com essa visão.

    EU só otimizo quando tenho de otimizar. Não vale a pena estar a otimizar uma aplicação para correr em Windows XP com 1GB de RAM se a realidade é correr em Windows 7 com 4GB de RAM. Isso é tentar resolver um problema que não existe.
    A última vez que tive de me "empenhar a sério" nesse tipo de guerra foi quando fiz uma app para Android há alguns anos atrás e como se pretendia que abrangesse o maior número de dispositivos Android possíveis tive de otimizar bastante a aplicação para correr em Android com pouquíssimos recursos.
    Já na altura achei que se calhar não fazia grande sentido porque a velocidade com que esses dispositivos são descartados é muito rápida, e na verdade uns 6 meses depois, todo o trabalho adicional foi quase inglório.

    Atenção que isto não quer dizer que não se tenha atenção a fazer as coisas como deve ser logo de inicio, apenas estou a dizer que só me preocupo com problemas de performance se, em ambiente de qualificação e/ou produção, tiver problemas de performance.

    • 3 respostas
  3. Traduções em Wordpress

    pedromblopes93
    Por pedromblopes93,

    Boa tarde,

     

    Tenho tido muitas dificuldades em fazer a tradução de algumas palavras, originais do tema WP que uso.

    Já encontrei os .pot, já mudei lá e nada.

    Já instalei o LocoTranslate e não muda.

    Nesse site uso o xQtranslation para ter menu de 2 linguas.

    Em tickets do Support do Tema, apenas dizem que é necessário mudar o .pot.

    Desde já obrigado pela disponibilidade.
    Melhores cumprimentos,

    Pedro Lopes

    • 0 respostas
  4. Re: Software disenchantment

    nunopicado
    Por nunopicado,

    Há muitos anos que eu digo que o PC de teste de um programador deveria ser um chaço arcaico.
    Só assim para alguns programadores perceberem que, independentemente de tudo o resto, o programa deveria ser o mais eficiente possível, e dever-se-ia apostar em fazer o melhor possível logo à primeira, para evitar depois a 'perca de tempo' a refactorar.

    • 3 respostas
  5. Re: Software disenchantment

    Rui Carlos
    Por Rui Carlos,
    Citação

    [...]

    Only in software, it’s fine if a program runs at 1% or even 0.01% of the possible performance. Everybody just seems to be ok with it. People are often even proud about how much inefficient it is, as in “why should we worry, computers are fast enough”:

    Citação

    @tveastman: I have a Python program I run every day, it takes 1.5 seconds. I spent six hours re-writing it in rust, now it takes 0.06 seconds. That efficiency improvement means I’ll make my time back in 41 years, 24 days 🙂

    You’ve probably heard this mantra: “programmer time is more expensive than computer time”. What it means basically is that we’re wasting computers at an unprecedented scale. Would you buy a car if it eats 100 liters per 100 kilometers? How about 1000 liters? With computers, we do that all the time.

    [...]

    Artigo longo e interessante sobre o estado do desenvolvimento de software hoje em dia.

    • 3 respostas
  6. Re: Autoridade Tributária - Utilização de webservice com SSL

    jncevcosta
    Por jncevcosta,

    Boa tarde,

    Sou novato no que toca a comunicações com a AT e tenho neste momento um problema com a comunicação de uma guia de transporte:

    Estou a executar o comando em baixo e gostava de saber se me conseguem explicar o que estou a fazer mal pois obtenho sempre " failed to receive handshake, SSL/TLS connection failed".

     

    curl -X POST "https://servicos.portaldasfinancas.gov.pt:701/sgdtws/documentosTransporte" -H "Content-Type:application/soap+xml; charset=utf-8" -H "https://servicos.portaldasfinancas.gov.pt/sgdtws/documentosTransporte/" --tlsv1 --cert TesteWebservices.pfx --crlf -d teste.xml

    Instalei no meu portátil o certificado e mesmo assim continua a dar o tal erro.

    Obrigado desde já.

    • 33 respostas
  7. Transformar Dados dum Listbox para DataGridview

    Jaamatos
    Por Jaamatos,

    A Listbox1 encontra-se preenchida  com linhas de 3 letras A, B e C.

    Cada letra repete-se em doze (12) linhas, correspondestes aos meses do ano.

    à frente de cada letra e após o separador ; apresenta-se um valor.

    Exemplo:

    A;1
    A;1
    A;1
    A;1
    A;1
    A;1
    A;1
    A;1
    A;0
    A;0
    A;0
    A;0
    B;1
    B;1
    (...)

    Os valores devem apresentar-se para Datagridview1 estilo mapa mes a mes

    ID  JAN FEV MAR ABR MAI JUN JUL AGO SET OUT NOV DEZ
     A    1        1      1        1     1      1    1        1    0       0       0      0
     B    1        1     (...)

    Até que todos os dados da Listview esteja processados.

    Tenho o seguinte código:        
           

            '=====================================================================================
            'Percorre a lista completa e passa dados pagamento para mapa mensal em datagridview
            '===================================================================================== 		
            Dim linha = 0
            Dim coluna = 1
    
            For x = 0 To ListBox1.Items.Count - 1
    
    
                Dim sacal = ListBox1.Items(x)
                Dim apto = sacal.Split(";"c)(0)
                Me.dgv_mapaQuotas.Rows(linha).Cells(0).Value = apto
    
    
                For mes = 1 To 12
    
                    Dim sacar = ListBox1.Items(x)
                    Dim EstadoPagamento = sacar.Split(";"c)
                    Me.dgv_mapaQuotas.Rows(linha).Cells(coluna).Value = EstadoPagamento(1)
                    coluna = coluna + 1
    
                Next mes
                linha = linha + 1
    
            Next x

     Foi criada uma array vazia para a Datagridview

    dgv_mapaQuotas.Columns.AddRange(Enumerable.Range(0, 13).Select(Function(w) New DataGridViewTextBoxColumn).ToArray)
    dgv_mapaQuotas.Rows.AddRange(Enumerable.Range(0, variavel).Select(Function(x) New DataGridViewRow).ToArray)

    Por alguma razão não consigo passar da primeira linha 😞

    Antecipadamente grato a quem me conseguir ajudar,

    José

    • 0 respostas
  8. Syntax error in INSERT INTO statement

    diogoarsousa
    Por diogoarsousa,

    Bom dia. Quando tento inserir um novo registo numa base de dados, o programa dá um erro - "Syntax error in INSERT INTO statement".

    Segue-se o código de ligação à Base de Dados ACCESS e o código de inserção do novo registo:

    Dim inc As Integer
        Dim MaxRows As Integer
    
        Dim con As New OleDb.OleDbConnection    'THE CONNECTION OBJECT
    
        Dim dbProvider As String                'HOLDS THE PROVIDER
        Dim dbSource As String                  'HOLDS THE DATA SOURCE
        Dim MyDocumentsFolder As String         'HOLDS THE DOCUMENTS FOLDER
        Dim TheDatabase As String               'HOLDS THE DATABASE NAME
        Dim FullDatabasePath As String          'HOLDS THE DATABASE PATH
    
        Dim da As OleDb.OleDbDataAdapter                        'HOLDS a DataAdapter OBJECT
        Dim da_tipo_de_caudal As OleDb.OleDbDataAdapter         'HOLDS a DataAdapter OBJECT
        Dim da2 As OleDb.OleDbDataAdapter                       'HOLDS a DataAdapter OBJECT
    
        Dim ds As New DataSet                           'HOLDS a DataSet OBJECT
        Dim ds_tipo_de_caudal As New DataSet            'HOLDS a DataSet OBJECT
        Dim ds2 As New DataSet                          'HOLDS a DataSet OBJECT
    
    
        Dim sql1 As String                      'HOLDS a SQL STRING
        Dim sql2 As String
        Dim sql3 As String
    
    
    
        Private Sub Form_Ensaios_Primeira_Verificação_Contadores_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
    
    
    
           'SET THE DATABASE AND WHERE THE DATABASE IS
    
            MyDocumentsFolder = "C:\Ensaio Contadores 2018"
    
            TheDatabase = "/Ensaio_Contadores_2018.accdb"
    
            FullDatabasePath = MyDocumentsFolder & TheDatabase
    
            '***********
    
    
            'SET UP THE PROVIDER
            dbProvider = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=Dados.accdb;Jet OLEDB:System database=system.mdw;"
    
    
            dbSource = "Data Source = " & FullDatabasePath
    
            'SET THE CONNECTION STRING
            con.ConnectionString = dbProvider & dbSource
    
    
            '***********
    
    
            'OPEN THE DATABASE
            con.Open()
    
    
            sql3 = "SELECT * FROM Ensaios"
    
    
    
            'PASS THE SQL STRING AND CONNECTION OBJECT TO THE DATA_ADAPTER
            da = New OleDb.OleDbDataAdapter(sql3, con)
    
            'FILL THE DATASET WITH RECORDS FROM DATABASE DATABASE ENSAIOS
            da.Fill(ds, "Ensaios")
            'CLOSE THE DATABASE
            con.Close()
    
    
          End Sub
    
    
        Private Sub Button_Nº_de_Ensaio_Click(sender As System.Object, e As System.EventArgs) Handles Button_Nº_de_Ensaio.Click
    
    
            Dim cb As New OleDb.OleDbCommandBuilder(da)
            Dim dsNewRow As DataRow
    
            dsNewRow = ds.Tables("Ensaios").NewRow()
    
            dsNewRow.Item("N_Ensaio") = CInt(TextBox_Nº_de_Ensaio.Text)
    
            ds.Tables("Ensaios").Rows.Add(dsNewRow)
    
    
            da.Update(ds, "Ensaios")     ''''ERRO - Syntax error in INSERT INTO statement.
    
    
    
            MessageBox.Show("New Record added to the Database")
    
        End Sub

     

    • 0 respostas
  9. Re: Conjuntos/Set

    Yamix
    Por Yamix,

    Reposta,

    Const  MovC = ['W'];
           MovB = ['S'];
           MovE = ['E'];
           MovD = ['D'];
           Movimentos = MovC + MovB + MovE + MovD;

    Era só por um "+".

    ("rage moments.. @!!!!'kdkkdkwiiw82929r9c9c9s88daificiajd")

    • 1 resposta
  10. Re: Utilizar Webservices da AT

    marcolopes
    Por marcolopes,
    On 8/29/2018 at 12:11 PM, MCAST76 said:

    Viva!

    Relativamente ao webservice e-TaxFree, gostaria de saber se alguém consegue algum resultado, pois é-me sempre devolvido o erro: "Pedido do Cliente Rejeitado: Credenciais Inválidas".

    Os restantes webservices funcionam devidamente, tanto em ambiente de testes como de produção.

    Agradeço desde já.

    Por acaso não tens o "xml" da SOAP message que esteja perfeitamente validado? Estou a comparar com o XML do FILE UPLOAD, mas são coisas distintas... este serviço é, como sempre, um puzzle! Fizeram uma estrutura para o WEBSERVICE, e uma distinta para o XML a enviar manualmente...

    No webservice (testes) estou a obter Conteúdo mal formado: Erro de validação de schema (Pedido do Cliente ) [Request reference: 7833110:7147f1ae5ba7d80d01e45481]

    Não consigo validar manualmente o Schema, porque o meu validador dá erro ao interpretar o XSD!

    EDIT: Resolvido!

    • 7624 respostas
  11. Re: Utilizar Webservices da AT

    marcolopes
    Por marcolopes,

    Certificados de TESTES webservices da AT actualizados? Alguém consegue?

    TesteWebServices.pfx

    saPubKey.jks

    Encontrado... https://faturas.portaldasfinancas.gov.pt/factemipf_static/java/certificados.zip

    • 7624 respostas
  12. Re: Arquivo com encriptação?

    HappyHippyHippo
    Por HappyHippyHippo,

    Mover o tópico para a secção correcta : c#

    • 1 resposta
  13. Re: Achar Link atualizado e instalar

    HappyHippyHippo
    Por HappyHippyHippo,

    Mover o tópico para a secção correcta : c#

    • 1 resposta
  14. Re: Sorteio de valores de um array

    HappyHippyHippo
    Por HappyHippyHippo,
    3 hours ago, Camila Oliveira said:

    Foi uma instrução que eu encontrei aqui mesmo no fórum e que, segundo o membro, tornaria a função mais aleatória por usar bits mais significativos.

    https://www.portugal-a-programar.pt/forums/topic/56684-sorteio-de-string-em-array/

    Porque é que nunca respondem a pergunta... 

    • 4 respostas
  15. Re: Sorteio de valores de um array

    Camila Oliveira
    Por Camila Oliveira,

    Consegui utilizando a biblioteca time.h e a função srand(time(NULL))
     

    #include <stdlib.h>
    #include <stdio.h>
    #include <time.h>
    
    int main(){
    	
    	char sorteio1[50][11] = {"Bulbasaur","Venusaur","Charmander","Charmeleon","Charizard","Pidgey","Pidgeotto","Pidgeot","Pikachu","Raichu","Clefairy","Vulpix","Ninetales","Meowth","Psyduck","Golduck","Mankey","Primeape","Growlithe","Arcanine","Abra","Kadabra","Alakazam","Magnemite","Magneton","Onix","Cubone","Marowak","Staryu","Starmie","MrMime","Jynx","Magikarp","Gyarados","Lapras","Ditto","Eevee","Vaporeon","Porygon","Snorlax","Dragonair","Dragonite","Mewtwo","Mew","Chikorita","Sentret","Furret","Hoothoot","Lanturn","Pichu"};
    	int i;
    	
    	srand(time(NULL));
    	i = rand() %50;
      	
    	printf ("%d\n",i);    
    	
    	system ("Pause");
    	return 0;
    }

     

    • 4 respostas
  16. Re: Sorteio de valores de um array

    Camila Oliveira
    Por Camila Oliveira,

    Foi uma instrução que eu encontrei aqui mesmo no fórum e que, segundo o membro, tornaria a função mais aleatória por usar bits mais significativos.

    https://www.portugal-a-programar.pt/forums/topic/56684-sorteio-de-string-em-array/

    • 4 respostas
  17. Re: Sorteio de valores de um array

    HappyHippyHippo
    Por HappyHippyHippo,

    podes explicar a razão esta instrução ? (rand() >> 11) % 3

     ps : não quero saber o que pensas que faz ou o que deveria fazer, quero saber o que tu acahas que cada elemento da instrução faz para chegar ao resultado que pretendes

    • 4 respostas
  18. Re: Sorteio de valores de um array

    Camila Oliveira
    Por Camila Oliveira,

    Bom dia,

    Fiz um código para sorteio de 50 Pokemons, mas ele escolhe apenas o primeiro nome do array. Como posso deixar aleatório? 

    Eis o código:

    #include <stdlib.h>
    #include <stdio.h>
    
    
    int main() {
        char pokemon[51][15] = {"Bulbasaur","Venusaur","Charmander","Charmeleon","Charizard","Pidgey","Pidgeotto","Pidgeot","Pikachu","Raichu","Clefairy","Vulpix","Ninetales","Meowth","Psyduck","Golduck","Mankey","Primeape","Growlithe","Arcanine","Abra","Kadabra","Alakazam","Magnemite","Magneton","Onix","Cubone","Marowak","Staryu","Starmie","MrMime","Jynx","Magikarp","Gyarados","Lapras","Ditto","Eevee","Vaporeon","Porygon","Snorlax","Dragonair","Dragonite","Mewtwo","Mew","Chikorita","Sentret","Furret","Hoothoot","Lanturn","Pichu"};
        int i;
        srand(time(NULL));
        
      	i = (rand() >> 11) % 3;
    	printf ("%s",pokemon[i]);    
        
        system ("Pause");
        return 0;
    }

     

    • 4 respostas
  19. Re: erro expected identifier '('

    thallisandre
    Por thallisandre,
    8 minutos atrás, HappyHippyHippo disse:

    o primeiro parâmetro é o formato da leitura e os restantes é onde gravar os dados lidos

    agora foi!!

    Obrigado

    • 14 respostas
  20. Re: erro expected identifier '('

    HappyHippyHippo
    Por HappyHippyHippo,

    o primeiro parâmetro é o formato da leitura e os restantes é onde gravar os dados lidos

    • 14 respostas
  1. Ver Mais Actividade
×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade. Este site usa cookies para disponibilizar funcionalidades personalizadas. Para mais informações visite esta página.