Полное введение в язык C, Как один язык изменил мир, Почему C? Для чего бы я когда-либо использовал C?…

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

Язык C Полное введение

До C действительно не было хорошего способа сделать что-либо, вы обычно просто писали сборку, которая работала бы непосредственно на используемом вами чипсете. Это означало, что если вы хотите перенести программу на машину с другим набором микросхем, вам придется переписать ее (и мы жалуемся на необходимость изменить пару строк css для каждого браузера?). Очевидно, это было не слишком здорово, но в дополнение к этой письменной сборке это просто… ну, утомительно. До C разрабатывался язык под названием B, поэтому C начинался как итерация B и использовался для написания версии операционной системы UNIX. C был разработан Деннисом Ритчи в период с 1969 по 1973 год в Bell Labs (да, AT) с одной единственной целью: поднять вас на один уровень выше базовой сборки, чтобы абстрагировать конкретную сборку чипсета от вас, чтобы вы могли запустить программу на множестве разных чипсетов с очень небольшими затратами труда. Это вызвало революцию в том, как люди думали о вычислениях и программировании в целом. Это оказало такое огромное влияние на мир, что мы до сих пор используем вещи, написанные на C, например, большинство операционных систем, игр, браузеров, баз данных, веб-сервисов, немалое количество API и многое другое написано на C.

C имеет одну основную причину для использования:

Скорость

C — один из самых быстрых языков, учитывая программу, написанную, скажем, на C# или Java, и та же самая программа, написанная на C, C обычно превосходит программу Java/C# в несколько раз, а иногда и в сотни раз больше. . Очевидно, что есть места, где эта скорость не нужна, бизнес-приложение для бухгалтерии не критично к производительности, однако целостность данных чрезвычайно важна, и поэтому разработчики часто предпочитают использовать язык, такой как C #, который довольно хорошо обрабатывает данные для вам, когда дело доходит до бизнес-приложения. C также не совсем идеален для веб-сайтов, это не значит, что вы не можете это сделать, это просто… ну, вы знаете что, попробуйте, и вы поймете, что я имею в виду.

ну... если честно? в профессиональной карьере вы, возможно, никогда не напишете ни строчки из c. Это опять-таки связано с характером бизнеса: корпорацию на самом деле не волнует, работает ли приложение страховых требований их компаний немного медленнее, пока данные сохраняются и оно выполняет свою работу. Это не означает, что вы никогда не будете его использовать, одна вещь, для которой C действительно хорош, — это написание небольших инструментов или библиотек. Например, мне может понадобиться вещь, которая упорядочивает мои файлы определенным образом, вместо того, чтобы просматривать каждый каталог файлов и делать это самостоятельно, C — отличный язык для написания инструмента, который делает это для меня. Для других вещей это может быть полезно? Подумайте о чем-то, где скорость имеет значение. Если вы когда-нибудь захотите написать игру, напишите ее на C. Я знаю, что в настоящее время распространено мнение, что писать на JavaScript или HTML5, или Java, или Unity, НЕ НАДО, я не буду уходить от этой касательной но… может быть, я добавлю сюда раздел о том, почему вы должны писать игры на C. Веб-служба очень важна для производительности, C будет хорош для этого, я имею в виду, что я мог бы продолжать и продолжать, но, честно говоря, там просто много вещи, и у меня нет времени, чтобы покрыть все это.

Я слишком часто слышу это, какой-то парень, который пишет html и css, только сказал человеку, что C - сложный язык, потому что... глоток... вы должны управлять своей собственной памятью -GASP-. Хорошо, позвольте мне разбить это для всех. Всего в C менее 64 ключевых слов, и только из-за стандарта C99, до этого в нем было только 32 ключевых слова, и вы все еще можете писать код C до C99. сравните это с чем-то вроде C#, который имеет 85 ключевых слов только для языка, это не включает тот факт, что вам нужно научиться использовать Visual Studio, использовать каждый фреймворк для определенных вещей, изучить фреймворк .NET (который является МАССИВНЫМ), и т. д. Это не значит, что C не имеет фреймворков, но большинство из них не нужны для полезных вещей, за исключением, может быть, Win32 для Windows, и вы можете ввести C в текстовый редактор и запустить его через компилятор без всей IDE. ваша голова (да, C# может это сделать, но вы никогда не станете это делать, поэтому спорить с этим было бы бессмысленно). Дело в том, что, не считая указателей, C — один из самых простых языков, на которых я когда-либо писал, и если вы будете использовать хотя бы одно ключевое слово в день, вы выучите почти весь C всего за 2 месяца (это будет намного быстрее, чем , я обещаю.) Итак, расслабьтесь, отдохните и взбодритесь, друзья мои, потому что к концу первых нескольких уроков вы увидите, насколько на самом деле прост C!

Мы еще поговорим об этом, но C — функциональный язык, а это значит, что он вообще не использует объектную ориентацию, что значительно сокращает объем обучения, которое требуется для его изучения. Другое дело, что большинство языков написаны на… вы можете догадаться…? С! Следовательно, почти весь синтаксис может быть напрямую связан с C, поэтому способ написания оператора if в C идентичен C++/Java/C#/JavaScript/и т. д. У C есть одно действительно уникальное свойство, которое будет для вас чрезвычайно ценным, и вы, вероятно, еще даже не осознаете этого, и это возможность видеть, что делает ваш код. Более опытные программисты могут подумать про себя, что другие языки позволяют увидеть, что происходит, и вы правы… в какой-то степени. Однако в C вы буквально можете увидеть точную сборку, которая выполняется, данные, хранящиеся в каждом регистре памяти, как ваша память выделяется для каждого фрагмента данных, как ОС выполняет определенные задачи, и этот список можно продолжать и продолжать. и то, что вы можете увидеть в C, что почти ни один другой язык не может предложить. Для меня это самая большая ценность в изучении C, если вы глубоко понимаете, что происходит на вашем реальном процессоре, а не только то, что, по вашему мнению, МОЖЕТ делать байт-код Java, вы на световые годы впереди большинства программистов и это факт. Я искренне надеюсь, что смогу показать вам всю мощь этого удивительного языка, и я надеюсь, что вы тоже будете рады писать код на C самостоятельно.

Первоначально опубликовано на сайте rbatec.blogspot.com 27 февраля 2019 г.