Co to jest kod płyty głównej?


384

Współpracownik nigdy o tym nie słyszał i nie mogłem podać prawdziwej definicji. Dla mnie zawsze był to przykład „wiem, kiedy to widzę”.

Pytanie bonusowe, od kogo pochodzi ten termin?


68
Uwaga: termin „płyta grzewcza” nie dotyczy wyłącznie programowania. Na przykład prawnik może dać ci 5-stronicową umowę do podpisania, ale większość z nich to płyta główna. Oznacza to, że jest tak samo dla każdego, kto otrzymuje ten kontrakt, z kilkoma liniami zmienionymi tu i tam.
mellowsoon

26
Nie wiem o nikim innym, ale w mojej firmie kod
płyty kotłowej

1
To pytanie wydaje się nie na temat, ponieważ dotyczy żargonu.
Adriano Repetti

4
Przybyłem tutaj z powodu dokumentacji Laravela i pomyślałem… „O czym oni mówią?”. Po przeczytaniu kilku odpowiedzi pomyślałem, że ta bezpośrednio związana strona wiki pokazuje również wgląd w tę sprawę: en.wikipedia.org/wiki/Boilerplate_code
Ben Fransen

1
Ostatnio słyszałem ten termin, więc jestem ciekawy, czy mogę je nazwać wtyczką lub modułem dla języków programowania.
Anjil Panchal

Odpowiedzi:


215

„kod bojlera” to każdy z pozoru powtarzalny kod, który pojawia się wielokrotnie, aby uzyskać wynik, który wydaje się, że powinien być znacznie prostszy.

To subiektywna definicja.

Termin pochodzi od „płyty kotłowej” w branży gazetowej: wiki


2
Ideą wielu właściwości w OOP jest zmniejszenie płyty kotłowej, więc przy prawidłowym zastosowaniu można ją znacznie zmniejszyć.
Andrew Sledge

Mówi się również, że pochodzi z przemysłu stalowego, w którym blachy stalowe są używane w kotłach
Mohammed Shareef C

55

W etymologii termin „ płyta grzewcza” : z http://www.takeourword.com/Issue009.html ...

Co ciekawe, termin ten wywodzi się z branży gazetowej. Kolumny i inne fragmenty, które zostały syndykowane, zostały wysłane do prenumerujących gazety w formie maty (tj. Matrycy). Po otrzymaniu wrzący ołów wlano do tej maty, aby utworzyć płytkę używaną do wydrukowania kawałka, stąd nazwa płyty kotłowej. Ponieważ artykuł wydrukowany na płycie kotła nie mógł zostać zmieniony, prawnicy zaczęli używać tego terminu, aby odnosić się do części umowy, która nie uległa zmianie w wyniku wielokrotnego użycia w różnych aplikacjach, a wreszcie do języka w ogóle, który nie zmienił się każdy dokument, który był wielokrotnie używany przy różnych okazjach.

Co stanowi płytę grzejną w programowaniu? Jak zauważyli inni, jest to tylko fragment kodu, który jest kopiowany w kółko, z niewielkimi lub żadnymi zmianami wprowadzonymi w tym procesie.


Istnieje alternatywne wyjaśnienie mentalfloss.com/article/26087/why-it-boilerplate-text, dla których widziałem więcej odnośników.
fgysin przywraca Monikę

1
cholera! wydaje się to odpowiedzią na
wymianę stosu

55

Kod płyty zbiorczej oznacza fragment kodu, którego można używać w kółko. Z drugiej strony każdy może powiedzieć, że jest to fragment kodu wielokrotnego użytku.

Termin faktycznie pochodzi od przemysłu stalowego.

Dla odrobiny historii , według Wikipedii :

W latach 90. XIX w. Płyta kotła została faktycznie odlana lub wytłoczona w metalu, gotowa do druku i rozprowadzona w prasie w całych Stanach Zjednoczonych. Do lat pięćdziesiątych tysiące gazet otrzymywało i stosowało tego rodzaju płyty od największego w kraju dostawcy, Western Newspaper Union. Niektóre firmy wysyłały również komunikaty prasowe w formie blaszki, aby musiały zostać wydrukowane w formie pisemnej.

Teraz według Wikipedii :

W programach obiektowych klasy często są wyposażone w metody pobierania i ustawiania zmiennych instancji. Definicje tych metod często można uznać za płytę kotłową. Chociaż kod różni się w zależności od klasy, jest wystarczająco stereotypowy w strukturze, aby był lepiej generowany automatycznie niż pisany ręcznie. Na przykład w poniższej klasie Java reprezentującej zwierzaka prawie cały kod jest wzorcem z wyjątkiem deklaracji zwierzaka, imienia i właściciela:

public class Pet {
    private PetName name;
    private Person owner;

    public Pet(PetName name, Person owner) {
        this.name = name;
        this.owner = owner;
    }

    public PetName getName() {
        return name;
    }

    public void setName(PetName name) {
        this.name = name;
    }

    public Person getOwner() {
        return owner;
    }

    public void setOwner(Person owner) {
        this.owner = owner;
    }
}

38

Jest to kod, który może być używany przez wiele aplikacji / kontekstów z niewielkimi lub żadnymi zmianami.

Płyta kotłowa pochodzi z przemysłu stalowego na początku XX wieku.


34

Z Wikipedii :

W programowaniu komputerowym płyta kotłowa jest terminem używanym do opisania części kodu, które muszą być zawarte w wielu miejscach z niewielkimi lub żadnymi zmianami. Jest częściej używany w odniesieniu do języków, które są uważane za pełne, tj. Programista musi napisać dużo kodu, aby wykonać minimalne zadania.

Zasadniczo możesz więc traktować kod bojlerów jako tekst, który jest bardzo potrzebny w języku programowania bardzo często wokół programów, które piszesz w tym języku.

Współczesne języki starają się to zmniejszyć, ale także starszy język, który ma określone moduły sprawdzania typu (na przykład OCaml ma kod pośredniczący, który pozwala uniknąć tak wielu deklaracji, które byłyby kodem zbiorczym w bardziej pełnym języku, takim jak Java)


24

Boilerplate jest tym, czego unikają dobrzy programiści: powtarzanie.


36
OMG, masz dwa razy „ti” w swojej odpowiedzi! Jak widać, powtarzanie nie zawsze jest złe.
Tamás Sengel

3
Jak tego uniknąć public static void main(String[] _)?
Koray Tugay,

15

Wzornik w rozwoju oprogramowania może oznaczać różne rzeczy dla różnych ludzi, ale ogólnie oznacza blok kodu, który jest używany w kółko.

W rozwoju stosu MEAN termin ten odnosi się do generowania kodu za pomocą szablonu. Jest to łatwiejsze niż ręczne kodowanie całej aplikacji od zera i zapewnia spójność bloku kodu oraz mniej błędów, ponieważ jest to czysty, przetestowany i sprawdzony kod oraz jest to oprogramowanie typu open source, dzięki czemu jest stale aktualizowane lub naprawiane, dzięki czemu oszczędza dużo czasu podczas używania framework lub generator kodu. Aby uzyskać więcej informacji o stosie MEAN, kliknij tutaj .


7

W praktyce kod płytki jest materiałem, który wycinasz i wklejasz wszędzie. Często będą to nagłówki modułów oraz niektóre standardowe / wymagane deklaracje (każdy moduł musi zadeklarować program rejestrujący, każdy moduł musi zadeklarować zmienne dla swojej nazwy i wersji itp.) W moim obecnym projekcie piszemy programy obsługi wiadomości i wszystkie mają tę samą strukturę (przeczytaj wiadomość, sprawdź ją, przetwarzaj) i aby wyeliminować zależności między programami obsługi, nie chcieliśmy, aby wszystkie dziedziczyły od klasy podstawowej, więc wymyśliliśmy szkielet płyty kotłowej. Zadeklarował wszystkie rutynowe zmienne, standardowe metody, ramy obsługi wyjątków - wszystko, co musiał zrobić programista, to dodać kod specyficzny dla obsługiwanego komunikatu. Byłby szybki i łatwy w użyciu,


7

Definicja bojlera staje się coraz bardziej globalna w wielu innych językach programowania. Pochodzi z OOP i języków hybrydowych, które stały się OOP i były wcześniej proceduralne, a teraz mają ten sam cel, aby nadal powtarzać kod tworzony za pomocą modelu / szablonu / klasy / obiektu, dlatego też dostosowują ten termin. Tworzysz szablon, a jedyne, co robisz dla każdego wystąpienia szablonu, to parametry pozwalające na zindywidualizowanie obiektu, który nazywamy płytą kotłową. Po prostu ponownie użyj kodu, z którego utworzyłeś szablon, tylko z innymi parametrami.

Synonimy
wzór jest płytą kotłową
szablon jest płytą kotłową
stopka jest płytką kotłową
wzór do wielokrotnego użytku jest płytą kotłową
podpis poczty jest płytą kotłową



2

Z whatis.techtarget.com :

W technologii informacyjnej płyta podstawowa jest jednostką zapisu, którą można wielokrotnie wykorzystywać bez zmian. W związku z tym pomysł czasami stosuje się do programowania wielokrotnego użytku, jak w „kodzie wzorcowym”. Termin ten wywodzi się z produkcji stali, gdzie płyta kotłowa jest stalowa walcowana w duże płyty do zastosowania w kotłach parowych. Implikacja jest taka, że ​​napis na płycie kotła został przetestowany w czasie i mocny jak „stal”, lub być może został rozwinięty w coś wystarczająco mocnego do wielokrotnego użycia.

Poza programowaniem:

Płyta kotłowa może być porównana do pewnego rodzaju szablonu, który można uważać za płytkę kotłową wypełniającą puste miejsca. Niektóre typowe szablony obejmują: deklaracje misji, ostrzeżenia dotyczące bezpieczeństwa, powszechnie stosowane procedury instalacyjne, deklaracje dotyczące praw autorskich i wyłączenia odpowiedzialności.

Z mojego doświadczenia jako programisty, odpowiedni rodzaj kodu typu „płyta podstawowa” to zazwyczaj zbiór kodu, od którego zaczynasz, który nie jest zbyt duży i / lub wystarczająco skomplikowany, aby nazwać go ramą.

Typowym przykładem może być HTML5 Boilerplate .


1

Możesz go nazwać „fragmentami”, a ściślej „zbiorem fragmentów”. Termin, który, jak sądzę, pochodzi od przemysłu prasowego i poligraficznego, gdzie użyli rzeczywistych „płyt”, a następnie ponownie użyli ich jako kawałków. We współczesnym Internecie jest to część trwającego (irytującego IMHO) trendu używania fantazyjne warunki dla prostych rzeczy, aby wyglądać bardziej modnie i wyrafinowanie. patrz RESPONSIVE = adaptowalny / płyn.


„Fragmenty” nie mają tego samego znaczenia; „płytka kotłowa” ma tendencję do łączenia większych fragmentów, które mają zostać zmodyfikowane w celu dopasowania, w przeciwieństwie do kilku wierszy kodu kopiuj / wklej / zapomnij. Przykładem może być kod WinMainfunkcji w aplikacji Win32; rejestruje klasę okna aplikacji, tworzy okno główne, uruchamia pętlę zdarzeń i zwraca kod wyjścia procedury okna. Ta funkcjonalność często nie zmienia wiele między aplikacjami i może być ponownie wykorzystana przy stosunkowo niewielu modyfikacjach, ale nie jest tak rutynowa, że ​​ma sens jako biblioteka (lub fragment kodu, jeśli o to chodzi).
cHao

0

Płyta kotłowa jest jednostką pisma, która może być wielokrotnie używana bez zmian. Co więcej, pomysł jest czasami stosowany do programowania wielokrotnego użytku, jak w „kodzie wzorcowym”

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.