From 8f66fe23b69634e507eab3e342d51fbebf6f8366 Mon Sep 17 00:00:00 2001 From: esoe Date: Tue, 8 Nov 2022 12:54:49 +0300 Subject: [PATCH] qqq --- java/lectures/ООП.md | 0 java/lectures/синтаксис Java.md | 72 ++++++++++++++++++++++++ muse/README.md | 31 ++++++++-- 3 files changed, 99 insertions(+), 4 deletions(-) create mode 100644 java/lectures/ООП.md create mode 100644 java/lectures/синтаксис Java.md diff --git a/java/lectures/ООП.md b/java/lectures/ООП.md new file mode 100644 index 0000000..e69de29 diff --git a/java/lectures/синтаксис Java.md b/java/lectures/синтаксис Java.md new file mode 100644 index 0000000..03186f3 --- /dev/null +++ b/java/lectures/синтаксис Java.md @@ -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){} + +# Дублирование кода +* усложняет проведение изменений +* увеличивает объем тестирования diff --git a/muse/README.md b/muse/README.md index be97d12..9ec7ac8 100644 --- a/muse/README.md +++ b/muse/README.md @@ -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 \ No newline at end of file