Чи однакові семантика та синтаксис?


75

Яка різниця у значенні між „семантикою“ та „синтаксисом“? Хто вони?

Крім того, яка різниця між такими речами, як "семантичний веб-сайт проти звичайного веб-сайту", "семантичні соціальні мережі проти звичайних соціальних мереж" тощо.


4
"ЧИ СЕМАНТИКА І СИнтаксис - це одне і те ж?" Два іменники. Форма дієслова множини. Займенники у множині. Паралельна структура.
S.Lott,

4
Це був синтаксис. Семантика не змінилася, правда?
S.Lott,

я все ще не розумію, поясни?
Джон

5
@ Джон: Я просив вас змінити синтаксис вашого запитання - правопис, вживання слів тощо. Значення вашого запитання - семантика - не змінилося. Розуміння Вашого значення у всіх залишилось незмінним. Написання слів було єдиною зміною.
S.Lott,

Відповіді:


124

Синтаксис - це граматика. Він описує спосіб побудови правильного речення. Наприклад, ця вода трикутна є синтаксично правильною.

Семантика стосується значення. ця вода трикутна нічого не означає, хоча граматика в порядку.

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


1
Дякую! всі інші теж давали хороші відповіді, але ваші для мене мали найбільший сенс
Джон,

3
А особливо в HTML, "семантична павутина" - це ідея того, що ваш HTML-код повинен мати значення. Не використовуйте таблицю, якщо ви насправді не показуєте табличні дані. Використовуйте теги, які найкраще пояснюють значення вашого документа, а не ті, які змушують його виглядати так, як ви хочете. Для цього призначений CSS.
jalf

Semantic - це помилки в логіці реалізації. Правда?
Talespin_Kit

19

Синтаксис - це граматика мови - правила, за якими утворюються речення чи вирази.

Семантика - це значення, яке ви намагаєтесь висловити своїм кодом.


1
Хіба це не "семантика - це значення, яке ви виражаєте своїм кодом"? Можливо, програміст намагається щось висловити, але не розуміє правильно ... те, що він / вона намагається, по суті в його голові.
einpoklum

9

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

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

Дві програми, написані для виконання одного і того ж завдання різними мовами, використовуватимуть різні синтаксиси, але вони будуть однаково семантично.


Вибачте за нікчемність, але "семантично вони можуть бути однаковими". чи "було б те саме"?
doubleOrt

> "Дві програми, написані для виконання одного і того ж завдання різними мовами, використовуватимуть різні синтаксиси, але вони будуть однаково семантично." . Алгоритми можуть бути різними, чи не так? Навіть якщо алгоритм однаковий, програма, написана на "c ++", матиме іншу кількість та порядок вказівок, ніж програма, написана на "c". Тож семантика різниться. Це правильно ?
Talespin_Kit

6

Якщо ви говорите про Інтернет (а не про мови програмування):

Синтаксис мови - це те, що браузер (або програма обробки) може легально розпізнавати, обробляти та надавати вам. Наприклад, ваш браузер може відображати HTML, тоді як ваш API може аналізувати дерева XML.

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

Соціальні мережі - це та сама історія. Ви вкладаєте знання в посилання


дякую, мені теж сподобалась ваша відповідь, хотілося б вибрати ДВА прийняті відповіді
Джон

3

«Мурашка з’їла тітку». має правильний синтаксис, але семантично не матиме сенсу. Синтаксис - це набір правил, які можуть поєднуватися для отримання нескінченної кількості граматично дійсних речень, але мало, дуже мало з яких має семантику.


2

Синтаксис - це порядок слів речення. В англійській мові це буде форма суб'єкт-дієслово-об'єкт.

Семантичний - це значення, яке стоїть за словами. Наприклад: вона з’їла пилку. Слово пила не відповідає змісту речення. але це граматично правильно. тому його синтаксис правильний. =)


1

Зокрема, семантична соціальна мережа означає вбудовування фактичних соціальних відносин у розмітку сторінки. Стандартним форматом для цього, як визначено мікроформатами, є XFN , XHTML Friends Network. Що стосується семантичної мережі в цілому, мікроформати повинні бути керівництвом для визначення вбудованого семантичного вмісту.


0

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


0

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

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

Скажіть виноски, вбудовані та блок-цитати, заголовки та інше, щоб отримати чіткий і чіткий список. Mediawiki, wikiitext як приклад зазнає невдачі в цій перспективі, визначаючи синтаксис для елементів семантичного значення, залишених невизначеними, не узгоджено жодного кінцевого списку. "значення за формою" як додаткове значення того, що заголовок як приклад знову несе як текстовий зміст. Приклад "Це заголовок" стає лише семантикою, інтегрованою припущенням у межах узгодженої семантики, і може бути більше одного набору примовлень "Це важливо і буде детально описано"

Розмітка Asciidoc та pandoc досить сильно відрізняється за своєю семантикою, незалежно від того, як кожен переводить це шляхом узгодження синтаксису з вихідними форматами.

Програмування, вихідні формати як html, pdf, epub можуть мати послідовно значення за формою, за допомогою семантики, синтаксис зник як тимчасовий інструмент перекладу, і як ще один наслідок, таким чином, вихідні дані можуть бути скановані в робототехнічному плані на предмет значення, шампи алгоритмів "grep": Google. Шукаємо значення "що" у "Що шукаємо", виходячи з того, чи враховується заголовок, виноска чи посилання.

Семантика, і може бути більше одного шару, навіть текстове повідомлення несе в собі (Хомського) семантику, таким чином, можна перекласти як зміст за формою, створюючи функціональні відмінності до всього іншого у вихідному ланцюгу, включаючи людину, читача.

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

м.

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