Pytania dotyczące wyróżniających aspektów poszczególnych języków komputerowych, w szczególności sposobu ich pisania lub możliwości ekspresyjnych oferowanych programiście.
become:Wiadomości w Smalltalk powoduje jednego obiektu do zmiany na inny, wpływając na wszystkie odwołania do niego. Jakie zastosowania ma ta funkcja języka? Czy wykorzystuje się go w prawdziwym kodzie? Czy to tylko ciekawość? Czy używanie go jest uważane za dobrą / złą praktykę?
Ostatnio rozmawiałem z kolegą, który wspomniał, że jego firma pracuje nad dodaniem wzorca projektowego MVC jako rozszerzenia PHP. Wyjaśnił, że napisali kod C w celu dodania Controllers, Models and Viewsdo konstrukcji języka w celu zwiększenia wydajności. Teraz wiem, że MVC to wzorzec projektowania architektonicznego, który jest szeroko stosowany w aplikacjach …
Zamknięte. To pytanie jest nie na temat . Obecnie nie przyjmuje odpowiedzi. Chcesz poprawić to pytanie? Zaktualizuj pytanie, aby było tematem dotyczącym wymiany stosów inżynierii oprogramowania. Zamknięte 5 lat temu . Chcę zaprojektować oprogramowanie dla mojego instrumentu muzycznego, które będzie rytmiczne (nie ma melodii). Chcę tylko, aby to oprogramowanie: umożliwić …
Na przykład w językach funkcjonalnych zmienne są pojedynczymi przypisaniami, a ich wartości są niezmienne po przypisaniu. Więc mają dwa stany niezwiązane i powiązane , raz powiązanego nie można zmienić. Czy istnieje jakiś termin matematyczny lub inny termin informatyczny, który jest najbardziej odpowiedni dla takich rzeczy? Coś, co semantycznie nie implikuje …
W obecnej formie to pytanie nie pasuje do naszego formatu pytań i odpowiedzi. Oczekujemy, że odpowiedzi poparte będą faktami, referencjami lub wiedzą fachową, 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 …
Jest to część serii pytań, które koncentrują się na projekcie o nazwie Projekt abstrakcji, którego celem jest wyodrębnienie pojęć używanych w projektowaniu języka w formie frameworka. Kolejną związaną z tym stronę związaną z typowaniem strukturalnym można obejrzeć tutaj . Meta-temat związany z zapytaniem dotyczącym frameworka i odpowiedniego miejsca do opublikowania …
IMHO powiązanie zmiennej z inną zmienną lub wyrażeniem jest bardzo częstym scenariuszem w matematyce. W rzeczywistości na początku wielu uczniów uważa, że operator przypisania (=) jest rodzajem wiązania. Ale w większości języków wiązanie nie jest obsługiwane jako funkcja natywna. W niektórych językach, takich jak C #, wiązanie jest obsługiwane w …
Zacząłem poważnie przyglądać się Lispowi w ten weekend (tzn. Uczyłem się tylko Lisp i nie wracam do projektów w C #) i muszę powiedzieć, że to uwielbiam. Zajmowałem się innymi językami funkcjonalnymi (F #, Haskell, Erlang), ale nie czułem remisu, który dał mi Lisp. Teraz, gdy kontynuuję naukę Lisp, zacząłem …
OK, więc mam nadzieję, że jest to subiektywne pytanie dla programistów, ale proszę bardzo. Nieustannie poszerzam swoją znajomość języków i praktyk inżynierii oprogramowania ... i natknąłem się na coś, co nie ma dla mnie żadnego sensu. W C ++ deklaracje klas zawierają private:metody i parametry w pliku nagłówkowym, który teoretycznie …
Jestem długoletnim użytkownikiem Pythona. Kilka lat temu zacząłem uczyć się C ++, aby zobaczyć, co może zaoferować pod względem szybkości. W tym czasie nadal używałbym Pythona jako narzędzia do prototypowania. Wydawało się, że był to dobry system: zwinne programowanie w Pythonie, szybkie wykonanie w C ++. Ostatnio coraz częściej używam …
Istnieje kilka (dość rzadkich) przypadków, w których istnieje ryzyko: ponowne użycie zmiennej, która nie jest przeznaczona do ponownego użycia (patrz przykład 1), lub używając zmiennej zamiast innej, semantycznie blisko (patrz przykład 2). Przykład 1: var data = this.InitializeData(); if (this.IsConsistent(data, this.state)) { this.ETL.Process(data); // Alters original data in a way …
Jest to część serii pytań, które koncentrują się na siostrzanym projekcie Abstraction Project, którego celem jest wyodrębnienie pojęć używanych w projektowaniu języka w formie ram. Projekt siostrzany nazywa się OILexer, który ma na celu skonstruowanie analizatora składni z plików gramatycznych, bez użycia wstrzykiwania kodu do dopasowań. Niektóre inne strony związane …
Ponieważ pracuję na serwerze bez absolutnie żadnego nietrwałego stanu dla użytkowników, każdy obiekt związany z użytkownikiem jest wdrażany przy każdym żądaniu. W rezultacie często robię leniwe inicjowanie właściwości obiektów, które mogą pozostać nieużywane. protected EventDispatcher dispatcher = new EventDispatcher(); Staje się... protected EventDispatcher<EventMessage> dispatcher; public EventDispatcher<EventMessage> getEventDispatcher() { if (dispatcher …
Aby być językiem skoncentrowanym na matematyce i obliczeniach naukowych, zawsze zaskakuje mnie całkowity brak przydatnych procedur matematycznych w standardowej bibliotece Fortrana. Można by się spodziewać, że zostanie on wysłany przynajmniej z procedurą rutynową do obliczenia odchylenia standardowego i średniej, ale tak nie jest. W szczególności wraz z wprowadzeniem Fortran 90 …
PHP, C #, Python i prawdopodobnie kilka innych języków ma yieldsłowo kluczowe, które służy do tworzenia funkcji generatora. W PHP: http://php.net/manual/en/language.generators.syntax.php W języku Python: https://www.pythoncentral.io/python-generators-and-yield-keyword/ W języku C #: https://docs.microsoft.com/en-us/dotnet/csharp/language-reference/ke words / yield Obawiam się, że jako funkcja / funkcja językowa yieldłamie niektóre konwencje. Jednym z nich jest „pewność”. Jest …
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.