Hyppää sisältöön
    • Suomeksi
    • På svenska
    • In English
  • Suomeksi
  • In English
  • Kirjaudu
Näytä aineisto 
  •   Etusivu
  • LUTPub
  • Kandidaatin tutkintojen opinnäytetyöt
  • Näytä aineisto
  •   Etusivu
  • LUTPub
  • Kandidaatin tutkintojen opinnäytetyöt
  • Näytä aineisto
JavaScript is disabled for your browser. Some features of this site may not work without it.

Hyötyä koodin laadun varmistamisesta : eri tapoja varmistaa koodin laatua Rust-projektissa

Ahmadi, Arman (2025)

Katso/Avaa
Kandidaatintyo_Ahmadi_Arman.pdf (5.669Mb)
Lataukset: 


Kandidaatintyö

Ahmadi, Arman
2025

School of Engineering Science, Tietotekniikka

Kaikki oikeudet pidätetään.
Näytä kaikki kuvailutiedot
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi-fe2025090193339

Tiivistelmä

Koodin katselmointi on tapa, jolla voidaan tarkistaa lähdekoodia virheiden varalta ja kehittää sen laatua. Koodin analyysilla ja laadunvarmistuksella ei ole varmaa, standardoitua suoritustapaa, vaan se riippuu ohjelmistoprojektista, sen ympäristöstä ja sen tarpeista. Koodin katselmointia voi suorittaa yksin tai yhteistyönä. Säännöllinen koodikatselmointi aikaansaa mahdollisten virheiden ja puutteiden havaitsemista ajoissa, joka auttaa keventämään muun muassa jälkikustannuksia.

Koodin katselmointia yleensä suoritetaan koodimuutosten myötä, jolloin päivitetty koodinpätkä käydään läpi ennen kun sitä yhdistetään lopullisesti lähdekoodiin. On olemassa sekä manuaalisia että automaattisia tapoja koodin katselmointiin ja laadunvarmistukseen. Esimerkiksi versionhallintapalvelut kuten GitHub tarjoavat manuaaliselle katselmoinnille sisäänrakennettuja työkaluja vetopyyntöjen eli koodimuutosten integroinnin pyyntöjen tarkistamiseen. Lisäksi on olemassa koodieditoreille tekoälypohjaisia katselmointityökaluja, jossa tekoäly voi ehdottaa muutoksia tai korjauksia koodiin. Automaattisiin menetelmiin taas kuuluvat muun muassa jatkuva integrointi (Continuous integration, CI) ja yksikkötestaus.

Tässä tutkielmassa käydään läpi manuaalista katselmointia GitHubin kautta, perustetaan Visual Studio Code-koodieditorilla Rust-ohjelmointikielen pohjaisen testirepositorion ja tarkistetaan GitHub Copilotin tekoälyn käyttöä katselmoinnissa. Lisäksi käydään läpi yksikkötestausta ja miten se onnistuu Rust-kielen ympäristössä. Tutkielman tuloksissa tarkistetaan, miten Copilot kävi läpi testirepositorion lähdekoodia sekä sen toimivuus yksikkötestien koodin generoinnissa.
 
Code reviewing is a common method to check through source code for errors and potential quality improvements. Code analysis and quality assurance doesn’t have a certain standardized method. Rather, it depends on the software project itself, as well as its needs, and environment. Code reviews are performed either alone or in collaboration with other developers. Regular reviews allow for early detection of potential errors and deficiencies, which can help in reducing costs.

Code reviews can be performed through making changes in the source code, during which an update part of the code undergoes inspection before being finally merged into the base source code. There are both manual and automated ways to perform code reviews and quality assurance. Version control services such as GitHub offer built-in tools for manual reviews during pull requests, which are essentially requests for integrating changes into the base source code. There are also extensions for code editors that utilize artificial intelligence (AI) as tools for pair programming. These provide options to review code, which will have artificial intelligence scanning a select part of code to review and request changes and fixes for. Automated methods include continuous integration (CI) and unit testing. This thesis will cover the process of manual reviewing through GitHub, as well as setting up a test repository there containing a program written in the Rust programming language through Visual Studio Code. GitHub Copilot’s artificial intelligence will be tested on this repository in order to examine its use in reviewing code as well as its functionality in generating code for unit tests.
 
Kokoelmat
  • Kandidaatin tutkintojen opinnäytetyöt [7126]
LUT-yliopisto
PL 20
53851 Lappeenranta
Ota yhteyttä | Tietosuoja | Saavutettavuusseloste
 

 

Tämä kokoelma

JulkaisuajatTekijätNimekkeetKoulutusohjelmaAvainsanatSyöttöajatYhteisöt ja kokoelmat

Omat tiedot

Kirjaudu sisäänRekisteröidy
LUT-yliopisto
PL 20
53851 Lappeenranta
Ota yhteyttä | Tietosuoja | Saavutettavuusseloste