Programação

Para "abobrinhas" use o " Boteco"

Moderadores: andre_luis, 51, guest2003, Renie

Programação

Mensagempor mastk » 18 Mai 2012 11:48

Vc sabe programar?

Já vez essa pergunta, de forma sincera e profunda a essa questão?

Recentemente eu me vi em uma situação de fazer um programa para testar um programa alheio. Na primeira passada achei uma grande quantidade de bugs, o veridito inicial, era: Erro no meu programa.
Após provar que o que fiz estava correto, dai sim, começou as correções.

O cidadão a qual, testei o programa, se julga um excelente programar, o melhor do Brasil, ao ler o codigo, que segundo ele, é uma obra de arte, aconteceram dezenas de vezes, de uma variavel errada, um estrutura vergonhasa, e similares.

Quando estudamos algoritmos, ou se dedica profundamente sobre logica e programação, vem a ideia de ser organizado e linear no pensar, entretanto, o pensamente não é uma linha, o primordial é resolver o problema, não vem bem uma bagunça no pensar?

Já li, que programar dentro da linguagem é ruim (e comum), eu vejo pensar dentro da linguagem, o que é: Uma pobreza.

Eu vejo essa arte hoje, em seu ideal, da seguinte maneira:
1° Enteder o problema
2° Tentar soluções (zona total nessa parte e até voltar ao passo)
3° Estrutar a solução
4° Implementar
5° Testar
6° Apreciar a solução

Digo que a pessoa que penso em uma liguagem e se orgulha tanto de suas soluções, está realizando POE (Programação Orientada ao Ego), o pode fazer de alguem que seja bom, acabe mediocre.

Assim falou Zarat... Mastk.
Avatar do usuário
mastk
Dword
 
Mensagens: 4407
Registrado em: 14 Out 2006 20:43

Mensagempor chrdcv » 18 Mai 2012 12:27

Olá Mastk!

Cara, em primeiro lugar parabéns! Programa que testa programa é uma tarefa um quanto tanto complicada e de certa forma hercúlea, pois entra na parte matemática hardcore da computação é análise formal, associada a combinatória e fundamentos teóricos da computação. Lembro que um dia assisti uma palestra de um professor sobre o assunto, e saí de lá me sentindo menos que o excremento de um protozoário (não que eu seja mais do que isso).

A enumeração que fez para solucionar um problema computacional está bem prática, mas ressalvo que o segundo passo: "2° Tentar soluções (zona total nessa parte e até voltar ao passo" pode tornar torturante caso não haja conhecimento prévio de algoritmos e análise de algoritmos. Um exemplo clássico disso poderia ser a resolução do problema das n rainhas. Caso não tenha conhecimento de grafos ou inteligência artificial, a abordagem para a resolução do problema torna-se massacrante e nem sempre leva a heurísticas melhores, o que acarreta maior custo computacional, maior gasto de energia, etc...

A questão da linguagem já é coisa do passado. Quem fica preso a somente uma linguagem de programação é refém dela. Na dinâmica atual do mundo, e com o poder computacional que temos, além de um maior entendimento e domínio de linguagens de computadores, análise semântica e sintática, é possível a resolução de um problema utilizando uma linguagem que ofereça algoritmos "build in", sem a necessidade de re-escrever código. Python e Ruby são exemplos dessas linguagens de prototipação rápida.
Avatar do usuário
chrdcv
Dword
 
Mensagens: 1580
Registrado em: 13 Out 2006 14:13

Mensagempor mastk » 18 Mai 2012 12:58

Apesar de testar, os testes são rusticos e simples e esse é um assunto que me interresa, recomenda algum livro sobre?
Avatar do usuário
mastk
Dword
 
Mensagens: 4407
Registrado em: 14 Out 2006 20:43

Mensagempor xultz » 18 Mai 2012 14:51

Vc sabe programar?

Já fez essa pergunta, de forma sincera e profunda a essa questão?


Sim, várias vezes, e a resposta é sempre a mesma: não.

Na verdade, a única coisa que sei fazer direito é pudim de leite.
98% das vezes estou certo, e não estou nem aí pros outros 3%.
Avatar do usuário
xultz
Dword
 
Mensagens: 3001
Registrado em: 13 Out 2006 18:41
Localização: Curitiba

Mensagempor msamsoniuk » 18 Mai 2012 14:55

Avatar do usuário
msamsoniuk
Dword
 
Mensagens: 2935
Registrado em: 13 Out 2006 18:04

Re: Programação

Mensagempor andre_luis » 19 Mai 2012 08:25

mastk escreveu:...O cidadão...se julga...o melhor do Brasil...


Esse é um tema interessante.

Há pessoas que aprendem uma determinada filosofia na faculdade, e não sabem sair daquele quadrado, pois é a única direção que conhecem. Um dos exemplos é a famosa 'abstração' : Fazem programas otimizando o reaproveitamento de código, e deteriorando a performance. É como a cegueira de uma religião.

Ano passado, criei em 2 meses, numa linguagem que eu nunca havia usado, algo que estavamos implorando a 2 anos para o departemento de programação(com dúzias de programadores Java certified), onde alegavam complexidade e o escambáu.

E olha que o meu programa ficou melhor de que qualquer um deles faria, segundo minha opinião.


+++
"Por maior que seja o buraco em que você se encontra, relaxe, porque ainda não há terra em cima."
Avatar do usuário
andre_luis
Dword
 
Mensagens: 5447
Registrado em: 11 Out 2006 18:27
Localização: Brasil - RJ

Mensagempor msamsoniuk » 19 Mai 2012 13:57

se eu sou o melhor programador do universo eu nao sei, mas depois q comecei a programar forte em verilog, a minha capacidade de obfuscacao de codigo em C atingiu o level yoda! huahuahua
Avatar do usuário
msamsoniuk
Dword
 
Mensagens: 2935
Registrado em: 13 Out 2006 18:04

Mensagempor mastk » 19 Mai 2012 13:59

Imagem

Eis um livro que comprei, li um pouco e parei, precisso de um lugar para sentar, caderno, lapis e borracha, coisas que alem de dificeis de serem obtidas em um meio de transporte publico, são dificeis de manusear no mesmo.

Liguagens, sei ASM de diversas CPUs, C, Java, Pascal e Python.

E mesmo assim, penso que até ser capaz de um Kernel meu, no nivel dos BSDs, é melhor estudar e me aprimorar mais, Sam.

E Andre, pois é, isso já aconteceu comigo diversas vezes, mas eu mesmo já empaquei com problema e achando que o meu jeito era o melhor e ponto final, ou seja, um **** de um ego, em uma situação em que deveria ser flexivel, como lidar com isso?
Avatar do usuário
mastk
Dword
 
Mensagens: 4407
Registrado em: 14 Out 2006 20:43

Mensagempor mastk » 19 Mai 2012 16:04

Hoje descidi passar na livraria cultura e pegar alguns livros novos e me deparei com isso aqui:

Imagem

Apesar de querer pensar torto, esse livro é a resposta ao pensamento que me levou a criar esse topico, vamos ver o que o livro tem para mim.
Avatar do usuário
mastk
Dword
 
Mensagens: 4407
Registrado em: 14 Out 2006 20:43

Mensagempor tcpipchip » 20 Mai 2012 10:48

nao esquecer de ler um ou dois livros de engenharia de software e suas ferramentas...por exemplo UML
Avatar do usuário
tcpipchip
Dword
 
Mensagens: 6560
Registrado em: 11 Out 2006 22:32
Localização: TCPIPCHIPizinho!

Mensagempor mastk » 20 Mai 2012 20:30

tcpipchip, UML eh algo para administracao, certo? Isso eh novidade para mim, parece coisa para projetos grandes, me recomenda algum livro para entrar n o assunto?

Um livro que estava lendo, que parei pela faculdade foi esse:

Imagem

Eh relativamente mal escrito, mas o assunto eh bem interresante.
Avatar do usuário
mastk
Dword
 
Mensagens: 4407
Registrado em: 14 Out 2006 20:43

Mensagempor tcpipchip » 21 Mai 2012 11:08

Avatar do usuário
tcpipchip
Dword
 
Mensagens: 6560
Registrado em: 11 Out 2006 22:32
Localização: TCPIPCHIPizinho!

Mensagempor tcpipchip » 21 Mai 2012 11:10

Linguagens formais, disciplina obrigatória em Ciencia da Computacao e Engenharia de Computacao.
Avatar do usuário
tcpipchip
Dword
 
Mensagens: 6560
Registrado em: 11 Out 2006 22:32
Localização: TCPIPCHIPizinho!

Mensagempor chrdcv » 21 Mai 2012 13:38

mastk escreveu:tcpipchip, UML eh algo para administracao, certo? Isso eh novidade para mim, parece coisa para projetos grandes, me recomenda algum livro para entrar n o assunto?

Um livro que estava lendo, que parei pela faculdade foi esse:

Imagem

Eh relativamente mal escrito, mas o assunto eh bem interresante.


Putz, ia recomendar justamente esse livro para vc! Foi um dos que achei mais fáceis para tentar entender um pouco FTC. Tem outros mais hardcores como o do Hopcroft e Ullman, Sudkamp e Sipser (em ordem de complexidade):

- Introduction to Automata Theory, Languages, and Computation (3rd ed)

- Introduction to the Theory of Computation

- Languages and Machines: An Introduction to the Theory of Computer Science

O F*** é que é relativamente tranquilo, até chegar na parte do Pumping Lemma, é aí que o problema começa a ficar agressivo e hardcore!


Na parte de algoritmos, gosto muito do:
Introduction to Algorithms -- Thomas H. Cormen, apesar de que na parte de grafos ser muito fraca, mas é possível complementar com abundância em: Graph Theory and Its Applications, Second Edition (Discrete Mathematics and Its Applications) -- Gross; Yellen

chrdcv
Seu Madruga: "O trabalho não é ruim, ruim é ter que trabalhar"
Avatar do usuário
chrdcv
Dword
 
Mensagens: 1580
Registrado em: 13 Out 2006 14:13

Mensagempor chipselect » 22 Mai 2012 22:43

mastk escreveu:Imagem

Eis um livro que comprei, li um pouco e parei, precisso de um lugar para sentar, caderno, lapis e borracha, coisas que alem de dificeis de serem obtidas em um meio de transporte publico, são dificeis de manusear no mesmo.

Liguagens, sei ASM de diversas CPUs, C, Java, Pascal e Python.

E mesmo assim, penso que até ser capaz de um Kernel meu, no nivel dos BSDs, é melhor estudar e me aprimorar mais, Sam.

E Andre, pois é, isso já aconteceu comigo diversas vezes, mas eu mesmo já empaquei com problema e achando que o meu jeito era o melhor e ponto final, ou seja, um **** de um ego, em uma situação em que deveria ser flexivel, como lidar com isso?


realmente um livro muito bom, naum terminei de ler ainda mas eh bem interessante.
chipselect
Word
 
Mensagens: 744
Registrado em: 16 Out 2006 18:50

Próximo

Voltar para Assuntos Gerais

Quem está online

Usuários navegando neste fórum: Google [Bot] e 1 visitante

cron

x