Article View: alt.pl.comp.lang.csharp
Article #10144Re: Musze pomagac synowi
From: Tomasz Muszyński
Date: Mon, 21 Nov 2005 00:28
Date: Mon, 21 Nov 2005 00:28
90 lines
6335 bytes
6335 bytes
Jaroslaw Kowalski napisał(a): > Moim zdaniem to bardzo źle, że szkoła nie uczy rozwiązywania problemów > poprzez dobór odpowiednich narzędzi, a wymusza zupełnie sztucznie > niewłaściwe narzędzia. Niektóre problemy można efektywnie rozwiązać tylko > ... Raczej dzieci w wieku szkolnym nie będą potrafiły wybrać odpowiedniego narzędzia. :) Tego uczą trochę później... A tak btw, jaki to wiek tego synka? może on juz jest na studiach, a my tu o podstawach? ;) > IMHO zmuszanie kogokolwiek do pisania w języku w którym nie ma stringa, > hashtable i sensownych kolekcji (a raczej gdzie jest 50 pomysłów na to jak > "robić" stringi i podstawowe struktury danych, o niespójności API nie > wspomnę) jest w dzisiejszych czasach absolutnie nieuzasadnione - głównie z > powodów ekonomicznych. Darmowość kompilatora GCC nie ma tu nic do rzeczy bo > wszystkie kompilatory Microsoftu są od dłuższego czasu darmowe. Ja zaczynałem swoją naukę języków programowania od C dla AmigaOS i asemblera 68000 i nie żałuję. C++ trochę ominąłem i zabrałem się za C# i też nie żałuję. Owszem, C# i podobne technologie dają wiele ułatwień, framework .Net to zaś kolejne ułatwienia, ale znajomość C pozwala na zaznajomienie się także ze sprzętem, sposobem jego działania i problemami z niego wynikającymi. Sama znajomość jezyków typu C# to tylko znajomość rzeczy dlaczego producent danego języka zrobił to tak a nie inaczej (np. problem aktualizacji GUI przez inne wątki jest problemem czysto Windowsowym, a przedarł się do System.Windows.Forms, które choć troche powinno być niezależne od systemu, albo powinno nazywać się Microsoft.Windows.Forms, a wtedy bym się nie czepiał). Osoba zaczynająca od C# ma kolekcje, hashtable, itp., ale tak naprawdę nie zna sposobu ich działania, nie będzie do końca rozumiał idei referencji, czy też trybu unsafe. Nie mówię, że tak będzie zawsze, ale widziałem wielu programistów zaczynających właśnie od języków typu C#, czy java i oni poprostu nie mają podstaw i nie rozumieją wielu problemów, które znają osoby zaczynające od C. > skomplikowania), inne C#/VB/Java - większość obecnie tworzonych > aplikacji > biznesowych. Do przetwarzania tekstów dość dobrze nadaje się Perl, > przetwarzanie XMLa dobrze robić w XSLu, itd. Czy szkoła ma uczyć tworzenia aplikacji biznesowych? Chyba za wcześnie :) Tu chodziło chyba o podstawy. > ... > istniało. Czasy się zmieniły, komputery są szybkie, pamięć jest w > praktycznie darmowa, znacznie rozwinęła się technologia kompilatorów i > języków dynamicznych, a praca programisty jest cały czas droga i > raczej taka > pozostanie. Powinno się zatem wykorzystywać technologie optymalne z > punktu > widzenia wydajności pracy programisty i szkoła powinna tego uczyć. C++ > pod > tym względem (zwykle) nie przystaje do dzisiejszych wymagań. Ci właśnie "programiści" generują programy wymagające tysiąca bibliotek, gigabajtów pamięci i gigaherców, a sprawy optymalizacji sa im kompletnie obce. Mimo posiadania gigaherców programy te chodzą dalej jakby działały na kiepskim x86. Przykładem dobrego programu jest np. terminal PuTTY, czy WinSCP, które potrafią uruchomić się bez instalacji i z jednego exec'a, a ich rozmiary są niewielkie. Tu mogę jeszcze dodać 2 programy - PageStream oraz QuarkXPress - programy dosyć surowe, ale wydajne. Niestety, tego typu programy to już rzadkość. Np. niegdyś szybkie i dosyć małe ACDSee teraz jest wielką kobyłą niewartą złamanego grosza. Kolejny przykład - Windows Vista - przerost formy nad treścią. Zamiast zoptymalizować Windows XP, dowalono kupę świecidełek, bo przecież mamy gigabajty i gigaherce... dla mnie to nietędy droga. Trzeba ciąglę pamiętać o C, trochę i o asemblerze, aby mieć pojęcie jak te całe Windowsy działają, dlaczego coś jest wolne, dlaczego się wykłada, co to zwalnianie pamięci, itp... Niestety .Net jest jednym z przykładów niezbyt optymalnego zarządzania pamięcią - programik z 1 linijką kodu zajmie, nie wiedzieć czemu, parę mega ramu. Ja mam wciąż Athlona 1700+ i mi to wystarcza, a dlaczego mam zmieniać go na coś lepszego, co i tak za rok okaże się, że będzie już za wolne, bo MS wymyśli sobie Windows Srista, Sraczka, czy jak to się tam nazwie... Może i zaczynanie od C, to amibitne zadanie, ale IMHO lepsze niż od C#. Mi w podstawówce próbowali pokazać Logo, ale nie uważam tego za dobry początek, tym bardziej że wtedy już liznąłem trochę C :) Ciężkim zadaniem jest zaś rozpoczynanie programowania w Windows. Kiedyś nie mieliśmy tysięcy "genialnych technologii" i życie było prostsze :) I na zakończenie - Dev-C++ nie wychowuje społeczeństwa uzależnionego od Microsoftu, więc IMHO to raczej dobry wybór :) Pozdrawiam, tm
Technical Details
Message-ID:
<dlr4cb$6c5$1@nemesis.news.tpi.pl>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!newsfeed.gazeta.pl!news.nask.pl!news.nask.org.pl!newsfeed.tpinternet.pl!atlantis.news.tpi.pl!news.tpi.pl!not-for-mailReferences:
<dlkac9$5rb$1@atlantis.news.tpi.pl> <dlkfmt$9u9$1@news.onet.pl> <dlknmf$94e$1@nemesis.news.tpi.pl> <437DE6E3.6030005@wp.pl> <437DEAD1.9060606@wp.pl> <dlkqh9$j67$1@nemesis.news.tpi.pl> <dlkqrj$jmk$1@news.onet.pl> <dll40m$bl8$1@achot.icm.edu.pl> <1bq8723rqvn34.dlg@fdsvzxcc.rtb.com> <dlpid2$et0$1@nemesis.news.tpi.pl> <dlqbuf$4ct$1@inews.gazeta.pl> <dlqp6l$18cp$1@node1.news.atman.pl>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!newsfeed.gazeta.pl!news.nask.pl!news.nask.org.pl!newsfeed.tpinternet.pl!atlantis.news.tpi.pl!news.tpi.pl!not-for-mail From: Tomasz Muszyński <thom_ek@op.pl_nospam> Newsgroups: alt.pl.comp.lang.csharp Subject: Re: Musze pomagac synowi Date: Mon, 21 Nov 2005 01:28:06 +0100 Organization: tp.internet - http://www.tpi.pl/ Lines: 90 Message-ID: <dlr4cb$6c5$1@nemesis.news.tpi.pl> References: <dlkac9$5rb$1@atlantis.news.tpi.pl> <dlkfmt$9u9$1@news.onet.pl> <dlknmf$94e$1@nemesis.news.tpi.pl> <437DE6E3.6030005@wp.pl> <437DEAD1.9060606@wp.pl> <dlkqh9$j67$1@nemesis.news.tpi.pl> <dlkqrj$jmk$1@news.onet.pl> <dll40m$bl8$1@achot.icm.edu.pl> <1bq8723rqvn34.dlg@fdsvzxcc.rtb.com> <dlpid2$et0$1@nemesis.news.tpi.pl> <dlqbuf$4ct$1@inews.gazeta.pl> <dlqp6l$18cp$1@node1.news.atman.pl> NNTP-Posting-Host: dnk37.neoplus.adsl.tpnet.pl Mime-Version: 1.0 X-Trace: nemesis.news.tpi.pl 1132532939 6533 83.24.92.37 (21 Nov 2005 00:28:59 GMT) X-Complaints-To: usenet@tpi.pl NNTP-Posting-Date: Mon, 21 Nov 2005 00:28:59 +0000 (UTC) User-Agent: Mozilla Thunderbird 1.0.2 (Windows/20050317) X-Accept-Language: pl, en-us, en In-Reply-To: <dlqp6l$18cp$1@node1.news.atman.pl> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit