Великое посвящение в обучение Си

*https://www.youtube.com/watch?v=TVAIH7d0YWo

Таймкоды

Зачем учить C?

  • C заставляет понимать, как всё работает на самом деле.
  • Другие языки скрывают истину за абстракциями.
  • C помогает заниматься серьёзным программированием.

C как язык общего назначения

  • C был создан для создания операционных систем.
  • На C написаны многие языки программирования, такие как Python и C++.
  • C подходит для написания всего, что угодно.

Противостояние мейнстриму

  • C находится в антимейнстриме по сравнению с Python и JavaScript.
  • Написание на C может быть интересным для тех, кто хочет идти против толпы.

Преимущества C перед ассемблером

  • C проще в написании, чем ассемблер.
  • C компилируемый язык, что делает его быстрым.

Безопасность C

  • C небезопасен, возможны утечки памяти и ошибки компилятора.
  • Несмотря на это, на C написаны многие важные системы и программы.

Почему C остаётся важным

  • C используется для написания большинства современных систем, включая Linux, Windows и BSD.
  • Замена C на другие языки не имеет смысла, так как это может привести к серьёзным проблемам.

Как учить C

  • Рекомендуется начать с книги «Язык программирования C» авторов языка.
  • Для изучения стандартной библиотеки C можно использовать Н-пйджи или ГНУ C Library Manual.
  • ГНУ reference manual полезен для углублённого изучения языка.
  • Стандарт ISO C 2024 года подходит для ознакомления с нововведениями и терминологией.

Как улучшить мастерство C

  • Чтение чужого кода помогает освоить методы проектирования и конструкции, выработанные за долгие годы использования C.

Познание мудрости на СИ

  • В изучении СИ можно почерпнуть мудрость, выработанную годами.
  • Важно знать, что используют и как используют другие люди.
  • Это чужой опыт, который помогает улучшить мастерство.

Практическое применение

  • Важно не только знать теорию, но и применять её на практике.
  • Автор обучался, написав сложную программу, подсматривая в код других.
  • Можно учиться по принципу интерпретатора или ставить сложные задачи.

Дополнительные советы

  • Подчёркивайте использование Union, комментариев, копирайтов и автокода.
  • Обратите внимание на средства, которые используют другие программисты.
  • Практика вместе с обучением необходима для успешного освоения языка.

Расшифровка видео

Альфа
0:00
А, всем привет. Сегодня
0:02
25:052. Подобное видео я записывал уже
0:05
когда-то давно, но оно мне не
0:06
понравилось. Я его удалил и вот сейчас
0:09
решил перезаписать это видео о том, как
0:12
учить си и прежде всего о том, зачем
0:15
учить си. А, ну и, кстати, можете
0:17
обратить внимание то, что я теперь не на
0:19
i3, а на ТВМ. Я Укси подсмотрел и что-то
0:24
мне зашло. Пока на нём сидим, но сейчас
Зачем учить Cи?
0:26
мы о том, зачем учить си? Мы начнём с
0:29
этого, поскольку этот вопрос сейчас
0:32
как-никак стоит, ибо сейчас выбирают не
0:35
C, сейчас выбирают JavaScript, Python,
0:38
TypeScript, учат весь этот кашут у себя
0:41
в профиле то, что мой стек — это
0:43
JavaScript, Typescript Python. И они
0:46
гордятся вот этой надписью, вот этим
0:48
заголовком. Они думают то, что они
0:50
программисты. Они думают то, что вот эта
0:52
вот манипуляция калом, которой они
0:54
занимаются, это называется
0:56
программированием.
0:58
Но мне кажется, то, что где-то в глубине
1:00
души они понимают то, что то, ради чего
1:04
они шли в
1:05
программирование, это не то, чем они
1:07
сейчас
1:08
занимаются. Они они у всех было
1:11
представление о программировании как о
1:13
чём-то сложном. А разве сложным можно
1:15
назвать отправку HTTP пакета, не зная
1:18
HTTP? Разве сложным можно назвать
1:21
создание TCP сервера, не зная TCP? А
1:24
Python, JavaScript всё это позволяют.
1:27
JavaScript, возможно, не позволяет
1:28
созданию TCP-сервера, но я думаю, вы
1:30
понимаете, о чём я говорю. Я говорю о
1:32
том, то что эти языки позволяют вам
1:34
использовать какие-то вещи, даже не зная
1:36
самой технологии этих вещей. Дело в том
1:40
то, что все эти языки, они как бы
1:43
прикрывают истину за абстракциями, что в
1:46
Пайтоне, что в джаваскрипте. 90% кода —
1:49
это просто абстракции или какие-то
1:51
библиотечные вызовы, что одно и то же.
1:54
То есть в них ты действительно можешь
1:56
написать HTTP getзапрос, не зная
1:59
HTTP. В отличие от них, в C такое не
2:03
прокатит. Си вынуждает тебя видеть
2:06
истину. Он вынуждает тебя знать
2:08
технологии, которые ты используешь. В то
2:10
время как другие языки скрывают эту
2:12
истину за абстракциями, они
2:14
прикрываются.
2:16
Но всё-таки все вот эти JavaScript
2:18
Python программисты, они отрицают си
2:20
всячески, как правило.
2:23
Они не хотят видеть истины, они хотят
2:26
видеть их ебучие абстракции. И они
2:29
называют, опять же, это
2:30
программированием. Хотя программирование
2:32
как будто бы это скорее что-то про
2:34
технологии, что-то скорее про сложные
2:37
вещи, нежели какие-то библиотеки,
2:39
которые они заучивают наизусть. Они
2:42
буквально библиотечные вызовы учат
2:44
наизусть. представить такое, это просто
2:46
безумие, [ _ ] То есть, а если твоя 2:48 библиотека через несколько лет уже 2:50 станет неактуальной и будет другая, ты 2:52 другую также будешь заучивать? Это 2:54 какой-то 2:55 [ _ ] А в си опять же дело обстоит
2:58
иначе. Это первая причина, зачем следует
3:01
учить си. Ради того, чтобы понять, как
3:04
всё работает на самом деле, понять, как
3:06
всё устроено изнутри, понять сами
3:08
технологии, которые, как вы понимаете,
3:10
по сравнению с библиотеками являются
3:12
долговечными.
3:14
когда там был создан TCP протокол в
3:16
восьмидесятых, что ли, или когда, и до
3:18
сих пор
3:19
используется. А, и действительно, это
3:22
первая причина, почему следует учить C,
3:24
потому что он позволяет вам понять, как
3:25
всё работает изнутри, как все технологии
3:28
действуют ещё, в принципе-то, изнутри,
3:30
и, наконец-то, начать заниматься
3:32
серьёзным программированием, потому что
3:35
Python JavaScript это можно назвать в
3:37
каком-то роде программированием, но уж
3:39
точно несерьёзным. Ну то есть ты, [ _ ] 3:41 используешь фреймворки, ты используешь 3:43 сделанные из-за тебя вещи. Ты, конечно, 3:46 возможно, на пай можешь использовать 3:48 какие-то низкоуровневые вещи, но это 3:50 никто не использует в нём, поскольку в 3:52 нём у тебя есть два варианта: простой и 3:54 сложный. Очевидно, люди выбирают 3:58 простой. Но это первая причина, почему 4:00 следует учить C. Вторая причина, она на 4:03 самом деле состоит в том, то что, ну, 4:06 вот эти все языки, JavaScript, Python, 4:08 Typescript, это всё бизнес-языки. Они 4:11 сделаны для конкретной задачи, чтобы 4:14 решать её быстро и качественно и 4:17 получить быстрее деньги. А, очевидно, в 4:20 этом нету ничего плохого. Нету ничего 4:22 плохого в том, то что вы поднимаете 4:24 прайс. Но в то же самое время всё это 4:26 как-то грустно, что на этих языках вы 4:30 можете писать только какую-то 4:31 специализированную хуйню. То есть из 4:34 джаваскрипта выбивают последнее, из него 4:37 его ебашат как грушу и получают из него 4:40 какие-то там уже просто не въебические 4:41 фреймворки для написания операционных 4:43 систем. Но он не подходит для написания 4:46 операционных систем. Он просто, это не 4:48 его задача, это не его предметная 4:50 область. Именно поэтому на нём 4:52 получается всегда такой кал и такая 4:55 лажа, поскольку в тех задачах, в которых 4:59 не состоит его 5:00 назначение, а в сиже сиже, как и эти 5:05 языки, тоже был сделан для определённой 5:07 задачи. Он был сделан для создания 5:09 операционных систем. А, Маш, что такое 5:12 операционная система? Операционная 5:14 система — это то, благодаря чему вы меня 5:16 сейчас, [ _ ] слышите, [ _ ] Это то, 5:18 благодаря чему у вас работают мониторы. 5:21 Это то, благодаря чему я открываю 5:23 терминал, пишу Python, и он, [ _ ]
5:25
работает. Python работает за счёт
5:27
операционной системы. В данном случае
5:29
Linux, которая написана на C. А и
5:32
поэтому действительно язык, который
5:35
сделан для создания операционных систем
5:37

это язык, который подходит для
5:39
написания всего. Поэтому си называют
5:41
языком общего назначения или general
5:44
purpose, да, как бы, [ _ ] 5:48 А, ну и действительно, это ещё одна 5:50 причина, почему следует учить си, почему 5:52 стоит на нём писать, поскольку это язык, 5:54 который подходит для написание всего. То 5:57 есть на нём пишутся, [ _ ] операционные
5:59
системы, на нём пишутся языки. Python
6:01
написан на C, на C написан C++. И
6:06
практически вообще, в принципе-то, все
6:07
языки написаны на C, либо же написаны на
6:10
языках, которые написаны на C.
6:12
Исключений из этого очень мало, прямо
6:15
очень мало. И, кстати говоря, ещё в
6:18
подтверждение у нас есть два языка А и
6:22
Б. Оба эти языка написаны на C. Что это
6:25
значит? Это значит то, что C может всё,
6:28
что и эти языки, поскольку они написаны
6:30
на
6:31
нём. То есть, [ _ ] он действительно 6:33 позволяет писать вам всё, что 6:35 угодно. А следующая же причина, почему 6:38 ещё, возможно, кого-то может привлечь 6:41 писать на си, так это ход против 6:43 мейнстрима. То есть, конечно, никто в 6:45 этом, наверное, не признается, но всё же 6:47 большинству людей интересно идти против 6:50 мейнстрима, как бы против толпы вот 6:52 этой, [ _ ] стадо, вот этой как бы
6:55
паствы. Они хотят идти против
6:58
мейнстрима, но очевидно то, что такие
7:00
языки, как Python, JavaScript и, в
7:02
принципе-то, подобные языки, они в
7:04
мейнстриме. Реально же в антимейнстриме
7:07
находится си. И поэтому, если вам
7:09
реально интересно идти против
7:10
мейнстрима, то, очевидно, ваш выбор —
7:12
это, [ _ ] си. ничего более против 7:15 мейнстрима быть не может, только есть 7:17 ASM. И на самом деле всё, что я тут 7:19 говорю, подходит и для ассемблера, на 7:21 самом деле. Но у него есть одна большая 7:25 проблема, то, что он хоть сам по себе и 7:26 простой, то есть сама архитектура-то 7:28 компьютера не слишком сложная, как и 86, 7:31 так и X8, 7:33 X64. 7:35 Однако написать что-то на ассемблере 7:38 [ _ ] как сложно. В то время как
7:40
написать что-то на си намного проще, чем
7:41
на ассемблере. Поэтому всё же ассемблер
7:44
имеет все плюсы C, но при этом написать
7:47
на нём что-то очень сложно. На C же
7:49
писать по сравнению с ассемблером очень
7:52
просто. А, ну и, кстати говоря, раз уж
7:55
мы зашли про то, что C — это такой
7:58
низкоуровневый язык, можно сказать ещё и
8:00
то, что он компилируемый. А что это
8:01
значит? Это значит то, что он [ _ ] 8:03 какой быстрый. И скорость си за редкими 8:07 исключениями практически никогда не 8:09 уступает ассемблеру. То есть он 8:12 буквально такой же быстрый, как 8:13 ассемблер. То есть мало того, то что вы 8:15 на нём можете написать всё, что, [ _ ]
8:16
угодно, так он ещё и [ _ ] какой 8:18 быстрый и очень редко уступает ассемлеру 8:21 в этой 8:22 скорости. 8:25 А, но всё равно, наверное, этого мало. 8:28 То есть всё равно многие они сейчас 8:31 какой основной 8:34 основная повесточка в пропаганде? Сейчас 8:36 основная повесточка. Я не буду говорить 8:38 конкретно и употреблять какие-то 8:40 конкретные слова, но основная повестка 8:42 сейчас 8:43 это то, что на си не следует писать, 8:46 поскольку он небезопасный. То есть, 8:48 конечно, на Си написано всё, что мы, 8:50 [ _ ] используем. На Си написано наша
8:52
системы. На Си написано всё, что мы
8:54
видим, но он небезопасный, поэтому
8:56
писать на нём нельзя. А,
9:00
но это действительно так. Синий
9:02
безопасный, он нихуя не безопасный. в
9:05
нём возможны утечки памяти. Более того,
9:07
в
9:09
Cзапилятора вполне себе уже сейчас может
9:12
нахуй вам снести ваш код. То есть она
9:15
она действительно может наплодить в
9:16
вашем коде багов или каких-то достаточно
9:19
опасных ситуаций, особенно самая сильная
9:22
оптимизация O3.
9:27
Но вот эти утечки памяти, вот эта
9:30
небезопасность языка си, вот эти вот
9:33
погрешности, которые допускает
9:34
компилятор при оптимизации, они не
9:37
помешали написать на C Linux, они не
9:39
помешали написать на C Windows BSD,
9:42
[ _ ] OBS, который я сейчас записываю. 9:44 Они не они не помешали написать на 9:46 симы. Они не помешали написать на C всё, 9:49 что мы, [ _ ] практически сейчас имеем.
9:52
Но нет, но си нихуя нельзя писать. Так
9:54
как нельзя, если всё на нём-то, [ _ ] 9:56 написано. То есть, конечно, вы можете 9:57 говорить сколько угодно, то, что нихуя 9:59 не безопасный, то, что у нас прогресс, 10:01 то, что у нас наш язык объективно лучше. 10:05 Ну, может, он лучше, может он лучше, но 10:06 C всё равно находится в позиции 10:08 сильного. Всё равно на C написано всё, 10:10 что сейчас, [ _ ] есть. Если си резко
10:13
пропадёт, то пропадёт и, [ __ ] Linux, и
10:15
Windows, и BSD вместе с этим взятым.
10:18
Поэтому всё же
10:19
я Поэтому всё же их аргументы возможно в
10:22
том, то, что их языки лучше в каком-либо
10:25
плане, они действительно чего-то стоят.
10:27
Но в том то, что их язык надо заменять
10:31
на язык си, как по мне, нихуя это того
10:33
не
10:34
стоит. Ам, ну ладно, я думаю, с этим
10:37
плюс-минус понятно. Но ещё давайте для
10:39
того, чтобы усилить пропаганду, ещё
10:41
покажу вам вот такую вот картинку. такой
10:43
как бы модный плакат, который очень
10:45
хорошо отражает то, о чём я сейчас
10:47
говорил. Здесь изображён Платоновский
10:51
миф. Ну, ээ, по-моему, в седьмой или в
10:54
шестой книге государства Платон, для
10:55
того, чтобы пояснить об идеях свою
10:58
концепцию, он привёл миф. Миф, который
11:01
сейчас, по-моему, Платоновской пещерой
11:02
называют что-то такое. Ну и вот эта
11:05
картинка — это пародия на этот миф. Что
11:07
мы тут видим? Мы тут видим каких-то
11:09
чуваков. Назвать их не рабами или гоями
11:13
невозможно. Ну и вот такие вот го
11:16
смотрят на проекцию, на проекцию на
11:18
стене пещеры пещеры, на которую
11:20
транслирует вот этот проектор. И они
11:24
думают то, что вот то, что они видят —
11:26
это истина. Они думают то, что это
11:28
настоящее программирование, то, что вот
11:30
оно прямо перед ними на стене пещеры.
11:34
Однако тут же мы видим чувака, который
11:36
понимает то, что всё это иллюзия, то,
11:37
что вот эта пропаганда, которая
11:39
транслируется через вот эту вот камеру
11:41
или как-то проектор, это всё на самом
11:44
деле не истина. Это не то, в чём состоит
11:46
действительно программирование. Это не
11:48
то, что действительно стоит. Поэтому,
11:51
как мы ви, как мы видим, он выбирается к
11:53
свету. Он выбирается наружу и познаёт
11:55
истину. Выбирается к
11:58
си. Ну и, в принципе, то, о чём я сейчас
12:01
говорил.
12:05
Ну ладно, я думаю, с этим плюс-минус
12:06
понятно. И теперь можно, в принципе,
Как учить Си? (1)
12:08
перейти к тому, как же выучить этот
12:10
самый сих, как же
12:12
возвыситься. А я не считаю себя прямо
12:16
мастером C, но всё же я не представляю,
12:19
по каким источникам ещё может изучать
12:22
язык C, мастер C, кроме как по этим.
12:25
Собственно
12:26
говоря, первое, что бы я вам
12:28
посоветовал, чисто исходя из авторитета
12:31

это книжка язык программирования си.
12:33
Почему исходя из авторитета? Потому что
12:35
её написали сами создатели языка си. А
12:39
мы она подходит очень хорошо для
12:41
введения язык си, то есть вот чисто для
12:44
новичков. Во-первых, она на русском, то
12:46
есть уже лучше для новичков. А
12:48
во-вторых, она не слишком сложная, она
12:51
не слишком углублённая, но в то же самое
12:53
время рассматривает всё такое основное и
12:55
рассматривает даже немного стандартную
12:57
библиотеку. В общем, для вката
13:00
рекомендую именно её. А что
13:03
касается изучения стандартной библиотеки
13:06
C, то для изучения стандартной
Как учить libc (библиотеку Си) (1)
13:09
библиотеки C рекомендую НПЕйджи.
13:13
Собственно говоря,
13:15
впейджах это как бы первый источник
13:18
стандартной библиотеки C в данный
13:20
момент, поскольку сейчас на Линуксе и,
13:22
по-моему, на BSD, нет, на BSD нет, на
13:25
Линуксе, по крайней мере, используется
13:27
библиотека GIPC, и она в качестве его
13:31
главного источника использует именно
13:33
йджи. И поэтому изучать библиотеку
13:36
Lipsi, ну, стандартную библиотеку
13:39
Синпейджем, как по мне, это лучший
13:41
вариант.
13:42
Он самый подробный, он самый актуальный,
13:45
он, в принципе-то, самый лучший, как по
13:47
мне. То есть здесь есть информация
13:49
практически про всё, [ _ ] и самая как 13:51 раз-таки актуальная, поскольку 13:53 документируются липцы именно в Н-пйджах, 13:56 и их не обязательно открывать, как я 13:58 сделал это только что их можно найти в 14:00 интернете вполне себе все их или 14:02 воспользоваться утилитой, как я сейчас 14:04 это сделал. Но они уже большинство их 14:07 всё-таки на английском, как вы 14:09 понимаете. Но для изучения липце они, 14:11 наверное, самые 14:12 лучшие. А, но для изучения липце, если Как учить libc (библиотеку Си) (2) 14:15 вам нужно что-то более такое строгое, 14:17 более структурированное, я могу вам 14:19 посоветовать ГНУ C Library Manual. Вот 14:24 он. Он здесь тоже рассматривается 14:27 библиотека Си. Вообще большинство тех, 14:30 кто пишут на C, не знают даже половины 14:32 библиотеки C. Это вовсе не обязательно. 14:35 Хватит даже базовых функций, то есть 14:37 самых таких базовых. 14:39 Конечно, наверное, лучше знать 14:41 углублённо, как по мне, но большинство 14:44 даже не знают, опять же, 14:47 50%. А, ну так вот, здесь, в отличие 14:50 отпейджи, всё это даётся более 14:51 структурированно, как видите по главам. 14:53 Здесь это подробнее всё 14:55 разбирается, но в то же самое время оно 14:57 и очень длинное. Ну, достаточно длинное, 14:59 не прямо очень. То есть 15:01 вот всё это руководство. 15:05 Но всё-таки по сравнению с НПЙджами оно 15:07 намного более длинное, 15:09 подробное. Не, не 15:11 подробное. Нйджи, наверное, такие же 15:13 подробные или даже подробнее, но 15:15 всё-таки оно именно проще с примерами и 15:17 со всем 15:18 остальным. А что касается ещё источника Как учить Си? (2) 15:21 для изучения именно самого языка C, то 15:24 могу посоветовать гну reference manual. 15:26 То есть вот это по библиотеке C у них 15:28 manнуал, это по уже самому языку C. Он 15:31 очень короткий, буквально 200 страниц в 15:34 PDF, но при этом, как по мне, он один из 15:36 самых лучших, в принципе-то. Но, как вы 15:38 видите, он на английском, хотя я не 15:39 помню, по-моему, даже на русском, что 15:40 ли, версия была. Не знаю, насколько 15:43 актуален уже мануал на русском, но 15:45 вообще актуальность, [ _ ] на си, на
15:47
самом деле актуальность измеряется
15:49
десятилетиями. То есть, [ _ ] если 15:51 какая-то программа, которую вам нужно 15:53 скомпилировать, ей уже 20 лет, то она 15:55 спокойно у вас, [ _ ] скомпилируется.
15:57
То есть наси нет такого то, что там типа
15:59
новая версия и всё, [ _ ] 16:01 по большей части такого нету на си, 16:04 потому что он 16:05 стандартизирован. У языка си есть Как учить Си? (3) 16:08 стандарт. Стандарт сделанный ИСО, то 16:11 есть 16:12 международной комиссии, по-моему, по 16:14 стандартизации. Вот он. Он то есть это 16:17 язык, который полностью, [ _ ]
16:19
стандартизирован. У него есть полное
16:21
описание синтаксиса. Буквально, [ _ ] 16:23 рекурсивное полноценное 16:25 ээ описание синтаксиса каждого, [ _ ]
16:28
случая в синтаксисе. То есть у какого
16:30
языка ещё такое есть, в принципе-то,
16:32
чтобы там исследовательская группа
16:34
расписывала его синтаксис. Да хуй нигде
16:37
нет. Хотя, возможно, есть, но я не
16:40
уверен. А, ну и, кстати говоря, вот этот
16:43
стандарт поси, на самом деле, тоже
16:45
вполне себе может подойти для какого-то
16:48
более такого углублённого прямо совсем
16:50
чересчур изучения C. То есть или, по
16:53
крайней мере, для того, чтобы
16:55
ознакомиться с нововведениями, потому
16:57
что, как вы понимаете, это последний
16:58
стандарт.
16:59
2024 года или не последний это,
17:03
по-моему, последний, вроде бы, да, но в
17:06
любом случае, в общем, здесь самая
17:08
свежая инфа, которой даже ещё нету в
17:10
самом, [ _ ] языке, в самих 17:12 компиляторах. Но опять же, это 17:14 руководство нужно скорее для тех, кто 17:16 пишет компиляторы для си. То есть, как 17:18 вы понимаете, оно очень сложное. Тут 17:20 никто вам нихуя объяснять не будет, как 17:22 всё работает. Тут их задача объяснить 17:25 все какие-то моменты, причём чаще всего 17:27 какие-то концептуальные моменты, чисто 17:29 такие 17:31 экзотические, [ _ ] То есть какие-то
17:34
вот такие вот всякие дрочки с
17:36
синтаксисом пояснить, что-нибудь
17:39
такое.
17:41
А, ну и опять же это всё-таки вот всё,
17:44
что написано в этом стандарте.
17:46
терминология, которая даётся в этом
17:48
стандарте, как по мне, можно считать
17:50
настоящей истинной терминологией именно
17:52
канонической в иде описано, это как бы
17:55
канон си. Однако к этому, к библиотеке,
17:59
которая здесь расписана
18:01
липце очевидно то, что некоторые авторы
18:03
библиотек, некоторые авторы компиляторов
18:05
могут добавлять что-то своё к языку C, к
18:08
библиотеке C. То есть по-разному всё. Но
18:11
всё-таки канонический классический си
18:13
описан и полностью стандартизирован. его
18:15
вам будет уже
18:17
достаточно. Ам, но это всё скорее для
18:20
такого обучения. А что касается уже
18:22
улучшения мастерства, то есть как же
18:25
мастеру улучшить свои навыки? Я опять же
18:28
не мастер, но я не представляю другой
Как улучшить мастерство Си?
18:31
другого источника, как ещё он может
18:33
улучшить свои навыки, если не читать
18:35
чужой код. То есть
18:38
действительно чужой код — это что по
18:40
своей сути? Это опыт чужих людей,
18:42
которые вы можете посмотреть.
18:45
То есть тут стоит понимать то, что сил
18:46
он существует уже сколько, [ _ ] 50-70 18:49 лет. И очевидно то, что за такой 18:51 продолжительный период в нём 18:53 выработалось очень много, в принципе-то, 18:55 каких-то конструкций, которые все 18:57 используют, каких-то средств, которые 18:59 все используют, каких-то методов 19:00 проектирования, которые все используют. 19:03 И чтобы осознать вот эти методы 19:05 проектирования, увидеть их, которые 19:07 выработались за этот продолжительный 19:08 период, можно смотреть чужой код. 19:11 Действительно, в нём как раз-таки можно 19:13 познать вот эту мудрость, выработанную 19:15 годами на СИ. Что, в принципе-то, 19:18 используют люди, что люди не используют, 19:20 как они это используют, как они что-то 19:22 реализуют. Это очень полезно. Это опять 19:23 же чужой опыт людей, который вы можете 19:26 посмотреть. Однако, как вы понимаете, 19:28 здесь вам уже нужно знать си. Это 19:30 подходит скорее для улучшения 19:32 мастерства, но это [ _ ] как важно. То
19:35
есть, буквально, вот многие говорят то,
19:36
что это очень важно, но пролетает мимо
19:38
ушей, нахуй, куда-то в гонконг
19:41
летит. А, но это реально важно, то есть
19:44
это буквально даёт
19:46
результат. Это действительно имеет
19:48
значение смотреть, как вообще пишут
19:51
другие люди. То есть вот смотрите,
19:53
Union, [ _ ] внутри функции. Некоторые 19:55 вообще не знают то, что все есть Union. 19:57 Не то, что он находится внутри функции, 19:59 а в него а внутри него находится 20:01 структура. То есть многие даже этого не 20:03 знают. 20:04 Ну, опять же, вы можете подчеркнуть 20:06 такие вещи, как, допустим, вот такие вот 20:07 комментарии, как они пишут комментарии, 20:09 вот такие вот копирайты, средства, 20:11 которые они используют, то, что они 20:12 используют автокод, аutake, makeфай, 20:16 какие средства они применяют, как у них 20:19 всё это устроено, всё это надо 20:22 подчёркивать. А, ну ладно, я думаю, с Про практику 20:24 этим плюс-минус понятно. Ну, ещё это, 20:27 конечно, уже, [ _ ] совсем как бы
20:29
очевидные вещи, но всё-таки скажу, хотя
20:32
это вообще не стоит даже объяснять, но
20:34
всё равно скажу то, что, конечно, ещё
20:37
нужна практика вместе с обучением, да?
20:39
То есть вы во время обучения, конечно,
20:42
должны что-то писать, но я, на самом
20:43
деле, скажу честно, я обучался не то, не
20:46
так. У меня просто была задача написать
20:48
одну программу достаточно сложную, и я
20:52
просто её, [ _ ] писал. То есть я не я 20:54 не читал какую-то главу и потом делал 20:56 задание или применял её на практике. Я 20:58 не так делал. Я просто, [ _ ] садился и
21:00
писал нахуй программу, которая мне
21:01
нужна. Если я не понимал, как что
21:03
делать, я просто подсматривал, то есть
21:06
буквально.
21:08
М то есть я всё же учился не таким
21:10
образом, как по принципу интерпретатора,
21:13
да, как бы обучение. То есть первая
21:15
глава, [ _ ] прочитать, выучить, 21:17 выписать тезис и конспект. Я нихуя не 21:19 делаю. Я просто писал, [ _ ] и
21:20
подсматривал то, что мне нужно.
21:23
можете обучаться, как в принципе-то я, а
21:24
можете действительно по принципу
21:26
интерпретатора. Можете и в принципе так
21:29
же, как я, поставить себе какую-то
21:30
сложную задачу, её реализовывать. Можете
21:33
просто как бы там что-то писать,
21:34
какие-то петпроекты свои
21:38
ебучие написать,
21:40
например. А, ну ладно, я думаю, с этим
Омега
21:44
плюс-минус понятно. Так, [ __ ] у меня
21:47
тут окон. Так, вот это, вот это всё.
21:51
Ну так вот, собственно, так нет, не
21:53
сюда. В общем, я думаю, плюс-минус
21:56
понятно. Всё основное я рассказал, так
21:58
что
21:59
давайте. y

Поделиться: