Введение в книгу Эта книга считается библией для разработчиков, поскольку она дает ценную информацию о том, как работает платформа. Несмотря на то, что он немного устарел, он по-прежнему полезен для понимания развертывания приложений и администрирования.
"Состав, установка, развертывание и администрирование" - Обзор главы "Составление, установка, развертывание и администрирование" охватывает различные темы, связанные с созданием приложений из нескольких файлов с использованием консольных команд. В нем также обсуждаются региональные стандарты и настройка приложений.
Проблемы, связанные с библиотеками при разработке приложений Одной из проблем, обсуждаемых в этой главе, является работа с конфликтующими библиотеками, которые были глобально доступны различным приложениям. Другой проблемой было управление зависимостями во время установки, что часто приводило к системным проблемам.
Понимание метаданных при разработке приложений Метаданные содержат информацию о структуре кода, такую как методы и поля внутри приложения. Это позволяет изолированно запускать приложения, не полагаясь на внешние ресурсы или записи реестра.
Начало работы с Visual Studio В этой главе мы узнаем, как работать в Visual Studio и использовать Notepad++ в качестве редактора кода. Мы начнем с создания простого приложения "Hello World" с использованием C#. Затем мы компилируем программу и успешно запускаем ее.
Компиляция приложения Ошибка "Консоль" не распознана возникает из-за того, что система не знает о типе консоли. Нам нужно включить "using System;" в начало нашего файла кода или указать полный путь к нему. После успешной компиляции мы можем запустить наше приложение.
Введение в компиляцию В этой главе мы узнаем о компиляторе и файле исходного кода. Мы также обсуждаем дополнительные параметры и имена выходных файлов. Тип компиляции определяет тип приложения, которое будет сгенерировано.
Понимание исполняемых файлов "ld.exe " это инструмент дизассемблера, используемый для анализа нашего исполняемого файла. Для этого требуется указать пути как к файлам компилятора, так и к файлам дизассемблера. Местонахождение "ld.exe " может варьироваться в зависимости от версии вашей платформы.
Типы и методы Существует два типа методов: методы, определенные в сборке, которые создаются внутри сборки, и общедоступные статические методы void, которые могут быть объявлены в исходном коде. Сборка также содержит поля, свойства, события и параметры для этих методов.
Файл манифеста "Манифест" - это файл, который определяет свойства сборки. Он включает в себя информацию о том, какие файлы включены в сборку, где они расположены, точки входа для выполнения (например, метод 'Main'), атрибуты, используемые кодом.
Цель собраний Сборки - это ресурсы, содержащие дополнительную информацию, такую как изображения и звуки. Они предоставляют определения для всех общедоступных типов в нашем коде, упрощая работу со сборками. Разбивая одну сборку на несколько файлов, мы можем выборочно загружать только необходимые компоненты при установке из Интернета.
Добавление файлов ресурсов Файлы "Ресурсов", такие как изображения и мелодии, являются вспомогательными ресурсами, которые напрямую не влияют на исходный код, но могут быть полезны в нашем приложении. Мы можем либо встроить эти ресурсы непосредственно в сборку, либо ссылаться на них, используя ссылку, указанную в файле манифеста.
Использование нескольких языков Работая над проектами, написанными на разных языках программирования, мы можем логически объединять модули, написанные отдельно, в одну сборку. Это позволяет нам получить доступ к любому типу в сборке независимо от ее языка.
Модуль и основной файл "Модуль" относится к .СЕТЕВОЙ модуль, представляющий собой отдельный файл, содержащий информацию о сборке и исходный код. Основной файл, "program.cs", необходим для работы нашего приложения, поскольку он служит точкой входа. Если мы удалим этот файл, наш исполняемый файл перестанет функционировать.
Структура модуля .NET Модули .NET состоят из метаданных (включая манифест) и исходного кода. С другой стороны, исполняемые файлы, такие как "rezal.exe " содержат свои собственные метаданные наряду с основной программной логикой. Модули могут быть объединены в одну сборку.
Преимущества сборки Сборка позволяет объединять несколько файлов в логический блок или компоновку без зависимостей друг от друга. Он обеспечивает эффективный механизм повторного использования кода и стоит особняком с точки зрения функциональности.
Понимание управления версиями сборки Управление версиями сборки является важным аспектом разработки программного обеспечения. Он включает информацию о номере сборки и версии, которые имеют решающее значение для отслеживания изменений и разрешения конфликтов между различными сборками.
Отличительная информация о сборке "Информация о сборке" относится к дополнительным сведениям, хранящимся в свойствах проекта. Это включает в себя версию сборки, версию файла и версию продукта. Эти параметры помогают идентифицировать конкретные версии сборки и обеспечивают совместимость между различными компонентами.
Эффективное развертывание сборки Когда сборки развернуты правильно, они работают хорошо и не дублируют код. Мы загружаем только необходимые файлы на нужном языке. Существуют различные подходы к развертыванию приложений, и мы сосредоточимся на простом методе, называемом закрытым развертыванием.
Закрытое развертывание: Простой подход "Закрытое развертывание" - это простой способ развертывания приложений. Это включает в себя размещение всех необходимых файлов для нашего приложения в одной папке или каталоге. Это обеспечивает успешное взаимодействие между компонентами без каких-либо конфликтов или отсутствующих зависимостей.
Конфигурационные файлы Конфигурационный файл назван в честь исполняемого файла в основной сборке. Это может быть файл web.config внутри каждой папки, даже внутри вложенных папок. Конфигурация машины - это общий и необходимый конфигурационный файл для машины, который соответствует каждой версии Sailor.
Поддержка "Patreon" "Патреон" - это способ поддержать меня как автора регулярными пожертвованиями. Подписавшись, вы получаете доступ к ранним материалам, специальным закрытым группам чата в Telegram и ролям сервера Discord в зависимости от вашего уровня поддержки (от 5 долларов). Более высокие уровни предлагают участие в эксклюзивных трансляциях, где мы обсуждаем различные темы и проводим личные наставнические сессии.
Использование неуправляемого кода с управляемым кодом Чтобы использовать неуправляемый код с управляемым кодом, вам необходимо скомпилировать его отдельно, используя компилятор, специфичный для этого языка программирования. Затем привяжите его как дополнительный модуль или библиотеку к вашей основной сборке, используя инструменты компоновщика, такие как CherryPy, или атрибуты, такие как [DllImport]. Это обеспечивает совместимость между различными типами сборок.