esoe 2 years ago
parent
commit
8f66fe23b6
  1. 0
      java/lectures/ООП.md
  2. 72
      java/lectures/синтаксис Java.md
  3. 31
      muse/README.md

0
java/lectures/ООП.md

72
java/lectures/синтаксис Java.md

@ -0,0 +1,72 @@ @@ -0,0 +1,72 @@
# Определение класса
Класс - пользоватльский тип данных (структура и поведение)
Простейшее определение:
class A{}
спецификатор class Name extends имя_суперкласса implements список_интерфейсов {
члены класса - поля / атрибуты класса (данные) --> экземплярные/статические
спецификаторы / модификаторы доступа
------------
переменные
методы
конструкторы
------------
модификатор_доступа спецификатор тип имя = инициализирующее выражение;
}
# Определение метода
модификатор_доступа спецификаторы тип_возвращаемого_значения имя_метода (список_формальных_параметров) throws список_исключений {
//тело метода
}
# Определение конструктора
модификатор_доступа имя_конструктора(список_параметров) throws список исключений {
тело конструктора
}
имя конструктора всегда совпадает с именем класса, пишется с заглавной буквы
# Спецификатор доступа
public - глобальная область, видит вся программа
protected - видимость внутри пакета, а также наследникам
private - видимость внутри класса (объект видит поля других объектов этого класса)
default - видимость внутри пакета
local - видимость внутри фигурных скобок
package - именованная группа пользовательских типов (каталог)
Область видисости класса может быть: public, default
всегда объявляем минимальный необходимый уровень доступа.
# Создание объекта
new - специальная операция
- выделение области памяти
- инициализация (new дает ссылку на новый объект)
Способы создания экземпляра класса:
* new A(список_аргументов)
* this A(список_аргументов)
## При вызове конструктора
- выполняются статические поля и области класса
- выполняются экземплярные поля класса
- вызывается конструктор родительского класса
- вызывается конструктор класса
Конструктор класса вызывается в последнюю очередь!!!
## Перегрузка методов и конструкторов
При перегрузке конструктора ключевыми моментами оказываются:
- количество параметров
- типы параметров
- последовательность параметров
Разные конструкторы:
* void a(){}
* void a(A a){}
* void a(A a, B a){}
* void a(B a, A a){}
# Дублирование кода
* усложняет проведение изменений
* увеличивает объем тестирования

31
muse/README.md

@ -1,4 +1,27 @@ @@ -1,4 +1,27 @@
# Автоматизация обновлений сайта
среда разработки -> система контроля версий -> веб-сервер -> пользоатель
Исходники должны лежать в системе контроля версий (main branch)
![Alt text](../../../../../../../C:/Users/devuser/Documents/code/hello/muse/imaging/web%20-%20content.png)
# Автоматизация обновлений сайта/сервера (Continious deploy)
## Описание проблемы (problem description)
Исходный код хранится в системе контроля версий, это может быть:
* пакет веб-страниц, которые надо разместить на веб-сервере
* пакет marcdown текстов, которые надо преобразовать в веб страницы и затем выложить в виде библиотеки
* пакет исходников серверного java-приложения, которое нужно развернуть на сервере.
Нужно, чтобы программа сканировала изменения исходников в системе контроля версий и автоматически производила необходимые манипуляции (развертывание) на сервере.
### Развертывание веб-приложения
### Развертывание java-пиложения (сервера)
## Компоненты среды:
* browser (user interfase)
* soket-server
* web-server
* version control system
## source
* java-app (soket-server)
* java-app (web-server)
* html-content
## actors
* user
* admin
* developer
Loading…
Cancel
Save