ypv 3 月之前
父节点
当前提交
a8fcc79892

+ 1 - 1
2024-25/47_гр.md

@@ -56,7 +56,7 @@ https://onlinetestpad.com/scjyxltzvtg2u
 
 Сивухо Юлия [2]:  
 [V-model. Сивухо Ю](../Лекции/Модели_жизненного_цикла/V-model.md),  
-[Спиральная модель и её особенности. Сивухо Ю](Модели_жизненного_цикла/Спиральная_модель.md), 
+[Спиральная модель и её особенности. Сивухо Ю](../Лекции/Модели_жизненного_цикла/Спиральная_модель.md), 
 
 **Халепо Мария [3]:**  
 [Программы-компиляторы как инструментальное средство разработки. Халепо М.](../Лекции/Компиляторы_интерпретаторы/Программы-компиляторы.md),  

二进制
Лекции/avatar.png


+ 0 - 38
Лекции/Интернет платформы.md

@@ -1,38 +0,0 @@
-# Интернет платфолрма
-Интернет-платформа — это инструмент для создания и поддержки работоспособности сайта. Иными словами, это комплекс программных компонентов, упрощающих разработку веб-ресурса за счет использования готовых компонентов, а также обеспечивающий его стабильную функциональность. Существует несколько видов веб-платформ, предназначенных для реализации сайтов различного содержания и назначения. 
-# Что такое платформа сайта?
-Написание кода сайта (даже простого одностраничника или лендинга) с нуля сегодня практически не используется. На то есть несколько причин.
-
-- Это сложная и трудоемкая работа. Она требует много времени, а также услуг высококлассных специалистов (программиста, верстальщика и т.д.), которых дефицит на рынке. А красивый, бесперебойно работающий и функциональный сайт нужен сегодня. 
-- Специалисты, осуществляющие техническую поддержку и продвижение веб-ресурса, со временем могут меняться. Если на смену создателю сайта придет другой работник, ему потребуется долгое время, чтобы вникнуть в код предшественника.
-Поэтому более оптимальным является создание сайта на базе определенной платформы — то есть с помощью готовых программных инструментов:
-
-- это ускоряет и упрощает разработку веб-ресурса, потому что фактически представляет собой его сборку из уже разработанных компонентов, шаблонов и т.д., на которые потом накладывается уникальный дизайн, разработанный уже индивидуально для конкретного заказчика;  
-- созданием интернет-платформ занимаются опытные программисты, дизайнеры и иные специалисты, которые регулярно вносят необходимые доработки в код, устраняют ошибки, добавляют новые функции и т.д. Кроме того, при смене специалиста, занимающегося обслуживанием и технической поддержкой сайта, его преемнику не придется изучать код от начала до конца — достаточно знать, на какой платформе он реализован. 
-
-Таким образом, интернет-платформу можно представить как строительную площадку для сайта с фундаментом, основными несущими конструкциями и инженерными системами, над которыми уже достраивается остальная часть здания — кровля, фасад и т.д., то есть непосредственно сам сайт. Более того, такой фундамент и основная постройка будут типовыми. На основе одной и той же платформы можно делать множество различных веб-ресурсов. Как и в архитектуре, такой подход существенно удешевляет создание сайтов. 
-#Какие существуют платформы?
-Есть несколько видов платформ, каждый из которых обладает своими особенностями, функционалом, преимуществами и недостатками. Выбор между ними определяется тем, какой именно сайт вам нужен, насколько широкими планируются его возможности и т.д. 
-
-- Фреймворки. Такие интернет-платформы представляют собой каркас, на который «навешиваются» дополнительные функциональные блоки, интерфейс сайта и т.д. Именно фреймворк можно сравнить с «фундаментом» веб-ресурса, потому что его «стены», «крышу», «фасад» и другие элементы придется «достраивать» (то есть программировать) самостоятельно.
-
-Тем не менее, это гораздо легче, чем писать весь код с нуля, поэтому даже на таких низкоуровневых системах создаются блоги, интернет-магазины, информационные порталы и другие веб-ресурсы. Более того, именно фреймворки лучше всего подходят для реализации крупных проектов или специализированных сервисов. Типичные представители веб-фрейворков — Django на языке Python, Express.js на Java Scipt, ASP.Net (использует специализированные языки Microsoft) и т.д.
-
-- Системы управления контентом (content management system — CMS). Это электронные платформы более высокого уровня, которые предоставляют разработчику весь комплект инструментов для создания и последующей поддержки сайта. В CMS уже есть все основные функциональные модули, необходимые для веб-ресурса того или иного типа. Разработчику остается лишь добавить или, наоборот, убрать их в режиме администратора через удобный визуальный редактор. То есть непосредственно написание кода сводится к минимуму — в основном для добавления нетиповых функций, дополнительных онлайн-форм и т.д. Впрочем, даже их можно добавить с помощью внешних подключаемых плагинов. Наиболее популярные CMS для разработки сайтов — 1С-Bitrix, NetCat, WordPress. 
-
-Самое большое преимущество CMS в том, что поддерживать нормальную работу сайта может не только разработчик, но и сам собственник ресурса. Это особенно полезно при замене сотрудников — без штатного специалиста владелец сможет самостоятельно поддерживать ресурс в рабочем состоянии.
-
-Единственный заметный недостаток CMS состоит в том, что разработчики таких платформ стремятся сделать их универсальными, то есть пригодными для создания сайтов различной сложности, направления и содержания. Из-за этого в них есть множество лишних функций, которые увеличивают потребление ресурсов, замедляют скорость работы сайта. Кроме того, владельцу ресурса приходится отдельно искать и покупать услуги хостинга.
-
-- SaaS-платформы (Software as a Service — ПО как услуга). Владельцы облачных онлайн-платформ предоставляют клиентам на условиях аренды доступ к сервисам, с помощью которых они создают собственный сайт. Преимущественно облачные сервисы используются для разработки простых интернет-ресурсов — блогов, информационных порталов, небольших интернет-магазинов. Основное преимущество платформ в том, что клиент получает весь комплекс услуг, необходимых для создания и технической поддержки сайта — хостинг, CMS, набор функций, дизайн-шаблоны и т.д. То есть можно сразу приступать к работе, для этого не нужно быть программистом. Достаточно просто собрать свой веб-ресурс в визуальном редакторе из готовых модулей, загрузить текст, картинки, видео. Наиболее распространенные конструкторы сайтов — Tilda, WIX, uCoz.
-
-Недостатком таких платформ разработки веб-ресурсов является невозможность использовать свой дизайн (только предложенные в шаблонах) и добавлять дополнительные функции поверх тех, которые предусмотрены выбранной системой. Кроме того, при высокой нагрузке на облачный сервис сайт может начать тормозить или вовсе перестанет временно работать.
-
-# Какую интернет-платформу выбрать?
-При выборе платформы для сайта нужно ориентироваться на следующие критерии.
-
-- Тип сайта. Несмотря на то, что разработчики многих платформ стремятся сделать их максимально универсальными, на 100% это невозможно. Одни веб-системы больше заточены под интернет-магазины, другие — под информационные порталы, третьи — под блоги и т.д. Поэтому нужно сразу определиться с типом будущего сайта, продумать его функциональность и только потом подбирать подходящую платформу.
-- Эксклюзивность сайта. Платформы, предлагающие готовые решения (CMS и конструкторы сайтов), не всегда позволяют учесть специфику будущего веб-ресурса. Если на нем планируется реализовать какие-то необычные пользовательские механики, эксклюзивный дизайн, уникальные функции, лучше подобрать подходящий веб-фреймворк. Если же планируется открыть простой интернет-магазин или блог, достаточно возможностей CMS и конструктора сайта.
-- Бюджет. Создание и техническая поддержка сайта требуют денег и времени. И здесь веб-фреймворки, безусловно, проигрывают, потому что веб-ресурс на их основе будет стоить дорого. Наиболее финансово выгодны конструкторы сайтов — вам не придется нанимать специалиста, веб-ресурс можно «собрать» самому. Где-то между ними и фреймворками по затратам находятся CMS. Они тоже предлагают готовые решения, но для работы с ними все же потребуются услуги штатного сотрудника или аутсорсингового разработчика. 
-
-В любом случае, интернет-платформа — это оптимальный способ создать работающий, функциональный веб-ресурс. Она серьезно облегчает и ускоряет процесс разработки, уменьшает финансовые, временные, трудовые затраты. Необходимо только хорошо изучить особенности, возможности и ограничения конкретных платформ, чтобы правильно выбрать подходящую для конкретного сайта.

+ 0 - 0
Лекции/Вопросы.md → Лекции/Модели_жизненного_цикла/Вопросы_Спиральная_модель.md


+ 0 - 0
Лекции/Спиральная_модель.md → Лекции/Модели_жизненного_цикла/Спиральная_модель.md


+ 0 - 0
Лекции/спиральная_модель2.png → Лекции/Модели_жизненного_цикла/спиральная_модель2.png


+ 0 - 36
Лекции/Что такое Code Review.md

@@ -1,36 +0,0 @@
-# Что такое Code Review
-Code Review - это процесс проверки и анализа кода задачи разработчиком перед ее релизом. CR (Code Review) выполняется не тем человеком, который делал задачу, а другими членами команды. Результатом CR является обратная связь по выполненной задаче: необходимость внести правки, либо готовность задачи к последующему тестированию и релизу.
-
-# Зачем нужен Code Review
-Code Review может являться частью процесса выполнения задачи (частью workflow). Может показаться, что ревьювить должен только тимлид или старший разработчик, но хорошей практикой является если в процессе ревью задач участвуют все разработчики. Таким образом можно не только распределить нагрузку от ревью, но и составить у команды более широкое представление о выполняемых задачах. Также это помогает делиться best practices внутри команды.
-
-# Положительные эффекты в команде от Code Review:
-
-* понижает bus factor: больше людей в команде в курсе выполняемой задачи, в случае необходимости внесения изменений в задачу как минимум два человека смогут это сделать. Задача больше не завязана на одного разработчика.
-
-* помогает найти и выявить баги и недоработки на этапе разработки задачи: так как задача сразу проверяется как минимум двумя разработчиками, это повышает вероятность нахождения упущенных кейсов, которые без код ревью могли бы попасть на бой.
-
-* повышается читаемость и качество кода и как следствие - его поддержка в будущем: код понятен не только одному человеку, а нескольким участниками команды, это упрощает и ускоряет разработку в будущем.
-
-* обучаемость сотрудников: разные реализации и подходы к решению задач могут заимствоваться участниками команды друг у друга во время код ревью
-
-* развитие и поддержание здоровой культуры в команде: участники команды учатся друг у друга и учатся давать качественную обратную связь, повышается взаимодействие внутри команды.
-
-# Минусы:
-
-* при разработке задачи на реализацию тратится чуть больше времени
-
-* в задаче задействованы как минимум два разработчика (тот, кто делал задачу и тот, кто ее ревьювил)
-* Когда не нужно проводить код-ревью?
-Системная практика оценки кода внутри команды — не всегда полезное с точки зрения затраты ресурсов решение. Оно отнимает время и у автора, и у проверяющего, а еще требует глубокого погружения в процессы и сил на коммуникацию.
-
-# Причины, чтобы отказаться от код-ревью в конкретном случае:
-
-* нет человека, который обладает экспертизой в области специфики задачи;
-* изменения слишком незначительны и не требуют проверки.
-# Причины, чтобы отказаться от постоянной практики код-ревью:
-
-* у всех разработчиков одинаковый уровень знаний, навыков и уровень погружения в контекст;
-* приняты другие практики проверки кода — например, парное программирование;
-% постоянные конфликты из-за код-ревью в команде;
-практика уже показала свою неэффективность.