Книги — вещь для профессионалов, и книги для программистов — не исключение. В данной статье мы отобрали 9 книг для изучения языка C.
C — процедурный высокоуровневый язык, который, пожалуй, больше всего повлиял на то, каким мы сегодня видим программирование. Он был создан для того, чтобы обеспечить программисту низкоуровневый доступ к памяти компьютера, чтобы писать эффективный код, который требует минимальной поддержки во время работы. Множество языков программирования обязано C своим существованием. Некоторые называют C латынью в мире программирования.
Язык лёгок на чтение. Он позволяет программисту структурировать код и делать его более читабельным. К тому же, язык очень гибкий, практичный и компактный, с легко понимаемым синтаксисом. Код, написанный на C, работает быстро, обеспечивает низкоуровневый доступ к памяти. Директивы компилятора позволяют программе, скомпилированной на одной архитектуре, благополучно работать и на других.
Предлагаем вашему вниманию 9 книг для изучения языка C, которые могут вас зацепить, если, конечно, английский для вас — не проблема. Надеемся, этот сборник книг станет для вас удачным началом изучения C.
Книга, написанная Майком Банаханом (Mike Banahan), Декланом Брэйди (Declan Brady) и Марком Дораном (Mark Doran).
«The C Book» открывает наш сборник книг. Она написана для программистов, которые уже имеют опыт в использовании других современных процедурных языков программирования. Книга фокусируется на особенных для C вещах. А именно, на том, ради чего C был изначально придуман.
Некоторые из глав:
Авторы дают право читателям свободно распространять книгу в случае, если авторы книги об этом знают. Один из авторов Майк Банахан подтвердил, что книга находится под лицензией Creative Commons.
Написано Стивом Уалайн (Steve Oualline).
C Elements of Style — одна из самых полезных книг, она покрывает принципы хорошего стиля в написании кода, учит C и C++ программистов тому, как писать читабельный код, который будет с лёгкостью понят другими программистами и будет легко поддерживаемым. Не имеет значения, студенты вы или профессионал, вы, определённо, сможете вынести что-то для себя из этой книги, а именно — огромное число советов по построению элегантного, надёжного кода.
Автор пытается продемонстрировать использование хорошего стиля программирования в своём коде. Так как компьютер читает строки кода, а человек больше фокусируется на комментариях, хорошо написанный код содержит в себе и то, и другое.
Главной целью книги является научить читателя писать хорошо структурированный код, который не только эффективно использует ресурсы компьютера, но и содержит в себе комментарии. Такой код будет легко исправлять, поддерживать и совершенствовать.
Книга содержит в себе целые руководства по таким вещам, как написание комментариев в шапке кода, именование переменных, форматирование выражений и так далее.
Как и предыдущий экземпляр, книга опубликована по лицензии Creative Commons.
Написано Даниелем Холденом (Daniel Holden).
Изучите язык C и одновременно научитесь создавать свой собственный язык программирования Lisp в менее, чем 1000 строках кода.
Эта книга подойдёт тем, кто хочет освоить язык C и тем, кто хоть раз задавался вопросом «как создать язык программирования». Стоит отметить, что книга не для новичков, так как вам стоит иметь некоторый опыт в программировании, чтобы читать и понимать содержание.
Build Your Own Lisp находится под лицензией Creative Commons Attribution-NonCommercial-ShareAlike 3. 0.
Мягкий переплёт можно заказать на Amazon.
Книга написана Трэвисом Ротвеллом (Trevis Rothwell) и Джэймсом Янгманом (James Yongman)
The GNU C Reference Manual — это справочное руководство по языку C и направлено на стандарт ANSI C 1989, ISO C 1999 и GNU расширение стандартного C. Нужно отметить, что книга написана не для новичков, а скорее для тех, у кого есть опыт.
Книга включает следующие главы:
Книга находится под бесплатной лицензией GNU Free Documentation, версии 1.3.
Книга написана Марком Бюргсом (Mark Burgess) и Роном Хэйл-Эвансом (Ron Hale-Evans).
The GNU C Programming Tutorial представляет читателю базовые идеи в логическом порядке. Книга затрагивает все важные элементы языка C с упором на компилятор GNU/Linux и связанное с ним программное обеспечение.
Главы книги охватывают такие вещи, как функции, переменные, параметры, указатели, логические операторы, циклы, массивы, строки, ввод и вывод данных и многое другое.
Книга находится под бесплатной лицензией GNU Free Documentation License, версии 1.1.
Одна из лучших книг, написана Ником Парланте (Nick Parlante).
Стэнфордская статья по CS, которая в то же время являтеся источником, который описывает все ключевые особенности и техники использования языка C. Следует отметить, что всё описано очень кратко, так как книга направлена на программиста, который имеет опыт в использовании другого языка.
Содержание:
По словам автора, книга находится под лицензией open-source.
Книга написана Брайаном «Бидж» Холл (Brian «Breej» Hall).
Автор пытается привести читателя из состояния полной растерянности до состояния абсолютного понимания материала, и делает он это с использованием языка C.
Содержание:
Данная книга находится под лицензией Creative Commons Attribution-Noncommercial- No Derivative Works 3. 0 License.
Книга написана Дженсом Густедтом (Jens Gustedt).
Книга призвана смотивировать читателя идти вверх и узнавать что-то новое. Она разделена на 5 отдельных частей:
Книга находится под лицензией Creative Commons Attribution-Noncommercial- No Derivative Works 3.0 License.
Книга написана Брайаном Гафом (Brian Gough).
Книга сама по себе, является этаким первым шагом в GNU C и C++ компиляторы — gcc и g++, которые являются частью GNU Compiler Collection (GCC).
Книга объясняет, как используются компиляторы. Основываясь на многолетних исследованиях, автор описывает читателю все самые важные аспекты GCC.
Книга находится под бесплатной лицензией GNU Free Documentation License.
Предлагаем вам ознакомиться ещё с рядом книг, которые можно скачать, но которые, к сожалению, находятся не под open-source лицензией, либо же информация о лицензии которых не ясна.
И под конец, моя рекомендация: приобретите каноничную книгу по языку C: The C Programming Language. Хоть она и не для начинающих, но очень часто упоминается как классическая книга для изучения C.
Подборка книг по C++ для любого уровня
Идеальная подборка книг для разработчиков
Решил учить азы языка C. Кто-нибудь может посоветовать хорошую книгу? Друг дал почитать «M. Уэйт, С. Прата, Д. Мартин — Язык Си руководство для начинающих», но эта книга старше меня.
5
Подкину несколько наименований полезных книг, правда с точки зрения преподавателя 😉
Думаю, на данный момент лучшая книга по С для начинающих — Стивен Прата «Язык программирования С». K&R, конечно, классика, но написан суховато и слишком сжато, для новичков (особенно не профессионалов в IT) будет трудноват. Потом можно почитать замечательную книжку Харбисона и Стила «Язык С с примерами». Это прекрасный учебник и справочник по С99.
1
Керниган, Ритчи «Язык программирования Си». Правда первое издание (и первый перевод) вышли ещё раньше вышеуказанного «Руководства для начинающих», но — классика.
2
Керниган, Ритчи «Язык программирования Си» — толковая книга и от авторов самого языка. В русском переводе есть и более поздние издания. Всё объясняется на примерах и в конце каждой главые есть упражнения. Можно и в .djvu, и в .chm скачать. Также в придачку можно скачать: Керниган Б., Ритчи Д., Фьэр А. «Язык программирования Си. Задачи по языку Си». Там есть примеры с объяснениями.
Ворожцов А. В., Винокуров Н. А. Алгоритмы: Построение, анализ и реализация на языке программирования Си
Первую часть книги можно пропустить если Вас интересует только синтаксис, но вообще не стоит, очень хорошая база дается.
В книжном варианте: Практика и теория программирования. В 2 книгах. Книга 2
Я учил C (обучение еще, конечно, не окончено =)) по книгам Харви Дейтел, Пол Дейтел «Как программировать на C» и Герберт Шилдт «Полный справочник по C++» (там C идет как подраздел). Все описано в них простым языком и, думаю, для начала в самый раз.
1
Отложив его в благоговении, я представил, что посещаю форум фанатиков Боба Онга где-то в пустой вселенной Goodreads, стою перед ними, нащупывая слова, чтобы нарушить их молчание.
**********************************************
Я: Маганданг araw, фанатики Боба Онга! Простите меня за то, что я говорю по-английски, хотя сегодня мы будем обсуждать Si Боба Онга. Предположительно, средство коммуникации должно быть филиппинским. Однако у нас есть иностранные друзья на Goodreads, которые могут чувствовать себя не в своей тарелке.
(Откашлявшись)
Прежде чем я поделюсь с вами своими мыслями о Си, написанными Бобом Онгом. Позвольте мне коснуться небольшой информации о том, кто такой Боб Онг, чтобы наши иностранные друзья имели представление о том, о каком добром старике мы будем говорить.
Если вы посмотрите его имя в Википедии, Боб Онг — это псевдоним современного филиппинского автора, известного тем, что использует технику разговорного письма для создания юмористических и задумчивых изображений филиппинской жизни. Настоящее имя и личность автора неизвестны.
Несмотря на то, что его книги были бестселлерами, он никогда не был известен широкой публике. Вот почему было снято несколько документальных фильмов, чтобы выяснить, кто этот прометеев.
Есть некоторые известные филиппинские писатели или телеведущие, которых ошибочно принимают за Боба Онга, но все они отличаются от стиля письма Боба Онга.
Теперь приступим к делу. Моим самым первым впечатлением от книг Боба Онга было то, что большинство его книг были похожи на рецензии студентов для университетского городка.
(Перебил бы один реакционный читатель.)
Фанатик 1: При всем уважении, … Джоуи? Если можно, я обращусь к вам по имени…
Я: Да, можно.
Фанатик 1: Джоуи, э-э… Похоже, ты кабинетный критик. Вы субъективны. Я полагаю, что вы были еще студентом в то время. Признай это. Вы были зависимы от его книг, не так ли?
Я: Да, я субъективен, поэтому считаю, что все отзывы на Goodreads необъективны, не так ли? И я не увлекался его книгами. Мне довелось прочитать его книги, потому что они были раскручены, пока мой друг не предложил мне прочитать одну из его книг. Я был таким невежественным и плохим читателем в то время. У меня не было доступа ко многим бестселлерам, особенно филиппинским. Все, что я всегда читал, это рассказы в школьных учебниках. Но когда я начал читать другие его книги в университете, тогда я понял, что они мне надоели. Я бы хотел, чтобы в то время уже были Goodreads. Я мог бы написать свои мысли о них. Кроме того, я мог бы оказаться лицемером, если бы настаивал на том, что Боб Онг был моим любимым филиппинским писателем.
Фанатик 1: Если да, то кто был вашим любимым писателем?
Я: Мне жаль, что мы, кажется, уходим от темы. Учитывая, что Боб Онг может писать любой жанр, как то, что другие заметили, как то, что есть у вас (жестикулируя в сторону Фанатика 1), например, разговоры, эссе, ужасы, рассказы, посвященные социальным проблемам на Филиппинах, но для себя я бы сказал, что его произведения не стоят на одном уровне с другими книгами, получившими признание критиков и отмеченными наградами. Судя по всему, его книги предназначены для денег.
Фанатик 1: Дешёвка. Я считаю, что Боб Онг пишет такие книги, потому что хочет информировать, просвещать и развлекать. И, конечно же, в капиталистической стране книги имеют какое-то отношение к деньгам. Кроме того, нельзя отрицать тот факт, что благодаря Бобу Онгу молодые читатели мотивированы читать и поддерживать нашу филиппинскую литературу. На самом деле, насколько мне известно, благодаря Бобу Онгу многие писатели теперь следуют его стилю. Короче говоря, он положил начало всем современным писателям, таким как Бебанг Си, Хенаро Годжо Круз, Норингай и многие другие. Вы так не думаете?
(Спровоцировано его словом «дешевый выстрел»)
Я: Точно Без сомнения, другие его книги никогда не были номинированы на премию Национального совета книг, кроме этой SI. И это как-то связано с тем, о чем я хочу вам рассказать после прочтения его Си. Кроме того, если вы не возражаете, позвольте мне сначала закончить свой обзор, а не перебивать меня.
(вздохнув)
Фанатик 1: (раздраженно) Принято к сведению… но у NBBA должны быть требования независимо от того, допущена книга или нет.
Я: Определенно. Его требования должны быть стандартизированы и предназначены только для книг, получивших признание критиков.
В любом случае, спасибо, что прислушались к моей просьбе.
Прочитав Си, я понял, что Боб Онг может написать что-то достойное наград. В Си он написал прекрасную филиппинскую прозу. Он писал лирические, поэтические, донкихотские фразы. Я был впечатлен. Я снова влюбился в того, кого толкнул вниз в самой темной части своего подсознания. На самом деле, мне нравилось повторять отрывки, как если бы я читал молитву йоги. Тогда я спрашивал себя, не Боб ли он рассказывал мне историю. Похоже, он не автор этой книги. Мой друг дал мне другую книгу? Да, это был он. Потому что каким-то образом я почувствовал его фирменный знак, то, как он собрал всю реалистичную и косвенную информацию и опыт других людей, чтобы сформировать одну концептуальную историю, хотя некоторые части я нашел «банальными», как и в других его книгах. Самое главное, я стал жертвой его творчества. Это его стиль. Он хочет сделать поворот всякий раз, когда читатель достигает кульминации. Думаю, вы понимаете, о чем я говорю, если читали.
(Другой фанатик спросил бы меня, но спокойный, в отличие от другого.)
Фанатик 2: Так почему ты дал ему 4 звезды вместо пяти?
Я: Бо Онг — изобретательный писатель-экспериментатор. Он всегда удивляет нас, когда у него появляется новая книга. В этой книге его намерение, очевидно, состоит в том, чтобы удивить нас, но для меня это удивление неестественно. Заметно, что он применил такую тактику, чтобы оказать на меня большое влияние. Например, я не знал, что надо было начинать читать с конца. Такая умная идея похожа на твоего друга, который подшучивает над тобой, принимая это за шутку, но тебе это совсем не кажется забавным. Вы можете хихикнуть: «Ан банально ха!» Точно так же, очевидно, есть некоторые части, на которые, кажется, произвели глубокое впечатление телевизионные новости, газетные статьи, рассказы парикмахеров и так далее — стиль, которым он был известен.
Фанатик 1: Ты слишком высок. Поскольку вы выглядите как кабинетный критик, что должен был сделать Боб Онг?
(Я до сих пор чувствую его неприязнь.)
Я: Не знаю. Это просто мой субъективный анализ. Но я надеюсь, что когда Боб Онг напишет еще один такой роман, я подразумеваю что-то более одобренное критиками, чем другие его книги. Он должен сделать это связным, как будто его читатели читают настоящий роман.
Фанатик 1: Что значит «последовательный»?
Я: Я хочу прочитать роман, в котором я буду просто следовать за потоком истории, как если бы я просто смешивался с ними, чего я не видел в его книгах.
Фанатик 3: Поскольку 4 звезды означают, что мне очень понравилась книга на Goodreads, какие части книги вам действительно понравились?
(Это еще один фанатик, который слушает меня во все уши, но склонен корчить рожи, когда я объясняю что-то, с чем он может не согласиться.)
Я: Глубина некоторых пассажей о любви. Концепция рассказа потому, что он отражает типичную супружескую и семейную жизнь наших родителей до их взросления. Это отражает универсальный факт, что родители начали быть родителями из романтической жизни, пока они не построили семью, как они хорошо заботятся о своих детях, несмотря на жизненные трудности. Я вижу такую ситуацию и в своих родителях, и в своих друзьях, и даже в себе, если бы мне суждено было строить свою собственную.
Фанатик 1: Следовательно, вы ожидаете от Боба Онга чего-то большего.
(На этот раз он, похоже, успокаивается.)
Я: Да, теперь я слежу за ним. Итак, я глубоко извиняюсь перед вами.
Фанатик 2 : Что ж, несмотря на ваши язвительные мысли, добро пожаловать в клуб!!!
Фанатики: Добро пожаловать в Клуб Боба Онга!!!
*************************************************
(Вернуться к реальности)
Писатели могли устроить массовую истерию, гы!
Коллекция иллюстрированных редких японских книг библиотеки Freer|Sackler включает более 1000 томов, ранее принадлежавших Чарльзу Лэнгу Фриру. Часто наполненные цветными иллюстрациями, многие из которых выполнены известными художниками, такими как Андо Хиросигэ и Кацусика Хокусай. Эти прекрасные произведения искусства, напечатанные на дереве, были опубликованы в периоды Эдо и Мэйдзи (1600–1912). Другая группа японских редких книг, недавно добавленная в коллекции библиотеки, состоит из 67 томов иллюстрированных книг периода Мэйдзи, собранных Робертом О. Мюллером, который также сформировал превосходную коллекцию японских гравюр того же периода, которую он завещал Артуру М. Галерея Саклера. Обе коллекции библиотечных книг идеально дополняют всемирно известную Коллекцию иллюстрированных японских книг Герхарда Пулверера, которая была приобретена Художественной галереей Freer в 2007 году. Коллекция Пулверера была полностью оцифрована и доступна в Интернете. В отличие от европейских и американских книг на нашем веб-сайте, японские редкие книги сканируются в виде двухстраничных разворотов, чтобы более четко показать структуру книги и плавно отображать изображения, занимающие две страницы.