<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Маленькая библиотека on salpagarov.com</title><link>https://salpagarov.com/library/</link><description>Recent content in Маленькая библиотека on salpagarov.com</description><generator>Hugo</generator><language>ru</language><atom:link href="https://salpagarov.com/library/index.xml" rel="self" type="application/rss+xml"/><item><title>Базовые алгоритмы</title><link>https://salpagarov.com/library/programming/algorithms/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://salpagarov.com/library/programming/algorithms/</guid><description>&lt;h1 id="базовые-алгоритмы"&gt;
 Базовые алгоритмы
 &lt;a class="heading-link" href="#%d0%b1%d0%b0%d0%b7%d0%be%d0%b2%d1%8b%d0%b5-%d0%b0%d0%bb%d0%b3%d0%be%d1%80%d0%b8%d1%82%d0%bc%d1%8b"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Ссылка на заголовок"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Ссылка на заголовок&lt;/span&gt;
 &lt;/a&gt;
&lt;/h1&gt;
&lt;p&gt;Как в литературе, по мнению Кристофера Букера, есть только семь основных сюжетов&lt;sup id="fnref:1"&gt;&lt;a href="#fn:1" class="footnote-ref" role="doc-noteref"&gt;1&lt;/a&gt;&lt;/sup&gt;, так и в программировании базовых алгоритмов всего три. Это те &amp;ldquo;кубики&amp;rdquo;, из которых создаются программы.&lt;/p&gt;
&lt;p&gt;На самом деле их больше, но здесь ситуация схожа с описанием свойств алгоритмов &amp;ndash; многие из них являются частными случаями существующих и не вполне понятно, почему авторы учебных пособий выделяют для них особое место в классификации.&lt;/p&gt;</description></item><item><title>Виды программного обеспечения</title><link>https://salpagarov.com/library/programming/software/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://salpagarov.com/library/programming/software/</guid><description>&lt;h1 id="виды-программного-обеспечения"&gt;
 Виды программного обеспечения
 &lt;a class="heading-link" href="#%d0%b2%d0%b8%d0%b4%d1%8b-%d0%bf%d1%80%d0%be%d0%b3%d1%80%d0%b0%d0%bc%d0%bc%d0%bd%d0%be%d0%b3%d0%be-%d0%be%d0%b1%d0%b5%d1%81%d0%bf%d0%b5%d1%87%d0%b5%d0%bd%d0%b8%d1%8f"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Ссылка на заголовок"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Ссылка на заголовок&lt;/span&gt;
 &lt;/a&gt;
&lt;/h1&gt;
&lt;p&gt;Традиционно все, что связано с электронно-вычислительной техникой, делят на &amp;ldquo;твердое&amp;rdquo; и &amp;ldquo;мягкое&amp;rdquo;. К &amp;ldquo;твердому инвентарю&amp;rdquo; (буквальный перевод термина &amp;ldquo;hardware&amp;rdquo;) относят оборудование – лампы, микросхемы; всё, что можно потрогать. Антитезой к нему введен термин &amp;ldquo;software&amp;rdquo;. Под &amp;ldquo;мягким инвентарем&amp;rdquo; подразумевается то, что потрогать нельзя – программы в виде электронных импульсов хранятся &amp;ldquo;где-то внутри&amp;rdquo;.&lt;/p&gt;
&lt;p&gt;Сленговые понятия &amp;ldquo;железо&amp;rdquo; и &amp;ldquo;софт&amp;rdquo; наиболее близки к исторически сложившимся английским терминам, хотя и не настолько официальны.&lt;/p&gt;</description></item><item><title>Декомпозиция</title><link>https://salpagarov.com/library/programming/decomposition/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://salpagarov.com/library/programming/decomposition/</guid><description>&lt;h1 id="декомпозиция"&gt;
 Декомпозиция
 &lt;a class="heading-link" href="#%d0%b4%d0%b5%d0%ba%d0%be%d0%bc%d0%bf%d0%be%d0%b7%d0%b8%d1%86%d0%b8%d1%8f"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Ссылка на заголовок"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Ссылка на заголовок&lt;/span&gt;
 &lt;/a&gt;
&lt;/h1&gt;
&lt;p&gt;Буквально слово «декомпозиция» означает «разделение на части». В программировании это означает разделение программы на более простые подпрограммы, а те, в свою очередь, &amp;ndash; на еще более простые, пока с одной стороны не окажутся простейшие действия сложения, умножения и вычитания, которые исполнитель способен выполнять без дальнейшего объяснения, а с другой &amp;ndash; Deep Blue&lt;sup id="fnref:1"&gt;&lt;a href="#fn:1" class="footnote-ref" role="doc-noteref"&gt;1&lt;/a&gt;&lt;/sup&gt; или Mars One&lt;sup id="fnref:2"&gt;&lt;a href="#fn:2" class="footnote-ref" role="doc-noteref"&gt;2&lt;/a&gt;&lt;/sup&gt;.&lt;/p&gt;
&lt;p&gt;Подпрограмма. В самом простом случае, подпрограмма &amp;ndash; это несколько действий вместо одного.&lt;/p&gt;</description></item><item><title>Информация</title><link>https://salpagarov.com/library/programming/information/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://salpagarov.com/library/programming/information/</guid><description>&lt;blockquote&gt;
&lt;p&gt;Информатика — наука о методах хранения, передачи и обработки информацию.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Данные можно представить числами, понятиями, категориями&amp;hellip;&lt;/p&gt;
&lt;h1 id="представление"&gt;
 Представление
 &lt;a class="heading-link" href="#%d0%bf%d1%80%d0%b5%d0%b4%d1%81%d1%82%d0%b0%d0%b2%d0%bb%d0%b5%d0%bd%d0%b8%d0%b5"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Ссылка на заголовок"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Ссылка на заголовок&lt;/span&gt;
 &lt;/a&gt;
&lt;/h1&gt;
&lt;p&gt;Информация хранится в структуре материальных объектов. Зарубки на дереве, электрический потенциал в элементах микросхемы — все это может содержать информацию, быть ее представлением.&lt;/p&gt;
&lt;h1 id="носитель"&gt;
 Носитель
 &lt;a class="heading-link" href="#%d0%bd%d0%be%d1%81%d0%b8%d1%82%d0%b5%d0%bb%d1%8c"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Ссылка на заголовок"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Ссылка на заголовок&lt;/span&gt;
 &lt;/a&gt;
&lt;/h1&gt;
&lt;p&gt;Носителем информации считается материальный объект или среда, в структуре которого можно переносить информацию в пространстве или во времени. Электромагнитное поле способно переносить информацию в пространстве, архивный документ — во времени, а бумажное письмо — и в пространстве, и во времени.&lt;/p&gt;</description></item><item><title>Итак...</title><link>https://salpagarov.com/library/programming/amen/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://salpagarov.com/library/programming/amen/</guid><description>&lt;h1 id="итак"&gt;
 Итак
 &lt;a class="heading-link" href="#%d0%b8%d1%82%d0%b0%d0%ba"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Ссылка на заголовок"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Ссылка на заголовок&lt;/span&gt;
 &lt;/a&gt;
&lt;/h1&gt;
&lt;p&gt;Вы, наверное, уже догадались.&lt;/p&gt;
&lt;p&gt;Писать программы легко. Но программирование — это не написание программ, а умение думать. У вас есть инструмент, но что вы будете с ними делать? Попробуйте разобраться в игре &amp;ldquo;крестики-нолики&amp;rdquo;, напишите программу, которая не проигрывает. А потом возвращайтесь и мы поговорим о деревьях и конечных автоматах.&lt;/p&gt;
&lt;p&gt;Программирование — это математика, а не технологические фокусы.&lt;/p&gt;</description></item><item><title>Маленькая книга о Lua</title><link>https://salpagarov.com/library/lua/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://salpagarov.com/library/lua/</guid><description>&lt;ul&gt;
&lt;li&gt;&lt;a href="#%d0%b2%d0%b2%d0%b5%d0%b4%d0%b5%d0%bd%d0%b8%d0%b5" &gt;Введение&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#%d0%bf%d1%80%d0%b8%d0%bc%d0%b5%d0%bd%d0%b8%d0%bc%d0%be%d1%81%d1%82%d1%8c" &gt;Применимость&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#%d1%83%d1%81%d1%82%d0%b0%d0%bd%d0%be%d0%b2%d0%ba%d0%b0" &gt;Установка&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#%d0%b7%d0%b0%d0%bf%d1%83%d1%81%d0%ba-%d0%bf%d1%80%d0%be%d0%b3%d1%80%d0%b0%d0%bc%d0%bc" &gt;Запуск программ&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#%d0%ba%d0%be%d0%bc%d0%bc%d0%b5%d0%bd%d1%82%d0%b0%d1%80%d0%b8%d0%b8" &gt;Комментарии&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#%d0%bf%d0%b5%d1%80%d0%b5%d0%bc%d0%b5%d0%bd%d0%bd%d1%8b%d0%b5" &gt;Переменные&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#%d0%b2%d1%8b%d1%80%d0%b0%d0%b6%d0%b5%d0%bd%d0%b8%d1%8f" &gt;Выражения&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#%d0%bf%d1%83%d1%81%d1%82%d0%be%d0%b5-%d0%b7%d0%bd%d0%b0%d1%87%d0%b5%d0%bd%d0%b8%d0%b5" &gt;Пустое значение&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#%d0%bb%d0%be%d0%b3%d0%b8%d1%87%d0%b5%d1%81%d0%ba%d0%b8%d0%b5-%d0%b7%d0%bd%d0%b0%d1%87%d0%b5%d0%bd%d0%b8%d1%8f" &gt;Логические значения&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#%d1%87%d0%b8%d1%81%d0%bb%d0%b0" &gt;Числа&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#%d1%81%d1%82%d1%80%d0%be%d0%ba%d0%b8" &gt;Строки&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#%d0%bf%d1%80%d0%b8%d0%b2%d0%b5%d0%b4%d0%b5%d0%bd%d0%b8%d0%b5-%d1%82%d0%b8%d0%bf%d0%be%d0%b2" &gt;Приведение типов&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#%d1%82%d0%b0%d0%b1%d0%bb%d0%b8%d1%86%d1%8b" &gt;Таблицы&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#%d1%84%d1%80%d0%b0%d0%b3%d0%bc%d0%b5%d0%bd%d1%82%d1%8b" &gt;Фрагменты&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#%d0%b1%d0%bb%d0%be%d0%ba%d0%b8-%d0%b8-%d0%be%d0%b1%d0%bb%d0%b0%d1%81%d1%82%d0%b8-%d0%b2%d0%b8%d0%b4%d0%b8%d0%bc%d0%be%d1%81%d1%82%d0%b8" &gt;Блоки и области видимости&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#%d1%83%d0%bf%d1%80%d0%b0%d0%b2%d0%bb%d0%b5%d0%bd%d0%b8%d0%b5-%d0%bf%d0%be%d1%82%d0%be%d0%ba%d0%be%d0%bc" &gt;Управление потоком&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#%d0%b1%d0%b5%d0%b7%d1%83%d1%81%d0%bb%d0%be%d0%b2%d0%bd%d1%8b%d0%b9-%d0%bf%d0%b5%d1%80%d0%b5%d1%85%d0%be%d0%b4" &gt;Безусловный переход&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#%d1%83%d1%81%d0%bb%d0%be%d0%b2%d0%b8%d1%8f" &gt;Условия&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#%d1%86%d0%b8%d0%ba%d0%bb%d1%8b" &gt;Циклы&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#%d1%84%d1%83%d0%bd%d0%ba%d1%86%d0%b8%d0%b8" &gt;Функции&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#%d1%81%d0%be%d0%bf%d1%80%d0%be%d0%b3%d1%80%d0%b0%d0%bc%d0%bc%d1%8b" &gt;Сопрограммы&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#%d0%be%d0%be%d0%bf-%d0%ba%d0%be%d1%82%d0%be%d1%80%d0%be%d0%b3%d0%be-%d0%bd%d0%b5%d1%82" &gt;ООП, &amp;ldquo;которого нет&amp;rdquo;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#%d0%bc%d0%b5%d1%82%d0%b0%d1%82%d0%b0%d0%b1%d0%bb%d0%b8%d1%86%d1%8b" &gt;Метатаблицы&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#%d0%bc%d0%b5%d1%82%d0%b0%d0%bc%d0%b5%d1%82%d0%be%d0%b4%d1%8b" &gt;Метаметоды&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#%d0%bf%d0%b5%d1%80%d0%b5%d0%b3%d1%80%d1%83%d0%b7%d0%ba%d0%b0-%d0%be%d0%bf%d0%b5%d1%80%d0%b0%d1%86%d0%b8%d0%b9" &gt;Перегрузка операций&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#%d1%81%d1%82%d0%b0%d0%bd%d0%b4%d0%b0%d1%80%d1%82%d0%bd%d0%b0%d1%8f-%d0%b1%d0%b8%d0%b1%d0%bb%d0%b8%d0%be%d1%82%d0%b5%d0%ba%d0%b0" &gt;Стандартная библиотека&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#%d0%bc%d0%be%d0%b4%d1%83%d0%bb%d0%b8" &gt;Модули&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#%d0%bf%d0%b0%d0%ba%d0%b5%d1%82%d1%8b" &gt;Пакеты&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#%d0%b7%d0%b0%d0%ba%d0%bb%d1%8e%d1%87%d0%b5%d0%bd%d0%b8%d0%b5" &gt;Заключение&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h1 id="введение"&gt;
 Введение
 &lt;a class="heading-link" href="#%d0%b2%d0%b2%d0%b5%d0%b4%d0%b5%d0%bd%d0%b8%d0%b5"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Ссылка на заголовок"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Ссылка на заголовок&lt;/span&gt;
 &lt;/a&gt;
&lt;/h1&gt;
&lt;p&gt;Есть прекрасная книга «Программирование на Lua». Её написал автор языка и это настоящий учебник &amp;ldquo;из первых рук&amp;rdquo;, освещающий все тонкости и особенности. Там даже упражнения есть. Будете ли вы читать её просто для ознакомления с еще одним языком программирования? Наверное, нет.&lt;/p&gt;</description></item><item><title>Маленькая книга о блокчейне</title><link>https://salpagarov.com/library/blockchain/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://salpagarov.com/library/blockchain/</guid><description>&lt;ul&gt;
&lt;li&gt;&lt;a href="#%d0%b2%d0%b2%d0%be%d0%b4%d0%bd%d0%b0%d1%8f" &gt;Вводная&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#%d0%b1%d0%bb%d0%be%d0%ba%d1%87%d0%b5%d0%b9%d0%bd" &gt;Блокчейн&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#%d0%b1%d0%b0%d0%b7%d0%b0-%d0%b4%d0%b0%d0%bd%d0%bd%d1%8b%d1%85" &gt;База данных&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#%d0%b4%d0%b5%d1%86%d0%b5%d0%bd%d1%82%d1%80%d0%b0%d0%bb%d0%b8%d0%b7%d0%b0%d1%86%d0%b8%d1%8f-%d0%b4%d0%b0%d0%bd%d0%bd%d1%8b%d1%85" &gt;Децентрализация данных&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#%d1%80%d0%b0%d1%81%d0%bf%d1%80%d0%b5%d0%b4%d0%b5%d0%bb%d0%b5%d0%bd%d0%bd%d0%b0%d1%8f-%d1%81%d0%b5%d1%82%d1%8c" &gt;Распределенная сеть&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#%d0%bf%d1%80%d0%be%d0%b1%d0%bb%d0%b5%d0%bc%d0%b0-%d0%b2%d0%b5%d1%82%d0%b2%d0%bb%d0%b5%d0%bd%d0%b8%d1%8f" &gt;Проблема ветвления&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#%d0%bc%d0%b0%d0%b9%d0%bd%d0%b8%d0%bd%d0%b3" &gt;Майнинг&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#pow-pos-dpos" &gt;PoW, PoS, DPoS&amp;hellip;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#%d0%b0-%d0%b5%d1%81%d0%bb%d0%b8-%d0%bd%d0%b5-%d0%b4%d0%be%d0%ba%d0%b0%d0%b7%d1%8b%d0%b2%d0%b0%d1%82%d1%8c" &gt;А если не доказывать?&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#%d0%ba%d1%80%d0%b8%d0%bf%d1%82%d0%be%d0%b2%d0%b0%d0%bb%d1%8e%d1%82%d0%b0" &gt;Криптовалюта&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#%d1%8d%d0%bc%d0%b8%d1%81%d1%81%d0%b8%d1%8f" &gt;Эмиссия&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#%d0%b8%d0%bd%d1%84%d0%bb%d1%8f%d1%86%d0%b8%d1%8f" &gt;Инфляция&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#%d0%b4%d0%b5%d1%84%d0%bb%d1%8f%d1%86%d0%b8%d1%8f" &gt;Дефляция&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#%d0%bd%d0%b5-%d1%82%d0%be%d0%bb%d1%8c%d0%ba%d0%be-%d0%b4%d0%b5%d0%bd%d1%8c%d0%b3%d0%b8" &gt;Не только деньги&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#%d1%83%d0%bc%d0%bd%d1%8b%d0%b5-%d0%ba%d0%be%d0%bd%d1%82%d1%80%d0%b0%d0%ba%d1%82%d1%8b" &gt;Умные контракты&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#%d0%b7%d0%b0%d0%ba%d0%bb%d1%8e%d1%87%d0%b5%d0%bd%d0%b8%d0%b5" &gt;Заключение&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h1 id="вводная"&gt;
 Вводная
 &lt;a class="heading-link" href="#%d0%b2%d0%b2%d0%be%d0%b4%d0%bd%d0%b0%d1%8f"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Ссылка на заголовок"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Ссылка на заголовок&lt;/span&gt;
 &lt;/a&gt;
&lt;/h1&gt;
&lt;p&gt;Прежде всего блокчейн - это модно. Это главная причина, по которой им интересуются. Создается впечатление, что это такая &amp;ldquo;джокерная&amp;rdquo; технология, которую можно и нужно применять везде. Но это неправда. И чтобы вам не пришлось верить мне на слово, я расскажу, чем же на самом деле является блокчейн, где он применим, а где нужен, как рыбе зонтик.&lt;/p&gt;</description></item><item><title>Методологии</title><link>https://salpagarov.com/library/programming/methodology/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://salpagarov.com/library/programming/methodology/</guid><description>&lt;h1 id="методологии"&gt;
 Методологии
 &lt;a class="heading-link" href="#%d0%bc%d0%b5%d1%82%d0%be%d0%b4%d0%be%d0%bb%d0%be%d0%b3%d0%b8%d0%b8"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Ссылка на заголовок"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Ссылка на заголовок&lt;/span&gt;
 &lt;/a&gt;
&lt;/h1&gt;
&lt;p&gt;Методологии разработки программного обеспечения - это вообще не программирование, а управленческие модели. Но знать их полезно, хотя бы для расширения кругозора.&lt;/p&gt;
&lt;p&gt;Waterfall Development . Каскадная разработка (она же &amp;ldquo;водопад&amp;rdquo;) делит весь процесс на этапы &amp;ldquo;анализ - проектирование - реализация - тестирование - интеграция - поддержка&amp;rdquo;. Это классический подход в промышленной разработке, где аналитики анализируют, архитекторы ставят задачи и так далее. Все начинается с технического задания, которое описывает весь проект в целом и каждую его часть в отдельности. Затем &amp;ldquo;по написанному&amp;rdquo; пишется программный код и уходит сначала в тестирование, потом во внедрение и на поддержку.&lt;/p&gt;</description></item><item><title>Основные определения</title><link>https://salpagarov.com/library/programming/definitions/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://salpagarov.com/library/programming/definitions/</guid><description>&lt;p&gt;Философия из всех наук самая «фундаментальная». Поэтому мы начнем с точного значения слов — то есть, с понятийного аппарата.&lt;/p&gt;
&lt;h1 id="информация"&gt;
 Информация
 &lt;a class="heading-link" href="#%d0%b8%d0%bd%d1%84%d0%be%d1%80%d0%bc%d0%b0%d1%86%d0%b8%d1%8f"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Ссылка на заголовок"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Ссылка на заголовок&lt;/span&gt;
 &lt;/a&gt;
&lt;/h1&gt;
&lt;p&gt;Информация — это отражение реальности, сведения о фактах, из которых состоит мир. Данные, описывающие объект, по отдельности называются его свойствами, а все вместе — его состоянием.&lt;/p&gt;
&lt;h1 id="исполнитель"&gt;
 Исполнитель
 &lt;a class="heading-link" href="#%d0%b8%d1%81%d0%bf%d0%be%d0%bb%d0%bd%d0%b8%d1%82%d0%b5%d0%bb%d1%8c"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Ссылка на заголовок"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Ссылка на заголовок&lt;/span&gt;
 &lt;/a&gt;
&lt;/h1&gt;
&lt;p&gt;Исполнитель — объект, способный выполнять действия. Выполнение действия исполнителем может менять (или не менять) его свойства, тем самым переводя его из одного состояния в другое. Все возможные состояния и переходы между ними образуют граф состояний.&lt;/p&gt;</description></item><item><title>Память</title><link>https://salpagarov.com/library/programming/memory/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://salpagarov.com/library/programming/memory/</guid><description>&lt;h1 id="память"&gt;
 Память
 &lt;a class="heading-link" href="#%d0%bf%d0%b0%d0%bc%d1%8f%d1%82%d1%8c"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Ссылка на заголовок"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Ссылка на заголовок&lt;/span&gt;
 &lt;/a&gt;
&lt;/h1&gt;
&lt;p&gt;Вся информация, которой оперирует исполнитель, в хранится у него в памяти. Можно сохранить в памяти число (а мы помним, что всё можно записать при помощи чисел), можно его оттуда извлечь. Между этими операциями они хранится в неизменном виде.&lt;/p&gt;
&lt;p&gt;Запоминающее устройство на магнитной ленте, которую можно проматывать вперед-назад, последовательно читая и записывая данные, называется памятью последовательного доступа («Sequential Access Memory», «SAM»). Запоминающее устройство из большого количества пронумерованных ячеек, в поторые можно писать напрямую по их «адресам», называется памятью произвольного доступа («Random Access Memory», «RAM»). Память (любого принципа действия), позволяющая только читать однажды записанные данные, называется ROM («Read Only Memory», «память только для чтения»).&lt;/p&gt;</description></item><item><title>Парадигмы программирования</title><link>https://salpagarov.com/library/programming/paradigms/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://salpagarov.com/library/programming/paradigms/</guid><description>&lt;h1 id="парадигмы-программирования"&gt;
 Парадигмы программирования
 &lt;a class="heading-link" href="#%d0%bf%d0%b0%d1%80%d0%b0%d0%b4%d0%b8%d0%b3%d0%bc%d1%8b-%d0%bf%d1%80%d0%be%d0%b3%d1%80%d0%b0%d0%bc%d0%bc%d0%b8%d1%80%d0%be%d0%b2%d0%b0%d0%bd%d0%b8%d1%8f"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Ссылка на заголовок"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Ссылка на заголовок&lt;/span&gt;
 &lt;/a&gt;
&lt;/h1&gt;
&lt;p&gt;В программировании парадигмой или моделью программирования называется общая концепция написания программ. Хоть она и зависит от языка программирования, но все же скорее относится к концептуальным, почти философским, моментам.&lt;/p&gt;
&lt;p&gt;Императивная. В императивной парадигме программа напоминает последовательность приказов. Это набор команд, последовательно меняющих состояние исполнителя.&lt;/p&gt;
&lt;p&gt;Функциональная . В функциональной парадигме программа это функция. И все её структурные составляющие - тоже функции. Главное свойство функции в том, что ее результат зависит только от входных параметров и больше ни от чего. Синус от pi/2 равен 1, а квадратный корень из 4 равен 2. Всегда. Везде. И если эти значения потребуется еще раз, их не потребуется вычислять снова. Достаточно &amp;ldquo;вспомнить&amp;rdquo;.&lt;/p&gt;</description></item><item><title>Программирование</title><link>https://salpagarov.com/library/programming/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://salpagarov.com/library/programming/</guid><description>&lt;blockquote&gt;
&lt;p&gt;Программирование — это математика, а не технологические фокусы &lt;sup id="fnref:1"&gt;&lt;a href="#fn:1" class="footnote-ref" role="doc-noteref"&gt;1&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;ol&gt;
&lt;li&gt;&lt;a href="definitions" &gt;Основные определения&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="information" &gt;Информация&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="hardware" &gt;Устройство электронно-вычислительной машины&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="number_systems" &gt;Системы счисления&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="software" &gt;Виды программного обеспечения&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="datatypes" &gt;Типы данных&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="memory" &gt;Управление памятью&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="algorithms" &gt;Базовые алгоритмы&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="decomposition" &gt;Декомпозиция&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="languages" &gt;Языки программирования&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="paradigms" &gt;Парадигмы&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="methodology" &gt;Методологии&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="amen" &gt;Итак&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="footnotes" role="doc-endnotes"&gt;
&lt;hr&gt;
&lt;ol&gt;
&lt;li id="fn:1"&gt;
&lt;p&gt;Д. Д. Маршанкулов, зав. кафедрой информатики и вычислительной техники КЧГУ.&amp;#160;&lt;a href="#fnref:1" class="footnote-backref" role="doc-backlink"&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;</description></item><item><title>Системы счисления</title><link>https://salpagarov.com/library/programming/number_systems/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://salpagarov.com/library/programming/number_systems/</guid><description>&lt;h1 id="системы-счисления"&gt;
 Системы счисления
 &lt;a class="heading-link" href="#%d1%81%d0%b8%d1%81%d1%82%d0%b5%d0%bc%d1%8b-%d1%81%d1%87%d0%b8%d1%81%d0%bb%d0%b5%d0%bd%d0%b8%d1%8f"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Ссылка на заголовок"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Ссылка на заголовок&lt;/span&gt;
 &lt;/a&gt;
&lt;/h1&gt;
&lt;p&gt;А, собственно, почему человек пользуется десятичной системой счисления? Потому, что изначально для счета использовались пальцы рук. Двурукие шестипалые существа пользовались бы двенадцатеричной системой счисления, трехрукие - восемнадцатиричной. Никакой разница, на самом деле. Кому как удобней. Нам, двуруким пятипалым, удобней десятичная.&lt;/p&gt;
&lt;p&gt;Число 10 - это основание десятичной системы. Арабских цифр, которыми мы пользуемся - десять, 0-1-2-3-4-5-6-7-8-9. Отсчет ведется не с единицы, а с нуля. Для записи чисел больше 9 используются две цифры - 10, 11, 12&amp;hellip; для чисел больше 99, три цифры - 100, 101, 102. Такие системы счисления называются позиционными, место цифры в записи числа определяют порядок.&lt;/p&gt;</description></item><item><title>Совсем другая книга про Go</title><link>https://salpagarov.com/library/golang/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://salpagarov.com/library/golang/</guid><description>&lt;h1 id="введение"&gt;
 Введение
 &lt;a class="heading-link" href="#%d0%b2%d0%b2%d0%b5%d0%b4%d0%b5%d0%bd%d0%b8%d0%b5"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Ссылка на заголовок"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Ссылка на заголовок&lt;/span&gt;
 &lt;/a&gt;
&lt;/h1&gt;
&lt;p&gt;«Маленькие книги» Карла Сегуина &amp;ndash; лучшие в жанре «быстрого старта». Только самое главное, без подробностей, в которых так легко утонуть. Зато потом упущенное очень легко восполняется правильно заданными вопросами и самостоятельно найденными ответами.&lt;/p&gt;
&lt;p&gt;Когда-то «Маленькая книга про Go» вдохновила меня написать несколько других «маленьких книг» на темы, для которых книг Карла не было. А потом, когда я сам пришел к Go и вернулся к этой книге, вдруг оказалось, что многое изменилось. Это будет совсем другая книга про Go. Не судите строго.&lt;/p&gt;</description></item><item><title>Типы данных</title><link>https://salpagarov.com/library/programming/datatypes/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://salpagarov.com/library/programming/datatypes/</guid><description>&lt;h1 id="типы-данных"&gt;
 Типы данных
 &lt;a class="heading-link" href="#%d1%82%d0%b8%d0%bf%d1%8b-%d0%b4%d0%b0%d0%bd%d0%bd%d1%8b%d1%85"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Ссылка на заголовок"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Ссылка на заголовок&lt;/span&gt;
 &lt;/a&gt;
&lt;/h1&gt;
&lt;blockquote&gt;
&lt;p&gt;Все есть число&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Слова Пифагора Самосского как нигде применимы в &amp;ldquo;компьютерной науке&amp;rdquo;. Электронно-вычислительные машины все свои действия сводят к манипулированию числами. Но что можно представить числами?&lt;/p&gt;
&lt;p&gt;Все. Температуру, цвет, звук. Но все многообразие данных невозможно анализировать без определения того, какие операции для них применимы. Нельзя сложить число и геометрическую фигуру, умножить множество на слово и так далее. Для этого данные определяются по типам. А типы определяют действия, которые с ними можно производить.&lt;/p&gt;</description></item><item><title>Устройство электронно-вычислительной машины</title><link>https://salpagarov.com/library/programming/hardware/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://salpagarov.com/library/programming/hardware/</guid><description>&lt;blockquote&gt;
&lt;p&gt;Вся история вычислительной техники это попытки заставить изобретение Эдисона приносить больше пользы, чем уличное освещение.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h1 id="диод"&gt;
 Диод
 &lt;a class="heading-link" href="#%d0%b4%d0%b8%d0%be%d0%b4"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Ссылка на заголовок"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Ссылка на заголовок&lt;/span&gt;
 &lt;/a&gt;
&lt;/h1&gt;
&lt;p&gt;Первый диод случайно изобрел Эдисон, когда внутрь вакуумной лампы накаливания поместил металлическую пластину с выведенным наружу контактом. Вдруг оказалось, что вакуум, считавшийся до тех пор изолятором, проводит ток. Но строго в одну сторону — от горячего проводника к холодному. Это явление называется термоэлектронной эмиссией.&lt;/p&gt;
&lt;p&gt;Потом были изобретены полупроводниковые диоды с другим принципом работы, но главное — ток внутри диода может двигаться только в одну сторону.&lt;/p&gt;</description></item><item><title>Языки программирования</title><link>https://salpagarov.com/library/programming/languages/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://salpagarov.com/library/programming/languages/</guid><description>&lt;h1 id="языки-программирования"&gt;
 Языки программирования
 &lt;a class="heading-link" href="#%d1%8f%d0%b7%d1%8b%d0%ba%d0%b8-%d0%bf%d1%80%d0%be%d0%b3%d1%80%d0%b0%d0%bc%d0%bc%d0%b8%d1%80%d0%be%d0%b2%d0%b0%d0%bd%d0%b8%d1%8f"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Ссылка на заголовок"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Ссылка на заголовок&lt;/span&gt;
 &lt;/a&gt;
&lt;/h1&gt;
&lt;p&gt;Совсем не обязательно при разработке программы опускаться на уровень машинных операций, которыми оперируют электронно-вычислительные машины. Языки программирования предоставляют готовый набор подпрограмм для того, чтобы процесс декомпозиции не опускался на уровень машинного кода. Это называется уровнем абстракции языка программирования и у разных языков он различен.&lt;/p&gt;
&lt;p&gt;Низкоуровневые языки программирования . Самый низкий уровень программирования &amp;ndash; это машинный код, который исполняется непосредственно. По сути набор чисел, которые процессор знает и умеет выполнять. Ассемблер - язык, в котором каждому машинному коду присвоено буквенное обозначение и которое человек уже способен прочесть и понять. Глазами. Хотя уровень абстракций практически нулевой - за каждой командой скрывается машинный код.&lt;/p&gt;</description></item></channel></rss>