Что такое Git
#Git — распределённая система контроля версий. Или коротко РСКВ.
Система контроля версий хранит изменения файлов, которые нужны пользователю. Главная цель — чтобы пользователь в любой момент имел доступ к старым версиям файлов. Вот пример СКВ. Андрей пишет выпускной диплом. Получилось три файла: введение.doc, основная_часть.doc и выводы.doc. Перед тем, как печатать новые мысли, Андрей создает папку и копирует в неё файлы. А к названию папки добавляет текущую дату. Получается "Диплом 15-03-18". И теперь если Андрей случайно удалит важные мысли в выводах, то скопирует их из старого файла.
Распределенная система хранит файлы не на одном центральном сервере, а распределённо. У клиентов — копия проекта. Если умирает сервер и стираются данные, то любой клиентский проект можно скопировать обратно на сервер, чтобы восстановить проект. Когда клиент забирает свежую версию файлов, он создаёт себе полную копию всех данных.
Гит — гибкая и мощная система. Она интереснее, чем ежедневное копирование файлов в новые каталоги. Её используют программисты, чтобы отслеживать исходный код. С гитом разработчики отправляют файлы на удаленный сервер, просматривают изменения, откатывают отдельные файлы или весь проект к прежнему виду. А если модуль вдруг перестаёт работать, то в Гите видно, кто поломал проект.
#Git — распределённая система контроля версий. Или коротко РСКВ.
Система контроля версий хранит изменения файлов, которые нужны пользователю. Главная цель — чтобы пользователь в любой момент имел доступ к старым версиям файлов. Вот пример СКВ. Андрей пишет выпускной диплом. Получилось три файла: введение.doc, основная_часть.doc и выводы.doc. Перед тем, как печатать новые мысли, Андрей создает папку и копирует в неё файлы. А к названию папки добавляет текущую дату. Получается "Диплом 15-03-18". И теперь если Андрей случайно удалит важные мысли в выводах, то скопирует их из старого файла.
Распределенная система хранит файлы не на одном центральном сервере, а распределённо. У клиентов — копия проекта. Если умирает сервер и стираются данные, то любой клиентский проект можно скопировать обратно на сервер, чтобы восстановить проект. Когда клиент забирает свежую версию файлов, он создаёт себе полную копию всех данных.
Гит — гибкая и мощная система. Она интереснее, чем ежедневное копирование файлов в новые каталоги. Её используют программисты, чтобы отслеживать исходный код. С гитом разработчики отправляют файлы на удаленный сервер, просматривают изменения, откатывают отдельные файлы или весь проект к прежнему виду. А если модуль вдруг перестаёт работать, то в Гите видно, кто поломал проект.
Вышла Java 10
Читать, что изменилось
https://habrahabr.ru/company/jugru/blog/351694/
Скачать
http://jdk.java.net/10/
Читать, что изменилось
https://habrahabr.ru/company/jugru/blog/351694/
Скачать
http://jdk.java.net/10/
Состояния файлов в Git
У вас имеется #Git-репозиторий и рабочая копия файлов для проекта. Вы работаете с классами, изменяете файлы и вскоре проект достигает состояния, которое нужно сохранить. И вы выполняете команды git add и git commit, то есть фиксируете состояние. Зафиксированные состояния репозитория называются снимками или snapshots.
В рабочем каталоге два типа файлов: неотслеживаемые и отслеживаемые. Неотслеживаемые не находятся под версионным контролем. Это файлы, которые не входили в последний слепок состояния и не подготовлены к коммиту (git add). В Идее они коричневого цвета.
Отслеживаемые файлы — это те, которые были в последнем слепке состояния проекта или подготовлены к коммиту. Они трёх типов: неизменённые, изменённые и подготовленные. Когда вы впервые клонируете репозиторий, все файлы будут отслеживаемыми и неизменёнными. Потому что вы взяли их из хранилища и не редактировали.
Изменёнными файлы становятся, как только вы отредактируете их. Git будет рассматривать их как изменённые, потому что они изменились с последнего коммита. Подготовленными вы делаете их командой git add. Так файлы индексируются, попадают в stage. Stage - место для подготовленных файлов. И чтобы зафиксировать индексированные изменения делаете git commit. Затем цикл повторяется.
Более подробно: https://git-scm.com/book/ru/v1/Основы-Git-Запись-изменений-в-репозиторий
У вас имеется #Git-репозиторий и рабочая копия файлов для проекта. Вы работаете с классами, изменяете файлы и вскоре проект достигает состояния, которое нужно сохранить. И вы выполняете команды git add и git commit, то есть фиксируете состояние. Зафиксированные состояния репозитория называются снимками или snapshots.
В рабочем каталоге два типа файлов: неотслеживаемые и отслеживаемые. Неотслеживаемые не находятся под версионным контролем. Это файлы, которые не входили в последний слепок состояния и не подготовлены к коммиту (git add). В Идее они коричневого цвета.
Отслеживаемые файлы — это те, которые были в последнем слепке состояния проекта или подготовлены к коммиту. Они трёх типов: неизменённые, изменённые и подготовленные. Когда вы впервые клонируете репозиторий, все файлы будут отслеживаемыми и неизменёнными. Потому что вы взяли их из хранилища и не редактировали.
Изменёнными файлы становятся, как только вы отредактируете их. Git будет рассматривать их как изменённые, потому что они изменились с последнего коммита. Подготовленными вы делаете их командой git add. Так файлы индексируются, попадают в stage. Stage - место для подготовленных файлов. И чтобы зафиксировать индексированные изменения делаете git commit. Затем цикл повторяется.
Более подробно: https://git-scm.com/book/ru/v1/Основы-Git-Запись-изменений-в-репозиторий
Ресурсы по Git
Сайт GitHowTo. Состоит из 50 мини-уроков. На каждом уроке - команда Гит, описание того, что она делает и результат выполнения. В начале курса скачиваешь файлы и постепенно выполняешь все команды на компьютере. Если застрял, то скопируй нужный урок в рабочую папку. https://githowto.com/
Курс GitHub'а. Пишешь команды в браузере - тут же получаешь результат и следующее задание. Помогает, когда редко используешь Гит в терминале. Быстро воскрешает знания основных команд https://try.github.io/
Книга "Pro Git". Подробно описано от установки на комп до низкоуровневых команд. Мне нравится глава о ветвлении https://goo.gl/nmo1b1. Читать книгу на русском https://git-scm.com/book/ru/v2/
#git #обучение
Сайт GitHowTo. Состоит из 50 мини-уроков. На каждом уроке - команда Гит, описание того, что она делает и результат выполнения. В начале курса скачиваешь файлы и постепенно выполняешь все команды на компьютере. Если застрял, то скопируй нужный урок в рабочую папку. https://githowto.com/
Курс GitHub'а. Пишешь команды в браузере - тут же получаешь результат и следующее задание. Помогает, когда редко используешь Гит в терминале. Быстро воскрешает знания основных команд https://try.github.io/
Книга "Pro Git". Подробно описано от установки на комп до низкоуровневых команд. Мне нравится глава о ветвлении https://goo.gl/nmo1b1. Читать книгу на русском https://git-scm.com/book/ru/v2/
#git #обучение
Dirty code
Раз в неделю буду выкладывать пример плохого кода, исправленную версию и разбор.
Раз в неделю буду выкладывать пример плохого кода, исправленную версию и разбор.
Лучший вариант, когда хочешь создать лист из одного элемента. Компактность, читаемость, изящность.
Как поднять себе зарплату
На предыдущей работе эта статья помогла мне поднять зп https://journal.tinkoff.ru/thedeal/
Что нужно делать, чтобы выросла зарплата:
1. Просто подойдите к начальнику и попросите повышения: "Что мне сделать, чтобы зарабатывать столько-то?" Главное - дождитесь ответа босса. Не опережайте его даже при долгой паузе.
2. Если начальник сказал "не знаю", то предложите свои варианты. Важно подготовить их заранее. Начальника интересуют только выгодные вещи. Будьте полезны. Например, предложите свои силы ещё в одном проекте.
3. Если не пришли к решению или босс взял паузу - открывайте ХэдХантер и ищите альтернативу. С оффером перед глазами начальник быстро примет решение о повышении зп.
4. Когда совсем все плохо - возьмите отпуск, отдохните и меняйте работу.
#зарплата
На предыдущей работе эта статья помогла мне поднять зп https://journal.tinkoff.ru/thedeal/
Что нужно делать, чтобы выросла зарплата:
1. Просто подойдите к начальнику и попросите повышения: "Что мне сделать, чтобы зарабатывать столько-то?" Главное - дождитесь ответа босса. Не опережайте его даже при долгой паузе.
2. Если начальник сказал "не знаю", то предложите свои варианты. Важно подготовить их заранее. Начальника интересуют только выгодные вещи. Будьте полезны. Например, предложите свои силы ещё в одном проекте.
3. Если не пришли к решению или босс взял паузу - открывайте ХэдХантер и ищите альтернативу. С оффером перед глазами начальник быстро примет решение о повышении зп.
4. Когда совсем все плохо - возьмите отпуск, отдохните и меняйте работу.
#зарплата
Книга "Грокаем алгоритмы"
Основная идея книги: алгоритмы - это просто.
Автор простым языком разбирает популярные алгоритмы: сортировки, рекурсию, хэш-таблицы, жадные алгоритмы. Вы их встретите в вопросах на собеседованиях. Плюс они важны для понимания сложных тем.
Это книга для начинающих. Поэтому вы не увидите сложных формул. Вместо них - примеры с картинками, упражнения и шпаргалки в конце главы.
В общем, если ты не успел познакомиться с классическими алгоритмами или не зашла книга Седжвика и Кнута - добро пожаловать в клуб грокающих алгоритмы.
#книги
Основная идея книги: алгоритмы - это просто.
Автор простым языком разбирает популярные алгоритмы: сортировки, рекурсию, хэш-таблицы, жадные алгоритмы. Вы их встретите в вопросах на собеседованиях. Плюс они важны для понимания сложных тем.
Это книга для начинающих. Поэтому вы не увидите сложных формул. Вместо них - примеры с картинками, упражнения и шпаргалки в конце главы.
В общем, если ты не успел познакомиться с классическими алгоритмами или не зашла книга Седжвика и Кнута - добро пожаловать в клуб грокающих алгоритмы.
#книги
Один день из жизни Git
Создать ветку для задачи
Посмотреть состояние файлов
Добавить все изменения
Сделать коммит
Отправить ветку в удаленный репозиторий
#git
Создать ветку для задачи
git checkout -b <branch>
Посмотреть состояние файлов
git status
Добавить все изменения
git add .
Сделать коммит
git commit -m "good job"
Отправить ветку в удаленный репозиторий
git push -u origin <branch>
#git
Доклад по Spring
"Spring-потрошитель" - динамичный и позновательный доклад Евгения Борисова. Один из любимых спикеров. В докладе он рассказывает, как работают внутренности Spring: BeanFactory, ContextListener, BeanDefinitionReader, BeanPostProcessor. Постепенно знакомит с каждой новой сущностью Spring, показывает это на картинках и примерах.
Если хочешь полностью вникнуть, как устроен Spring, то включай видео, запускай Идею. И вместе с Евгением Борисовым печатай примеры кода.
Ссылки на доклад:
1 часть - https://bit.ly/2IwOkPQ
2 часть - https://bit.ly/2JpmKFx
#spring
"Spring-потрошитель" - динамичный и позновательный доклад Евгения Борисова. Один из любимых спикеров. В докладе он рассказывает, как работают внутренности Spring: BeanFactory, ContextListener, BeanDefinitionReader, BeanPostProcessor. Постепенно знакомит с каждой новой сущностью Spring, показывает это на картинках и примерах.
Если хочешь полностью вникнуть, как устроен Spring, то включай видео, запускай Идею. И вместе с Евгением Борисовым печатай примеры кода.
Ссылки на доклад:
1 часть - https://bit.ly/2IwOkPQ
2 часть - https://bit.ly/2JpmKFx
#spring
JPoint 2018
JPoint - конференция по Джаве для опытных разработчиков. Она пройдёт 6-7 апреля в Москве. Будет 40 докладов и тысяча участников. Доклады, которые выкладывают на Ютуб после конференции, набирают тысячи просмотров. Например, "Spring-потрошитель" набрал 100к.
Билет на два дня стоит 35к. Но есть бесплатная трансляция с основными выступлениями. Интересно посмотреть выступления Juergen Hoel'а, сооснователя Spring. Он расскажет про запуск Spring на Java 9, функциональные и реактивных фишки пятого Spring'а.
Ссылки на трансляции:
1 день - https://bit.ly/2HceIPJ
2 день - https://bit.ly/2GX0R1T
Доклады начинаются в 10:30
JPoint - конференция по Джаве для опытных разработчиков. Она пройдёт 6-7 апреля в Москве. Будет 40 докладов и тысяча участников. Доклады, которые выкладывают на Ютуб после конференции, набирают тысячи просмотров. Например, "Spring-потрошитель" набрал 100к.
Билет на два дня стоит 35к. Но есть бесплатная трансляция с основными выступлениями. Интересно посмотреть выступления Juergen Hoel'а, сооснователя Spring. Он расскажет про запуск Spring на Java 9, функциональные и реактивных фишки пятого Spring'а.
Ссылки на трансляции:
1 день - https://bit.ly/2HceIPJ
2 день - https://bit.ly/2GX0R1T
Доклады начинаются в 10:30
Зачем ходить на конференции
Доклады - не основная причина. Ведь все доклады можно посмотреть в сети. С JPoint'а видео выкладывают только через пол года, но сольют в инет их раньше месяца.
Главное - приходить на конференции ради знакомства и общения. Конференция - крутая возможность задать вопросы или попросить совета коллег с большим опытом, познакомиться с интересными вам людьми. Участники более раскрепощенные, чем на работе, открыты к общению. А спикеры по дефолту ждут вопросы. Самое крутое - заобщаться с интересующим спикером после доклада.
Ещё хорошо рассказал про конференции Костя Горский
https://yangx.top/desprod/257
Он Design Lead в Intercom, экс-дизайн-директор Яндекса.
#мысли #конференции
Доклады - не основная причина. Ведь все доклады можно посмотреть в сети. С JPoint'а видео выкладывают только через пол года, но сольют в инет их раньше месяца.
Главное - приходить на конференции ради знакомства и общения. Конференция - крутая возможность задать вопросы или попросить совета коллег с большим опытом, познакомиться с интересными вам людьми. Участники более раскрепощенные, чем на работе, открыты к общению. А спикеры по дефолту ждут вопросы. Самое крутое - заобщаться с интересующим спикером после доклада.
Ещё хорошо рассказал про конференции Костя Горский
https://yangx.top/desprod/257
Он Design Lead в Intercom, экс-дизайн-директор Яндекса.
#мысли #конференции