Dawno mnie nie było, a widzę, że ciekawie się wątek rozwinął
Jakoś do tej pory nie pokazałeś tego systemu operacyjnego napisanego w Delphi… Czyżby naprawdę żadnego nie było? Bo ja Ci wszystkie znane mi napisane w C# pokazałem.
No i chętnie dowiedziałbym się (pewno nie tylko ja) o tym jak uruchomić DLLkę bez systemu operacyjnego. Mógłbyś wyjaśnić?
I nie oszukujmy się - żaden z tych języków nie jest do pisania SO, od tego są inne języki.
Tak samo Twoje ukochane Delphi nie nadaje się do programowania mikrokontrolerów bądź systemów wbudowanych. Z tym już lepiej jest w C# ;]
Co nie zmienia faktu, że gdy to już wyszło na jaw, nie potrafiłeś skonwertować napisu do liczby, co jest jedną z podstawowych operacji w każdym chyba języku ;] Nie czepiałbym się, gdyby nie to, że twierdzisz, że “znasz C#”.
Zaś gigantyczny, nieelastyczny i bezużyteczny switch, który pomagałeś w tamtym wątku budować był po prostu okropny pod względem programistycznym, bez względu na język.
Co Ty znowu pomieszałeś? Jakie IDE?
Biblioteka klas to tylko część .NET.
.NET to platforma, w której można tworzyć w językach zgodnych z CLI, a nie “teoretycznie z każdego”.
W każdym z tych języków wbudowane klasy i ich elementy nazwayją się tak samo. I w każdym z tych języków można tworzyć nowe kontrolki UI dziedzicząc po już istniejących, przecież o tym była mowa. C# nie ma tu nic do rzeczy, bo język to tylko narzędzie - składnia, semantyka i zestaw symboli.
Bardzo naukowe podejście, panie profesorze. Nie znasz się na czymś, więc jest syfem. Jak sądzę, dzięki temu Twoje życie jest dużo prostsze.
Pewno Tobie by to tydzień zajęło albo i nawet całe życie. Ale skoro chcesz coś udowadniać, to powinieneś być konsekwentny. W końcu skoro stawia się tezę, to należałoby ją udowodnić. Nie pisałeś rozprawek w podstawówce?
A skoro twierdzisz, że “znasz C#” to nie powinieneś sugerować, że tego nie da się zrobić ;]
O ile pole do wpisywania liczb stałoprzecinkowych ma jakiś sens, o tyle umieszczanie innych kontrolek w polu tekstowym czy też wariacje na temat groupboxa są tylko sztuką dla sztuki, bez jakiegokolwiek praktycznego zastosowania.
http://www.somekind.pl/_upload/dp/MagicControls.exe - to nie było nawet specjalnie trudne, ani tym bardziej niewykonalne. Trzeba było tylko trochę posiedzieć i pomyśleć. Czas wykonania zależy od umiejętności twórcy i stopnia znajomości przez niego technologii, nie zaś jej samej. Nie sądzę, aby akurat w tym przypadku Delphi i .NET różniły się jakoś znacznie. Zobaczymy, gdy wkleisz kod swoich kontrolek.
Mój kod obsługujący przycisk dynamicznego tworzenia: http://wklej.org/id/88401/?zawin=0
Mam za to kilka pytań to tych Twoich przykładów - wartość minimalna wynosi rzekomo 0, a i tak da się wprowadzać liczby ujemne. Dlaczego? Dlaczego dla każdej liczby ujemnej tekst w tytule okna wynosi “0,00”? Czemu po zapełnieniu pola liczbami i minusem nie da się nic wpisać do części dziesiętnej?
Piszesz też o dynamicznym tworzeniu kontrolek. Jak widzisz, w moim kodzie ja faktycznie po wciśnięciu przycisku dopiero deklaruję i incjalizuję kontrolki. Ty masz je zadeklarowane w sekcji “type” gdzieś na początku kodu. W Delphi na serio nie da się tworzyć w pełni dynamicznie, bez poprzedniej deklaracji? A co w sytuacji gdyby zaszła podtrzeba np. utworzenia tylu pól tekstowych, ilu zechce użytkownik?
I dalszych klika pytań technicznych dotyczących Delphi - którego ja nie znam, a Ty znasz doskonale:
-
Powiedz mi ile linijek kodu w Delphi potrzebujesz na ustawienie wszystkim polom tekstowym na formularzu czerwonego koloru tła? Albo ile zajmie Ci przeszukanie tych wszystkich pól, znalezienie tego, w którym jest wpisany najdłuższy tekst i wyświetlenie w messageboxie tej wartości? W obu przypadkach bez względu na to, ile tych pól tekstowych jest.
-
Jakiego typu danych najlepiej użyć do przechowywania wyników finansowych (zysku/straty) firmy za zeszły rok. Oczywiście należy pamiętać o tym, że w zeszłym roku firma mogła nie istnieć, więc wyniku finansowego nie miała - tę informację też trzeba przechować.
-
Jak wygląda obsługa serializacji?
-
W jaki sposób można monitorować zmiany plików wewnątrz jakiegoś katalogu?
-
Jak wygląda obsługa isolated storage?
-
Jakie algorytmy szyfrujące i haszujące są standardowo dostępne?
-
Jak wygląda zarządzanie uprawnieniami do wykonywania kodu aplikacji? Czy można używać zasad bezpieczeństwa opartego na rolach do ograniczenia wykonywania poszczególnych sekcji kodu?
-
Czy jest dostępny mechanizm refleksji?
-
Czy jest jakiś odpowiednik dla lambda expressions?
-
Czy w Delphi można tworzyć programy pod Windows Mobile?
Delphi nie jest złe. Ono jest po prostu zacofane. Z tego, co wiem, to dopiero ostatnia wersja wprowadziła typy generyczne, metody anonimowe i obsługę Unicode, czyli rzeczy, które w takim głupim .NET są od wielu lat, a w innych technologiach jeszcze dłużej.
Mi o osobiście po prostu nie podoba się składnia tego języka - jest miejscami zbyt rozwlekła i nieczytelna. Dziwne operatory, dziwny sposób deklaracji zmiennych (zdaje się, że nie można nawet inicjalizować wraz z deklaracją), brak możliwości deklaracji w dowolnym miejscu programu, dziwaczne operatory inkrementacji i dekrementacji, switch, który nazywa się case. A najgorsze są wszechobecne begin i end, które tylko zaciemniają kod.
Dziwny, czyli inny niż w C, a więc i większości pozostałych popularnych języków programowania. To jest wada, bo później wielu osobom ciężko się przestawić.
I chyba nikt nie musi znać się na Delphi, żeby widzieć, że traci na popularności wśród pracodawców, wystarczy obserwacja rynku. A o to mi chodziło w moim pierwszym poście. A co jest tego przyczyną? Mogę zgadywać, że właśnie to, że wcale nie jest takie fajne, jak się wydaje na pierwszy rzut oka.