Change search
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf
Load time optimization of JavaScript web applications
Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
2019 (English)Independent thesis Basic level (degree of Bachelor), 10 credits / 15 HE creditsStudent thesis
Abstract [en]

Background.

Websites are getting larger in size each year, the median size increased from 1479.6 kilobytes to 1699.0 kilobytes on the desktop and 1334.3 kilobytes to 1524.1 kilobytes on the mobile. There are several methods that can be used to decrease the size. In my experiment I use the methods tree shaking, code splitting, gzip, bundling, and minification.

Objectives.

I will investigate how using the methods separately affect the loading time and con- duct a survey targeted at participants that works as JavaScript developers in the field.

Methods.

I have used Vue for creating a website and ran Lighthouse tests against the website. All this within two Docker containers to make the reproducibility easier. Interviews with JavaScript developers were made to find out if they use these methods in their work.

Results.

The best result would be to use all of the methods; gzip, minification, tree shaking, code splitting, and bundling in a combination. If gzip is the only option available for the developer to use, we can see around 60% decrease in loading time. The inter- views showed that most developers did not use or did not know of tree shaking and code splitting. Some frameworks have these methods built in to work automatically, therefor the developers does not know that it is being utilized.

Conclusions.

Since tree shaking and code splitting are two relatively new techniques, there is not much scientific measured values available. From the results, we can give the conclusion that using all of the mentioned methods will give the best result in loading time. All of the methods will affect the loading time, and only using gzip will affect it with a 60% decrease.

Place, publisher, year, edition, pages
2019.
National Category
Software Engineering
Identifiers
URN: urn:nbn:se:bth-17931OAI: oai:DiVA.org:bth-17931DiVA, id: diva2:1318692
Subject / course
PA1445 Kandidatkurs i Programvaruteknik
Educational program
PAGWE Web Programming
Supervisors
Examiners
Available from: 2019-06-19 Created: 2019-05-28 Last updated: 2019-06-20Bibliographically approved

Open Access in DiVA

fulltext(152 kB)1124 downloads
File information
File name FULLTEXT01.pdfFile size 152 kBChecksum SHA-512
372231c244d73949d93ed6e805cef1673c4928fab6258303e890f05930e88ca06a68ba546e5a32814f1f2484b03255a19228eb6faa10a03c4c52c5b6a0b56e57
Type fulltextMimetype application/pdf

Search in DiVA

By author/editor
Huang, Simon
By organisation
Department of Software Engineering
Software Engineering

Search outside of DiVA

GoogleGoogle Scholar
Total: 1124 downloads
The number of downloads is the sum of all downloads of full texts. It may include eg previous versions that are now no longer available

urn-nbn

Altmetric score

urn-nbn
Total: 2271 hits
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf