Михаил Непряхин: Так всем. Привет как, Видно, Слышно напишите Пожалуйста, блюзики в чат
Михаил Непряхин: Окей
Михаил Непряхин: так давайте мы не знакомились
Михаил Непряхин: в Случае Есть предложение Ну как Же Не знаю кто Поддержит есть предложение буквально
Михаил Непряхин: рассказать о себе в двух словах типа какой у вас Бэкграунд
Михаил Непряхин: и может быть что-то Еще типа на Тридцать Сорок секунд как вообще смотрите на Эту Идею хотите, Познакомиться ведь кто хочет Давайте поставьте плюсик
Михаил Непряхин: типа Для тибилдинга немного для сплочения может быть как-то
Михаил Непряхин: поинтереснее влад
Михаил Непряхин: но Давайте по крайней мере кто за кто Не хочет кто хочет анонимность может
Михаил Непряхин: Не выходя, из тени кто хочет
Михаил Непряхин: давайте тогда
Михаил Непряхин: по порядку
Михаил Непряхин: так вот алекс алекс
Михаил Непряхин: хотите, не хотите, рассказать о себе.
Михаил Непряхин: Давайте ну или давайте начну Я Давайте Начну Я значит
Михаил Непряхин: Я Сейчас Работаю
Михаил Непряхин: Вб половина Времени пишу на Расть половина нагошки
Михаил Непряхин: и Бэкграунд У Меня от Этого Писала на Пхп питоме и ну остальные дики тоже много смотрел. Вот ну вот как-то так
Михаил Непряхин: Давайте Дальше алекс Буйдем
Михаил Непряхин: Нет Давайте да
Михаил Непряхин: алекс
Михаил Непряхин: Окей Давайте дальше
Михаил Непряхин: Аве
Михаил Непряхин: Нет Окей
Михаил Непряхин: так Давид
Михаил Непряхин: так Давид Не Слышно
Михаил Непряхин: Да Похоже Что с микрофоном
Михаил Непряхин: Ну, конечно Не Слышно ответ. Ну ладно Давайте дальше
Михаил Непряхин: Ну, или Давайте кто хочет Давайте Не по Списку чем вы в школе Что ли Давайте так Просто кто хочет.
dmitriy: Ну давайте я тогда следующий потом по списку был так ну я так как. Раз, расскажу я
dmitriy: общий фронт восемь лет уже в разработке, ну писал немного на печпи но там не то чтобы супернога помо Год тоже писал на других языках ну так по чуть-чуть всего и дравы
dmitriy: была и аа чего ты там еще пробовал но сын же остается У меня
dmitriy: работал до Недавнего, времени. На галерее Вот сейчас? Пока в поисках работы Но и в процессе Вот решил обучиться
dmitriy: как-то Так.
Михаил Непряхин: Все отлично Давайте дальше.
Konstantin: Том переквалифицировался полностью во фронт вот Сейчас занимаюсь фронтом в тесной связке с мобилками в основном по мовилкой
Konstantin: да и дано мне на самом деле душа кугошки Лежит вот решил так сказать закрепить это желание
Konstantin: действие
Konstantin: да
Konstantin: всем спасибо.
Михаил Непряхин: Но это, дальше.
Дмитрий: Так да всем привет не слышно да все хорошо.
Михаил Непряхин: Да-да все хорошо.
Дмитрий: Я Дима зовут Я тоже фронт Там около. Семи лет где-то Опыта
Дмитрий: тоже несколько Было попыток Освоить бакенд
Дмитрий: Сейчас вот решил. Уже зафиксировать наконец-то и окончательно переключиться также Пока Не работаю но с работой придется конечно наверное поменьше выделять но Пока вот
Дмитрий: в такое не сезоне могу
Дмитрий: побольше времени.
Дмитрий: Например все.
Михаил Непряхин: Так Давайте Дальше кто хочет.
Илиас Эззахид: Ммм Могу я Слышно.
Михаил Непряхин: Хорошо же слышно.
Илиас Эззахид: Аа привет всем меня зовут. Илья а Я Из марокко
Илиас Эззахид: аа что Могу рассказать о Себе Я бэнд-разработчик в основном на ноджете пару лет
Илиас Эззахид: что если я что-то говорю и непонятно пожалуйста, корректируйте меня.
Михаил Непряхин: Нет вообще все все отлично Выше все отлично понятно Я Так понял Что Русский Я все Таки Не родной язык
Михаил Непряхин: да.
Илиас Эззахид: Жизни мне родной.
Михаил Непряхин: Ну отлично У вас Отличный Русский Просто Великолепный
Михаил Непряхин: Так.
Паша Вавилон: Я павел я фронт Тоже
Паша Вавилон: Вот и
Паша Вавилон: что сказать Сначала на реакте работал полтора года потом полтора года на ангуляре
Паша Вавилон: ну Вот решил Изучить Сначала Ноду Вот Но что-то на
Паша Вавилон: меня Не, обрадовало решил он нагол.
Михаил Непряхин: Окей.
Вадим: Вот.
Михаил Парфёнов: Дело, скажу
Михаил Парфёнов: Я Дремучий пхпашник
Михаил Парфёнов: Пятнадцать лет опыта
Михаил Парфёнов: пришел все-таки Изучить что то новое
Михаил Парфёнов: потому что парадекс знаешь
Михаил Парфёнов: ну и фронт тоже бесфортно никак.
Вадим: Давайте я прошу Прощения За фоновый шум этот ребенок,
Вадим: как много У нас здесь фронтов собралось я тоже фронт Опыта чуть больше пяти, лет
Вадим: а до этого работала британская
Вадим: Сейчас Э устроился на очень интересный Проект, фолстеком
Вадим: перешел, кча потянуть бошку,
Вадим: Поэтому пришел сюда.
Ильдан Сайдиев: Всем привет у меня слышно
Ильдан Сайдиев: приветствую.
Михаил Непряхин: Да Всерок Срок слышно.
Ильдан Сайдиев: Ну начинал я по классике. Свистки Прямо Что имело сс
Ильдан Сайдиев: Потом Поработал ушел в другую фирму Там на Джаву начинал бэкэнд меня так вот перебрасывал потом
Ильдан Сайдиев: попросили наряг на тебе мобилку взять на мобилке
Ильдан Сайдиев: Полтора. Года потом я сам по инициативе на флаттер перешел. Уже два года пишу на флаторе и уже еще полгода последних начал на Год два микросерийса дали мне
Ильдан Сайдиев: переписывать ну я так понимаю что Это
Ильдан Сайдиев: надо правильно переписывать и вот Поэтому решил выучиться чтобы правильно переписать и в дальнейшем переквалифицироваться полностью брак и мне тоже Это нравится. Уже фронт надоел.
Михаил Непряхин: Так ильдам все-таки фронда.
Ильдан Сайдиев: Ну большим обещик ну.
Михаил Непряхин: Окей.
Ильдан Сайдиев: Я работал.
Михаил Непряхин: Да вы сразу говорите каким, вы себя считаете фронтом и боком пока форм побеждаем да
Михаил Непряхин: так еще.
David R: Раз два три слышно меня.
Михаил Непряхин: Слышно.
David R: Ураура давид в тридцать лет и
David R: по серому менять
David R: так кто так.
Михаил Непряхин: У
Михаил Непряхин: так, есть что же вообще.
Егор Ширяев: Привет всем меня Зовут егор так
Егор Ширяев: срочно Звонок да да сразу мысли такие Что это все будет на торте на каком нибудь потом висеть
Егор Ширяев: ладно.
Михаил Непряхин: Ну и.
Егор Ширяев: Да и.
Михаил Непряхин: Как кстати Не слили в общем-то да можете минимально сказать фронту Или.
Егор Ширяев: Торнду привет если что-то Тем кто будет с торренто Вот Но я Пришел Сюда.
Егор Ширяев: Ну По Сути У Меня короче Там три четыре месяца этого опыта вот такого достаточно Жесткого потому что до этого у Меня, Не было Вообще никакого опыта в программировании Там все проходил. Некоторые курсы
Егор Ширяев: вот ну и как Сейчас принято три года и пошел вперед вот прошел пару сабисов но
Егор Ширяев: третьим четвертом он получил. Два офера, Поэтому Сейчас пришел сюда догонять То, чего много чего Не, Знаю вот Поэтому здесь
Егор Ширяев: с вами Сейчас.
Михаил Непряхин: Окей отлично
Михаил Непряхин: Так еще остался кто то.
Чумаков Илья: Да тоже возьму эстафету э замут илья тридцать лет пять лет в разработке на бэкенде начинал с духнетта потом на Ноде в живоскрипте Сейчас пишу на пички
Чумаков Илья: и
Чумаков Илья: Вот Тоже, решил Скинуть Так что-нибудь По новенькое.
Михаил Непряхин: Лично, Отлично
Михаил Непряхин: Так ну Что Все У нас Кончились.
Родион: Всем. Привет Меня зовут родион двадцать Два последние три года занимался фронтом но что-то тоже фронт немножко понатырел и решил себя Попробовать на бенкенде Мы Быруглошку, так и в Предыдущей, компании У, нас был бэк на Гошке
Родион: немножко. Смотрел этот код но так глубоко туда не Влезал.
Михаил Непряхин: Так
Михаил Непряхин: отлично
Михаил Непряхин: все она похожа
Михаил Непряхин: изживающих ну неплохо Гм неплохо ну в общем-то фронттендан с фронта больше всего переходит еще Интересная тенденция
Михаил Непряхин: Окей
Михаил Непряхин: ладно
Михаил Непряхин: нобеки Пипи питон
Михаил Непряхин: Окей и
Михаил Непряхин: ну в Общем опять же если. Какие-то Вопросы, По Ходу будут возникать вы Прям это либо пишите либо можете голосом даже перебивать задавать потому что
Михаил Непряхин: а Ну ключе важно если тут что то Непонятное и проще по Ходу быстро Это объяснить и Дальше Эти
Михаил Непряхин: тем Более вопросы? Чаще всего правда уместны
Михаил Непряхин: так. Во-первых
Михаил Непряхин: во-первых значит вопрос остался с Прошлого занятия
Михаил Непряхин: Про Приватная Модуль,
Михаил Непряхин: значит смотрите давайте эту тему,
Михаил Непряхин: осветим
Михаил Непряхин: в общем вы занимаетесь разработкой проекта а когда вы его начинаете, ты Допустим начал Новый проект тут, мне тут лесан Три
Михаил Непряхин: я Создал Кол мод назвал модуль По названию Репозитория поток Два леса на свете весь По полный путь полная Публикация
Михаил Непряхин: когда я так делаю я начинаю
Михаил Непряхин: я просто создаю аа папку кг на верхнем уровне
Михаил Непряхин: и и
Михаил Непряхин: складываю какие То шаренные модули туда
Михаил Непряхин: потом когда вы понимаете что у вас уже начинать второй Проект, вам нужны вот эти вот модули Которые вот есть здесь вот тогда, только тогда, вы создаете
Михаил Непряхин: жареную библиотеку
Михаил Непряхин: вы ее создаете где-нибудь но вот рапс в Этом деле создал
Михаил Непряхин: ну, вот я создал свою папку
Михаил Непряхин: Назвал его липс
Михаил Непряхин: вот я видел называют э липси модулс как то так
Михаил Непряхин: ааа
Михаил Непряхин: и понимаю что, вот мне вот нужен модуль хэллоуин он у меня Уже атестированный и хороший Меня он устраивает и я хочу его переиспользовать в Другом проекте чтобы Не заниматься копированием, как Это многие Делают,
Михаил Непряхин: я хочу вот сюда складывать какие То шаринные вещи
Михаил Непряхин: что мне для этого нужно чтобы вот репозитор стал таким местом где будут находиться на другие библиотеки
Михаил Непряхин: так ну во-первых когда я его создаю ну то есть вот я его создал сделал там клон к себе. В Проект
Михаил Непряхин: первым делом я должен инициировать модули потому что если эта библиотека ну если этот репозитор не будет модулем
Михаил Непряхин: а как, бы это необязательно и
Михаил Непряхин: шесть назад такоечут
Михаил Непряхин: вот и
Михаил Непряхин: по идее как, бы вы можете даже работать Без модулей но только как, вы захотите. Какие-то библиотеки подключить вам придется этот модуль инициатизировать Поэтому По сути Всегда когда вы Этой позиторе создаете сразу не специализируете Модуль, то есть делаете Команду. Гоу мод и нит и вот название репозитория
Михаил Непряхин: аа вот когда мы сделали модуль все мы уже Можем его использовать как библиотеку
Михаил Непряхин: значит добавляем сюда код и пушин
Михаил Непряхин: запушили им
Михаил Непряхин: помешать жаспедсек
Михаил Непряхин: вот оно исчезает
Михаил Непряхин: здесь вроде меньше мешает
Михаил Непряхин: Вверх,
Михаил Непряхин: хочу шары в ту речь в системе и эта штука перестала влезать
Михаил Непряхин: вот значит
Михаил Непряхин: комиссиям ушем
Михаил Непряхин: дальше когда мы запушили
Михаил Непряхин: нужно добавить тек семь вера
Михаил Непряхин: если кто еще не знает семь вер даже их Нет неудобно
Михаил Непряхин: если кто еще не Знает семь вер то рекомендую значит ну мало ли вдруг такое
Михаил Непряхин: среди кого-нибудь фронтеров будет значит вы тематическое рационирование вот это просто прочитайте как это как-то работает как это Делается и библиотека версии Сионируется По вот этому. Восемь веру
Михаил Непряхин: даже на Русском, месте перевели
Михаил Непряхин: значит здесь есть бьют Или Нет где Кот текс
Михаил Непряхин: значит Заходите
Михаил Непряхин: и делайте нью-эк
Михаил Непряхин: и на Ветку навешиваете тэк просто называете Там
Михаил Непряхин: был сделан два ноль
Михаил Непряхин: и и
Михаил Непряхин: вот у Меня есть на одном и том же комите это как бы странно но типа удалимый тогдатек
Михаил Непряхин: и библиотеку инкримините Значит если вы просто бак исправили то третью цифру исправляете вот это
Михаил Непряхин: если вы добавили какую-то функциональность без
Михаил Непряхин: а того чтобы ломать обратную совместимость да вот единицу выку превращаете во вторую вторую второе число меняете если вы его матите обратную совместимость то это, уже мажорная версия Первая чис чи чис Чиселка на менять
Михаил Непряхин: вот ну Там вот первое число изначально ноль Или один так не особо важно просто есть особо пугливые люди кто, считает Что у них библиотека до сих Пор Не Готова
Михаил Непряхин: можете соединиться начинать для пустоты Что соединится Еще с Ноля Плюс смены Одно, и то же Просто в итоге потом когда о вы поймете что надо сломать и правда совместимость вы добавите Там двойку например, и все Вопросы, с нолика сразу надо двойку перескочить потому что как бы это у вас будет Считаться первая версия
Михаил Непряхин: ну это скорее относится к вообще как к библиотекам которые в хабе увидите а эта библиотека она по сути просто Ваша ну как бы общая для того чтобы
Михаил Непряхин: и придерживаться принципа не повторяться да и
Михаил Непряхин: вы будете добавлять модули вот по мере того как они у вас будут появляться ну и тут может быть сколько угодно много Конкурсе Окей просто с Каждым изменением Вы должны Не забывать вот Этот Текст инкриминить плюс один Делать,
Михаил Непряхин: ну а дальше когда Вы Хотите, ее переиспользовать вот Допустим я ее здесь переиспользовал
Михаил Непряхин: а выполняется команда просто гогет
Михаил Непряхин: точно, такая же которую Мы уже
Михаил Непряхин: дьявол,
Михаил Непряхин: и Прям, вы так указываете
Михаил Непряхин: вот но у вас оно не сработает
Михаил Непряхин: почему
Михаил Непряхин: потому что значит
Михаил Непряхин: я здесь добавил, рик замал инструкцию небольшую значит что нужно сделать для того чтобы оно работало
Михаил Непряхин: ну версионируя мукей сказал А нужно создать токи на Чтение в гилабе
Михаил Непряхин: для того чтобы его добавить файл. Кнет арси
Михаил Непряхин: зачем Токин, Теоретически можно использовать и ваш, Пароль от гитлаба ну во-первых Там полные права и ну и вообще Как, бы
Михаил Непряхин: Как, Будто бы если Возможно как-то Уменьшить Права, и в целом использовать какой-то Другой токи на который можно инвалидировать и он там анализируется Через Год или Через два То лучше Так и Делать Поэтому вы дальше Заходите
Михаил Непряхин: аа в свой
Михаил Непряхин: Так Наверно от преференции где здесь
Михаил Непряхин: а
Михаил Непряхин: Так
Михаил Непряхин: Акси стокенс
Михаил Непряхин: и Вот ведь У меня здесь Уже добавлены токины ну Вот допустим создаем новые токи он как-то его называем
Михаил Непряхин: надеюсь указываем на дату Какой То Там. Плюс один Год плюс Два года
Михаил Непряхин: дальше что нам нужно для того чтобы работать с приватными Репозиториями ну. Во-первых опии
Михаил Непряхин: а рит юзер это ничего не надо Рейтеры позиторий Возможно ли телевизор даже не Нужен но Я так делаю типа чтения ничего страшного так в райтре позитории
Михаил Непряхин: ну по-моему рай тоже Не, обязательно
Михаил Непряхин: надо Главное рит
Михаил Непряхин: ну и все вот по Сути вот этих доступов вам должно быть достаточно
Михаил Непряхин: Не, уверен, Нужен ли Врач Но как будто бы Не, Нужен вот когда вы Его создаете
Михаил Непряхин: вы Его здесь получаете копируйте и вот собственно потом надо его будет,
Михаил Непряхин: сюда Добавить здесь добавляете свой логин у меня он
Михаил Непряхин: вот он меня
Михаил Непряхин: не Прям
Михаил Непряхин: вот и эту строчку надо. Добавить файл. Н нет России
Михаил Непряхин: что это
Михаил Непряхин: за
Михаил Непряхин: файл
Михаил Непряхин: короче в
Михаил Непряхин: аа юник в подобных системах
Михаил Непряхин: в домашней директории
Михаил Непряхин: Есть вот такой файлик нетерси
Михаил Непряхин: он и
Михаил Непряхин: ну вот как, Раз, Таки парой логин пароль от каких-то сервисов Ну, Исторически Там для втп Это было Удобно и так далее То есть Это альтернатива Можно и
Михаил Непряхин: положить Эти ключи и переиспользовать но видите и с сашей Там не Всегда все Гладко и Там надо обычно менять файлик эгитконфиг Тоже, где здесь Находится и и еще в итоге бывают все равно ни фига Не, Работа
Михаил Непряхин: вот вонгит-конфикт Поэтому аа, удобнее всего просто в нетерси Добавить вот эту строчку
Михаил Непряхин: просто в риме Открывать Или Там в чем-нибудь и добавлять
Михаил Непряхин: Ну, соответственно в индии этого нет только в линусе ну в маках Тоже, есть
Михаил Непряхин: вот ну в Винусе У Меня здесь ведь, эта. Твоя сэр Это Линулся Реально
Михаил Непряхин: и дальше когда
Михаил Непряхин: Я буду обращаться Вернее кошка будет обращаться по Этому Пути пытаться Эти модули Испушить спулить
Михаил Непряхин: то будет видеть что Там требуется Логин пароль она будет будет Заходить, Автоматически компилятор сюда
Михаил Непряхин: в Нет России, и проверять Нет ли Там для Этого пути Прописанного логиной пароля и если он Там Есть то соответственно Он его берет Авторизуется и
Михаил Непряхин: и точно так же Делают на
Михаил Непряхин: а сияя то есть тоже где то Там Держат этот Файлик создают для Него отдельный токен и также приватные позитории подтягиваются но вообще обычно Всегда есть инструкция как это делается и последний шаг чтобы это все работало
Михаил Непряхин: нужно добавить
Михаил Непряхин: при переменную, нв вот этот гул приват
Михаил Непряхин: вы, добавляете проверяете гоу янве
Михаил Непряхин: гоу
Михаил Непряхин: вот у меня был приват
Михаил Непряхин: и он автоматически добавляется о главном проекте главного сам вот я вот в прошлый Раз, не сказал что на самом деле э не только
Михаил Непряхин: на и
Михаил Непряхин: Сетевые Походы есть в Прокси еще есть сервер
Михаил Непряхин: тот Же самый. Сервер
Михаил Непряхин: а так где он вот он Прокси гэнгенкорг а еще есть сам голэн Корг и по нему Тоже Э происходит обращение когда вы выкачиваете. Модуль
Михаил Непряхин: там хранятся все ваши суммы и он просто проверяет не изменилось ли оно типа дополнительные гарантии того что
Михаил Непряхин: мало ли Там гитлабе агит хаби откуда вы выкачиваете, Моду Или что-нибудь Не поменялось, То есть еще дополнительная гарантия а когда вы используете приватные модули соответственно добавляется вот это и
Михаил Непряхин: компилятор не идет и ничего не проверяет
Михаил Непряхин: потому что типа мы и так Доверяем это наш репозитор
Михаил Непряхин: все ну и дальше делайте букет и добавляется собственно репозиторе суда
Михаил Непряхин: и есть Два варианта Еще работы Можно допустим версионировать не тэгом,
Михаил Непряхин: а Воз нее ну не таким тэгом, а прям хэштегом, хошкамитом
Михаил Непряхин: вот но
Михаил Непряхин: это происходит тогда когда у вас нет тега когда у вас есть, трек он проставлен то здесь будет, трек если так вы не поставили здесь будет, версия ноль ноль и там
Михаил Непряхин: аа ха. Хэшкамит но это неудобно Поэтому лучше, версионировать все моды
Михаил Непряхин: вот ну и все и дальше вы добавляете библиотеку вот убеждаетесь там, что она работает
Михаил Непряхин: вот да.
Паша Вавилон: Раз мы.
Михаил Непряхин: Всем да да смешно.
Паша Вавилон: А в гитдха по то же самое надо делать
Паша Вавилон: когда вот мы свои пропе проекты будем, делать.
Михаил Непряхин: Да да если вы делаете предпроекты окидхаби
Михаил Непряхин: и у вас уже больше двух репозиторов то есть если жепозитория один не заморачивайтесь просто. Все в Пг вот в одной, Папке
Михаил Непряхин: если, у вас появляется второй, Репозиторий про у вас микросервисы Вдруг зачем То вы хотите, да то тогда вы уже делаете вот еще один репозитор слибами
Михаил Непряхин: и там один в один все то же самое просто надо будет сделать и
Михаил Непряхин: так Вопросы, есть по Этой, теме есть ли что потренироваться вот здесь инструкция есть и можете прямо, на моем вот на этом репозиторе потренироваться.
Konstantin: Открой меня маленький во.
dmitriy: Вопрос.
Михаил Непряхин: Давайте.
dmitriy: Да я.
Konstantin: Да и.
Михаил Непряхин: Аа в домашней структуре неттор си он видит с точкой и у Него тут права Всегда урезаны вот Поэтому
Михаил Непряхин: Но смотрите Там Снайперси такая история система ищет нет России.
Михаил Непряхин: Сперва вот с той Структурой где Мы Сейчас находимся
Михаил Непряхин: и Есть такой хак на маках я делал на Маккейде у меня Не работало из домашней директории на такси хотя там файл был
Михаил Непряхин: и для того чтобы хоть как-то она заработала я добавил, на это си просто вот сюда
Михаил Непряхин: и это тоже, сработало прямо сюда добавляете на это россии и добавляете соответственно срочку сюда оно тоже, работает.
Konstantin: И это же надо его ну типа Заигрывать для гитары.
Михаил Непряхин: Да естественно загнули Для гита и вообще это Ну да то есть Как минимум заигнули Для кита придется
Михаил Непряхин: то есть потому что тут просто логин пароль просто берете и комитете если не загнатьте да.
Паша Вавилон: Еще вопрос кто там хотел.
dmitriy: Да у меня вопрос был на кино я быстро а так вот этот впайл то что мы делаем на стройке это у нас относится именно к голпакетам вот если, мы хотим, какую-то либо скачать и То есть к самому репадиторию к своему мы отдельно поется сашу уже подключаемся.
Михаил Непряхин: Да да да верно Нет на самом деле если вы этот саша не создадите и захотите
Михаил Непряхин: Закушить вам просто идоешко Предложат ввести Огнен Пароль. Всегда же Есть Два варианта то. Есть Ведь вы с репозитором можете работать хоть. Через Ссср хоть. О добре
Михаил Непряхин: а хоть, по и
Михаил Непряхин: конфига не прокатывала а Иногда даже вообще никак не получается, вот просто вот бывают ситуации когда оно не работает и все
Михаил Непряхин: а анетроси безотказно Всегда работает Поэтому там если вы хотите поэкспериментировать бездны тарси через Сессаж но оно Тоже должно работать просто не Всегда работать Не У всех а Вот на Этой России, Без отказанности работать, Без Проблем.
dmitriy: А понял спасибо.
Илиас Эззахид: Один вопрос.
Михаил Непряхин: Да давайте давайте начнем.
Илиас Эззахид: А вот госчи получается, он так и версинирован по тэкам получается, как все Опять актуальное.
Михаил Непряхин: Так еще Раз голову.
Михаил Непряхин: Конечно.
Илиас Эззахид: Все.
Михаил Непряхин: Так того джгучи так и в чем вопрос.
Илиас Эззахид: Что он так же верснирован по трегам.
Михаил Непряхин: Да и
Михаил Непряхин: заходим чер роттердам
Михаил Непряхин: и мы видим вот они итоги
Михаил Непряхин: последний трек в пять два два видите они сломали обратную совместимость Поэтому добавили пять мажорная версия,
Михаил Непряхин: и как видим они часто ну они поддерживают ведь, вот они иногда Тут Вон четвертый. Чуть выпускают но по Сути они остальные не поддерживают поддерживают только вот эту ветку пятую
Михаил Непряхин: да и все библиотеки так бывает попадаются древние старые библиотеки ну где авторы почему то, про это не знают и бегу мода бывают попадаются в библиотеки и с ними и труднее работать
Михаил Непряхин: а и какие-то легоси старые Которые вот уже везде переиспользованы и бывает автор просто не делает Теги например, этим решит
Михаил Непряхин: гоуфонд
Михаил Непряхин: вот есть Человечек который в гугле Раньше, работал
Михаил Непряхин: вот этот Эмведан и он поддерживает Более Строгую Версию гоуфонте о смотрите есть такой инструмент гоффунда который ну вот здесь в глазах
Михаил Непряхин: и не Показывал ну короче каждое Сохранение он просто редактирует и
Михаил Непряхин: А приводит Кот в вот У Меня не включен Сейчас к плечу
Михаил Непряхин: значит есть тут, тузах экшен сейф
Михаил Непряхин: Реформат код
Михаил Непряхин: А
Михаил Непряхин: вот можно отдельно. Включить гуфонд при каждом сохранении
Михаил Непряхин: А он короче Приводит вот ли Эти, здесь добавляет эти все пробелы короче просто удобно вот То есть более строгий вот этот формат что, как бы в гол Нет никаких споров сколько там пробелов делать
Михаил Непряхин: потому что при каждом сохранении он просто приводит в такой вид в который считает нужным. Ну, вот это наверное не исправит да вот это так оставить ну какие-то Вещи он Исправляет, прямо он говорит что нет так нельзя а какие-то там допускаются
Михаил Непряхин: и вот этот вот товарищ он и сделал более строгий этот формат Торговых функций называется Мы его даже как бы так Пока не рассматриваем просто для Примера Человек Не Занимается версиированием смотрите У Него здесь одиннадцать Тэгов
Михаил Непряхин: Апрель четырнадцатый.
Михаил Непряхин: А если По камитам посмотреть Ну, Возможно Тоже любое да предложить космооке и тут Тоже. Где-то в апреле
Михаил Непряхин: а ну хотя вот был Еще какой-то комитет
Михаил Непряхин: и он не в тэках
Михаил Непряхин: и из-за этого он рекомендует ставьте, типу, вот так вот Латест а Латвия это Будет ориентироваться не на тек а просто на последний комитет
Михаил Непряхин: вот и Поэтому Ммм вот это не очень удобно такие библиотеки бывают встречаются но в основном все нормальные люди они вот занимаются вот этим версионированием, и также в релизы здесь тоже Всегда он видите здесь ну а здесь релизы он ведет вот
Михаил Непряхин: так а Что за Голову. Рок-файл я чего-то Не понял. Вы можете рассказать Про Голову. В рук файл. Не может такого Уборка и отчета Это пропустил. Какой глубок непонятно
Михаил Непряхин: так она с
Михаил Непряхин: приватными репозиториями закончили
Михаил Непряхин: так давайте
Михаил Непряхин: напишите кто закончил кто прошел. Голду, плюсики поставьте
Михаил Непряхин: задачи и Там гурутины канала это в глтуре Не обязательно
Михаил Непряхин: самое. Главное в галу туре это вот Первая часть вот там просвайся хотя бы про базовый синтаксист там миф и свечей вот это все
Михаил Непряхин: так а кто не прошел поставьте минус никто не прошел Еще.
Илиас Эззахид: Можно, вопрос.
Михаил Непряхин: А давайте.
Илиас Эззахид: Слушайте Меня
Илиас Эззахид: получается при каждом комиссии нужно Э Инкриминировать Трек
Илиас Эззахид: ну как Минимум Мерджер Коз при каждом маршукос.
Михаил Непряхин: И ну вообще да
Михаил Непряхин: вообще да то есть правил. Хорошего тона любой маршал крест любой комитет вы апаете, тэк для того чтобы потом Без Проблем сразу это все а везде обновить
Михаил Непряхин: потому что ну скорее всего когда вы обновляете библиотеки вы хотите, потом и в других местах чтобы оно обновилось
Михаил Непряхин: вот ну? Конечно могут быть и какие-то договоренности что вывод там Раз, и сколько тапаете
Михаил Непряхин: но это бывает редко в основном любой комитет любой большой квест pitatte.
Илиас Эззахид: Та это иная библиотека.
Михаил Непряхин: Да.
Илиас Эззахид: Говорите о каком-то приложении огромное о том.
Михаил Непряхин: Нет Прожить.
Илиас Эззахид: Один.
Михаил Непряхин: Но история приложение отдельная история смотрите в приложении тек. Когда вы тягаете это чаще, всего это релиз. Пруд
Михаил Непряхин: Поэтому когда мы говорим про текки приложения то это уже к тепло и больше относится я Сейчас говорю только про версионирование библиотек
Михаил Непряхин: так пом помпам в основном прошли хорошо это хорошо
Михаил Непряхин: ван Давайте посмотрим значит сегодня Мы посмотрим на Базовый синтаксис
Михаил Непряхин: и на каких-то Вещах остановимся. Которые интересны они интересные ну так
Михаил Непряхин: быстренько пробежимся вот потому Что есть несколько Сложных. Тем
Михаил Непряхин: а типа
Михаил Непряхин: поинтеры указатели он действительно есть тема, свайсы на которых, мы будем долго останавливаться интерфейс опе как в горе реализовано а есть ну что-то вот простое банальное Которое ну
Михаил Непряхин: как бы вы и так в гул тоже видели но может Быть о каких то вещах можно что то Еще рассказать
Михаил Непряхин: значит обзор на да константы контанты есть
Михаил Непряхин: но константы довольно ограниченные
Михаил Непряхин: значит они
Михаил Непряхин: ну чаще всего у вас констанция либо Строка либо число можно булю его значение ведь флот можно сделать константой
Михаил Непряхин: Э, структуру константы сделать нельзя функцию нельзя
Михаил Непряхин: ну и собственно говоря вот еще осталась только йота Сейчас. Про нее расскажу а так как. Бы это и есть все константы
Михаил Непряхин: Ну и
Михаил Непряхин: можно
Михаил Непряхин: типизировать сказать какого типа будет константа можно не типизировать выветиться само зачем это нужно Ну например, когда мы Хотим, Не ин таин. Тридцать Два тогда мы эти пизером отдельно. Если у нас и так Дефолт-инд то мы ее антипизируем
Михаил Непряхин: то Же самое и
Михаил Непряхин: ну стринга Понятно, дело самый частый константор
Михаил Непряхин: можно константы сделать в одну строку, а можно указать вот так вот блоком если, у вас несколько констанн то по хорошему вы их делаете
Михаил Непряхин: либо логической группой
Михаил Непряхин: если это имеет смысл либо
Михаил Непряхин: ну так просто столбик
Михаил Непряхин: а
Михаил Непряхин: константы обычно помещаются Вверх блока то есть вот если, мы говорим о классическом файле на гоу константы обычно живут вверху потом идут переменные потом типы и функции,
Михаил Непряхин: Есть и
Михаил Непряхин: проблема. В гоу с Тем Что гоу Нет
Михаил Непряхин: динамов
Михаил Непряхин: еномов Нет
Михаил Непряхин: потому Что инамы сложно устроены а в гу Философия типа все явно все максимально просто на пальцах без сложностей
Михаил Непряхин: Поэтому есть генератор йота Один, Раз, указывается а дальше оно автоматически поставляется вот Например, здесь мы как бы у нас нулевая балета
Михаил Непряхин: она потом доставляет Звонки Один два три и санты имеет. Значение семь То Есть это Ин
Михаил Непряхин: Но просто используется идиота генератор
Михаил Непряхин: так можете Тоже, увидетьчасток на ее-то плюс Один, и первого значения Один, Там вторая Два
Михаил Непряхин: а
Михаил Непряхин: в основном Используются в Динамо и сценарные библиотеки тоже любят что-нибудь с йота и сделать
Михаил Непряхин: а допустим. Когда Там нужен какой-нибудь битовый сдвиг Или еще какие-нибудь Там Вещи То есть там Любят что-нибудь такое сделать или еще чего-нибудь подобное
Михаил Непряхин: так
Михаил Непряхин: он
Михаил Непряхин: ну здесь вот варианты Как Можно еще и Йоту Использовать
Михаил Непряхин: что, Можно добавлять внутрь что нибудь а она с роботом продолжится с того места где оно остановилось
Михаил Непряхин: Так ну вот Это вот То что в стандартной библиотеке, встречаются какие-нибудь такие сдвиги
Михаил Непряхин: ну вот такое виде вот например, Это, бывает тот клобай и сделают негабайт и гигабайт и вот Таким образом в стандартной Библиотеке Это Делают.
Михаил Непряхин: Ну в жизни так Я Ни разу не видел что Это сделал
Михаил Непряхин: про Флаги тоже То Есть вот Это пример из библиотеки работы с фарвами типа когда Мы Файлов Открыли Только на чтение на запись
Михаил Непряхин: так они могут быть локальные
Михаил Непряхин: то есть можно
Михаил Непряхин: аа их поместить внутрь функции.
Михаил Непряхин: Обычно называют константы с Большой буквы
Михаил Непряхин: есть константы захараткоженные вгошки
Михаил Непряхин: и ну здесь видите вот это и
Михаил Непряхин: Пи и Так далее, то Есть эти константы Есть Есть константы на максимальное число по тридцать Два и все остальные. Соответственно Тоже ведь, Есть максимальные. Инты им восемь шестнадцать э юенты короче
Михаил Непряхин: многие, не знают начинают Писать свою ну, как бы все есть вот пользуйтесь оно Находится в пакете месс
Михаил Непряхин: так. Вопрос где Используется Битва Сдвиг да увидите Если будете где-нибудь удивлять я Не помню где Конкретно Но что-то где-то я видал такое
Михаил Непряхин: Так
Михаил Непряхин: ну вонка ну вот здесь Видите на интах
Михаил Непряхин: он он и был битвой издвиг
Михаил Непряхин: вот пример Свадьбы
Михаил Непряхин: так
Михаил Непряхин: Аа ну все да проконстанты больше сказать особо нечего
Михаил Непряхин: так про
Михаил Непряхин: переменная
Михаил Непряхин: ну перемены тоже. Можно типизировать Можно нет выглядеться автоматически на глобальном уровне обязательно Должна начинаться свара
Михаил Непряхин: а вот на вокальном Не обязательно
Михаил Непряхин: и есть Интересная вообще такая история что
Михаил Непряхин: когда то Гошники называют переменную Через вар
Михаил Непряхин: а когда-то Через двоето все равно
Михаил Непряхин: это довольно забавно потому что нет какого то правила вот когда так как это так
Михаил Непряхин: но вы заметите что есть тенденции когда называют через Вар в остальных случаях называют через, двоеточие Равно
Михаил Непряхин: ну, и через, варвар называют тогда когда Мы Не хотим, указывать никакое значение то есть Мы просто делаем вот так
Михаил Непряхин: и Мы получаем зероалью
Михаил Непряхин: ну вот здесь мне собственно пример то Есть
Михаил Непряхин: с варвар часто Очень. Делают. Когда хотят чтобы Внутри Было Азиавелью прозеро Элью тоже Сейчас Скажу
Михаил Непряхин: Так
Михаил Непряхин: Можно Так Же как инстанты их объединять в блоки
Михаил Непряхин: иногда бывает красиво и удобно иногда можно просто, ну короче тут дело, Вкуса все таки четыре строки вот это занимает запись а то же самое если, бы Мы делали
Михаил Непряхин: а вот так вот оно бы заняло бы две Поэтому как бы здесь трядов да
Михаил Непряхин: ну так тоже довольно часто встречается
Михаил Непряхин: интересная запись когда мы хотим, сделать
Михаил Непряхин: эээ как это называется там
Михаил Непряхин: ну круче замену сделать да поменять местами,
Михаил Непряхин: а это делается вот таким вот образом что игрок становится икс и становится игроком ну в жизни редко встречается но это важно в алгоритмах То есть, вот в алгоритмах без этого Там, Местами вообще никак Поэтому тоже это обычно в Любах, такое встречается
Михаил Непряхин: еще интересная особенность можно записать переменные
Михаил Непряхин: а рядышком Утвердить помню показал прочие игры Запятая икс равняется игрок десять.
Михаил Непряхин: А икс двадцать
Михаил Непряхин: тоже прикольно что можно какие-то Вещи записать Ну допустим у нас три икс игрек Зет, Там допустим какие-нибудь координаты и Мы там можем их вот так вот в одну, строчку записать
Михаил Непряхин: а видите вот здесь меня лягушка поправила набаева, вместо вар двоеточа Ровного ну то есть Тут короче вы Это просто будете когда писать будете замечать где то все равно Используется перемена а где вар,
Михаил Непряхин: а на самом деле мне не очень нравится потому, что и
Михаил Непряхин: кошка она как Будто. Женщина не знаю короче в русскоязычном кабинете так принято называть гошка и в женском
Михаил Непряхин: как место имение
Михаил Непряхин: э роя в женском Роде
Михаил Непряхин: так
Михаил Непряхин: э каунтер помпам да если сделали перемены Можно переопределить
Михаил Непряхин: так здесь
Михаил Непряхин: надо сказать про Затенение. Сейчас Мы про это поговорим по разъяснениям и прозировали ланда давайте. Сделаем перерыв
Михаил Непряхин: значит про шадер винк
Михаил Непряхин: и про озеро ореол
Михаил Непряхин: так все давайте круче перерыв на Две минуты
Михаил Непряхин: так все продолжаем
Михаил Непряхин: так значит есть такая Штука
Михаил Непряхин: который называется шадолинг затенение ну то есть тут, шаг про тень
Михаил Непряхин: эээ значит смотрите когда Мы находимся на одном уровне
Михаил Непряхин: а вот Мы определили переменную и меняем ее ну все перемены Мутабельная в Голову. Тут как бы
Михаил Непряхин: э нету Там мьюта был все можно поменять
Михаил Непряхин: и и
Михаил Непряхин: когда Мы Оказываемся в другой Области. Видимости а за область Видимости Отвечают фигурные скобки
Михаил Непряхин: Даже Можно просто и Написать просто фигурные скобки Но если у нас это цикл или иф или свич Ну Или функция Анонимно короче все что имеет фигурные скобки
Михаил Непряхин: Это другая Область Видимости
Михаил Непряхин: и То что Мы в ней Определим Не будет видно извне
Михаил Непряхин: но то Что Было определено до нее Внутри видно
Михаил Непряхин: и Мы просто можем видеть вот вар. Определили
Михаил Непряхин: а потом Пере определили
Михаил Непряхин: потом Мы опять переопределили То Есть но внутри Области видимости переопределили
Михаил Непряхин: а Потом Мы берем и объявляем
Михаил Непряхин: другую переменную но с этим же именем
Михаил Непряхин: То Есть
Михаил Непряхин: вот ирешка подсвечивает зеленым
Михаил Непряхин: это ну типа что вот этот шадрин происходит что Мы
Михаил Непряхин: Этой перемены затянули эту переменную,
Михаил Непряхин: и мы ее
Михаил Непряхин: а и
Михаил Непряхин: Мужем
Михаил Непряхин: ну то есть можно просто перепутать вот Вместо
Михаил Непряхин: а равно сделать двоеточие равно и это будет уже совершенно Другое действие
Михаил Непряхин: и Мы тут можем потом менять эту переменную, а она Там не поменяется потому что Мы уже работаем вообще с Другой, переменной и вот в этот момент на Этой строчке Мы потеряли доступ к Этой переменной потому что Мы создали другую с этим Же именем Но та.
Михаил Непряхин: Первая Вудискаунда Она меняться Не будет
Михаил Непряхин: вот Начиная с этой строчки
Михаил Непряхин: есть статейка пятьдесят оттенков.
Михаил Непряхин: А гоу как-то так
Михаил Непряхин: шестнадцатого года. Ну она переведена понятное дело с английского то Есть Есть оригинал
Михаил Непряхин: она как Раз посвящена этому и я ее Там
Михаил Непряхин: рекомендую вам прочитать потому что она вот именно, не Сейчас Сейчас просто как бы знаете что есть такая тема как Затемение а потом когда вы немножко попишите еще посмотрите что там еще бывает потому что
Михаил Непряхин: на ошибки довольно Жесткие могут быть
Михаил Непряхин: Так Ну, это просто показывает Что если бы Внутри сделали перемен Вы потом к ней доступ Не будете Иметь потому Что вы ее сделали там внутри другой Области. Видимости а Потом вы оказываетесь на Области. Видимости выше и естественно вы Не имеете к ней доступ потому что она была объявлена там и вот здесь уже
Михаил Непряхин: ну она будет помечена аа грабочкой лектором и собрана сборка мусора если соберет ее не будет
Михаил Непряхин: так и еще примерчик,
Михаил Непряхин: вот у нас Есть глобальная переменная
Михаил Непряхин: аа, Мы и говорим. Что она Десять,
Михаил Непряхин: в и
Михаил Непряхин: функции
Михаил Непряхин: шадувин Мы тоже говорим Что У нас Есть, Переменная Мы ее называем Шадову и говорим Что на двадцать
Михаил Непряхин: совершенно другая перемена
Михаил Непряхин: Мы Проверяем восемь двадцать,
Михаил Непряхин: так здесь у нас другая область, видимости в Этой области видимости Мы Создаем еще одну, переменную, уже третью смотрите вот этот Раз перемены два перемена от репертуара все разные перемены называется одинаково говорим что она тридцать проверяем выводе тридцать
Михаил Непряхин: здесь если Мы попытаемся вывести Шаду, выведеться двадцать, потому, что мы выводим вот эту перемену Раньше,
Михаил Непряхин: на собеседовании
Михаил Непряхин: ээ ну да если, мы выведем, нат шаулинг вот выведет просто вот это
Михаил Непряхин: в общем еды подсказывают что не надо называть переменною
Михаил Непряхин: так как у вас называется переменная которая есть в Этой области видимости и подсвечивает зеленым это дело
Михаил Непряхин: и Поэтому затеняться на ошибках это Окей вот как бы у нас в го очень много ошибок и они будут часто зеленые Это нормально Не надо ошибки Там как-то Называть По-разному, То же начинают Придумывать ту же самую тему, с ошибками
Михаил Непряхин: вот Это касается только обычных переменных то есть как бы такое правило если вот у вас вы пишете что то функции и у вас здесь есть
Михаил Непряхин: доступ к какой То переменной которая была объявлена выше
Михаил Непряхин: и вы ее называете перемену также идые подсвечивают Зеленым Поэтому обычные и
Михаил Непряхин: перемены когда вы видите Это подсвечивается
Михаил Непряхин: переименовывайте То есть там Не знаю как По-разному, в разных Ситуациях называют Но короче Не называйте их Так чтобы Они Затенялись потому Что Это прямо точно Выстроить рано, Или поздно это правда
Михаил Непряхин: единственная грабля такая большая которая вот здесь есть с переменами
Михаил Непряхин: так это это Окей здесь вопросов Нет
Михаил Непряхин: Так и
Михаил Непряхин: еще Одна особенность значит
Михаил Непряхин: Идей
Михаил Непряхин: Нет Не инициативных Наверняка Давайте Сейчас. Нарисуем еще про перемены
Михаил Непряхин: Так значит дизайнеры Языка ну типа там роб пайк
Михаил Непряхин: да
Михаил Непряхин: вообще там вот как будто три дизайнеры три основных дизайнера языка и они топили в разные стороны и вот как бы За очень много хороших. Вещей
Михаил Непряхин: и отвечает. И
Михаил Непряхин: плохое решение. Дизайна ну кроме свайсов конечно с властью тоже откровенно
Михаил Непряхин: не очень безопасно
Михаил Непряхин: так вот значит ну что хорошего есть гол что
Михаил Непряхин: есть такое понятие как зероэлью
Михаил Непряхин: значит когда вы объявляете
Михаил Непряхин: просто какое нибудь число пусть переменная ай типа инд
Михаил Непряхин: то и
Михаил Непряхин: а вот здесь у вас Нет равна Нет равно знака равно Раз Не, знака равно то значение ай
Михаил Непряхин: Будет равно нулю
Михаил Непряхин: а что такое ноль с зеровелью
Михаил Непряхин: То есть когда вы сделали вот такую запись
Михаил Непряхин: Там внутри оказывается Инициализированная память нолем
Михаил Непряхин: и благодаря этому
Михаил Непряхин: не может быть обращения к дни Инициализированной памяти
Михаил Непряхин: и это как бы защита от неопределенного поведения и
Михаил Непряхин: ну в целом как бы целый класс ошибок
Михаил Непряхин: мы избегаем
Михаил Непряхин: значит ну если это число это ноль
Михаил Непряхин: значит так число ноль есть ли у нас строка
Михаил Непряхин: это пустая строка то есть вы просто сделали вар что-то там Старинг, это там внутри, будет пустая строка
Михаил Непряхин: и соответственно
Михаил Непряхин: это
Михаил Непряхин: а тоже ноль
Михаил Непряхин: а если это бульвар значения
Михаил Непряхин: то это фолс
Михаил Непряхин: и
Михаил Непряхин: Что там шесть приметено это все вроде
Михаил Непряхин: Так получается в любом случае будет какое значение с ними как то можно работать да в любом случае будет какое значение с ним можно как то работать то есть не инициатизированной памяти там не будет
Михаил Непряхин: но
Михаил Непряхин: есть такие типы данных как
Михаил Непряхин: аа динамический массив в Голову. Называться. Слайс
Михаил Непряхин: а хэш-мапа она же
Михаил Непряхин: ассоциативный массив
Михаил Непряхин: она же папа хэш-мапа
Михаил Непряхин: словарь
Михаил Непряхин: Что, там еще какие у них бывают
Михаил Непряхин: а эти типы они
Михаил Непряхин: указательное то есть они доступны по указателю
Михаил Непряхин: про это тоже отдельно поговорим но просто надо понимать Что У Указателя зероэлью
Михаил Непряхин: нил.
Михаил Непряхин: И да гоу не избежал Этой ошибки на миллион долларов в гоу уяснил
Михаил Непряхин: в гоу Нет не инициативной памяти Что уже хорошо и мы не можем попасть в мусор, то, есть мы и конечно Исключена такая ситуация, Что мы обращаемся то, есть У нас есть память какая То
Михаил Непряхин: а У нас есть какой-то указатель на Эту память
Михаил Непряхин: и вот обратиться туда и получить Какой То мусор и впоследствии андефайн бихеев
Михаил Непряхин: невозможно
Михаил Непряхин: когда Мы обращаемся по указателю Там Обязательно инициализированная память
Михаил Непряхин: она инициатива либо налем либо пустой строкой да либо нилом
Михаил Непряхин: но ни Это тоже как бы хоть, и память но указывать не что она не инициатива но она инициатива мимо
Михаил Непряхин: вот и Это очень важно Знать про гол, Что все все все значения они по умолчанию имеют какое-то зеркале ну собственно зовут все основные Да которые есть
Михаил Непряхин: так в гол. Есть на да есть мы знаем как она работает и где используется но она используется
Михаил Непряхин: он используется во флотах то есть нанто математический Тип потому что флот может быть э наном
Михаил Непряхин: но мне не э ни разу я не работал так чтобы вот попасть на этот нам есть функции которые проверяют нам Не нам
Михаил Непряхин: и Да Это все есть Но Это Прямо очень редкое и я ни разу Не попадал Даже на самом деле Еще есть комплексные числа в гоу Но Я Тоже. С ними ни разу не работал и вряд ли вам Тоже. Удастся с ними поработать
Михаил Непряхин: вот
Михаил Непряхин: так Сейчас потому Что я что-нибудь упустил.
Михаил Непряхин: Нет Нет ничего Не упустил.
Михаил Непряхин: Аа Есть еще руна да значит Есть еще ровно
Михаил Непряхин: это
Михаил Непряхин: ютаф
Михаил Непряхин: восемь
Михаил Непряхин: а и
Михаил Непряхин: Ю т восемь символ, руна
Михаил Непряхин: дефолтная ну тоже Там
Михаил Непряхин: по сути Под капотом это это байден,
Михаил Непряхин: Поэтому
Михаил Непряхин: есть еще псевдонимбайт
Михаил Непряхин: а оно байден, это в общем-то этот инт восемь
Михаил Непряхин: ой или Че юнь Пусть
Михаил Непряхин: ну, вот То есть Там ну,
Михаил Непряхин: восемь бит
Михаил Непряхин: так Это резервалеоны
Михаил Непряхин: так
Михаил Непряхин: дальше
Михаил Непряхин: ну арифметика
Михаил Непряхин: арифметика вся есть естественно чтобы ее не было
Михаил Непряхин: Остаток отделения
Михаил Непряхин: ага значит есть инкримент и диклемент
Михаил Непряхин: но Он Только Только Справа ну То есть Слева Слева такого Нет типа как в Пхп
Михаил Непряхин: да и есть возможность сократить То есть это Присваивание плюс равно Это соответственно
Михаил Непряхин: Сокращенная запись Э а плюс два ну. И То же самое с минусом сделением с остатком отделением по морю
Михаил Непряхин: так. Сравнение
Михаил Непряхин: операторы сравнения но равно и восклицательный знак равно тут просто у Меня и дедушка схватывает в такой
Михаил Непряхин: вот Это на самом деле устроена так Все равно Это неравенство
Михаил Непряхин: так больше меньше Ну и короче Все Есть да Логическая и к сожалению, Нету алиаса для логического и как энд где немножко. Страдают от этого потому что мне Нравится больше
Михаил Непряхин: вот такого Нет к сожалению, только два амстерда это и
Михаил Непряхин: ну и тут точно предсказуемо оно работает
Михаил Непряхин: или тоже к сожалению нет ора почему бы его ни завести вообще Не понимаю о и энд было бы Гораздо читаеме в общем
Михаил Непряхин: Только вот две вертикальные черты это магическое Или
Михаил Непряхин: и можно сделать Отрицание через расскательный знак к сожалению, часто очень ухудшает читаемость но в гоу Так принято То есть
Михаил Непряхин: ну я сама за явность если. Прям хочется подчеркнуть можно прям явно написать что
Михаил Непряхин: тру, не равно фоукс например, а не
Михаил Непряхин: чем развлекательный знак
Михаил Непряхин: ну есть специальные типы свои типы просто отдельные типа
Михаил Непряхин: то есть для Финансовых
Михаил Непряхин: для финансов есть свои типы
Михаил Непряхин: то есть потому Что эти все равно не подходят Но чисто с плавающей запятой не подходят для работы с Финансами Поэтому стройных типов для работы с финансами нет но естественно Есть Сторонние, библиотеки для и для финтеха для коты протобав Тоже Встроенная эта штука
Михаил Непряхин: да
Михаил Непряхин: так
Михаил Непряхин: побитые операции Тоже. Есть Вот здесь пример можете Глянуть Э. Но как бы Э.
Михаил Непряхин: Даже если вы будете работать с битами вы все равно будете работать с какими-то примерами ну То есть Это скорее когда вы либо битмапу какую-то делаете либо там на низком уровне Это уже какой-то конкретном пиете Но мне приходилось работать Но очень быстро Забывается это все и
Михаил Непряхин: это То что редко использую что очень быстро Забывается Поэтому каждый Раз когда приходится Работать с битами я завожу и смотрю как это делается
Михаил Непряхин: так
Михаил Непряхин: Ну да здесь у меня значит примерчик что сколько места занимает ну смотрите
Михаил Непряхин: инту у нас восемь бай
Михаил Непряхин: потому, что
Михаил Непряхин: в шестидесяти четырехразрядной операционной системе инд принимает число Шестьдесят четыре, в трясивых зарядные тридцать два ну кто общий и
Михаил Непряхин: вгуб не принято экономить на байтах то есть по дефолту все работают с интами по дефолту интета инт шестьдесят четыре.
Михаил Непряхин: Ли все Же, Как бы, Инт Это алас для инны шестьдесят четыре. Соответственно они восемь бай
Михаил Непряхин: шестьдесят четыре. Это шестьдесят четыре. Бита То есть о восьми байтах восемь но восемь шестьдесят четыре.
Михаил Непряхин: Аа Мы тут же я буду говорить про биты байды немножко там где это важно
Михаил Непряхин: Не Пугайтесь битов байтов Не там Не обязательно все Скандалы понимать Вот там где прямо То Вот суперважно
Михаил Непряхин: и там где с колю это как бы Можно Упомянуть Там я упоминаю то есть, это Так Ознакомительно
Михаил Непряхин: ну и Так далее, да шестнадцати это Шестнадцать бит соответственно два Байта
Михаил Непряхин: ай восемь
Михаил Непряхин: восемь бит
Михаил Непряхин: ну. То же самое для ценочисленных то есть это может быть и в минус и в плюс то есть юинтовое это Только в плюс
Михаил Непряхин: то есть начиная с ноля и дальше в плюс
Михаил Непряхин: им,
Михаил Непряхин: есть байт
Михаил Непряхин: байт это
Михаил Непряхин: а альяс для юин восемь
Михаил Непряхин: а у роны я перепутал урны авиации Не тридцать Два Окей Извините я думал байден, у роны ляз Нет это Не тридцать два ну значит и Азербайджан и Не тридцать два
Михаил Непряхин: да и
Михаил Непряхин: рона четыре байта
Михаил Непряхин: ба баба здесь пока это все неинтересно ну. Здесь с Провощими Числами то же самое шестьдесят четыре метра тридцать Два Бита
Михаил Непряхин: булев тип это один байт
Михаил Непряхин: то есть восемь бит Казалось бы почему у достаточно же одного беда Но вот Нет потому что Выравнивание Про это Тоже, Поговорим
Михаил Непряхин: То есть вообще минимальная Единица
Михаил Непряхин: и и
Михаил Непряхин: Так меньше чем с байтом а не работал.
Михаил Непряхин: По строкам
Михаил Непряхин: это про размеры тоже потом поговорим
Михаил Непряхин: про структуру
Михаил Непряхин: тоже отдельно. Поговорим
Михаил Непряхин: noise
Михаил Непряхин: Так а дальше значит есть в Голову. Массивы
Михаил Непряхин: а массив это просто область памяти подряд идущая
Михаил Непряхин: То есть вот есть такая тема Что например, в некоторых языках
Михаил Непряхин: ну в динамических языках Там или Нет
Михаил Непряхин: аа в виках. Типа джавы
Михаил Непряхин: А когда вы работаете с каким-нибудь типом То как он в памяти представлен Ваша загадка неизвестно
Михаил Непряхин: когда вы работаете с типами в Гоу То оно вот как вы видите Так оно в памяти и Представлено вот видите вы Инд
Михаил Непряхин: ну ладно связи с простыми типами Все просто да ну Окей значит вот Есть У нас массив
Михаил Непряхин: массив из восьми элементов восьми винтов
Михаил Непряхин: значит в памяти реально Это будет
Михаил Непряхин: Непрерывная Область памяти
Михаил Непряхин: с восемью ячейками
Михаил Непряхин: и соответственно как бы
Михаил Непряхин: Мы можем легко зная длину То Есть У Массива Есть Э лен
Михаил Непряхин: длина ну она в этом случае равна восемь то начал в квадратных скобках. Так указано
Михаил Непряхин: и мы соответственно можем в любое Место, Этой памяти прыгнуть просто по сдвигу то есть это Супербыстро
Михаил Непряхин: Так
Михаил Непряхин: с массивом напрямую почти никто не работает вот здесь значит массив из восьми элементов ну потому что Нулевой элемент первый и вот всего восемь
Михаил Непряхин: то. Есть восемь строк
Михаил Непряхин: Например, можно вот с днями Недели Так работать
Михаил Непряхин: а с массивом
Михаил Непряхин: массив можно объявить вот так вот через вар,
Михаил Непряхин: и там зероэлью будет
Михаил Непряхин: а восемь пустых элементов то, есть восемь пустых строк
Михаил Непряхин: а потом по одной строчке вот так вот Добавить в нулевой элемент строку, в первый элемент строку, ну и так далее можно это сделать в одну строку сразу про инициативу то есть вообще когда вот к любому типу справа вы добавляете фигурные скобки
Михаил Непряхин: это ну, то есть вот так вот это просто если вы делаете через вар например, Сейчас
Михаил Непряхин: Так вот через вар это было бы
Михаил Непряхин: а просто зевалью
Михаил Непряхин: если, вы добавляете фигурные скобки
Михаил Непряхин: то у вас уже инициативная память получается
Михаил Непряхин: и Она будет заполнена ну точнее как бы это Одно, и то же в случае с массивом но Например, в случае с майством. Нет мы до свайся Дойдем Продимический массив
Михаил Непряхин: можно Сразу Проигрывать ее Значениями
Михаил Непряхин: Еще Из особенностей значит можно добавить три точки вот Так вот и просто здесь любое Количество Добавить элементов оно в итоге в правильный Тип выведется То есть Там автовывод есть
Михаил Непряхин: так
Михаил Непряхин: у массива есть длина ее можно проверить но просто вы видится, вот этого число Которое здесь есть
Михаил Непряхин: число Которое отвечает. За длину массива оно является частью типа и Если У вас Два Массива Один вот с шестью семью элементами второй с Восьми элементами То это будут Разные типы
Михаил Непряхин: так еще из Интересного
Михаил Непряхин: вот значит интересный пример работы с массивом
Михаил Непряхин: вы можете сделать Йоту
Михаил Непряхин: йо То Начинается вот как бы пример где нужна йоа значит у вас понедельник Начинается с ноля сандой шесть
Михаил Непряхин: и Это
Михаил Непряхин: дальше вы Инициализируете Мессию с Этими данными а потом вы можете обращаться к какому то элементу массива вот по Этой переменной из йоты
Михаил Непряхин: и ну прикольно что вы можете Обратиться вот так вот по нулю и достать понедельник а можете и
Михаил Непряхин: вот Так можно работать с ними Неделю
Михаил Непряхин: Так Так Так ну по мосиву можно не торопиться вот паранджу то есть можно по Ммм
Михаил Непряхин: по индексу контролироваться можно нейтренироваться просто вот подряд по литератору
Михаил Непряхин: и ну преимущественно конечно использовать через Раньше,
Михаил Непряхин: а потому, что вы не можете выйти за границу массива
Михаил Непряхин: здесь кстати вы тоже не можете выйти за границу массива потому что так как массив он Эстетически типизирован то, есть здесь как бы Сильная черта огушки проявляется Что все Эстетически типизировано вы не сможете скомпелировать такой код который будет к Массиву допустим из семи элементов
Михаил Непряхин: а обращаясь к восьмому просто гошка не Даст Компелировать Ему чтобы выйти из границу массива но с Асвайсом можно то есть с массивом нельзя с димическим
Михаил Непряхин: а массива можно а что такое динамический массив
Михаил Непряхин: вот смотрите есть у нас реальный просто массив
Михаил Непряхин: но дело, в том что. С Ним не очень удобно работать потому что. Ну как вы хотите. Работать с массивом
Михаил Непряхин: а вы например хотите. Добавить элемент какой нибудь
Михаил Непряхин: в и
Михаил Непряхин: если, у вас уже все элементы заполнены вы это сделать не сможете потому, что вам надо будет создать допустим вот У вас аа массив на
Михаил Непряхин: давайте Сделаю на восемь элементов
Михаил Непряхин: отмасив вас на восемь элементов ну первый нулевой
Михаил Непряхин: значит ээ вы все восемь элементов добавили хотите, Добавить Еще один
Михаил Непряхин: вы этого сделать не можете потому что ну вот у вас область. Памяти как бы вам чтобы туда добавить Еще а там дальше Уже Не Инициатива память там может Быть куда-то другой находиться
Михаил Непряхин: вам нужно создать другой массив Уже больше длины
Михаил Непряхин: ну обычно выделяют следующий массив в два раза больше размером то есть если, у вас будут на восемь элементов вот выделяете вы на шестнадцать элементов выделяете массив на шестнадцать элементов
Михаил Непряхин: в этот новый, массив на шестнадцать элементов надо скопировать вот эти вот все значения вот вы все их копируете
Михаил Непряхин: этот массив уже можно Будет удалить соответственно этот Удаляется и Вы работаете уже вот с этим массивом
Михаил Непряхин: Но делать Это руками Неудобно
Михаил Непряхин: Поэтому есть обертка над этими массивами
Михаил Непряхин: и Она выглядит точно так же
Михаил Непряхин: как и массив
Михаил Непряхин: просто внутри вот здесь не указывается число
Михаил Непряхин: здесь пусто
Михаил Непряхин: и это указывает на То. Что. Вот Он будет динамически расширяться
Михаил Непряхин: То. Есть, вы почти ну самая Популярная структура, с которой вы будете работать! Это слайс Или динамический массив
Михаил Непряхин: вы в Него можете без Проблем добавлять новые элементы
Михаил Непряхин: ну собственно чуть-чуть надо относимо да можно по нему иерироваться. И так далее,
Михаил Непряхин: вот и он будет сам каждый Раз делать вот Эти манипуляции То есть Создавать если он будет видеть что, вы Выходите за границей Массива он создаст Новый из предыдущего. Все скопирует в Новый и даст вам Чтоб вы пользовались
Михаил Непряхин: Не понимаю почему всем, этом смысл семь лет потому что первый элемент
Михаил Непряхин: ноль
Михаил Непряхин: а ну тут возможно
Михаил Непряхин: ну да я туплю соря короче вот здесь число это лен да да и
Михаил Непряхин: сколько по строку выделяется памяти если массив неправильно. Память сколько памяти будет занимать десять стен
Михаил Непряхин: Ну это хороший вопрос давайте поговорим про
Михаил Непряхин: стрингу
Михаил Непряхин: что такое стринга
Михаил Непряхин: Да
Михаил Непряхин: Что стринга на самом деле это динамический массив
Михаил Непряхин: но с особенностями
Михаил Непряхин: Сейчас Что вы говорите стринги надо досконально поговорить о динамическом мосе
Михаил Непряхин: значит так Ммм
Михаил Непряхин: значит вот У нас с вайс
Михаил Непряхин: а Давайте Интовый
Михаил Непряхин: Это указательный Тип
Михаил Непряхин: То Есть У нас Реально память Но так память делится у нас на стек и кучу
Михаил Непряхин: стек
Михаил Непряхин: ковгу это не Совсем так как обычный в программе но
Михаил Непряхин: Пока будем думать о нем просто как о обычном стеке в обычном стеке Мы просто Кладем
Михаил Непряхин: а добавляем ну. Или наоборот да Там обычно рисуют что Мы как-то левочки Войдем
Михаил Непряхин: аа какие-то переменные насстек и Потом они также Оттуда убираются То есть эта очередь
Михаил Непряхин: а ты первый пришел последний Вышел
Михаил Непряхин: куча Это область памяти
Михаил Непряхин: которая просто выделяется
Михаил Непряхин: и здесь Ну, Там в хаотичном порядке
Михаил Непряхин: просто выделяются объекты Там это вообще отдельно, очень сложная тема как они там выделяются но вот Мы просто будем думать, о том Что Это область памяти которую Мы получили и Мы можем Там, как и занять какую То память
Михаил Непряхин: а куча Медленная почему Медленная потому что вот чтобы Это произвести
Михаил Непряхин: а нужно сделать много манипуляций ну во Первых надо убедиться что вот Область памяти которую Мы Хотим? Занять она никем не занята
Михаил Непряхин: Мы должны синхронизироваться с другими теми кто тоже хочет выделить образ памяти чтобы Мы вместе не заняли какую то одну и ту Же область памяти
Михаил Непряхин: эээ
Михаил Непряхин: плюс объекты которые больше не используются в куче они собираются горбочкой лектором
Михаил Непряхин: Горбочка лектор это сборка мусора
Михаил Непряхин: это Алгоритм который в несколько фас
Михаил Непряхин: Сперва ищет объекты
Михаил Непряхин: ну во-первых Там просто
Михаил Непряхин: переходится по всем Указателям
Михаил Непряхин: Ищутся и Добавляются в очередь все объекты которые Сейчас живые на которые кто то указывает
Михаил Непряхин: потом Проверяется Что на них перестал тот Указывать то есть пока, указатель есть на объект
Михаил Непряхин: а Лево Не собирает Сборку мусора как Только эта связь исчезает
Михаил Непряхин: а
Михаил Непряхин: есть стадия горбочка лектора и Постепенно эти объекты Помечаются на Удаление. И Освобождаются Да и память Освобождается Это все происходит
Михаил Непряхин: а в Несколько этапов с Горутинами Но здесь Есть Стоп ворот
Михаил Непряхин: и и
Михаил Непряхин: и он короткий но тем не менее как, бы
Михаил Непряхин: Раз, в периодичность какую-то этот горбочкой лектор вызывается работает и собирает вот эти объекты ну или помещают или проверяют Что на них кто-то указывает
Михаил Непряхин: так вот
Михаил Непряхин: и плюс тека в том Что когда У нас идет, выполняться код программы Допустим раз какая-то переменная вот надо там Инт инициатизировать раз она просто инициатировалась и все
Михаил Непряхин: а вот если, приходит инструкция что надо
Михаил Непряхин: динамический массив занициализировать вот тут, уже без авокации нельзя потому, что
Михаил Непряхин: эээ
Михаил Непряхин: от динамического массива
Михаил Непряхин: настэк кладется указатель указатель вот сюда вот в кучу на этот реальный. Живой объект который вот там подряд в памяти идет,
Михаил Непряхин: и он уже кладется вот этот вот указатель кладется на стек
Михаил Непряхин: а реальная память она там ну потому что она может быть большая мы нам на стыке не Можем много памяти Держать Стеккон все равно более маленький компактный а куча ну вот сколько есть оперативы у нас в распоряжении вот она вся,
Михаил Непряхин: там ну мы про это еще поговорим про особенности здесь реализации сейчас. Нам важно понять что из себя представляет структура с вайсом
Михаил Непряхин: А так как под слайсом
Михаил Непряхин: А реальный массив допустим мы его здесь выделили на восемь элементов
Михаил Непряхин: и когда мы его создали он будет указывать вот на этот массив
Михаил Непряхин: а как выглядит структура с вайсом туркурсвайся состоит. Из трех полей
Михаил Непряхин: первое поле. Это поинтер указатель вот на этот вот на Место, в куче
Михаил Непряхин: второе поле. Это лен
Михаил Непряхин: это просто обычный инд
Михаил Непряхин: и третье поле это Капасити это тоже инд
Михаил Непряхин: капасти это
Михаил Непряхин: По Сути вот это вот число Сколько там Сейчас ну Сколько максимальное Количество элементов в массиве у нас допустим восемь вот оно тут бодром на восемь лен когда мы создадим пустой сласть ну, он Ботно нулю равен потому Что лен говорит где Сейчас Находится указатель
Михаил Непряхин: вот Куда добавлять Новый элемент когда Мы добавили Новый элемент этот указатель сдвигается вперед. И ин становится один
Михаил Непряхин: То есть Это просто офсет такой лен
Михаил Непряхин: и
Михаил Непряхин: вот Это вот
Михаил Непряхин: а структура
Михаил Непряхин: Это называется, толстый указатель
Михаил Непряхин: То есть смотрите Мы Можем ведь просто указатель Держать на вот этот массив
Михаил Непряхин: но мы еще дополнительную. Метоинформацию указываем в виде леной копасти для удобства работы с вайсом
Михаил Непряхин: и получается что вот эту структуру мы и кладем вот сюда на стек
Михаил Непряхин: а Указывать она будет вот туда, в кучу
Михаил Непряхин: то есть слайс Это вот это толстый указатель такая сложная Структура состоящая Из двух Частей часть хранится. На стеке
Михаил Непряхин: часть хранится. В куче
Михаил Непряхин: размер указателя
Михаил Непряхин: а ну Тоже можем считать инт то есть это восемь
Михаил Непряхин: а байден, получается, это восемь бай это восемь байдена это восемь бай всего Двадцать четыре Байта
Михаил Непряхин: итак указатель этот слайс размер на стейке имеет Двадцать четыре байта
Михаил Непряхин: какой же размер будет в куче если у нас инт это восемь и
Михаил Непряхин: и если мы хотим? Почитать Ну просто Двадцать четыре складываем с шестьдесят четырьмя Но как бы это Не имеет, смысла потому. Что важно по отдельности Сколько настей занимает Сколько в куче
Михаил Непряхин: эээ
Михаил Непряхин: стек Не требует адвокаций Стег супербыстрой нас Так очень быстро положить быстро снять Не Задействуя цк горбочкой лектор Поэтому
Михаил Непряхин: неуказательные типы
Михаил Непряхин: они Всегда помещаются на стекле воют быстрее
Михаил Непряхин: Ммм
Михаил Непряхин: Но и
Михаил Непряхин: м
Михаил Непряхин: вторая часть ээ Мы про строку говорили да что такое строка значит строка
Михаил Непряхин: Это на Самом деле Тоже как бы слайс строка Это Тоже свайс
Михаил Непряхин: Только без
Михаил Непряхин: Копа сити
Михаил Непряхин: потому что строка в гол неизменяемы это надо запомнить значит строка в гоу
Михаил Непряхин: не Изменяемая
Михаил Непряхин: а
Михаил Непряхин: От этого из этого делается Вывод первый Что когда мы констатируем строки то Мы обязательно Выделяем память при этом ну потому Что
Михаил Непряхин: чтобы сложить Две Строки
Михаил Непряхин: ну а
Михаил Непряхин: Мы Не можем Добавить в одну Строку Другую строку Мы обязательно Перевыделяем память
Михаил Непряхин: вот и Второе следствие что ну Строки очень легко конвертируются с лайсы
Михаил Непряхин: и слайсы легко конвертируются в Строки
Михаил Непряхин: То есть по большому Счету Ну Что с слайся Что о Стринге можно думать, как что-то одно, и То же
Михаил Непряхин: Ну Только За тем исключением Что нету кпасть в старики в стаке потому Что в этом Нет смысла Ничего Покапастьте нам нужно только для того чтобы понять Мы когда будем Сейчас аппен делать у нас Там
Михаил Непряхин: а есть общее место Мы можем коза добавить
Михаил Непряхин: у строки нет такой Проблемы Мы Всегда Выделяем память при аппенде страхи Потому Что строки Неизменяемы Поэтому имеет смысл только лен оно же и Есть опасить то Есть вот Какого Размера У нас Строка
Михаил Непряхин: Поэтому у нас в строке, два Элемента это Не двадцать четыре это шестнадцать байден, на стэке,
Михаил Непряхин: а и
Михаил Непряхин: в куче Строка выглядит точно Так же как обычный свайс
Михаил Непряхин: но за исключением того что строка это гарантировано ютаф восемь
Михаил Непряхин: эээ
Михаил Непряхин: а
Михаил Непряхин: валидированная
Михаил Непряхин: строка то есть как бы
Михаил Непряхин: э есть гарантия что если вы создали строку то она гарантирована брод и то восемь,
Михаил Непряхин: и соответственно тип у нее будет на самом деле
Михаил Непряхин: слайсбайт
Михаил Непряхин: вот строка это свадьбайт абайт это этот юинд
Михаил Непряхин: это аляс для юинта восемь
Михаил Непряхин: и Поэтому очень легко конвертируется
Михаил Непряхин: свадьба и Ты
Михаил Непряхин: ну конечно они должны быть валины ею восемь да а в стрингу
Михаил Непряхин: и обратно если, у вас есть сложный байт
Михаил Непряхин: вы легко можете его превратить в стенгу довольно дешево если у вас есть тренга вы легко превращаете ее в селайс-байт потому что там под капотом это одно, и То же
Михаил Непряхин: и только лишь то что эта строка О вернее тут мне не нужно взять кавычки то Есть такое просто в стране да
Михаил Непряхин: просто стринг, то Есть Стринг, Выглядит просто так Но Под капотом это свайсьбайт
Михаил Непряхин: так
Михаил Непряхин: давайте посмотрим сколько Под строку Выдается память если массив Непрерывная память сколько памяти будет за мантией сестренка
Михаил Непряхин: это будет э нет смотрите десять,
Михаил Непряхин: тринг, это как бы массив
Михаил Непряхин: из Стрингов
Михаил Непряхин: то есть как бы это вообще уже Другой типа это вот Сейчас не про это это просто
Михаил Непряхин: смотреть стринга это шестнадцать байт, так ведь потому что, это указатель и это лен
Михаил Непряхин: Поэтому когда вы пишете слайс
Михаил Непряхин: десять
Михаил Непряхин: а Стринг,
Михаил Непряхин: ну, это вот просто. Десять умножить на шестнадцать
Михаил Непряхин: то есть это сто шестьдесят бай
Михаил Непряхин: вот ну, это на это на стеке а Сколько Там
Михаил Непряхин: в куча
Михаил Непряхин: ну когда оно зеро элью когда вы просто так сделали Ничего не инициализировали это будет пустая стакана ничего Не будет занимать но когда вы ее добавите Неизвестно Сколько вы добавите столько его от
Михаил Непряхин: стыки Сдержанность куча ну. Два варианта а
Михаил Непряхин: строки которые вот вы создали
Михаил Непряхин: просто вот
Михаил Непряхин: здесь я где-нибудь создам строку
Михаил Непряхин: вот дей и понедельник
Михаил Непряхин: вот такие строки его так принято Делать
Михаил Непряхин: вот вот эта вот строка она вообще будет в
Михаил Непряхин: неизменяемой области памяти как бы вшита на момент поднятия программы. То есть если Еще вот говорить про Область памяти
Михаил Непряхин: ну как это выглядит
Михаил Непряхин: вот классическая
Михаил Непряхин: поднимаем Мы про процесс
Михаил Непряхин: вот это вот вся, память какая у нас есть вот вот обсуждали процессу то есть Это виртуальное адресное пространство
Михаил Непряхин: и у нас она делится на секции то есть есть секция с константами
Михаил Непряхин: здесь константы есть секция с переменами глобальными
Михаил Непряхин: потом есть секция с текстом функций то есть здесь просто функции находятся в памяти
Михаил Непряхин: и есть область с переменными ну типа вот десять Тренги будут находиться они Там тоже как называется по своему то есть это и не стек и не куча
Михаил Непряхин: то есть классическая в классической программе дальше идет стек
Михаил Непряхин: и он растет
Михаил Непряхин: туда, а с другой стороны куча
Михаил Непряхин: и она растет навстречу стеку и вот так оно заполняется то есть оно так растет растет и куча растет
Михаил Непряхин: а это классическая программа но гоу не, такой тут, мы на следующем наверное уроке
Михаил Непряхин: илья пиличер следующий поговорим о том почему он не такой но это надо уже немножко в кружочке залезть
Михаил Непряхин: но смысл в том что в гол куча она и короче всю кучу
Михаил Непряхин: все куча и стеки Они такие вот Маленькие потому что У каждой грустины Есть свой стек и они все вместе живут Поэтому как бы тут гол ни классический язык он
Михаил Непряхин: имеет свой собственный планировщик свой собственный рантайм гоу это язык, как бы эта операционная система такая менее операционная система
Михаил Непряхин: а Еще одна, то Есть у, нас здесь операционная система там линукс
Михаил Непряхин: а когда вы Запускаете приложение На гоу это Еще одна, Маленькая. Операционная система Со Своим планировщиком и там Устройства внутри не хватит не такое классическое как в Обычной программе Поэтому в Голову. Все свободное место, Можно рассматривать как
Михаил Непряхин: Куча и стеки Это такие Маленькие Выделения памяти
Михаил Непряхин: кучу
Михаил Непряхин: так как сравнить два свайса сравнения Нет то Есть если вы посмотрите на кампеэ бал
Михаил Непряхин: значит эээ вот Есть У нас
Михаил Непряхин: частный нем
Михаил Непряхин: где-то недавно добавляли
Михаил Непряхин: кампербол
Михаил Непряхин: вот комэмол короче это для дженериков. Добавляли тип значит смотрите что У нас сравниваемые
Михаил Непряхин: буряны Можно сравнить Можно числа Старинги
Михаил Непряхин: поинтерре
Михаил Непряхин: указатели каналы
Михаил Непряхин: и массивы
Михаил Непряхин: структуры если у них все типы внутри и компрабо
Михаил Непряхин: а слайцев нет
Михаил Непряхин: то есть слайс некомпарабо
Михаил Непряхин: почему орей и сталинга эта компа работа сравниваемая
Михаил Непряхин: ну потому Что это
Михаил Непряхин: Э Типы данных которая Не изменяемая
Михаил Непряхин: и ну Странгу просто потому Что ну как на стрельбу мы с Вами сравниваем да ничего Не поделать Мы сравниваем в стране то есть когда Мы сравниваем Одну страницу со своей а с другой ну вот Мы просто вот так. Вот Идем подряд и сравниваем обидно
Михаил Непряхин: асвайсы Нет
Михаил Непряхин: потому Что
Михаил Непряхин: слайс сравнение с майсом Дорогая операция
Михаил Непряхин: То Есть То же самое как Удаление. Элемента и Сальса Дорогая операция и Поэтому Нет такого Синтаксиса потому Что ну типа Есть Уродливый Синтез ну типа Делаете Водорым синтаксисом типа
Михаил Непряхин: короче говоря то что быстро Делается в Голову. Имеет простой синтаксис то что дорогое имеет специально сложный синтаксис Это тоже философия робо пайка специально так придумано типа чтобы ты задумался что если что то уродливое написано скорее всего это медленно
Михаил Непряхин: просто типа чтобы и внимание обращали Людей чтобы Не писали уродливо а думали как написать красиво
Михаил Непряхин: и Поэтому когда Мы сравниваем два с лайса Мы вот просто идем по Двум Свайсам сравниваем его элементы
Михаил Непряхин: если строка она гарантирована хотя бы может быть и с ээ там на
Михаил Непряхин: это байты Да то Есть это ювен восемь Тип
Михаил Непряхин: То в Сварсе вы можете Что угодно. Быть То есть два свайся вы можете Сравнивать а власть может состоять из чего угодно. И это может быть Непредсказуемо, долго и Дорого и Поэтому есть вы просто пишете отдельный Синтекс и сравниваете с вайсом
Михаил Непряхин: там заюзать но в стандартном языке этого Нету
Михаил Непряхин: То же самое Интерфейсы Раньше, до появления Дженериков.
Михаил Непряхин: Как бы вообще работа с энтрофейсами Это Дорого но когда дженерки Появились для короткого Синтаксиса Пришлось добавить Энни
Михаил Непряхин: и Сейчас нету такого вот Явного что типа Энни что Это Дорого на Самом деле Это интерфейс Это Дорого
Михаил Непряхин: так смотрите вот Это вот
Михаил Непряхин: тема с памятью
Михаил Непряхин: и она
Михаил Непряхин: мы вот как бы Прослаясь будем говорить очень очень много
Михаил Непряхин: потому что первая тема на собесах
Михаил Непряхин: это слайс
Михаил Непряхин: и круче с лаиса надо знать досконально Вопросы, досконально как и не работают потому, что, ну просто банально вы сразу себе. Не проходите если Вы не Отвечаете на Вопросы, по с вальсом и не Решаете задачи посвайца
Михаил Непряхин: Поэтому может показаться что тут. Прям сложно стоит куча все такое ну я Стараюсь объяснять как Были тут максимально просто на пальцах
Михаил Непряхин: и Но мы Еще много Раз, к Этому вернемся и в Любом случае надо и
Михаил Непряхин: просто отдельная тема
Михаил Непряхин: и как Будто сбоку. Проделанное в гол. Ну хотя на Самом деле это Кор функциональность но оно очень своеобразное и не похоже ни на один Другой язык,
Михаил Непряхин: а и со Слайсями та Же тема что с Лайсы они очень сложно Или как бы с ними сложно работать. Легко Выстроить ногу
Михаил Непряхин: Поэтому это первые, темы на собесах и на в кодинге Но когда вы понимаете как оно в памяти устроено вам становится супер просто с этим работать. Потому что, вы прикидываете просто что, происходит под капотом
Михаил Непряхин: и вам проще отвечать на Все Вопросы, и проще понимать потом в кодексе как оно работает Ну что там подвохов. Очень много потому что гонка данных может Возникнуть потому Что Гоу это все-таки с Гортинами Мы Работаем Вот Поэтому это как бы, первое Касание. Тут слайсы строки Мы посмотрели
Михаил Непряхин: если, вы чего-то Не, поняли то ничего Страшного, Мы с разных сторон Еще на них будем Заходить и все равно рано или поздно разберемся Вот если в других языках Активно вы Работали с Хэшмапами
Михаил Непряхин: в Голову. Называется эта Мапа
Михаил Непряхин: То Что
Михаил Непряхин: в Голову. Будете Работать в основном Свайсами и вот как бы все случаи когда можно заюзить либо мапу либо свайс вы будете выбирать слайс потому что это ну Максимально легковесная Штука она работает быстро
Михаил Непряхин: папа вот это уже такая монструозная конструкция и Лишний Раз мапы юзать не принято то есть вот эти вот ассоциативные словари
Михаил Непряхин: и это используется Только тогда когда по-другому нельзя
Михаил Непряхин: вот Поэтому кроме
Михаил Непряхин: груптинканамов вот Основная структура это работа работа со свадьбой
Михаил Непряхин: а оно ж и оказывается изстренька под капоттом Ну как Бы Это одно, и то Же да там Что Что стринга устроена Точно так Же как с лайс
Михаил Непряхин: так давайте Вопросы, давайте поставьте плюсики или плюс минусики или минусики понятна ли вот эта тема поняли ли вы что то прослайся или нет как вообще заходит такое объяснение
Михаил Непряхин: со стейком с кучей
Михаил Непряхин: после службы фронтейнеры как бы понимаешь это оно у тебя
Михаил Непряхин: не так просто,
Михаил Непряхин: это было заходить
Михаил Непряхин: оно просто на самом деле как бы там на самом деле дорбело но это хорошо хорошо
Михаил Непряхин: потому что
Михаил Непряхин: стек куча Ммм опять, же Почему мы проходим да нас обеток могут спросить можно как нибудь выйти на Это да радион что Это просите
Михаил Непряхин: дайте голосом если вопросы? Есть
Михаил Непряхин: можете занять носом
Михаил Непряхин: окей.
David R: О Есть вопрос Можно.
Михаил Непряхин: Давайте.
David R: Есть ощущение что при работе со слайпами и мапами можно столкнуться с нилпоинтерами Какова вероятность и как это обходится каждый раз появляются перемены перед испателем мире как вот вот это непонятно.
Михаил Непряхин: Да про то что. Вам говорить короче ну ма па
Михаил Непряхин: мапу надо проверять на Него
Михаил Непряхин: то есть перед работой с мапой нужно Проверять Что она Не равна ни У потому Что может быть Не упомнят ресепшен
Михаил Непряхин: смотрите если говорить про Топ, ошибок вот Которые Случаются Воронтами значит
Михаил Непряхин: топ Один Это
Михаил Непряхин: нил поинт ресепшен
Михаил Непряхин: то то же самое прошел. Вы Сказали Нил уинтер
Михаил Непряхин: ресепшен
Михаил Непряхин: а вторая
Михаил Непряхин: выход, за границу Массива
Михаил Непряхин: она называется забыл как там называться ну короче выход за границу с вайсом ну как Бы типа вы Обратились к области за областью инициализированной памяти
Михаил Непряхин: хорошо Что
Михаил Непряхин: в Этом случае не происходит эн а андефайнхер у Б как в Плюсах или как в си то есть тут, гул шагнул вперед правда этого не может быть
Михаил Непряхин: но минус в том. Что вот с этим надо аккуратно работать то есть аккуратно работать с с выходом за границу
Михаил Непряхин: и и
Михаил Непряхин: а Всегда Иметь в виду что если вы работаете с указателем
Михаил Непряхин: то он может быть нил
Михаил Непряхин: ааа если посмотреть как это решалось в Другом Языке более новом Раз, да вот в Раз, эта проблема решена
Михаил Непряхин: но она решена ценой такой сложности в такой как сказать
Михаил Непряхин: просто бью ну Раз, бьет по рукам
Михаил Непряхин: и очень много проверок делает на этапе компиляции,
Михаил Непряхин: и тем не менее все равно Можно выйти За границу с Лайса но неуполненный ресепшен Там невозможен
Михаил Непряхин: Что как бы с одной стороны хорошо
Михаил Непряхин: но Изящного Решения этой Проблемы Нет
Михаил Непряхин: а то решение Которое власти ну по мне лучше уже в ногу писать потому Что ну там на расти невозможно что-то быстро написать на Расте Можно только переписать программу, если вы хотите, ее ускорить типа вот вы написали на гошке отчета
Михаил Непряхин: переписали ее три тысячи Раз, там все протестировали попротепировали
Михаил Непряхин: и если вдруг вам вот Нужен перформанс еще икс два например вы просто берете и переписываете, на Раз, вот переписать Не Раз, Допустим как Бы еще Можно
Михаил Непряхин: Но вот сразу, Писать
Михаил Непряхин: ну это неприятно а На Голову. Приятно Но может Быть Не упойнт ресепшен
Михаил Непряхин: и если мы Работаем с указателями надо Всегда. Иметь. В виду Что мы должны Их проверять а указательных типов в Голову. Хватает ну и просто Еще с указателями любят люди работать. Но мы будем использовать указатели только там где это необходимо то есть мы тоже будем учиться
Михаил Непряхин: то есть вот на курсе как бы Один из навыков Что мы Будем понимать где нужны указатели а где Нет потому Что люди
Михаил Непряхин: на гоу если вы открываете Проект на Гоу Там очень много указателей потому. Что Люди Не Разобрались и
Михаил Непряхин: да Или даже сжавы и они просто Везде лепят указатели потому Что Не, Понимают потому Что иногда Встречаются Ошибки когда Вот указатель нужен
Михаил Непряхин: аа Но чаще он все-таки Не, нужен Но на всякий случай Делают. Его Всегда
Михаил Непряхин: вот мы будем уметь отличать Случай когда указатель нужен когда не, нужен
Михаил Непряхин: и в тех случаях когда мы не, будем работать по указателю
Михаил Непряхин: Этой ошибки выйти Не может потому Что если Нет указателя указатель вот Он типа звездочка указываться если вы видите тип указатель
Михаил Непряхин: Он может быть нилом и это нужно об этом не забывать или иногда проверять
Михаил Непряхин: а если этот тип не указатель просто структура например, или просто поля ну Что указателем может быть любое любой Тип может быть указателем в Голову.
Михаил Непряхин: Вот если этот Тип не указатель То он гарантирован и Не может быть ну Не может быть ошибки ним
Михаил Непряхин: потому. Что там Будет зеровелью то есть как, видите гоу пошел Решать этот вопрос
Михаил Непряхин: ну тоже Своим путем потому что так это ну Нигде такой больше конфигурации нет как гол. Что у нас как бы Есть с одной стороны Зеравелью. С Другой, стороны есть ни но он без Неопределенного поведения и гоу все таки язык. Безопасный
Михаил Непряхин: в отличие Там от плюсов и си
Михаил Непряхин: оси соответственно ведь он и подкопотом питоме и прочее То есть как бы
Михаил Непряхин: как бы си на самом деле больше чем мы Думаем где Находится
Михаил Непряхин: так Ладно,
Михаил Непряхин: м кстати вы тоже писали Что лучше Использовать указателю но вроде Там в контексте Структур был
Михаил Непряхин: Ну, вот в контексте Структур да да это просто типичный Проект на Голову. Открываете там все структуры по указателю просто все структуры показатели поважно неважно
Михаил Непряхин: Простите когда Еще когда вы видите указатель это значит что. Он указывает на кучу то есть указатель Еще и бьет по перформансу
Михаил Непряхин: указатель почти сто процентов. Куча да иногда бывает указатель и инстег указывать такое в гол тоже возможно в других языках, если указатель то это вообще гарантия что он в куче в гол. Не Всегда но там в девяносто процентов случаев указатель бород на кучу
Михаил Непряхин: и а если это не указатель то он точно будет стеке и если он будет на стеке То Это будет тупо быстрее насколько быстрее ну типа на порядок быстрее потому что
Михаил Непряхин: и десять просто быстрее работает по памяти чем куча Поэтому если. Вы Хотите. Писать быстрые программы то вы стараетесь по Минимуму использовать показатель
Михаил Непряхин: так ну хорошо. Ладно давайте на сегодня Закончим короче кто Не прошел по домашки кто Не прошел этот гултур Отдавать Еду Проходите
Михаил Непряхин: и
Михаил Непряхин: да и
Михаил Непряхин: Такшас
Михаил Непряхин: М-м да попробуйте вот можете поэкспериментировать вас это Еще с приватными модулями если, хотите.
Михаил Непряхин: И домашнее Задание ну для тех кто хочет кому, не обязательно немедленно кто хочет и уже он там игл, тур прошел. Все остальное
Михаил Непряхин: вот у себя в репозиторе ну в этом в папочке в отдельной Напишите программу Физбас не знаю Встречались Вы на совбезах Или Нет это очень популярная задача на
Михаил Непряхин: о Зарубежных советах там, ведь, Всегда, спрашивают ну это типа джуниор мидо уровень задачу потому. Что даже не всеми, интригами могут написать физбас как ни странно
Михаил Непряхин: а в россии последнее время перестали спрашивать оно что, же было популярное я помню в метесе как То проходил решавав Избас
Михаил Непряхин: нагошки ну в общем-то условие здесь посмотрите и просто назовите проект Физбас и Там выборочно Я посмотрю У кого-нибудь Кот Разберем и посмотрим Как эта. Задача Решается Это Он
Михаил Непряхин: если вдруг кому-то попадется на Собеседование чтобы ее можно было Без Проблем решить
Михаил Непряхин: вот ну, все на этом на этом точно все
Михаил Непряхин: Давайте всем. Пока.