|
2 | 2 | # Второе занятие |
3 | 3 |
|
4 | 4 | ### HW1 |
5 | | -разбор HW1 будет на след уроке вместе с HW2 |
| 5 | +> разбор HW1 будет на следующем уроке вместе с HW2 |
6 | 6 |
|
7 | 7 | ###  1. [Принципы ООП](https://drive.google.com/open?id=0B_4NpoQW1xfpOHpyYWhOMGQ4VXc) |
8 | | -- <a href="http://www.intuit.ru/studies/courses/16/16/lecture/27107?page=1">Методология процедурно-ориентированного и объектно-ориентированного программирования</a> |
9 | | -- <a href="http://www.intuit.ru/studies/courses/16/16/lecture/27107?page=2">Объекты (cостояние, поведение, уникальность)</a> |
10 | | -- <a href="http://www.intuit.ru/studies/courses/16/16/lecture/27107?page=3">Классы. Инкапсуляция. Наследование. Полиморфизм.</a> |
11 | | -- <a href="http://info.javarush.ru/translation/2016/01/28/%D0%9E%D0%B1%D1%8A%D0%B5%D0%BA%D1%82%D0%BD%D0%BE-%D0%BE%D1%80%D0%B8%D0%B5%D0%BD%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%BD%D0%BE%D0%B5-%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5-%D0%BF%D0%B5%D1%80%D0%B5%D0%B2%D0%BE%D0%B4-%D1%81%D1%82%D0%B0%D1%82%D1%8C%D0%B8-.html">Объектно-ориентированное программирование (перевод статьи)</a> |
12 | | -- <a href="https://github.com/ichimax/Core-Java-Interview-Questions/blob/master/Questions/1.%20OOP.md">Основы Объектно-Ориентированного Программирования (ООП)</a> |
13 | | -- [Wiki: Объектно-ориентированное программирование](https://ru.wikipedia.org/wiki/Объектно-ориентированное_программирование) |
14 | | -> Еще одна из трактовок _инкапсуляции_: свойство системы, позволяющее объединить данные и методы, работающие с ними, в классе. |
15 | | -- <a href="http://www.intuit.ru/studies/courses/16/16/lecture/27107?page=4">Типы отношений между классами</a> <a href="http://ru.wikipedia.org/wiki/%D0%94%D0%B8%D0%B0%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B0_%D0%BA%D0%BB%D0%B0%D1%81%D1%81%D0%BE%D0%B2#.D0.92.D0.B7.D0.B0.D0.B8.D0.BC.D0.BE.D1.81.D0.B2.D1.8F.D0.B7.D0.B8">Наследование, агрегация, композиция, ассоциация.</a> |
16 | | -- <a href="http://www.intuit.ru/studies/courses/16/16/lecture/27107?page=5">Достоинства/Недостатки ООП.</a> Библиотеки vs фреймворки. |
17 | | -- Дополнительно: |
18 | | - - <a href="http://devcolibri.com/720">Что такое ООП и с чем его едят?</a> |
19 | | - - <a href="http://ru.wikipedia.org/wiki/Объектно-ориентированное_программирование">Объектно ориентированное программирование</a> |
20 | | - - <a href="https://www.youtube.com/watch?v=G6LJkWwZGuc">Николай Алименков — Парадигмы ООП</a> |
21 | | - - <a href="http://htmlpreview.github.io/?https://raw.githubusercontent.com/blacky0x0/java-docs-ru/master/tutorials/java/concepts/index.html">Концепции объектно-ориентированного программирования</a> |
| 8 | +- [wiki: Объектно-ориентированное программирование](https://ru.wikipedia.org/wiki/Объектно-ориентированное_программирование) |
| 9 | +- [Объектно-ориентированное программирование (перевод статьи)](http://info.javarush.ru/translation/2016/01/28/Объектно-ориентированное-программирование-перевод-статьи-.html) |
| 10 | +- [Основы Объектно-Ориентированного Программирования (ООП)](https://github.com/ichimax/Core-Java-Interview-Questions/blob/master/Questions/1.%20OOP.md) |
| 11 | +- [Наследование, агрегация, композиция, ассоциация](https://ru.wikipedia.org/wiki/Диаграмма_классов#Взаимосвязи) |
| 12 | +- [Типы отношений между классами](http://www.intuit.ru/studies/courses/16/16/lecture/27107?page=4) |
| 13 | +- [Достоинства/Недостатки ООП](http://www.intuit.ru/studies/courses/16/16/lecture/27107?page=5) |
| 14 | +**Дополнительно:** |
| 15 | + - [Что такое ООП и зачем нам оно?](https://habrahabr.ru/post/148015/) |
| 16 | + - [youtube: Николай Алименков — Парадигмы ООП](https://www.youtube.com/watch?v=G6LJkWwZGuc) |
| 17 | + - [oracle: Object-Oriented Programming Concepts](https://docs.oracle.com/javase/tutorial/java/concepts/index.html) |
| 18 | + - [oracle: Classes and Objects](https://docs.oracle.com/javase/tutorial/java/javaOO/index.html) |
22 | 19 |
|
23 | 20 | ###  2. [Структура памяти: куча, стек, регистры, константы](https://drive.google.com/open?id=0B_4NpoQW1xfpZHRnTEhNWmk5Xzg) |
24 | | - - <a href="https://www.slideshare.net/solit/jvm-16948708">JVM изнутри - оптимизация и профилирование</a>. |
25 | | - - <a href="http://stackoverflow.com/questions/79923/what-and-where-are-the-stack-and-heap#24171266">Stack and Heap</a> |
26 | | - - Дополнительно: |
27 | | - - <a href="http://habrahabr.ru/post/117274/">Из каких частей состоит память java процесса</a>. |
28 | | - - <a href="http://www.javaspecialist.ru/2011/04/permanent.html">Permanent область памяти</a> |
29 | | - - <a href="http://www.javaspecialist.ru/2011/04/java-thread-stack.html">Java thread stack </a> |
30 | | - - <a href="http://habrahabr.ru/post/134102/">Размер Java объектов</a> |
31 | | - - [Понимаем основы Java garbage collection](http://ggenikus.github.io/blog/2014/05/04/gc) |
| 21 | + - [wiki: Стек](https://ru.wikipedia.org/wiki/Стек) |
| 22 | + - [От Java-кода к Java-куче](https://www.ibm.com/developerworks/ru/library/j-codetoheap/index.html) |
| 23 | + - [Понимаем основы Java garbage collection](http://ggenikus.github.io/blog/2014/05/04/gc) |
| 24 | +**Дополнительно:** |
| 25 | + - [Из каких частей состоит память java процесса](http://habrahabr.ru/post/117274/) |
| 26 | + - [Permanent область памяти](http://www.javaspecialist.ru/2011/04/permanent.html) |
| 27 | + - [Java thread stack](http://www.javaspecialist.ru/2011/04/java-thread-stack.html) |
| 28 | + - [Размер Java объектов](http://habrahabr.ru/post/134102/) |
| 29 | + - [youtube: JVM - краткий курс общей анатомии](https://www.youtube.com/watch?v=-fcj6EL9rc4) |
| 30 | + - [What and where are the stack and heap?](http://stackoverflow.com/questions/79923/what-and-where-are-the-stack-and-heap#24171266) |
| 31 | + - [The Java Virtual Machine Specification Java SE 8 Edition](https://docs.oracle.com/javase/specs/jvms/se8/jvms8.pdf) |
32 | 32 |
|
33 | 33 | ###  3. [Типы данных. Пакеты.](https://drive.google.com/open?id=0B_4NpoQW1xfpQzRVTHg1LVhvOEk) |
34 | | - - <a href="http://www.intuit.ru/studies/courses/16/16/lecture/27111">Типы данных</a> |
35 | | - - <a href="http://www.intuit.ru/studies/courses/16/16/lecture/27129?page=2">Классы- оберки</a> |
36 | | - - <a href="http://www.intuit.ru/studies/courses/16/16/lecture/27111?page=4">Ссылочные типы</a> |
37 | | - - <a href="http://www.intuit.ru/studies/courses/16/16/lecture/27113?page=2">Пакеты</a> |
38 | | - - <a href="http://www.intuit.ru/studies/courses/16/16/lecture/27115">Модификаторы доступа. Область Видимости.</a> |
| 34 | + - [Типы данных](http://www.intuit.ru/studies/courses/16/16/lecture/27111) |
| 35 | + - [Классы-обертки](http://www.intuit.ru/studies/courses/16/16/lecture/27129?page=2) |
| 36 | + - [youtube: Java types](https://www.youtube.com/watch?v=hqirUFitj9c&index=7&list=PLwwk4BHih4fgYGHmAL-2ZCymrYHXO69GN) |
| 37 | + - [youtube: Модификаторы доступа](https://www.youtube.com/watch?v=e14xUIUc6y0) |
| 38 | + - [youtube: Пакеты](https://www.youtube.com/watch?v=zGKFmG-ygWQ&list=PLwwk4BHih4fgYGHmAL-2ZCymrYHXO69GN&index=9) |
| 39 | +**Дополнительно:** |
| 40 | + - [oracle: Packages](https://docs.oracle.com/javase/tutorial/java/package/index.html) |
| 41 | + - [oracle: Primitive data types](https://docs.oracle.com/javase/tutorial/java/nutsandbolts/datatypes.html) |
39 | 42 |
|
40 | 43 | ###  [Домашнее задание](https://drive.google.com/open?id=0B_4NpoQW1xfpWUxUVWx5MFpCZkE) |
41 | 44 | > Правка к видео: ArrayStorage.delete() - вместо `storage[i] = null` нужно `storage[size-1] = null` |
42 | 45 |
|
43 | | -- Прочитать <a href="http://www.intuit.ru/studies/courses/16/16/lecture/27113?page=4">Соглашения по именованию.</a> |
| 46 | +- Прочитать, [как правильно оформлять код [eng]](https://google.github.io/styleguide/javaguide.html) |
44 | 47 | - Реализовать `ArrayStorage.update` |
45 | | -- Сделать проверки: в `update/delete/get` - резюме есть в storage, в `save`- нет в storage: `System.out.println("Resume ...")`. |
46 | | -- Сделать в save проверку на переполнениe: `System.out.println("...")`. |
| 48 | +- Сделать проверки: в `update/delete/get` - резюме есть в storage, в `save`- нет в storage: `System.out.println("Resume ...")` |
| 49 | +- Сделать в save проверку на переполнение: `System.out.println("...")` |
47 | 50 | - Избавится от дублирования в коде `ArrayStorage` |
0 commit comments