Conhecimento de programação vs. lógica de programação


10

Existe alguma diferença entre os dois tópicos? Eu já vi empresas pedindo conhecimento de boa programação alguma lógica de boa programação .

Eu já vi isso nos perfis de trabalho de um desenvolvedor - por exemplo, "boa lógica de programação", "forte conhecimento de programação".

Eu acredito que o conhecimento de programação está relacionado ao conhecimento sobre a linguagem em consideração e a lógica de programação é a lógica de solução de problemas usando a programação (em geral).
Por favor corrija-me se eu estiver errado. Além disso, o que é mais importante?

Edit: A seleção de componentes para o aplicativo, projetando interfaces para validar entradas do usuário, se enquadra no conhecimento de programação ou na lógica de programação?
A lógica de programação implica simplesmente a solução de problemas ou há mais alguma coisa que ela deva incluir?


3
esses termos não possuem semânticas bem definidas e comumente acordadas. Seu "significado" depende muito do contexto. "Vi empresas perguntando" - que empresas? em que termos exatos eles estavam perguntando?
Gnat

@gnat Eu já vi isso em perfis de trabalho para um desenvolvedor
Shirish11

em que termos exatos eles estavam perguntando?
Gnat

@gnat, por exemplo, boa lógica de programação, forte conhecimento de programação.
Shirish11

Não vejo nenhuma postagem que inclua "conhecimento de programação" ou "lógica de programação" em careers.stackoverflow.com . Você pode fornecer links para alguns exemplos? Sem ver exemplos específicos, sugiro ficar longe de empregos em que "um bom conhecimento de programação" seja uma qualificação. As descrições de cargo devem ser muito mais específicas que isso. Não é preciso dizer que um emprego para um escritor ou fotógrafo exigiria "bons conhecimentos de escrita" ou "bons conhecimentos de fotografia", certo? Mesma coisa aqui.
Caleb

Respostas:


7

Conhecimento de programação é o entendimento de como usar uma linguagem de programação, qual é a sintaxe, palavras-chave, uso de código (e entender o OOP se for uma linguagem orientada a objetos). Esse conhecimento pode ser obtido através da leitura de livros didáticos e do estudo da linguagem e dos conceitos.

A lógica de programação é a capacidade de resolver problemas e pensar de maneira abstrata ao usar a linguagem de programação. Isso é diferente do conhecimento de programação porque a lógica de programação é obtida com a experiência e a prática.

Alguns programadores podem ter um bom conhecimento de uma linguagem de programação, mas não possuem muita experiência na solução de problemas usando-a. Da mesma forma, alguns programadores podem ter boas habilidades de raciocínio lógico, mas possuem conhecimento limitado da linguagem de programação. É possível adquirir habilidade no conhecimento e na lógica de programação, mas o último vem com experiência.


2
Referências necessárias. Como está escrito, essas definições parecem ser apenas a sua opinião / compreensão delas. Citar a fonte dessas definições e / ou exemplos de uso que concorda com suas definições fará desta uma resposta muito melhor.
Caleb

+1 em "Isso é diferente do conhecimento de programação porque a lógica de programação é obtida com a experiência e a prática".
precisa saber é o seguinte

4

A lógica de programação é definida como a aplicação de habilidades matemáticas / de resolução de problemas durante um problema específico de programação. O conhecimento de programação é a aplicação de uma linguagem de programação específica para permitir que o programador aplique a lógica de programação. Ambos são importantes no processo para resolver um problema de programação.

A ênfase deve ser colocada nas habilidades de resolução de problemas - a lógica - ficando boa em resolver problemas complexos. Depois de praticar essa habilidade (levará um tempo para começar a pensar imediatamente), aprenda uma linguagem de programação para aplicar a lógica.


... é definido como ... onde e por quem? Cite suas referências para essas definições.
Caleb

3

Eles soam muito diferentes para mim, e eu tive dificuldade em dizer qual é o mais importante.

Você pode ser um mantenedor de software incrível, mas um programador muito ruim. Algumas pessoas são incríveis em depurar código, encontrar o caminho, corrigi-lo e melhorá-lo levemente. Eles são frequentemente comparados aos zeladores, mas é um desserviço: eles podem ter conhecimento e know-how verdadeiros para melhorar as coisas.

Mas eles ainda podem ser terrivelmente ruins ao escrever um novo código e ao projetar e implementar algoritmos. Eles podem entender por que as coisas geralmente são melhores, de um jeito ou de outro, e podem até entender, depois do fato, os benefícios de um projeto em detrimento de outro. Mas eles têm dificuldade em encontrar um deles. Eles não têm uma compreensão profunda dessa mentalidade lógica e de resolução de problemas.


Ambos são importantes em minha mente. Você não quer apenas hackers que possam encontrar soluções incríveis, mas produza um código inatingível para as próximas gerações de globos oculares que olharão para sua base de código. Pode ser bom para projetos de prototipagem e de curta duração, mas em uma escala maior que só pode voar por tanto tempo.

Portanto, o primeiro grupo também é essencial. Mas eles não seriam capazes de projetar ótimos softwares com o segundo grupo. É bastante simbiótico (e é melhor quando as qualidades realmente estão no mesmo desenvolvedor). Eu acho que se você vê isso como um problema de galinha e ovo, eu tenho que admitir que o tipo lógico importa um pouco mais, por razões históricas, pois elas precisavam existir primeiro para avançar. Mas isso significa que eles são mais importantes em uma loja de software? Acho que não. Você pode produzir softwares excelentes e bem-sucedidos encanando coisas e não inventando muito.


3

Conhecimento de programação - é adquirido através da leitura e estudo , enquanto a lógica de programação é algo que vem da experiência para lidar com situações diferentes e encontrar soluções para elas.


11
-1, suas definições simplesmente não são verdadeiras. Você pode aprender conhecimento através da experiência e aprender lógica de um livro.
corsiKa

Concordo, você pode aprender com a experiência, mas a metodologia e as técnicas de programação podem ser aprendidas com bons livros. No entanto, a lógica de programação é mais restrita à experiência.
Yusubov 5/07

2

Há uma enorme diferença. Lógica de programação significa que um deve ser capaz de resolver problemas algorítmicos, deve ser capaz de criar código genérico e eficiente. Eles devem ser bons em resolver problemas com eficiência. Conhecimento de programação é conhecimento sobre conceitos gerais de programação, linguagens / linguagem e tecnologias


Eu acho que não should be able to create generic, efficient codeentra Logic. Uma lógica nunca depende do código, mas o código depende de uma lógica.
Junaid

0

Conhecimento de programação significa conhecer os conceitos da linguagem de programação específica que oferece os recursos que geralmente podem resolver o problema.

Lógica de programação significa aplicar o conhecimento de programação para estruturar uma lógica de programação que funcionaria para resolver o problema.

Então, um está preocupado com os conceitos e o outro está preocupado com a lógica.


-1

Conhecimento de programação é conhecer o uso do hammer n Chisel

A Programming Logic está criando a cadeira com o Wooden Log .. !! (usando Hammer n Chisel)

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.