Данный проект представляет собой обширный курс по изучению программы Компас 3D, предназначенный для тех, кто желает освоить основы и продвинутые навыки работы в этом инструменте для трехмерного моделирования. Проект включает в себя установку и первый запуск программы, изучение эскизов, деталей и создание сборок.
Эта инструкция предназначена для разработчиков и технических специалистов, которые хотят установить и собрать проект "Курс по Компас 3D" на своем локальном устройстве.
- Node.js и npm: убедитесь, что на вашем компьютере установлен Node.js и npm. Вы можете их скачать и установить с официального сайта Node.js.
- Git: убедитесь, что у вас установлен Git. Вы можете скачать и установить Git с официального сайта Git.
- Клонирование репозитория: откройте терминал (или командную строку) и выполните следующую команду для клонирования репозитория:
git clone https://github.com/NotACat1/COMPASS-3D-courses.git
- Установка зависимостей: перейдите в директорию проекта, используя команду:
npm install
- Сборка проекта: для сборки проекта используется команда:
npm run build
Эта команда запускает процесс сборки проекта.
- Установка и первый запуск: предоставляет подробные инструкции по установке программы Компас 3D. Студенты также ознакомятся с первыми шагами в работе с программой, что включает в себя основные настройки, интерфейс и первый запуск. Этот модуль ориентирован на обеспечение плавного старта в использовании программы.
- Изучение эскизов: предоставляет обзор основ работы с эскизами в Компас 3D. Студенты углубятся в процесс создания и редактирования эскизов, овладеют ключевыми инструментами и техниками. Этот модуль направлен на формирование навыков работы с основными элементами трехмерных моделей.
- Изучение деталей: предоставляет студентам возможность глубоко погрузиться в создание и редактирование деталей в программе Компас 3D. В рамках этого модуля рассматриваются продвинутые техники моделирования деталей, включая использование различных инструментов и функций программы.
- Создание сборок: направлен на развитие навыков создания и управления сложными сборками в Компас 3D. Студенты изучат техники сборки компонентов, работу с ограничениями и взаимодействие между частями сложных конструкций. Этот модуль позволяет студентам освоить навыки построения полноценных трехмерных моделей.
Каждый модуль включает в себя уникальный набор уроков, разработанных для последовательного и систематического изучения соответствующих навыков и тем в программе Компас 3D.
- Постепенное углубление: материал представлен пошагово, обеспечивая плавное углубление в тему и прогрессирование от простых к более сложным концепциям.
- Практические задания: курс включает практические задания и проекты, позволяя студентам непосредственно применять полученные знания в реальных проектах.
- Актуальность и практическая применимость: материал ориентирован на актуальные требования индустрии и фокусируется на практической применимости знаний в современной среде трехмерного моделирования.
Проект "Курс по Компас 3D" стремится предоставить студентам компетентные и глубокие знания, необходимые для успешного владения программой Компас 3D в профессиональной деятельности.
В файле package.json
определены различные скрипты, обеспечивающие автоматизацию различных аспектов разработки, тестирования и развертывания проекта.
"scripts": {
"msg-commit": "npx commitlint -E HUSKY_GIT_PARAMS",
"pre-commit": "npx lint-staged",
"husky-inst": "npx husky install && chmod +x .husky/pre-commit .husky/commit-msg",
"build": "node src/index",
"deploy": "gh-pages -d build",
"predeploy": "npm run build"
},
- Описание: скрипт, использующий
commitlint
, выполняется перед каждым коммитом для проверки корректности сообщений о коммитах. - Как использовать:
npm run msg-commit
- Результат: проверка и валидация сообщения о коммите согласно установленным стандартам.
- Описание: скрипт, использующий
lint-staged
, запускается перед каждым коммитом для автоматической проверки и форматирования измененных файлов. - Как использовать:
npm run pre-commit
- Результат: проверка и форматирование измененных файлов перед коммитом.
- Описание: скрипт устанавливает и конфигурирует
husky
, инструмент для управления хуками Git, такими какpre-commit
иcommit-msg
. - Как использовать:
npm run husky-inst
- Результат: установка и настройка хуков Git для предварительной проверки коммитов.
- Описание: скрипт для сборки проекта, запускает индексный файл (
src/index
) для создания необходимых файлов и структуры проекта. - Как использовать:
npm run build
- Результат: сборка проекта, создание необходимых файлов для дальнейшего развертывания.
- Описание: скрипт для развертывания проекта на GitHub Pages, используя
gh-pages
. - Как использовать:
npm run deploy
- Результат: развертывание проекта на GitHub Pages из директории
build
.
- Описание: скрипт, выполняющий предварительные действия перед развертыванием, в данном случае, выполняет сборку проекта.
- Как использовать:
npm run predeploy
- Результат: выполнение предварительных действий перед развертыванием, в данном случае, сборка проекта.
- Процесс сбора и организации данных: скрипт проходит по папкам с модулями, где хранятся файлы в формате Markdown с уроками, а также файл
index.json
с дополнительной информацией. Данный скрипт собирает информацию об уроках, присваивает каждому модулю и уроку уникальный идентификатор (UUID), и создает файлindex.json
в папкеbuild
, содержащий структурированные данные об уроках и модулях. - Уникальные идентификаторы для уроков и модулей: каждому модулю и уроку присваивается уникальный идентификатор (UUID), обеспечивая уникальность данных и предотвращая конфликты в структуре.
- Подготовка статических данных для сайта: скрипт копирует данные модулей и уроков в папку
build
, присваивая каждому элементу уникальный UUID. Эти статические файлы, вместе сindex.json
, используются сайтом для предоставления информации о курсе и его уроках.
Для обеспечения удобства редактирования и интеграции в различные проекты, скрипт включает модульность, где основные переменные вынесены в отдельный файл src/utils/constants.mjs
. Это делает проект гибким и легко настраиваемым под разные требования. Давайте рассмотрим ключевые переменные:
// src/utils/constants.mjs
// Корневая директория проекта
export const projectRootDirectory = '.';
// Директории
export const buildDirectory = path.join(projectRootDirectory, 'build');
export const workDirectory = path.join(projectRootDirectory, 'src/data');
export const assetsDirectory = 'images';
// Имена файлов
export const buildFileName = 'index.json';
export const additionalInfoFileName = 'index.json';
- Модульность:
- Переменные вынесены в отдельный файл
constants.mjs
, обеспечивая удобство и чистоту кода. - Модульность позволяет легко интегрировать этот файл в другие проекты, обеспечивая повторное использование кода.
- Переменные вынесены в отдельный файл
- Легкость редактирования:
- Все основные параметры (корневая директория, директории, имена файлов) сосредоточены в одном месте.
- Изменения в этих параметрах могут быть произведены легко и безопасно, не затрагивая основной код.
- Интеграция в другие проекты:
- Модульность делает этот скрипт легко интегрируемым в другие проекты, где может потребоваться схожая функциональность.
- Компоненты скрипта могут быть использованы в других контекстах, улучшая эффективность разработки.
- Гибкость и настраиваемость:
- Переменные в
constants.mjs
предоставляют возможность быстро адаптировать скрипт к различным требованиям и структурам проектов. - Легкость редактирования и гибкость делают этот скрипт универсальным и применимым в различных сценариях.
- Переменные в
Такая архитектура позволяет легко поддерживать и расширять функциональность скрипта, что делает его привлекательным решением для интеграции в разнообразные проекты.
Node.js
является основным языком программирования для серверной части проекта. Эта среда выполнения JavaScript
обеспечивает высокую производительность и масштабируемость при создании серверных приложений. С его помощью проект может эффективно обрабатывать запросы, взаимодействовать с файловой системой и выполнять другие серверные задачи.
Формат Markdown
используется для хранения информации об уроках в проекте. Этот легкий и удобочитаемый язык разметки позволяет создавать структурированный контент с минимумом усилий. Markdown
обеспечивает простоту редактирования текста и легкость восприятия, что делает его отличным выбором для создания материалов курса.
ESLint
и Prettier
- это линтеры, которые используются в проекте для поддержания высокого стандарта кодирования. ESLint
проверяет исходный код на соответствие стандартам и стилю программирования, а Prettier
автоматически форматирует код, делая его более читаемым и однородным. Вместе эти инструменты помогают поддерживать чистоту кода и облегчают соблюдение стандартов разработки.
Husky
и Commitlint
предоставляют систему для управления коммитами в проекте. Husky
интегрируется с системой контроля версий Git
и позволяет настраивать хуки (hooks
), которые выполняются перед или после событий, таких как коммит. Commitlint
вводит стандарты для написания сообщений о коммитах, что способствует единообразному и информативному стилю коммитов. Вместе эти инструменты помогают поддерживать четкую историю изменений и облегчают совместную разработку.
Проект "Курс по Компас 3D" создан с целью предоставить студентам удобный и информативный ресурс для изучения программы. Скрипты обновления и технологии, используемые в проекте, обеспечивают легкость в управлении контентом и поддерживают актуальность материалов.