Inżynieria oprogramowania

Pytania i odpowiedzi dla profesjonalistów, nauczycieli akademickich i studentów pracujących w cyklu życia systemów


7
Związek między C #, .NET, ASP, ASP.NET itp. [Zamknięty]
Naprawdę nie jestem pewien, jaka jest różnica między C #, C # .NET i tym samym dla ASP i innych języków „.NET”. Z tego, co rozumiem, .NET jest biblioteką / strukturą ... rzeczy. Myślę, że zasadniczo mają dostęp do danych systemu Windows, takich jak elementy formularzy itp., Ale wydaje się, …
143 c#  .net  asp.net 

14
Skąd bierze się ta koncepcja „faworyzowania kompozycji nad dziedziczeniem”?
W ciągu ostatnich kilku miesięcy mantra „sprzyjanie kompozycjom nad dziedziczeniem” wydaje się pojawiać znikąd i stać się niemal rodzajem memu w społeczności programistów. I za każdym razem, gdy to widzę, jestem trochę zdziwiony. To tak, jakby ktoś powiedział: „faworyzuj wiertarki nad młotami”. Z mojego doświadczenia wynika, że ​​skład i dziedziczenie …

8
„moduł importu” vs. „z funkcji importu modułu”
Zawsze korzystałem z tej metody: from sys import argv i używaj argvz argv . Ale istnieje konwencja korzystania z tego: import sys i używając argv przez sys.argv Druga metoda sprawia, że ​​kod sam się dokumentuje i ja (naprawdę) go przestrzegam. Ale wolę pierwszą metodę, ponieważ jest szybka, ponieważ importujemy tylko …
143 python 

14
Prosta metoda niezawodnego wykrywania kodu w tekście?
Gmail ma tę funkcję, gdzie będzie ostrzec jeśli spróbujesz wysłać wiadomość e-mail, że myśli mogą mieć zajęcia. Ponieważ Gmail wykrył ciąg see the attachedw wiadomości e-mail, ale nie ma rzeczywistego załącznika, ostrzega mnie w oknie dialogowym OK / Anuluj po kliknięciu przycisku Wyślij. Mamy podobny problem z przepełnieniem stosu. To …

30
Jak zostać „szybszym” programistą?
Moja ostatnia ocena pracy zawierała tylko jeden słaby punkt: terminowość. Jestem już świadomy pewnych rzeczy, które mogę zrobić, aby to poprawić, ale szukam czegoś więcej. Czy ktoś ma wskazówki lub porady na temat tego, co zrobić, aby zwiększyć szybkość produkcji bez poświęcania jej jakości? Jak oceniasz terminy i trzymasz się …

17
Standard kodowania dla przejrzystości: skomentować każdą linię kodu?
Pracowałem w sklepach, które produkują oprogramowanie krytyczne dla życia i zajmowałem się regułami komentowania, które miały na celu utrzymanie czytelności kodu i potencjalne uratowanie życia. Z mojego doświadczenia wynika jednak, że wymóg ten staje się umysłem, od którego należy usunąć listę kontrolną i nie pomaga mi skupić się na pisaniu …

10
Czy powinniśmy definiować typy dla wszystkiego?
Ostatnio miałem problem z czytelnością mojego kodu. Miałem funkcję, która wykonała operację i zwróciła ciąg reprezentujący identyfikator tej operacji do przyszłego odwołania (trochę jak OpenFile w Windows zwracający uchwyt). Użytkownik użyje tego identyfikatora później, aby rozpocząć operację i monitorować jej zakończenie. Identyfikator musiał być ciągiem losowym ze względu na obawy …
141 type-systems 



18
Czy istnieje wymówka dla krótkich nazw zmiennych?
Stało się to wielką frustracją z bazą kodu, nad którą obecnie pracuję; wiele z naszych zmiennych jest krótkich i nieopisowych. Jestem jedynym programistą, który pozostał w projekcie i nie ma dokumentacji dotyczącej tego, co większość z nich robi, więc muszę poświęcić dodatkowy czas na śledzenie tego, co reprezentują. Na przykład …


1
Moduł vs. pakiet?
Ilekroć to from 'x' import 'y'robiłem, zastanawiałem się, który z nich jest uważany za „moduł”, a który „pakiet” i dlaczego nie jest odwrotnie?
140 python  packages  modules 

9
Utrzymuj setki niestandardowych oddziałów w oddziale głównym
Obecnie mamy jedną gałąź główną dla naszej aplikacji PHP we wspólnym repozytorium. Mamy ponad 500 klientów, którzy są subskrybentami naszego oprogramowania, z których większość ma pewne dostosowania do różnych celów, każdy w oddzielnym oddziale. Dostosowaniem może być inna nazwa pola tekstowego, zupełnie nowa funkcja lub moduł albo nowe tabele / …


Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.