Урок №2. Введение в языки программирования C и С++

  Юрий  | 

  Обновл. 4 Май 2020  | 

 87519

 ǀ   13 

Перед C++ был C. C (произносится как «Си») был разработан в 1972 году Деннисом Ритчи в Bell Telephone Laboratories как системный язык программирования, т.е. язык для написания операционных систем. Основным заданием Ритчи было создание легко компилируемого минималистического языка, который предоставлял бы эффективный доступ к памяти, относительно быстро выполнялся, и на котором можно было бы писать эффективный код. Таким образом, создавая высокоуровневый язык, был разработан Си, который во многом относился к языкам низкого уровня, оставаясь при этом независимым от платформ, под которые бы писался код.

Cи в конечном итоге стал настолько эффективным и гибким, что в 1973 году Ритчи и Кен Томпсон переписали больше половины операционной системы UNIX, используя этот язык. Многие предыдущие операционные системы были написаны на языке ассемблера. В отличие от Ассемблера, программы на котором пишутся под конкретные процессоры, отличная портативность языка Cи позволила перекомпилировать UNIX и на другие типы компьютеров, ускоряя его популяризацию. Язык Cи и операционная система UNIX тесно связаны между собой, и популярность первого отчасти связана с успехом второго.

В 1978 году Брайан Керниган и Деннис Ритчи опубликовали книгу под названием «Язык программирования Cи». Эта книга, более известна как «K&R» (первые буквы фамилий авторов), стала стандартом и своеобразной инструкцией к Си. Когда требовалась максимальная портативность, то программисты придерживались рекомендаций в K&R, поскольку большинство компиляторов в то время были реализованы в соответствие стандартам, описанным в этой же книге.

В 1983 году Американский национальный институт стандартов (или ещё «ANSI» от англ. «American National Standards Institute») сформировал комитет для установления официального стандарта для языка C. В 1989 году они закончили и выпустили стандарт C89, более широко известен как ANSI C. В 1990 Международная организация по стандартизации (или ещё «ISO» от англ. «International Organization for Standardization») приняла ANSI C (с небольшими изменениями). Эта версия C стала известна как C90. В конечном счёте, компиляторы адаптировались под требования ANSI C/C90 и программы, в которых требовалась максимальная портативность, писались в соответствие с этими стандартами.

В 1999 году комитет ANSI выпустил новую версию языка Cи, которая получила название C99. Она приняла много особенностей, которые уже были реализованные в компиляторах (в виде разных расширений) или в C++.

C++

C++ (произносится как «Си плюс плюс») был разработан Бьёрном Страуструпом в Bell Labs в качестве дополнения к Cи в 1979 г. Он добавил множество новых фич в язык Си. Его популярность была вызвана объектно-ориентированностью языка. Об объектно-ориентированном программировании (ООП) и его отличиях от традиционных методов программирования мы поговорим несколько позже.

C++ был ратифицированным (одобренным) комитетом ISO в 1998 году и потом снова в 2003 году (под названием C++03). Потом были ещё три обновления (C++11, C++14 и C++17, ратифицированные в 2011, 2014 и 2017 годах, соответственно), которые добавили больше функциональных возможностей.

Философия С и С++


Смысл философии языков С и C++ можно определить выражением «доверять программисту». Например, компилятор не будет вам мешать сделать что-то новое, что имеет смысл, но также не будет мешать вам сделать что-то такое, что может привести к сбою. Это одна из главных причин, почему так важно знать то, что вы не должны делать в C/C++, как и то, что вы должны делать.

Примечание: Вам не нужны знания языка Си, чтобы проходить данные уроки. В процессе изучения этих уроков вы получите необходимую базу/фундамент знаний.

Оценить статью:

Звёзд: 1Звёзд: 2Звёзд: 3Звёзд: 4Звёзд: 5 (1 038 оценок, среднее: 4,92 из 5)
Загрузка...

Комментариев: 13

  1. Аватар Алексей:

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

  2. Аватар Сергей:

    "Например, компилятор не будет вам мешать сделать что-то новое, что имеет смысл, но также не будет мешать вам сделать что-то такое, что может привести к сбою. "

    вот почему военные US используют язык ADA

  3. Аватар Victor:

    Спасибо за вашу работу Юрий! Все изложено очень доступно и доходчиво, на редкость. После ознакомления нескольких уроков понял, что можно научиться понимать языки программирования ( с вашей помощью ) и работать с ними. Исчезли сомнения в преодолении и появилось желание к обучению. СПАСИБО.

    1. Юрий Юрий:

      Пожалуйста 🙂 Мне очень приятно!

      1. Аватар AleksTs:

        Присоединяюсь к благодарности за проделанную работу! И одна будет просьба/пожелание — продолжать в том же духе!

  4. Аватар mr.oleg-61:

    отличные уроки особенно для меня , как пенсионера . надеюсь, что в последствии чтото конкретно пойму

  5. Аватар lobp:

    Вики говорит, что C++ появился в 1983, а не в 1979. Склонен верить, ибо вряд ли Страуструп создал новый язык уже через год после того, как К&Р написали свой талмуд. Да и Smalltalk был представлен широкой публике только в 1980, после чего собственно и пошел весь этот хайп с ООП.

  6. Аватар Ваше имя (необязательно) XDDDDDDDD:

    Cпасибо большое!

  7. Аватар Александр:

    Объясните пожалуйста термин объектно-ориентированный язык программирования.

    1. Аватар Роман:

      Объектно-ориентированый язык программирования принято называть метод его написания, есть переменная (объект) и его значения.
      Возможно ошибаюсь…

    1. Юрий Юрий:

      Об этом говорится в следующих уроках.

  8. Аватар Blackson:

    Как всегда , всё отлично!

Добавить комментарий для Юрий Отменить ответ

Ваш E-mail не будет опубликован. Обязательные поля помечены *