2024-07-12
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
Ohjelmistokehityksen maagisessa maailmassa jokainen kehittäjä haaveilee taikasauvasta, joka voi muuntaa koodin tehokkaiksi sovelluksiksi vain sauvan aaltoilulla. Tänään tutkimme C#:n automatisoitua pakkaustaikuutta tehdäksemme EXE-tiedostojen luomisesta helppoa.
Ohjelmistokehityksen pitkällä matkalla koodin pakkaaminen suoritettavaan EXE-tiedostoon on olennainen taito. Se ei vain suojaa lähdekoodia, vaan tarjoaa myös käyttäjille kätevän asennuskokemuksen. Manuaalinen pakkausprosessi on kuitenkin hankala ja virhealtis, joten automaattisesta pakkaamisesta on tullut kehittäjille siunaus.
Automaattinen pakkaus kuulostaa salaperäiseltä ja tavoittamattomalta, mutta itse asiassa voimme saavuttaa tämän tavoitteen helposti C#:n ja joidenkin työkalujen avulla. Käytämme .NET Core SDK:ta yhdistettynä CI/CD (continuous integration/continuous deployment) -työkaluihin, kuten GitHub Actionsiin tai Jenkinsiin, saavuttaaksemme automaattisen pakkaamisen.
Ensinnäkin tarvitset C#-projektin. Tässä on yksinkertainen esimerkki konsolisovelluksesta:
- using System;
-
-
- namespace ConsoleApp
- {
- class Program
- {
- static void Main(string[] args)
- {
- Console.WriteLine("Hello, World!");
- }
- }
- }
Seuraavaksi käytämme .NET Coren dotnet publish -komentoa sovelluksen pakkaamiseen. Avaa projektin juurihakemistossa komentorivityökalu ja suorita seuraava komento:
dotnet publish -c Release -r win-x64 --self-contained true
Tämä luo itsenäisen sovelluksen, jossa on kaikki riippuvuudet.
Nyt olemme voineet paketoida sovelluksia manuaalisesti, mutta miten se automatisoidaan? Otetaan esimerkkinä GitHub Actions ja luodaan työnkulku pakkausprosessin automatisoimiseksi.
Luo projektin juurihakemistoon .github/workflows-hakemisto.
Luo tähän hakemistoon YAML-tiedosto, kuten build.yml.
Kirjoita työnkulun kokoonpano seuraavasti:
- name: Build and Publish
-
-
- on: [push, pull_request]
-
-
- jobs:
- build:
- runs-on: windows-latest
-
-
- steps:
- - uses: actions/checkout@v2
-
-
- - name: Setup .NET Core
- uses: actions/setup-dotnet@v1
- with:
- dotnet-version: '3.1.x'
-
-
- - name: Build and Publish
- run: dotnet publish -c Release -r win-x64 --self-contained true
Tämä työnkulku suoritetaan automaattisesti jokaisessa sovelluksen paketointipyynnössä.
Vaikka automaattinen pakkaus on kätevää, sinun on myös kiinnitettävä huomiota turvallisuuteen. Varmista, että automaatiokomentosarjasi eivät paljasta arkaluonteisia tietoja, kuten API-avaimia tai tietokannan salasanoja. Samanaikaisesti jokainen pakkausprosessin vaihe varmistetaan sen varmistamiseksi, että luotu EXE-tiedosto on turvallinen eikä sitä ole peukaloitu.
Jos sovelluksesi on tuettava useita alustoja, kuten Linux tai macOS, voit muuttaa -r-parametrin arvoa dotnet publish -komennossa mukautuaksesi erilaisiin ajonaikaisiin ympäristöihin.
Automaattinen pakkaus on tehokas teknologia ohjelmistokehityksessä. Se ei ainoastaan lisää kehitystehokkuutta, vaan myös varmistaa pakkausprosessin johdonmukaisuuden ja tarkkuuden. Tämän artikkelin tutkimisen avulla opimme käyttämään C#- ja .NET Corea automatisoidun pakkaamisen toteuttamiseen ja yhdistämään sen CI/CD-työkaluihin koko prosessin automatisoimiseksi.
C#-kehittäjänä meidän tulee omaksua automaatio ja käyttää nykyaikaisia työkaluja ja prosesseja kehitystyön yksinkertaistamiseksi. Heilutetaan automaation taikasauvaa ja muunnetaan koodi tehokkaiksi sovelluksiksi, jotka tuovat maagisen muutoksen maailmaan.
Suositellut tuotteet menneisyydestä:
Kiinassa tuntematon .NET on niin suosittu ulkomailla, että se on mielikuvituksen ulkopuolella?
C#:n polku laajentumiseen: innovaatio tai tuho
Esittelyssä 6 kaunista winform avoimen lähdekoodin käyttöliittymäkirjastoa .NET:lle
Esittelyssä yksi suosituimmista .NET avoimen lähdekoodin käyttöliittymäkirjastoista
WPF vs. Winform, mikä on valintasi?
WinFormin mennyt ja nykyinen elämä
.NET on tullut täysi-ikäiseksi, mitä nyt? ——Legenda vastahyökkäyksestä ohjelmointimaailmassa