Програмування знань проти логіки програмування


10

Чи є різниця між двома темами? Я бачив , як компанії , що просять Добре знання програмування деякі Хороша логіка програмування .

Я бачив це в профілях роботи для розробника - наприклад, "хороша логіка програмування", "сильні знання з програмування".

Я вважаю, що знання програмування пов'язані зі знаннями про мову, що розглядається, а логіка програмування - це логіка вирішення проблем за допомогою програмування (загалом).
Будь ласка, виправте мене, якщо я помиляюся. І що важливіше?

Редагувати: Чи підбір компонентів для додатків, проектування інтерфейсів, що підтверджують введення користувачів, підпадають під знання програмування або логіки програмування?
Чи передбачає логіка програмування просто вирішення проблем, чи є ще щось, що воно повинно складатися?


3
ці терміни не мають чітко визначеної та загальнозгодженої семантики. Їх "значення" в значній мірі залежить від контексту. "Я бачив, як компанії запитують" - які компанії? в яких точних термінах вони запитували?
гнат

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

в яких точних термінах вони запитували?
гнат

@gnat, наприклад, для хорошої логіки програмування, міцних знань з програмування.
Shirish11

Я не бачу жодних публікацій, які б включали "знання з програмування" або "логіку програмування" на careers.stackoverflow.com . Чи можете ви надати посилання на деякі приклади? Не бачачи конкретних прикладів, я пропоную триматися далеко від робочих місць, де «хороші знання з програмування» є кваліфікацією. Описи роботи повинні бути набагато конкретнішими за це. Само собою зрозуміло, що робота для письменника чи фотографа вимагатиме «хороших знань з письма» або «хороших знань з фотографії», правда? Те саме тут.
Калеб

Відповіді:


7

Знання програмування - це розуміння того, як використовувати мову програмування, що це за синтаксис, ключові слова, використання коду (і розуміння ООП, якщо це об'єктно-орієнтована мова). Ці знання можна отримати, читаючи підручники та вивчаючи мову та поняття.

Логіка програмування - це здатність вирішувати проблеми та мислити абстрактно при використанні мови програмування. Це відрізняється від знань з програмування, оскільки логіка програмування набувається за допомогою досвіду та практики.

Деякі програмісти, можливо, добре володіють мовою програмування, але не мали великого досвіду у вирішенні проблем з її використанням. І однаково, деякі програмісти можуть мати хороші логічні навички міркування, але володіють обмеженими знаннями мови програмування. Навички як знань з програмування, так і логіки програмування можна отримати, але остання має досвід.


2
Посилання потрібні. Як написано, ці визначення, як видається, є лише вашою думкою / розумінням їх. Посилаючись на джерело цих визначень та / або приклади використання, що відповідає вашим визначенням, це дасть набагато кращу відповідь.
Калеб

+1 для "Це відрізняється від знань з програмування, оскільки логіка програмування набувається з досвідом та практикою".
Md Mahbubur Rahman

4

Логіка програмування визначається як застосування навичок вирішення математичних / задач під час конкретної задачі прогмагу. Знання програмування - це застосування певної мови програмування, щоб програміст міг застосувати логіку програмування. І те й інше важливо в процесі вирішення проблеми, що розпочалася.

Акцент слід робити на навичках розв’язання проблем, хоча - логіка - оздоровлення у вирішенні складних проблем. Після того, як ви відпрацьовуєте цю майстерність (знадобиться певний час, щоб почати думати з коробки), навчіть себе програмуванням мови застосовувати логіку.


... визначається як ... де і ким? Цитуйте свої посилання на ці визначення.
Калеб

3

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

Ви можете бути дивовижним програмним забезпеченням, але дуже поганим програмістом. Деякі люди дивуються налагодженням коду, знаходять свій шлях через нього, виправляють його та трохи вдосконалюють його. Їх часто порівнюють з двірниками, але це несправедливо: вони можуть володіти справжніми знаннями та ноу-хау, щоб привести речі до кращого стану.

Але вони все ще можуть бути дуже поганими при написанні нового коду та розробці та реалізації алгоритмів. Вони можуть мати розуміння того, чому речі, як правило, краще так чи інакше, і навіть можуть зрозуміти після факту переваги одного дизайну над іншим. Але їм важко придумати один одного. Їм не вистачає глибокого розуміння цього логічного мислення та вирішення проблем.


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

Тож перша група також важлива. Але вони не змогли б розробити чудове програмне забезпечення для другої групи. Це досить симбіотично (і найкраще, коли якості справді є в одного розробника). Я б здогадався, якщо ви бачите це як проблему з куркою та яйцями, я повинен визнати, що логічний вид має значення трохи більше, з історичних причин, оскільки вони повинні були існувати першими, щоб пройти шлях. Але чи означає це, що вони важливіші в магазині програмного забезпечення? Я не думаю, що так. Ви можете виробляти чудове і успішне програмне забезпечення, будуючи сантехнічні речі разом і не придумуючи багато.


3

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


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

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

2

Є величезна різниця. Логіка програмування означає, що треба вміти вирішувати алгоритмічні проблеми, вміти створювати загальний, ефективний код. Вони повинні добре вирішувати проблеми. Знання програмування - це знання про загальні концепції програмування, мови / мову та технології


Я не думаю, що should be able to create generic, efficient codeвходить Logic. Логіка ніколи не залежить від коду, але код залежить від логіки.
Джунайд

0

Знання програмування означають знання про концепції конкретної мови програмування, що пропонує функції, які можуть загально вирішити проблему.

Логіка програмування означає застосовувати знання програмування для обрамлення логіки програмування, яка б працювала на вирішення проблеми.

Отже, один стосується понять, а інший - стосується логіки.


-1

Програмування Знання - це знання використання молотка n Долото

Логіка програмування створює крісло з дерев'яного колоди .. !! (використовуючи Hammer n Disel)

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.