Permalink
Switch branches/tags
Nothing to show
Find file Copy path
b05df92 Jul 2, 2018
117 lines (94 sloc) 12.3 KB

Первое занятие

video Вебинар-презентация обучения на проекте BaseJava

Итоговый пример приложения, разрабатываемого в рамках данного курса (на примере резюме Григория Кислина)

Подготовка рабочего окружения

  • Установите JDK8 (выбрать Accept License Agreement)
  • Установите систему управления версиями Git (опции по умолчанию)
  • Создайте аккаунт на GitHub. Для удобной навигации по файлам на GitHub можно установить расширение для браузера Octotree
  • Установите IntelliJ IDEA. Пока нет базы данных и веб, можно работать с версией Community. На версию Ultimate дается 30 дней пробного бесплатного использования (trial). На проектах каждый участник проектов получает единоразовый личный купон на бесплатную версию Ultimate на 6 месяцев.

video 1. Разработка ПО

video 2. Обзор инструментов и технологий

video 3. Обзор языка Java

jvm

video 4. Системы управления версиями. Git

image

Настройка проекта

  • Создайте на GitHub репозиторий с названием basejava
  • Откройте консоль (терминал) у себя на компьютере
  • Наберите и запустите: git (по умолчанию при установке git заносится в PATH. Если он не находится, занесите git в переменную окружения PATH и перезапустите консоль)
  • Создайте локальную копию проекта: git clone https://github.com/JavaOps/basejava.git
  • Перейдите в каталог проекта: cd basejava
  • Настройте git в локальном проекте на свой проект в GitHub:
    • git remote -v
    • git remote set-url origin url_на_твой_basejava-репозиторий.git - настройка pull
    • git remote set-url --push origin url_на_твой_basejava-репозиторий.git - настройка push
    • git push -u origin master

Домашнее задание HW1

  • Создайте в IntelliJ IDEA новый проект, выбрав каталог basejava, который вы клонировали ранее к себе на компьютер:

newproject

next

next1

finish

  • Реализуйте класс ArrayStorage, организовав хранение резюме на основе массива с методами save, get, delete, size, clear, getAll
  • Храните все резюме в начале storage (без дырок в виде null), чтобы не перебирать каждый раз все 10000 элементов
Схема хранения резюме в массиве storage (в элементах от 0 до size-1 отсутствуют null):

r1, r2, r3,..., rn, null, null,..., null
<----- size ----->
<------- storage.length (10000) ------->

Вопросы по HW1

Не могу запустить программу, да и рядом с классами появился какой-то значок badsrc

  • Проблема в том, что IDEA неправильно "воспринимает" папку src. Для ее решения необходимо нажать ПКМ на папке src -> выбрать Mark Directory as -> Sources Root

Что такое null?

Что такое null в Java? (оригинал: What is null in Java? )

Замечания по выполнению HW1

  1. Все резюме в хранилище имеют уникальный uuid, что исключает повторы. Cортировка по uuid не требуется
  2. Давайте осмысленные комментарии коммитам
  3. Перед каждым коммитом не забывайте пользоваться сочетанием клавиш Ctrl + Alt + L (автоматическое форматирование кода)
  4. Не злоупотребляйте пустыми строками. Они используются нечасто для логического отделения больших кусков кода.
  5. Удаляйте неиспользуемые импорты (Ctrl + Alt + O)
  6. Не игнорируй подсказки IDEA (подсвечивает)
  7. Resume r — давай переменным осмысленные имена, например resume. r допустимо в коротких циклах и лямбдах.
  8. В методе clear() обнуление массива предполагает именно обнуление (null), а не создание нового
  9. По заданию необходимо посмотреть в классе Arrays методы, которые помогут упростить реализацию ваших методов clear() и getAll()