Знание программирования против логики программирования


10

Есть ли разница между этими двумя темами? Я видел , как компании , просящие Хорошее знание программирования некоторые Хорошая логика программирования .

Я видел это в профилях вакансий для разработчика - например, «хорошая логика программирования», «сильные знания программирования».

Я считаю, что знание программирования связано со знанием рассматриваемого языка, а логика программирования - это логика решения проблем с помощью программирования (в целом).
Пожалуйста, поправьте меня, если я ошибаюсь. И что важнее?

Редактировать: Подходит ли выбор компонентов для приложения, разработка интерфейсов, проверяющих вводимые пользователем данные, знаниям программирования или логике программирования?
Логика программирования просто подразумевает решение проблем или есть что-то еще, из чего она должна состоять?


3
эти термины не имеют четко определенной и общепринятой семантики. Их «значение» в значительной степени зависит от контекста. «Я видел, как компании спрашивают» - какие компании? в какие именно сроки они спрашивали?
комнат

@gnat Я видел это в профилях вакансий для разработчика
Shirish11

в какие именно сроки они спрашивали?
комнат

@gnat, например, для хорошей логики программирования, глубоких знаний в области программирования.
Shirish11

Я не вижу публикаций, которые бы содержали либо «знание программирования», либо «логику программирования» на сайте careers.stackoverflow.com . Можете ли вы дать ссылки на некоторые примеры? Не видя конкретных примеров, я бы посоветовал держаться подальше от рабочих мест, где «хорошее знание программирования» является квалификацией. Должностные инструкции должны быть гораздо более конкретными, чем это. Само собой разумеется, что работа для писателя или фотографа потребует «хороших навыков письма» или «хороших знаний фотографии», верно? То же самое и здесь.
Калеб

Ответы:


7

Знание программирования - это понимание того, как использовать язык программирования, его синтаксис, ключевые слова, использование кода (и понимание ООП, если это объектно-ориентированный язык). Эти знания можно получить, читая учебники и изучая язык и понятия.

Логика программирования - это способность решать проблемы и мыслить абстрактно при использовании языка программирования. Это отличается от знаний в области программирования, потому что логика программирования приобретается с опытом и практикой.

Некоторые программисты могут хорошо знать язык программирования, но не имеют большого опыта в решении проблем с его использованием. И в равной степени, некоторые программисты могут обладать хорошими навыками логического мышления, но имеют ограниченные знания языка программирования. Можно приобрести навыки как в программировании, так и в логике программирования, но последнее приходит с опытом.


2
Ссылки необходимы. Как написано, эти определения, кажется, просто ваше мнение / понимание их. Ссылаясь на источник этих определений и / или примеров использования, который согласуется с вашими определениями, вы получите гораздо лучший ответ.
Калеб

+1 за «Это отличается от знаний в области программирования, потому что логика программирования приобретается с опытом и практикой».
Г-н Махбубур Рахман

4

Логика программирования определяется как применение математических навыков / навыков решения проблем во время специфической задачи программирования. Знание программирования - это применение определенного языка программирования, позволяющего программисту применять логику программирования. И то, и другое важно в процессе решения проблемы прогамминга.

Акцент должен быть сделан на навыки решения проблем - логика - умение решать сложные проблемы. Как только вы отработаете этот навык (потребуется время, чтобы начать мыслить «из коробки»), научите себя языку программирования, чтобы применять логику.


... определяется как ... где и кем? Приведите ссылки на эти определения.
Калеб

3

Они звучат очень по-разному для меня, и мне было трудно сказать, какой из них важнее.

Вы можете быть замечательным разработчиком программного обеспечения, но самим очень плохим программистом. Некоторые люди прекрасно умеют отлаживать код, находить пути к нему, исправлять его и немного улучшать его. Их часто сравнивают с уборщиками, но это плохая услуга: они могут иметь истинные знания и ноу-хау, чтобы привести вещи в лучшее состояние.

Но они все еще могут быть ужасно плохи в написании нового кода и в разработке и реализации алгоритмов. У них может быть понимание того, почему вещи обычно так или иначе лучше, и они могут даже понять после факта преимущества одного дизайна перед другим. Но им самим трудно придумать что-то одно. Им не хватает глубокого понимания этого логического и решающего мышления мышления.


Они оба важны для меня. Вам нужны не только хакеры, которые могут придумать удивительные решения, но создавать неуправляемый код для следующего поколения глазных яблок, которые будут смотреть на вашу кодовую базу. Это может быть хорошо для прототипирования и краткосрочных проектов, но в более широком масштабе, который может летать только так долго.

Так что первая группа тоже важна. Но они не смогут разработать отличное программное обеспечение для второй группы. Это довольно симбиотично (и лучше, когда качества действительно принадлежат одному и тому же разработчику). Я предполагаю, что если вы видите это как проблему с курицей и яйцом, я должен был бы признать, что логический вид имеет значение немного больше, по историческим причинам, поскольку они должны были существовать первыми, чтобы идти вперед. Но значит ли это, что они важнее в магазине программного обеспечения? Я так не думаю. Вы можете создавать отличное и успешное программное обеспечение, соединяя вещи вместе и не изобретая много.


3

Знания о программировании - приобретаются через чтение и изучение , а логика программирования - это то, что приходит из опыта для решения различных ситуаций и поиска решений для них.


1
-1, ваши определения просто не соответствуют действительности. Вы можете изучать знания на собственном опыте и изучать логику из книги.
CorsiKa

Согласитесь, вы можете учиться на собственном опыте, но методологию и технику программирования можно извлечь из хороших книг. Тем не менее, логика программирования более тесно связана с опытом.
Юсубов

2

Там огромная разница. Логика программирования означает, что нужно уметь решать алгоритмические задачи, уметь создавать общий эффективный код. Они должны уметь эффективно решать проблемы. Знание программирования - это знание общих концепций программирования, языков / языков и технологий.


Я не думаю, что should be able to create generic, efficient codeприходит Logic. Логика никогда не зависит от кода, но код зависит от логики.
Джунаид

0

Знание программирования означает знание концепций конкретного языка программирования, который предлагает функции, которые обычно могут решить проблему.

Логика программирования означает применение знаний программирования для формирования логики программирования, которая бы работала для решения проблемы.

Итак, один касается концепций, а другой - логики.


-1

Знание программирования - это знание использования молотка и долота

Программирование Logic создает кресло из деревянного бревна .. !! (используя молоток и зубило)

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.