Kiedy myślę o zaletach i wadach statycznego folderu biblioteki i menedżera pakietów, mam wrażenie, że folder biblioteki jest lepszym rozwiązaniem. Plusy, które widzę w folderze biblioteki: Nie potrzebujesz zewnętrznego narzędzia do zarządzania pakietami. Kompilacja nie wymaga połączenia z Internetem. Szybsza kompilacja (bez sprawdzania pakietu). Prostsze środowisko (wymagana mniejsza wiedza). Plusy, …
Zacząłem budować aplikację w 3 warstwach (DAL, BL, UI) [obsługuje głównie CRM, niektóre raporty sprzedaży i zapasy]. Kolega powiedział mi, że muszę przejść do wzorca warstwy usługi, że programiści przyszli do wzorca usługi z ich doświadczenia i jest to lepsze podejście do projektowania większości aplikacji. Powiedział, że w ten sposób …
Więc nie wiem, czy to dobry, czy zły projekt kodu, więc pomyślałem, że lepiej zapytam. Często tworzę metody, które przetwarzają dane z wykorzystaniem klas i często przeprowadzam wiele kontroli metod, aby upewnić się, że nie otrzymam pustych referencji lub innych błędów. Dla bardzo podstawowego przykładu: // fields and properties private …
Niedawno pisałem mały fragment kodu, który w przyjazny dla człowieka sposób wskazywałby, ile lat ma wydarzenie. Może to na przykład oznaczać, że wydarzenie miało miejsce „Trzy tygodnie temu”, „Miesiąc temu” lub „Wczoraj”. Wymagania były stosunkowo jasne i był to idealny przypadek dla rozwoju opartego na testach. Testy pisałem jeden po …
Downcasting oznacza rzutowanie z klasy podstawowej (lub interfejsu) do podklasy lub klasy liścia. Przykładem downcast może być rzutowanie z System.Objectinnego typu. Downcasting jest niepopularny, może pachnie kodem: doktryna obiektowa preferuje na przykład definiowanie i wywoływanie metod wirtualnych lub abstrakcyjnych zamiast downcastingu. Jakie, jeśli w ogóle, są dobre i właściwe przypadki …
W porównaniu do około 10 lat temu zauważyłem zmianę na frameworki wykorzystujące styl routingu, który oddziela ścieżkę URL od systemu plików. Zwykle odbywa się to za pomocą wzorca kontrolera frontowego. Mianowicie, kiedy wcześniej ścieżka URL była mapowana bezpośrednio do systemu plików, a zatem odzwierciedlała dokładne pliki i foldery na dysku, …
Języki takie jak C, Java i C ++ wszystko wymaga nawiasów wokół całego wyrażenia stosowane w sposób if, whilelub switch. if (true) { // Do something } w przeciwieństwie do if true { // Do something } Wydaje mi się to dziwne, ponieważ nawiasy są zbędne. W tym przykładzie truejest …
Według Wikipedii reguła optymalizacji programu 90/10 stwierdza, że „90% czasu wykonania programu spędza się na wykonywaniu 10% kodu” (patrz drugi akapit tutaj ). Naprawdę tego nie rozumiem. Co to dokładnie znaczy? Jak 90% czasu wykonania można poświęcić tylko na wykonanie 10% kodu? A co z pozostałymi 90% kodu? Jak można …
W pewnym momencie program się rozwija. Funkcje są dodawane, usuwane lub zmieniane przez cały czas. Każda wersja jest niczym innym jak prototypem. Nie marnuję wtedy dużo czasu na pisanie super czystego kodu, ponieważ nigdy nie wiem, jak długo coś trwa. Oczywiście staram się zachować jakość kodu zgodnie z pewnymi standardami, …
W wielu książkach i samouczkach słyszałem, jak zaakcentowano praktykę zarządzania pamięcią i czułem, że wydarzyłyby się jakieś tajemnicze i okropne rzeczy, gdybym nie zwolnił pamięci po jej użyciu. Nie mogę mówić za innymi systemami (chociaż dla mnie rozsądnie jest założyć, że stosują one podobną praktykę), ale przynajmniej w systemie Windows …
Jedną z zalet korzystania z DVCS jest przepływ pracy edycji-zatwierdzania-scalania (w stosunku do edycji-scalania-zatwierdzania często wymuszanej przez CVCS). Zezwalanie na rejestrowanie każdej unikalnej zmiany w repozytorium niezależnie od fuzji zapewnia, że DAG dokładnie odzwierciedla prawdziwy rodowód projektu. Dlaczego tak wiele witryn mówi o tym, że chcą „uniknąć zatwierdzeń scalania”? Czy …
Dlaczego ramki były przestarzałe w HTML5, ale nie iFrames? W końcu nie ma prawie żadnej różnicy między nimi. W wielu przypadkach użycie jednego z nich dałoby to samo wyjście (wybacz mi, jeśli się mylę)?
Jeśli napotkam niekrytyczną literówkę w kodzie (powiedzmy, błędną apostrofę w instrukcji print (error)), czy warto podjąć zobowiązanie, aby rozwiązać ten błąd, czy może po prostu należy go zostawić w spokoju? W szczególności jestem ciekawy, jak porównać przeglądanie dziennika zmian do wartości rozwiązania tych niekrytycznych literówek. Skłaniam się do ich rozwiązania. …
W ciągu kilku lat programowania bawiłem się wszystkim, od Ruby po C ++. Zrobiłem wszystko, od nauki podstawowej składni (Ruby) po ukończenie kilku dużych (dla mnie) projektów, które poszerzyły moje umiejętności językowe. Biorąc pod uwagę tę różnorodność (i fakt, że prawdziwa nauka języka nigdy się nie kończy), kiedy mogę powiedzieć, …
Zacząłem pracować w firmie, która jest głównie zorientowana na C #. Mamy kilka osób, które lubią Javę i JRuby, ale większość programistów tutaj lubi C #. Zostałem zatrudniony, ponieważ mam duże doświadczenie w tworzeniu aplikacji internetowych i ponieważ skłaniam się ku nowszym technologiom, takim jak JRuby on Rails lub nodejs. …
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.