Aktywne Wpisy

Leżę se w gnieździe i myśle co robić w akompaniamencie kropli deszczu uderzającego o tarp ( ಠ_ಠ)
#zlomkiemprzezswiat
#zlomkiemprzezswiat
źródło: image_picker_2585A658-FB14-4299-8D63-B74EBC0C080E-817-00000012E8007B1A
Pobierz
bar125 +20
To już chyba wiem kto nam zafunduje kolejnego czarnego łabędzia wkrótce
#gielda
#gielda
źródło: 63de6798e0efd59117260017c52e39f903625e82f6feed2396731cc742b321ae
Pobierz




Mirki doświadczone w programowaniu w IT!
Będę się zajmował urządzeniami, na których się skrypty pisze w języku Lua, i muszę to robić na poziomie mistrzowskim. Podstawy jego już znam, coś tam już nawet napisałem, ale muszę wejść na wyższy poziom. I teraz pytanie - w co warto iść, chcąc pisać lepiej? Jestem automatykiem, więc pytanie nie tylko do znających Lua, ale do każdego bardziej doświadczonego programisty w #it.
Lua jest językiem wieloparadygmatowym, gdzie można korzystać z:
1. Strukturalny - Wiadomo, najprostszy.
2. OOP - Miałem na studiach, więc jako tako wiem o co kaman. Lua sam w sobie nie ma mechanizmów OOP, tylko trzeba implementować na około.
3. Programowanie funkcyjne - Dla mnie nowość, bo na studiach nie miałem. Wydaje się ciekawe, a dla Lua po prostu naturalne.
Skrypty które będę pisał to będą raczej biblioteki i funkcje mające pojedyncze zadanie, np. agregacja danych z wielu urządze dla celów transmisji dalej do systemu nadrzędnego, obróbka danych pod raporty, tłumaczenie protokołów komunikacyjnych, obsługa wizualizacji procesów przemysłowych. Myślę, że rzadko kiedy przekroczą 1000 linijek kodu, zwykle zdecydowanie mniej. Do tej pory mało kiedy nawet mi się chciało biblioteki pisać, chociaż będziemy pisać coraz większe rzeczy.
I pytania do Was:
1. Warto pchać się na moje potrzeby w OOP? To jest przerost formy nad treścią czy zawsze warto korzystać z OOP bo zawsze warto? Tym bardziej że samo Lua wymaga trochę kombinowania pod tym względem.
2. Warto postudiować programowanie funkcyjne? Wydaje się że fajnie upraszcza pewne problemy, ma zastosowanie nawet dla małych programów, w Lua to coś naturalnego. Z jakiegoś powodu jednak mimo wszystko programowanie funkcyjne w profesjonalnym programowaniu nie jest popularne z tego co czytałem. Dlaczego?
3. A może warto trochę OOP i trochę funkcyjnego, czyli hybryda? Albo dać sobie spokój i poprzestać na paradygmacie strukturalnym?
1. Ja bym się nie pchał odrazu w OOP od początku, choć to zależy od wielkości projektu/zadania. Nie zawsze opłaca się tworzyć klasę gdzie funkcja będzie wystarczająca.
2. Zawsze będzie warto choć może nie skorzystasz teraz to innym razem będziesz miał szerszy wachlarz potencjalnych rozwiązań.
3. Jak w pierwszym punkcie, dostosuj rozwiązanie do problemu. Jest sens tworzyć klasę utils czy może moduł z funkcjami wystarczy?
Ja ze swoich gotcha w
1. Jeśli klasy i obiekty poprawiają czytelność, abstrakcja obiektowa ułatwia projektowanie - to tak. Dla samej obiektowości nie warto, zwłaszcza że język jej nie wymaga.
2. Czemu uważasz że nie jest popularne? Erlang czy scala jak najbardziej są używane profesjonalnie. Warto poznać.
3. Zależy od konkretnego przypadku. Co do zasady - rób tak żeby jak najłatwiej było to