Zakładając język z pewnym nieodłącznym rodzajem bezpieczeństwa (np. Nie JavaScript): Biorąc pod uwagę metodę, która akceptuje a SuperType, wiemy, że w większości przypadków, w których możemy ulec pokusie przeprowadzenia testów typu w celu wybrania akcji: public void DoSomethingTo(SuperType o) { if (o isa SubTypeA) { o.doSomethingA() } else { o.doSomethingB(); …
W mojej edukacji powiedziano mi, że wadliwym pomysłem jest udostępnianie użytkownikowi rzeczywistych kluczy podstawowych (nie tylko kluczy DB, ale wszystkich głównych akcesorów). Zawsze myślałem, że to problem z bezpieczeństwem (ponieważ osoba atakująca może próbować czytać rzeczy, które nie są ich własnością). Teraz muszę sprawdzić, czy użytkownik może mimo to uzyskać …
W ostatnim wywiadzie zapytałem ankieterów: „jak oceniasz nowe technologie i biblioteki (takie jak SignalR) i wprowadzasz je do użytku?”. Powiedzieli, że nie, że zamiast tego piszą wszystko sami, aby nie musieli polegać na nikim innym. Firma nie pracuje dla rządu lub kontrahentów w dziedzinie obronności, ani przy projektach o kluczowym …
Eric Lippert podkreślił bardzo interesujący punkt w swojej dyskusji na temat tego, dlaczego C # używa nullraczej niż Maybe<T>typu : Ważna jest spójność systemu typów; czy zawsze możemy wiedzieć, że odwołanie, które nie ma wartości zerowej, nigdy nie jest w żadnym wypadku uważane za nieprawidłowe? A co z konstruktorem obiektu …
Jestem młodszym programistą i jestem w branży dopiero od 5 lat. W mojej obecnej firmie jest starszy, nazwijmy go Infestus. Czasami mam okazję zabłysnąć i zrobić coś zupełnie nowego od zera. Jednym z najnowszych przykładów było to, że musiałem utworzyć singleton w aplikacji wielowątkowej. Zdecydowałem się użyć tej metody. Gdy …
Niedawno rozmawiałem z kolegą na temat stylu kodu. Twierdził, że korzystanie z interfejsów API i ogólnych wzorców, których używasz, powinno być możliwie jak najbardziej zbliżone do otaczającego kodu, jeśli nie z bazą kodu jako całością, podobnie jak wygląd kodu (pozycjonowanie nawiasów, wielkie litery itp.) . Na przykład, gdybym dodawał metodę …
Jaka jest różnica między budowaniem aplikacji Outside In a budowaniem aplikacji Inside Out za pomocą TDD? Oto książki, które czytałem o TDD i testowaniu jednostkowym: Rozwój oparty na testach: Przez przykład Rozwój oparty na testach: Praktyczny przewodnik: Praktyczny przewodnik Realne rozwiązania dla rozwoju wysokiej jakości ram i aplikacji PHP Rozwój …
Współpracuję z zespołem programistów jako analityk biznesowy. Właśnie wydaliśmy wersję 2.0 naszego produktu i pracujemy nad kolejną wersją, która zostanie wydana za 3 miesiące (jest to wewnętrzny produkt programowy). Niestety w wersji 2.0 występują pewne problemy, które musieli naprawić, a my zamierzamy je wdrożyć za kilka tygodni. Problem polega na …
W miejscu pracy widzę wiele klas, które wykonują takie rzeczy: public class ClassThatCallsItsOwnGettersAndSetters { private String field; public String getField() { return field; } public void setField(String field) { this.field = field; } public void methodWithLogic() { setField("value"); //do stuff String localField = getField(); //do stuff with "localField" } } …
Spędziłem ostatni rok jako jednoosobowy zespół, opracowując aplikację dla bogatych klientów (ponad 35 000 LoC, za co jest warta). Obecnie jest stabilny i produkowany. Wiem jednak, że moje umiejętności były zardzewiałe na początku projektu, więc bez wątpienia w kodzie występują poważne problemy. W tym momencie większość problemów dotyczy architektury, struktury …
while (1) { if (1+1==2) { print "Yes, you paid attention in Preschool!"; } else { print "Wait... I thought 1+1=2"; } } Jako programista wszyscy musimy bardzo często używać pętli . Wiemy to. Zastanawiałem się, kto pomyślał o tym, żeby mieć pętle? W jakim języku wprowadzono pętle? Jaka była …
Chcę uczestniczyć w projektach open source na Github. Przede wszystkim chciałbym zacząć od naprawiania drobnych błędów lub dodawania funkcji. Nie mam na myśli konkretnego projektu. Chciałbym pracować nad projektami w C, C ++, Python, .NET, Java itp. Jednak moim problemem jest to, że nie potrafię znaleźć niczego na Github. Znalazłem …
Jakie były decyzje projektowe, które przemawiały za tym, że voidnie można ich zbudować i że nie można ich uznać za rodzaj ogólny? W końcu jest to po prostu specjalny pusty structi uniknąłby całkowitej PITA posiadania odrębnych Funci Actiondelegatów. (C ++ pozwala na jawne voidzwroty i pozwala voidjako parametr szablonu)
Tak więc, HTML5 jest wielkim krokiem naprzód, jak mi powiedziano. Ostatnim krokiem, jaki zrobiliśmy, o którym jestem świadomy, było wprowadzenie XHTML. Korzyści były oczywiste: prostota, surowość, możliwość korzystania ze standardowych parserów i generatorów XML do pracy ze stronami internetowymi i tak dalej. Jak dziwne i frustrujące jest to, że HTML5 …
Od jakiegoś czasu korzystam z projektów open source i rozwijam aplikacje open source i co jakiś czas spotykam słowa „Nightly Build” i zawsze byłem ciekawy, co to właściwie znaczy. Czy to dosłownie oznacza, że projekty są wykonywane wyłącznie jako projekty poboczne (zwykle w nocy po zakończeniu pracy przez wszystkich) i …
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.