konsumenci domagają się inteligentniejszych, bardziej połączonych produktów. Popyt ten doprowadził do gwałtownego rozwoju oprogramowania i łączności.
ilość wbudowanego oprogramowania w produktach rośnie wykładniczo. Funkcjonalność produktu jest coraz bardziej zależna od oprogramowania, a mniej od sprzętu i komponentów mechanicznych. Dzieje się to w każdej branży.
w przemyśle lotniczym i obronnym Boeing 787 ma 6,5 miliona linii kodu. W motoryzacji samochód ma 100 milionów linii kodu. A w elektronice użytkowej telefon z Androidem ma 12 milionów linii kodu.
ale wraz z rozwojem oprogramowania stwarza zarówno wyzwania biznesowe, jak i techniczne. Dostępność wykwalifikowanych programistów jest ograniczona. A gdy stają się rzadkie, stają się droższe.
ponowne użycie kodu może rozwiązać problem wzrostu oprogramowania i tutaj wyjaśniamy, co to jest ponowne użycie kodu i jak skutecznie wykorzystać kod.
- Co To Jest Ponowne Użycie Kodu?
- kiedy możesz ponownie użyć kodu
- gdy ponowne użycie kodu nie działa
- dlaczego ponowne użycie oprogramowania jest trudne
- Organizacja i Skala
- Administracja
- polityka i psychologia
- wyzwania związane z ponownym wykorzystaniem kodu
- wyzwania operacyjne
- więcej czasu
- więcej zasobów
- wyzwania techniczne
- bezpieczeństwo
- niezawodność
- wydajność wydajność
- Maintainability
- analiza statyczna ułatwia ponowne użycie kodu
- jak skutecznie wykorzystać kod
Co To Jest Ponowne Użycie Kodu?
ponowne użycie kodu to praktyka używania istniejącego kodu dla nowej funkcji lub oprogramowania.
ale aby ponownie użyć kodu, ten kod musi być wysokiej jakości. A to oznacza, że powinno być bezpieczne, bezpieczne i niezawodne.
tworzenie oprogramowania spełniającego te wymagania jest wyzwaniem. Systematyczne opracowywanie wysokiej jakości komponentów i frameworków oprogramowania wielokrotnego użytku jest jeszcze trudniejsze.
kiedy możesz ponownie użyć kodu
ponowne użycie kodu jest świetnym celem.
w idealnym środowisku programista byłby w stanie uzyskać dostęp do stabilnych i zaufanych bibliotek kodu. Następnie będą mogli ponownie użyć kodu z tych bibliotek jako bloków konstrukcyjnych w swojej aplikacji.
możesz więc ponownie użyć kodu, gdy będzie:
- Łatwa rozbudowa i dostosowanie do nowych zastosowań.
- w razie potrzeby przeniesiony na inny sprzęt.
- okazał się wolny od wad lub problemów, które wpływają na niezawodność, bezpieczeństwo lub bezpieczeństwo nowej aplikacji.
ale środowisko nie zawsze jest idealne. A kod nie zawsze spełnia te wymagania. Tak więc ponowne użycie kodu często brzmi o wiele łatwiej niż jest.
gdy ponowne użycie kodu nie działa
ponowne użycie kodu często okazuje się trudne.
w praktyce programiści często przebudowują oprogramowanie od zera. Lub mogą ponownie wykorzystać tylko niewielką część istniejącego kodu w nowych projektach.
dlaczego ponowne użycie oprogramowania jest trudne
ponowne użycie oprogramowania jest trudne. Jest to szczególnie ważne w przypadku organizacji z dużą liczbą komponentów produktu i geograficznie rozproszonych zespołów programistycznych.
oto trzy powody, dla których ponowne użycie oprogramowania jest trudne.
Organizacja i Skala
wraz ze wzrostem liczby projektów i programistów trudniej jest ponownie wykorzystać oprogramowanie. Skuteczne przekazywanie szczegółów i wymagań dotyczących ponownego użycia kodu stanowi wyzwanie. I trudno jest zapewnić odpowiednie wskazówki i informacje zwrotne na temat ponownego użycia kodu.
Administracja
wraz ze wzrostem liczby projektów i programistów trudno jest udostępniać biblioteki kodu wielokrotnego użytku. Katalogowanie, archiwizowanie i odzyskiwanie zasobów wielokrotnego użytku w skali globalnej stanowi wyzwanie.
platformy takie jak GitHub mogą to ułatwić. Stworzenie repozytorium kodu, które jest użyteczne i skalowalne, wymaga jednak czasu i wysiłku.
polityka i psychologia
na poziomie organizacyjnym Polityka biurowa może być barierą dla ponownego użycia oprogramowania. W miarę jak jednostki biznesowe dążą do autonomii-lub konkurują między sobą – mogą próbować zablokować ponowne wykorzystanie swoich aktywów przez inne jednostki.
na poziomie indywidualnym programiści mogą postrzegać ponowne użycie kodu jako tłumiące ich kreatywność-lub jako organizację pozbawioną zaufania do swoich umiejętności technicznych. Takie postrzeganie skłania niektórych programistów do opierania się wysiłkom na rzecz zwiększenia ponownego użycia kodu.
wyzwania związane z ponownym wykorzystaniem kodu
istnieją zarówno wyzwania operacyjne, jak i techniczne związane z ponownym wykorzystaniem kodu.
wyzwania operacyjne
Tworzenie kodu wielokrotnego użytku wymaga inwestycji czasu i zasobów podczas rozwoju. Prawdziwie wielokrotnego użytku kod może być ponownie użyty w nowy sposób, który znacznie różni się od oryginalnego projektu kodu.
więcej czasu
aby wspierać planowane ponowne użycie, zespoły programistyczne muszą poświęcić dodatkowy czas na pisanie dokumentacji swojego kodu. I muszą przetestować to dokładniej niż kod przeznaczony tylko dla jednego projektu.
jest to wyzwanie dla programistów z napiętymi terminami. Niektórzy zawodzą, bo są zbyt ambitni. Zbyt wiele inwestują w wstępne prace projektowe. Inne zawodzą z powodu złego planowania, braku elastyczności projektowej lub braku finansowania.
więcej zasobów
Tworzenie kodu wielokrotnego użytku wymaga od kierowników projektów zaplanowania dodatkowych zasobów z góry.
na początku kierownicy projektów muszą poświęcić czas potrzebny na zaprojektowanie, udokumentowanie i przetestowanie kodu, co jest inwestycją z długoterminowymi korzyściami. Alternatywą jest krótkoterminowe podejście, w którym koncentrują wysiłki na szybkim projektowaniu oprogramowania, aby sprostać terminom swoich klientów i planują refaktoryzację kodu, aby można było go ponownie wykorzystać w późniejszym terminie.
wyzwania techniczne
jakość oprogramowania odgrywa główną rolę w łatwości ponownego wykorzystania oprogramowania.
istnieją cztery główne cechy jakości oprogramowania, które wpływają na ponowne użycie.
bezpieczeństwo
aby ponownie użyć, kod musi być bezpieczny. Możesz zapewnić bezpieczny kod na wiele sposobów, w tym za pomocą listy CWE.
niezawodność
aby Kod został ponownie użyty, musi być niezawodny. Możesz zapewnić niezawodny kod, zapewniając dostępność, odporność na błędy i możliwość odzyskania.
wydajność wydajność
aby Kod był ponownie używany, musi być wydajny. Możesz zapewnić wydajność, poprawiając czas reakcji i monitorując procesor, pamięć i wykorzystanie.
Maintainability
aby Kod został ponownie użyty, musi być utrzymywany. Jednym ze sposobów zapewnienia, że kod jest łatwy do utrzymania jest zapewnienie jego zgodności.
analiza statyczna ułatwia ponowne użycie kodu
możesz użyć analizy statycznej, aby łatwo ponownie użyć kodu. To dlatego, że analiza statyczna poprawia ogólną jakość kodu.
analiza statyczna wcześnie identyfikuje problemy w kodzie. Odbywa się bezpośrednio na kodzie źródłowym. Umożliwia to przeprowadzenie kontroli jakości na długo przed przygotowaniem kodu do integracji i testu funkcjonalnego.
narzędzia do analizy kodu statycznego mogą pomóc w wykryciu typowych wad w zakresie bezpieczeństwa, projektowania i przepływu programów. Mogą również przeprowadzać kontrole typu danych i funkcji zmiennych. Narzędzia te często znajdują błędy, które nie są łatwe do wykrycia za pomocą innych form testowania.
narzędzia do analizy kodu statycznego:
- automatyzuj recenzje kodu.
- zmniejsz złożoność cyklomatyczną.
- Zapewnij niezawodność i bezpieczeństwo.
- egzekwuj standardy kodowania.
- popraw starsze bazy kodu.
i to ułatwia ponowne użycie kodu.
jak skutecznie wykorzystać kod
możesz użyć kodu bardziej efektywnie za pomocą narzędzia do analizy statycznej, takiego jak Helix QAC i Klocwork.
dowiedz się, jak Helix QAC poprawia jakość kodu C i c++ — nawet w najbardziej złożonych bazach kodowych.
poznaj HELIX QAC
dowiedz się, jak Klocwork poprawia jakość kodu C, C++, C# i Java — nawet w najbardziej złożonych bazach kodowych.
Poznaj Klocwork