Wpis z mikrobloga

Z racji tego, że to mój pierwszy wpis ( na wykopie jestem od dawna, konto założyłem dopiero teraz ) witam serdecznie wszystkich mirków :) i proszę uprzejmie o pomoc :

Załóżmy, że chcę założyć klasę o nazwie Employee, która będzie zawierała dane dot. pracownika oraz kilka metod. Pola jakie chcę dodać do tej klasy to Name, salary, year, month oraz day. Rozumiem, że dobrą praktyką programistyczną będzie zrobienie oddzielnej klasy ( np. o nazwie Information ), w której będą znajdowały się te pola oraz ich settery i gettery? W jaki sposób powinienem to zaimplementować?

Klasa informacje oczywiscie wyglada tak:
public Class Information{
pola;
konstruktor inicjujacy wszystkie pola;
settery;
gettery;
}

a klasa Employee?

public Class Employee{
Information informacja;
metody;
konstruktor - i tu moje pytanie - w parametrach tego konstruktora maja byc informacje, ktore potem przekazuje do konstruktora obiektu Information? I ten konstruktor obiektu Information mam wywolac w konstruktorze klasy Employee czy jak?
}

Przepraszam, jeśli trochę zamieszałem, mam nadzieję, że wiadomo o co chodzi :)

#programowanie #java
  • 41
Rozumiem, że dobrą praktyką programistyczną będzie zrobienie oddzielnej klasy ( np. o nazwie Information


@Bokser92: nie. to powinno się dac w klasie employe. Tu masz tak zwaną kompozycję-praktycznie każdy z tych elementów "name", "salary" będzie elementem klasy Pracownik. Klasa information jest dość sztuczna.
Chyba, że byś miał jakiś sensowny powód, że chcesz odchudzić klasę pracownik, bo tych informacji miałbyś np 100 różnych pól.

Do oddzielnej klasy możesz wrzucać coś co naturalnie
@alosha: dlaczego? W każdej książce pisza, że settery i gettery są dobrą praktyką programistyczną.

@Yahoo_: @dixx: Ok rozumiem. Ale w przypadku, gdy przyda się ta oddzielna klasa to w jaki sposób powinienem wywoływać ten drugi konstruktor? Np konstruktor klasy Samochód wywołać w konstruktorze klasy Employee?
@Pipcieo: Konkurs na największego frustrata mirkowego świata Javy został rozstrzygnięty. Tak bardzo wyprzedziłeś konkurencję, że nie zmieściłeś się w zakresie BigIntegera... Widzę, że czujesz się lepszy gnojąc pod każdym postem ludzi. Szkoda, że to tylko świadczy o tym, że jesteś zwykłym początkującym frajerem, który się pulta o wszystko i próbuje udowodnić całemu światu, że jego rozwiązania są najlepsze.
@podubin:
podubin 2 dni temu

@cdwdj: Twoja wypowiedź jest tak żałosna, że nie wiem po co ludzie ją komentują. Zamiast cieszyć się sportem i czekać na rozpoczęcie sezonu snujesz jakieś #!$%@? teorie spiskowe podburzając tym tylko ludzi. Później wszystko kończy się w taki sam sposób. Przegraliśmy bo coś. #!$%@? najbardziej wyjątkowa nacja na świecie - Kibice Barcelony. Oni nigdy się nie mylą, zawsze pokaż całość
#heheszki #bekazpodludzi
@Pipcieo: Udowadniasz tylko jakim jesteś specjalistą. Po pierwsze jest to odpowiedź na wpis z tematu ligi hiszpańskiej. Po drugie jest odpowiedzią na posty Twojego typu. Po trzecie to - obserwuje ten tag od dawna i rozumiem gnojenie ludzi, którzy nie potrafią korzystać z Google lub Stacka, też mi się zdarzyło. Ale takiego głąba jak Ty jeszcze tu nie było. Bo Ty dokładasz swoje marne grosze wszędzie, pod każdym postem, mając na
@Pipcieo: Ojj żałosna, mała stulejo... Zachowujesz jak przysłowiowy kuc we flanelowej koszuli, którego jedynym sposobem komunikacji jest wyzywanie wszystkich od debili. Współczuje ludziom, którzy z Tobą współpracują a założę się, że Twoja wiedza sypie się jak domy w Rumunii ( ͡° ͜ʖ ͡°)
@alosha:

Getters or setters by themselves are not bad OO design.


What is bad is coding practice which includes a getter AND a setter for EVERY single member automatically


Nie pisałem nigdy w żadnym języku funkcyjnym, a w zapytaniu które podałeś, na pierwszej stronie, o językach funkcyjnych nie ma nic. Czy mógłbyś podać jakiś bardziej konkretny artykuł, który wyjaśnia o co chodzi osobie która języków funkcyjnych nie zna?