Jestem wielkim fanem zwinnego rozwoju i wykorzystałem XP w bardzo udanym projekcie kilka lat temu. Uwielbiałem wszystko, iteracyjne podejście do programowania, pisanie kodu wokół testu, programowanie w parach, posiadanie klienta na miejscu, przez który wszystko działa. Było to bardzo produktywne środowisko pracy i nigdy nie czułem się pod presją. Jednak …
Łączymy pliki CSS i JavaScript, aby zmniejszyć liczbę żądań HTTP, co poprawia wydajność. Wynik jest taki jak HTML: <link rel="stylesheet" href="all-my-css-0fn392nf.min.css"> <!-- later... --> <script src="all-my-js-0fn392nf.min.js"></script> Jeśli mamy logikę po stronie serwera / kompilacji, aby zrobić to wszystko za nas, dlaczego nie posunąć się o krok dalej i osadzić te …
Ostatnio współpracowaliśmy z grafikiem (zaaranżowanym przez klienta), aby zapewnić skórkę dla aplikacji Django + Bootstrap, którą zbudowaliśmy. Projektant dostarczył serię statycznych obrazów nowego układu wraz z dokumentem opisującym niektóre atrybuty techniczne (rozmiary czcionek, kolory, kilka wymiarów itp.). Wdrożenie tego okazało się niezwykle czasochłonne. Chociaż cała witryna była w zasadzie stroną …
Uważam, że piszę (mam nadzieję) pomocne komentarze w dokumentacji typu C ++: The reason we are doing this is... Powodem, dla którego używam słowa „my” zamiast „ja” jest to, że dużo piszę w środowisku akademickim, gdzie „my” jest często preferowane. Oto pytanie. Czy istnieje dobry powód, aby preferować jeden nad …
W inspirującej myśli Richa Hickeya na konferencji goto „ Wartość wartości ” po 29 minutach mówi o narzutach związanych z językiem takim jak Java i mówi: „Wszystkie te interfejsy zabijają ponowne użycie”. Co on ma na myśli? Czy to prawda? W poszukiwaniu odpowiedzi natknąłem się na: Zasada najmniejszej wiedzy AKA …
Napisałem aplikację, która pomaga oszczędzać energię. W rzeczywistości jest to bardzo proste. Sprawdzam bieżącą lokalizację telefonu i dokonuję pewnych zmian w konfiguracji, takich jak „wyłącz dźwięk, ciemny wyświetlacz, wyłącz Wi-Fi ...”, w zależności od lokalizacji użytkownika. Sony właśnie wypuściło nowy telefon z jedną z moich funkcji aplikacji (w rzeczywistości mają …
Niedawno czytam The Pragmatic Programmer, który stwierdza, że: Szczegóły psują nasz nieskazitelny kod - zwłaszcza jeśli często się zmieniają. Za każdym razem, gdy musimy wejść i zmienić kod, aby uwzględnić zmiany logiki biznesowej, prawa lub osobistych upodobań kierownictwa, ryzykujemy złamaniem systemu - wprowadzeniem nowego błędu. Hunt, Andrew; Thomas, David (1999-10-20). …
Podczas niedawnego przeglądu kodu poproszono mnie o umieszczenie defaultskrzynek we wszystkich plikach wszędzie tam, gdzie switchużywany jest blok, nawet jeśli nie ma nic do zrobienia default. Oznacza to, że muszę włożyć defaultsprawę i nic w niej nie pisać. Czy to jest właściwe? W jakim celu miałoby to służyć?
Niektórzy z moich kolegów powiedzieli mi, że logika biznesowa w procedurach przechowywanych w bazie danych narusza trójdzielną architekturę separacji, ponieważ baza danych należy do warstwy danych, podczas gdy procedury przechowywane są logiką biznesową. Myślę, że świat byłby bardzo ponurym miejscem bez przechowywanych procedur. Czy naprawdę naruszają trzypoziomową separację?
Zastanawiam się, dlaczego java.util.ArrayListpozwala to dodać null. Czy jest jakiś przypadek, w którym chciałbym dodać nulldo ArrayList? Zadaję to pytanie, ponieważ w projekcie mieliśmy błąd, gdzie niektóre kod został dodając nulldo ArrayListi trudno było dostrzec, gdzie był błąd. Oczywiście NullPointerExceptionwyrzucono a, ale dopóki inny kod nie próbował uzyskać dostępu do …
Jestem programistą Python uczącym się języka C #, który próbuje przestać się martwić i po prostu uwielbiam język C # za to, czym jest, zamiast ciągle porównywać go z Pythonem. Jestem przyłapany na jednym punkcie: braku jednoznaczności na temat tego, gdzie rzeczy są zdefiniowane, jak szczegółowo opisano w pytaniu Przepełnienie …
TL; DR: Czy języki funkcjonalne lepiej radzą sobie z rekurencją niż języki niefunkcjonalne? Obecnie czytam Code Complete 2. W pewnym momencie książki autor ostrzega nas przed rekurencją. Mówi, że należy tego unikać, gdy jest to możliwe, a funkcje wykorzystujące rekurencję są na ogół mniej skuteczne niż rozwiązanie wykorzystujące pętle. Na …
Nie jestem grafikiem. Jestem całkiem zły w rysowaniu czegokolwiek. Z trudem buduję rzeczy, które wyglądają nawet tak ładnie, jak „przykładowe” aplikacje dołączone do narzędzi programistycznych; przede wszystkim dlatego, że nie mam przysiadów na drodze do zasobów sztuki. Jakie strategie mogę podjąć, aby to złagodzić?
class A { static int foo () {} // ok static int x; // <--- needed to be defined separately in .cpp file }; Nie widzę potrzeby A::xosobnego definiowania w pliku .cpp (lub w tym samym pliku dla szablonów). Dlaczego nie można A::xzadeklarować i zdefiniować jednocześnie? Czy zostało to zabronione …
Kata kodu to koncepcja, która proponuje doskonalenie umiejętności programisty poprzez wielokrotne zadawanie drobnych problemów, próbując poprawić kod przy każdej iteracji. Nazwa pochodzi od analogii do kata sztuk walki, w którym formy (aka kata) to praktyki praktykowane w kółko prowadzące do ulepszeń. Od reakcji, jaką dostałem na moje ostatnie pytanie na …
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.