Czy powielanie danych między testami a prawdziwym kodem jest dobre czy złe? Załóżmy na przykład, że mam klasę Python, FooSaverktóra zapisuje pliki o określonych nazwach w danym katalogu: class FooSaver(object): def __init__(self, out_dir): self.out_dir = out_dir def _save_foo_named(self, type_, name): to_save = None if type_ == FOOTYPE_A: to_save = make_footype_a() …
Kilka dni temu rozmawiałem z doktorantem ds. Inżynierii oprogramowania, a ona powiedziała mi kiedyś: Utrzymuj swoje klasy i metody tak małe, jak to możliwe I zastanawiam się, czy to zawsze dobra praktyka. Chodzi mi na przykład o to, czy warto mieć klasę z tylko 2 osobami towarzyszącymi? Na przykład w …
Często spotykam się z tym problemem. Na przykład obecnie piszę funkcję odczytu i funkcję zapisu, a oni oboje sprawdzają, czy bufjest wskaźnikiem NULL i czy modezmienna mieści się w określonych granicach. To jest duplikacja kodu. Można to rozwiązać, przenosząc go do własnej funkcji. Ale powinienem? Będzie to dość anemiczna funkcja …
Z niektórych projektów typu open source zebrałem następujący styl kodowania void someFunction(bool forget); void ourFunction() { someFunction(false /* forget */); } Zawsze mam wątpliwości, co falsetu oznacza. Czy oznacza to „zapomnieć”, czy też „zapomnieć” odnosi się do odpowiedniego parametru (jak w powyższym przypadku), a „fałsz” ma go zanegować? Jaki styl …
Mam trochę dyskusji z przyjacielem, czy te dwie praktyki są tylko dwiema stronami tej samej monety, czy też jedna z nich jest naprawdę lepsza. Mamy funkcję, która pobiera parametr, wypełnia jego element członkowski, a następnie zwraca go: Item predictPrice(Item item) Uważam, że ponieważ działa na tym samym przekazywanym obiekcie, nie …
Świeżo przybywam do świata Python po latach Java i PHP. Chociaż sam język jest dość prosty, mam trudności z kilkoma „drobnymi” problemami, których nie potrafię rozwiązać - i na które nie mogłem znaleźć odpowiedzi w licznych dokumentach i samouczkach, które przeczytałem do tej pory . Dla doświadczonego praktyka Pythona to …
W jakimś kodzie, który teraz piszę, mam coś takiego: if (uncommon_condition) { do_something_simple(); } else { do(); something(); long(); and(); complicated(); } Część mnie myśli: „W porządku, w jaki jest napisany. Proste sprawy powinny iść na pierwszym miejscu, a bardziej skomplikowane sprawy powinny iść dalej”. Ale inna część mówi: „Nie! …
W obecnej formie to pytanie nie pasuje do naszego formatu pytań i odpowiedzi. Oczekujemy, że odpowiedzi poparte będą faktami, referencjami lub wiedzą specjalistyczną, ale to pytanie prawdopodobnie będzie wymagało debaty, argumentów, ankiet lub rozszerzonej dyskusji. Jeśli uważasz, że to pytanie można poprawić i ewentualnie ponownie otworzyć, odwiedź centrum pomocy w …
Czy istnieją jakieś dobrze zdefiniowane konwencje podczas programowania w PowerShell? Na przykład w skryptach, które mają być utrzymywane długoterminowo, musimy: Używać prawdziwej nazwy lub aliasu polecenia cmdlet? Podaj nazwę parametru cmdlet w całości lub tylko częściowo (w dir -Recurseporównaniu dir -r) Podając argumenty łańcuchowe dla poleceń cmdlet, czy umieszczasz je …
Zamknięte . To pytanie jest oparte na opiniach . Obecnie nie przyjmuje odpowiedzi. Chcesz poprawić to pytanie? Zaktualizuj pytanie, aby można było na nie odpowiedzieć faktami i cytatami, edytując ten post . Zamknięte 6 lat temu . Standardy kodowania są powszechne w każdej organizacji zajmującej się programowaniem oprogramowania, ale jak …
Zamknięte . To pytanie jest oparte na opiniach . Obecnie nie przyjmuje odpowiedzi. Chcesz poprawić to pytanie? Zaktualizuj pytanie, aby można było na nie odpowiedzieć faktami i cytatami, edytując ten post . Zamknięte 5 lat temu . Oto bardzo uproszczony przykład . To niekoniecznie jest pytanie specyficzne dla języka i …
Chcesz poprawić ten post? Podaj szczegółowe odpowiedzi na to pytanie, w tym cytaty i wyjaśnienie, dlaczego Twoja odpowiedź jest poprawna. Odpowiedzi bez wystarczającej ilości szczegółów mogą być edytowane lub usuwane. To bardziej stylowe pytanie, ale zastanawiam się nad moim projektem. Załóżmy, że tworzysz aplikację, która modeluje szkołę. Istnieją więc podmioty …
Reduce the number of #include files in header files. It will reduce build times. Instead, put include files in source code files and use forward declarations in header files. Przeczytałem to tutaj. http://www.yolinux.com/TUTORIALS/LinuxTutorialC++CodingStyle.html . Oznacza to, że jeśli klasa (klasa A) w pliku nagłówkowym nie musi używać rzeczywistej definicji niektórych …
Jest to najpopularniejszy sposób (wydaje mi się) sprawdzania, czy wartość znajduje się w tablicy: for (int x : array) { if (x == value) return true; } return false; Jednak w książce, którą czytałem wiele lat temu, prawdopodobnie przez Wirtha lub Dijkstry, powiedziano, że ten styl jest lepszy (w porównaniu …
Jestem programistą amatorem na zajęciach CS, próbującym nauczyć się odpowiednich umiejętności programistycznych. Tak wygląda mój kod, jego krawędzie rozciągają się na 103 kolumny. int extractMessage(char keyWord[25], char cipherText[17424], int rowSize, char message[388]) { int keyColumn = 0; int cipherColumn = 0; int offset = 1; int nextWord = 1; int …
Używamy plików cookie i innych technologii śledzenia w celu poprawy komfortu przeglądania naszej witryny, aby wyświetlać spersonalizowane treści i ukierunkowane reklamy, analizować ruch w naszej witrynie, i zrozumieć, skąd pochodzą nasi goście.
Kontynuując, wyrażasz zgodę na korzystanie z plików cookie i innych technologii śledzenia oraz potwierdzasz, że masz co najmniej 16 lat lub zgodę rodzica lub opiekuna.