Gulp
Logo programu | |
| Autor | Eric Schoffstall |
|---|---|
| Pierwsze wydanie | 26 września 2013; około 12 lat temu[1] |
| Aktualna wersja stabilna | 5.0.1 (1 czerwca 2025) [±] |
| Język programowania | JavaScript |
| System operacyjny | Wieloplatformowe |
| Licencja | MIT |
| Strona internetowa | |
gulp – darmowy i otwarty zestaw narzędzi do budowania aplikacji opartych na języku JavaScript. Został stworzony w 2013 roku przez Erica Schoffstalla[2], jako system strumieniowego przetwarzania plików wspomagającego tworzenie aplikacji internetowych.
Jest to moduł do uruchamiania zadań oparty na Node.js i npm, wykorzystywany do automatyzacji czasochłonnych i powtarzalnych zadań związanych z tworzeniem stron internetowych, takich jak minifikacja, konkatenacja, pomijanie pamięci podręcznej (cache busting), testowanie jednostkowe, linting, optymalizacja itp[3].
Przegląd
Biblioteka gulp to narzędzie do budowania w JavaScript zbudowane na strumieniach Node.js. Strumienie te ułatwiają połączenie operacji na plikach za pomocą potoków[4]. Biblioteka czyta dane z systemu plików i przesyła je z jednej wtyczki do drugiej za pośrednictwem funkcji .pipe(). W wyniku wszystkich operacji zazwyczaj tworzone są nowe pliki, ale ostatecznie mogą być też podmieniane oryginały, przy czym dzieje się to dopiero po przetworzeniu wszystkich wtyczek. Daje to możliwość wykonywania złożonych zadań poprzez łączenie wielu wtyczek. Użytkownicy mogą również pisać własne wtyczki, aby zdefiniować własne zadania[5].
W przeciwieństwie do innych podobnych programów gulp nie ma uproszczonego pliku konfiguracyjnego (jak np. Webpack) i do zdefiniowania zadań wymagana jest podstawowa znajomość JavaScript. Daje to jednak możliwość łatwiejszego dostosowania procesu budowania aplikacji do własnych potrzeb[6].
Sposób działania
Zadania gulp są uruchamiane z wiersza poleceń (CLI) i wymagają dwóch plików.
package.json-- używany do instalowania zależności przez npm (w tym wtyczek dla gulp) -- devDependencies.gulpfile.js(lub po prostugulpfile) -- główny plik zawierający definicje zadań. Tu ładowane są moduły i zazwyczaj tutaj znajduje się logika wykonania zadań.
Zgodnie z przyjętą konwencją pliki te znajdują się zazwyczaj w głównym folderze kodu źródłowego danego pakietu.
Zadanie domyślne jest uruchamiane przez uruchomienie polecenia gulp w folderze projektu. Poszczególne zadania mogą być zdefiniowane przez gulp.task i są uruchamiane przez polecenie: gulp <task> <othertask>[7][8].
Zobacz też
Przypisy
- ↑ gulp 4.0.2 on npm - Libraries.io [online], libraries.io [dostęp 2020-01-03] (ang.).
- ↑ Jed Mao, Maximilian Schmitt, Tomasz Stryjewski, Cary Landholt, William Lubelski, Developing a gulp edge : the streaming build system, Santa Rosa, CA, ISBN 978-1-939902-14-6, OCLC 897388091 [dostęp 2020-01-01].
- ↑ How To Build And Develop Websites With Gulp [online], Smashing Magazine, 11 czerwca 2014 [dostęp 2020-01-01] (ang.).
- ↑ James Halliday, Stream handbook. How to write node programs with streams. [online] [dostęp 2020-01-01] [zarchiwizowane z adresu 2014-12-19].
- ↑ Writing a plugin [online], gulpjs - GitHub [dostęp 2020-01-01].
- ↑ Eric Grosse, Webpack or Browserify & Gulp: Which Is Better? [online], Toptal Engineering Blog, 11 października 2016 [dostęp 2020-01-01] (ang.).
- ↑ Getting Started with Gulp.js - Semaphore Tutorial [online], Semaphore, 18 marca 2015 [dostęp 2020-01-01] (ang.).
- ↑ Quick Start [online], gulpjs.com [dostęp 2020-01-01] (ang.).
Linki zewnętrzne
- Oficjalna witryna.
- gulp na Github.
Content Disclaimer
Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.
- The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
- There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
- It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
- Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
- Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.