Перейти к основному содержанию
 

А.В.Столяров. Программирование: введение в профессию

А.В.Столяров. Программирование: введение в профессию

Все любят халяву, и я люблю. Вбиваю в поисковик такие фразы как "free it books" или "бесплатные книги по системному администрированию" и иногда даже что-то нахожу. Обычно это что-то на английском языке и древнее как бивни мамонта. Попадаются и более полезные экземпляры, однако, я не уверен, что они действительно бесплатные...

Вы были в книжном магазине? Видели цены на IT-литературу? Неудивительно что Интернет наполнен нелегальными оцифрованными копиями полезных для IT-шников книг. Если постараться, то достать из-под полы нужную электронную книгу можно, а вот выложить её на свой сайт — нельзя.

book

Недавно мне пришла в голову мысль организовать небольшую электронную библиотеку с книжками по системному администрированию и IT в частности. В моей коллекции будут легальные бесплатные электронные книги, так что придраться будет не к чему. Да, там будет встречаться старьё, но деваться некуда.

Библиотека системного администратора

Я сам люблю бумажные книги и учебники, всё-таки читать с экрана не очень удобно. По-моему мнению за бумажную книгу можно заплатить. Её можно поставить на полку, её можно дать почитать другу, или подарить. Даже продать можно! Или сжечь...

Когда я вижу приходящий спам со словами "Вам подарок!" и ссылка на три бесплатные и абсолютно мне неинтересные электронные книжки, причём бесплатные только мне и никому больше. И эти книги можно только читать, причём только в определённом приложении, без возможности поделиться книгой с другом или детьми. Ребята, алё! На кой я буду платить за электронную библиотеку, если я не смогу передать её детям? Единственная польза от электронной библиотеки может быть только если её можно дать всем. Книгу придумали для того, чтобы передавать знания от одного человека многим, а современные электронные продажники пытаются перекрыть эти каналы распространения информации.

Проект по созданию книги "Программирование: введение в профессию"

Итак к чему это я всё. Набрёл я в интернете на сайт Андрея Викторовича Столярова:

http://www.stolyarov.info/

Андрей Викторович Столяров (род. 25 декабря 1974 года) — кандидат физико-математических наук (2002 г., специальность 05.13.11), доцент (2009 г.), кандидат философских наук (2012 г., специальность 09.00.11), работает на кафедре алгоритмических языков ф-та ВМК МГУ им. М.В.Ломоносова с 2002 г. в должности ассистента, с 2010 г. в должности доцента. Сфера научных интересов — мультипарадигмальное программирование; имеет опыт чтения лекционных курсов "Операционные системы", "Системы программирования", "Архитектура ЭВМ и язык ассемблера", "Архитектура ЭВМ и системное программное обеспечение", автор спецкурсов "Введение в парадигмы программирования", "Практика многостилевого программирования", "Низкоуровневое программирование".

У автора есть несколько книг по программированию, которые он разрешает распространять в электронной форме, на них дам ссылки с описанием ниже. Согласно лицензии "...распространение и передача копий другим лицам производится исключительно бесплатно, то есть при передаче не взимается никакое вознаграждение ни в какой форме, в том числе в форме просмотра рекламы..." я убрал рекламные баннеры из раздела своей электронной библиотеки и этой статьи. Хотя это и не обязательно, поскольку все ссылки будут вести на домен моего персонального файлообменного облака, где в принципе нет рекламы как таковой. Мне кажется, разрешение на публикацию книг в персональных блогах и страничках в соцсетях было бы весьма полезно для краудфандингового проекта Андрея.

Краудфандинг — это коллективное сотрудничество людей (доноров), которые добровольно объединяют свои деньги или другие ресурсы вместе, как правило через Интернет, чтобы поддержать усилия других людей или организаций (реципиентов).

А теперь про краудфандинговый проект Андрея Столярова, поучаствую в нём своим информационным ресурсом. На 27.07.2020 собрано 1305683 рублей. Цель 1900000. Проекта по созданию книги Программирование: введение в профессию, первое издание которой к настоящему моменту написано и издано в составе четырёх томов. Книга изначально задумывалась как некий сборник основных сведений, нужных, чтобы самостоятельно освоить программирование с использованием операционных систем семейства Unix и доступных там инструментов в роли учебных пособий.

http://www.stolyarov.info/books/programming_intro

Причина, по которой мне захотелось написать об этом проекте очень проста. Когда я был студентом, я думал, что меня научат в институте программировать. Я ошибался. Проблема с обучением программированию реально существует:

http://www.stolyarov.info/books/programming_intro/about.html

Электронная версия книги "Программирование: введение в профессию"

book

Программирование: введение в профессию. Том 1: азы программирования

Автор: Андрей Викторович Столяров

Язык: RU

Опубликовано: Март 2016

Описание:

Первый том серии "Программирование: введение в профессию" включает две основные части.

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

Вторая часть посвящена начальным навыкам составления компьютерных программ на примере Free Pascal под ОС Unix. Материал ориентирован на изучение в будущем языка Си, так что, в частности, много внимания уделено работе с адресами и указателями, построению списков и других динамических структур данных; в то же время многие возможности Паскаля из рассмотрения исключены. Даются сведения о правилах оформления текстов программ, о тестировании и отладке.

Ссылка: http://www.stolyarov.info/books/programming_intro/vol1

Скачать:

book

Программирование: введение в профессию. Том 2: низкоуровневое программирование

Автор: Андрей Викторович Столяров

Язык: RU

Опубликовано: Июль 2016

Описание:

Во второй том книги "Программирование: введение в профессию" вошли её третья и четвёртая части.

Третья часть книги посвящена программированию на уровне машинных команд на примере ассемблера NASM. Рассматривается "юзерспейсовская" часть системы команд i386, конвенции системных вызовов Linux/i386 и FreeBSD/i386, изучается макропроцессор, раздельная трансляция и работа компоновщика, приведены сведения об арифметике с плавающей точкой.

Четвёртая часть, посвящённая языку Си, включает, кроме собственно описания этого языка, также краткие сведения о библиотеке ncurses; рассказ о том, как использовать компилятор Си без его стандартной библиотеки; дополнительные сведения об инструментах сборки и отладки программ; наконец, в книге приводится краткое описание систем контроля версий CVS и git.

Ссылка: http://www.stolyarov.info/books/programming_intro/vol2

Скачать:

book

Программирование: введение в профессию. Том 3: системы и сети

Автор: Андрей Викторович Столяров

Язык: RU

Опубликовано: Июль 2017

Описание:

В третий том книги "Программирование: введение в профессию" вошли части V–VIII.

В части V рассматриваются системные вызовы для ввода-вывода, управление процессами, механизмы взаимодействия процессов, такие как сигналы и каналы, а также понятие терминала и связанные с ним явления, в том числе сеансы и группы процессов, виртуальные терминалы, управление дисциплиной линии.

Часть VI посвящена компьютерным сетям; даётся небольшой обзор протоколов, используемых в сети Интернет, рассмотрена подсистема сокетов и событийно-ориентированное построение серверных программ.

В части VII рассматриваются вопросы, связанные с разделяемыми данными, критические секции, взаимоисключение; даются базовые сведения о библиотеке pthread.

Часть VIII содержит ряд сведений о внутреннем устройстве операционной системы; в частности, рассматриваются различные модели виртуальной памяти, подсистема ввода-вывода и т.п.

Ссылка: http://www.stolyarov.info/books/programming_intro/vol3

Скачать:

book

Программирование: введение в профессию. Том 4: парадигмы

Автор: Андрей Викторович Столяров

Язык: RU

Опубликовано: Март 2020

Описание:

Четвёртый том книги "Программирование: введение в профессию" составляют части IX–XII.

Часть IX посвящена парадигмам программирования как общему явлению; примеры рассматриваются на языках, уже известных читателю, в основном это язык Си. Здесь стоит особенно выделить параграф, посвящённый концептуальным различиям между Паскалем и Си (см. 9.3.2, стр. 69).

В части X рассматривается язык Си++ и поддержанные в нём парадигмы объектно-ориентированного программирования и абстрактных типов данных. В основном эта часть сформирована из текста, ранее публиковавшегося отдельной книжкой (Введение в язык Си++), но содержит несколько глав, в той книжке отсутствовавших; в том числе здесь имеется глава, посвящённая графическим пользовательским интерфейсам и их созданию с помощью библиотеки FLTK.

Часть XI отдана экзотическим языкам программирования; здесь рассмотрены Лисп, Scheme, Пролог, а для демонстрации ленивых вычислений привлечён Хоуп (Hope).

Основной целью последней, XII части была демонстрация интерпретации и компиляции как самостоятельных парадигм программирования. Часть начинается с рассмотрения языка Tcl, интерпретируемая сущность которого вряд ли может хоть у кого-нибудь вызвать сомнения. Для полноты картины рассмотрена также библиотека Tcl/Tk, позволяющая очень быстро создавать оконные приложения с GUI. Остаток части содержит обзор концептуальных особенностей интерпретации и компиляции; в самом конце делается попытка сформулировать требования к гипотетическому "чистому компилятору", полностью лишённому каких-либо элементов интерпретации.

Ссылка: http://www.stolyarov.info/books/programming_intro/vol4

Скачать:

Теги