Conocimiento de programación versus lógica de programación


10

¿Hay alguna diferencia entre los dos temas? He visto compañías que piden conocimientos de buena programación y cierta lógica de buena programación .

Lo he visto en los perfiles de trabajo para un desarrollador, por ejemplo, "buena lógica de programación", "conocimiento sólido de programación".

Creo que el conocimiento de programación está relacionado con el conocimiento sobre el lenguaje en consideración y la lógica de programación es lógica de resolución de problemas usando la programación (en general).
Por favor, corríjame si estoy equivocado. Además, ¿qué es más importante?

Editar: ¿La selección de componentes para la aplicación, el diseño de interfaces que validan las entradas de los usuarios se encuentra dentro del conocimiento de programación o la lógica de programación?
¿La lógica de programación simplemente implica la resolución de problemas, o hay algo más de lo que debería formar parte?


3
Estos términos no tienen una semántica bien definida y comúnmente acordada. Su "significado" depende en gran medida del contexto. "He visto compañías que preguntan" : ¿qué compañías? ¿En qué términos exactos estaban preguntando?
mosquito

@gnat He visto esto en los perfiles de trabajo para un desarrollador
Shirish11

¿En qué términos exactos estaban preguntando?
mosquito

@gnat para, por ejemplo, buena lógica de programación, sólidos conocimientos de programación.
Shirish11

No veo ninguna publicación que incluya "conocimiento de programación" o "lógica de programación" en careers.stackoverflow.com . ¿Pueden proporcionar enlaces a algunos ejemplos? Sin ver ejemplos específicos, sugeriría que se mantenga alejado de los trabajos donde "un buen conocimiento de programación" es una calificación. Las descripciones de trabajo deberían ser mucho más específicas que eso. No hay que decir que un trabajo para un escritor o fotógrafo requeriría "buenos conocimientos de escritura" o "buenos conocimientos de fotografía", ¿verdad? Lo mismo aqui.
Caleb

Respuestas:


7

El conocimiento de programación es la comprensión de cómo usar un lenguaje de programación, cuál es su sintaxis, palabras clave, uso de código (y comprender la POO si es un lenguaje orientado a objetos). Este conocimiento se puede obtener leyendo libros de texto y estudiando el lenguaje y los conceptos.

La lógica de programación es la capacidad de resolver problemas y pensar de manera abstracta al usar el lenguaje de programación. Esto es diferente al conocimiento de programación porque la lógica de programación se obtiene con experiencia y práctica.

Algunos programadores pueden tener un buen conocimiento de un lenguaje de programación, pero no tienen mucha experiencia en la resolución de problemas al usarlo. E igualmente, algunos programadores pueden tener buenas habilidades de razonamiento lógico pero tienen un conocimiento limitado del lenguaje de programación. Se pueden adquirir habilidades tanto en conocimiento de programación como en lógica de programación, pero esta última viene con experiencia.


2
Referencias necesarias. Tal como están escritas, estas definiciones parecen ser solo su opinión / comprensión de ellas. Citar la fuente de estas definiciones y / o ejemplos de uso que concuerden con sus definiciones hará que esta sea una respuesta mucho mejor.
Caleb

+1 para "Esto es diferente al conocimiento de programación porque la lógica de programación se obtiene con experiencia y práctica".
Md Mahbubur Rahman

4

La lógica de programación se define como la aplicación de habilidades matemáticas / de resolución de problemas durante un problema de programación específico. El conocimiento de programación es la aplicación de un lenguaje de programación específico para permitir que el programador aplique la lógica de programación. Ambos son importantes en el proceso para resolver un problema de programación.

Sin embargo, se debe hacer hincapié en las habilidades para resolver problemas, la lógica, en ser buenos para resolver problemas complejos. Una vez que haya practicado esta habilidad (le tomará un tiempo comenzar a pensar fuera de la caja) enséñese un lenguaje de programación para aplicar la lógica.


... se define como ... ¿ dónde y por quién? Cite sus referencias para estas definiciones.
Caleb

3

A mí me parecen muy diferentes, y me ha costado decir cuál es más importante.

Podrías ser un mantenedor de software increíble, pero también un muy mal programador. Algunas personas son asombrosas para depurar código, encontrar su camino, arreglarlo y mejorarlo ligeramente. A menudo se los compara con los conserjes, pero es un mal servicio: pueden tener un verdadero conocimiento y experiencia para llevar las cosas a un mejor estado.

Pero aún pueden ser terriblemente malos para escribir código nuevo y para diseñar e implementar algoritmos. Pueden comprender por qué las cosas son generalmente mejores de una manera u otra, e incluso pueden comprender después del hecho los beneficios de un diseño sobre otro. Pero les cuesta trabajo encontrar uno. Carecen de una comprensión profunda de esta mentalidad lógica y de resolución de problemas.


Ambos son importantes en mi mente. No solo quiere piratas informáticos que puedan encontrar soluciones sorprendentes, sino que produzcan código inmanejable para las próximas generaciones de globos oculares que verán su base de código. Puede estar bien para la creación de prototipos y proyectos de corta duración, pero en una escala mayor que solo puede volar durante tanto tiempo.

Entonces el primer grupo también es esencial. Pero no podrían diseñar un gran software con el segundo grupo. Es bastante simbiótico (y es mejor cuando las cualidades están en el mismo desarrollador). Supongo que si ves esto como un problema de huevo y gallina, tendría que admitir que el tipo lógico importa un poco más, por razones históricas, ya que tuvieron que existir primero para avanzar. ¿Pero eso significa que son más importantes en una tienda de software? No lo creo. Puede producir un software excelente y exitoso al unir cosas y no inventar mucho.


3

Conocimiento de programación: se obtiene a través de la lectura y el estudio , mientras que la lógica de programación es algo que proviene de la experiencia para lidiar con diferentes situaciones y encontrar soluciones a ellas.


1
-1, tus definiciones simplemente no son ciertas. Puedes aprender conocimiento a través de la experiencia, y puedes aprender lógica de un libro.
corsiKa

De acuerdo, puedes aprender de la experiencia, pero la metodología y las técnicas de programación se pueden aprender de buenos libros. Sin embargo, la lógica de programación es más ajustada a la experiencia.
Yusubov

2

Hay una gran diferencia La lógica de programación significa que uno debería ser capaz de resolver problemas algorítmicos, debería ser capaz de crear código genérico y eficiente, y debería ser bueno para resolver problemas de manera eficiente. El conocimiento de programación es conocimiento sobre conceptos generales de programación, lenguajes / lenguaje y tecnologías.


No creo que should be able to create generic, efficient codeentre Logic. Una lógica nunca depende del código, pero el código depende de una lógica.
Junaid

0

El conocimiento de programación significa conocer los conceptos del lenguaje de programación particular que ofrece las características que comúnmente pueden resolver el problema.

La lógica de programación significa aplicar los conocimientos de programación para enmarcar una lógica de programación que funcione para resolver el problema.

Entonces uno se preocupa por los conceptos y otro se preocupa por la lógica.


-1

El conocimiento de programación es conocer el uso de hammer n Chisel

¡Programming Logic está creando la silla con un tronco de madera! (usando Hammer n Chisel)

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.