Ten wzrost prowadzi do wielkiego wzrostu inwestycji. Dwudziestoprocentowy wzrost popytu konsumpcyjnego na pewien produkt lub produkty oznacza dwudziestoprocentowy spadek popytu na inne produkty. Tak nie jest. Na rynku panuje harmonia. John C. Lachmanna, pana L.
Ale tak nie jest. Market, and Altar, s. Skutek ustanowienia ceny maksymalnej. Ponownie nie dojdzie do oczyszczenia rynku. Skutek ustanowienia ceny minimalnej. Jaki jest tego skutek? Interw encja binarna: O podatkow anie A. Jest to prawda i w rzadkich przypadkach ten drugi efekt Haley red. Irving i Herbert W. Musgrave i C. Shoup red. Jest tak nawet wtedy. Niemal zawsze oznacza to wzrost ceny. Na czym polega owa skaza?
Dlaczego ten rodzaj odpowiedzi nigdy nie pada na wolnym rynku? Jest jeszcze jedna kwestia. Rynek jedynie do niego zmierza. Na temat podobnej sytuacji w Anglii, zob. Appleton Co. Na temat metra zob. Houston: St. Thomas Press, b. Tucker, Individual Liberty, s. Richard R. Ich krytyka przeprowadzona jest w Dodatku B. Jakie je s t etyczne uzasadnienie? Lachm ann, Capital and Its Structure. Bauer i B. W iggins i H elm ut S ch oeck red.
C ; Public A ffairs Press , s. Bauer pisze Hayek red. Wreszcie, zob. Robert J. Potrzeby Galbraith, Affluent S ociety , s. Affluent Society, s. Interwencja binarna: Inflacja i cykl koniunkturalny A. Keynes, General Theory, s. M ises, Human Action , s. Human Action, s. Vera C. King and Son Francis Amasa Walker, Science o f Wealth, s.
Drugi proces to operacje redyskonta; ostatni to zakupy na otwartym rynku. Grupy o re Mises, Defense, Controls, an d Inflation , s. Buchanan, Public Principles o fPublic Debt. M olinari, Society o f Tomorrow, s. JE Ibid. Hunter i Harry K. Paul A. Roboty publiczne Howard S. Tom 1. Read more. Ekonomia 5. Mruk H. Analiza rynku turystycznego Argentyny. Ekonomia - opracowanie cz. Sowell T. Samuelson Nordhaus - Ekonomia cz.
No nie. Raczej nie. Wynik, niestety, jest mizerny. Zero zainteresowania! I tak dalej, i tak dalej. Patryk siedzi w aucie z kolegami. Park Reagana od razu odrzucam. Tylko tyle. Nie dostrzegamy ani jednej logicznej podstawy do wykluczenia kogokolwiek z tej sprawy. Przez co np. To informacja przesadzona.
Krystiana W. Nic mi nie wiadomo, aby Krystian W. Marcin T. Krystian pana wrabia? Dariusz W. Zeznania Wojciecha S. Ale to nie wszystko. Jak dobrze wiadomo, jest to dla nas sprawa priorytetowa. Janusza J. To jest psychopata. W analizie kryminalnej na ich temat czytamy m. Gdy Adamowi M. Mundurowi uwierzyli.
Bez skutku. Bartosz T. Kajetana P. Takich spraw jest wiele, m. Andrzej K. Ale mieli inne zdanie. Ale dobra, trudno. Idziemy jeszcze raz na spotkanie z tym niby-gangsterem. Tomasz M. Siedzi za inne czyny. Niestety w tym czasie Tomasza M. Przyjechali tam w konkretnym celu.
Zatem otruli mojego psa i utopili go w szambie. Weszli na teren posesji. Siedzi rozkraczony po lewej stronie na tylnym siedzeniu. Staw jest po stronie kierowcy. Wracam jeszcze raz w to miejsce i szukam Iwony. Lecz dla dobra sprawy. W takim wypadku mwimy o wykorzystaniu biblioteki Windows Forms. Owa biblioteka, bdca oczywicie czci platformy. NET, umoliwia uycie tzw. Przed chwil pokazaem, jak mona stworzy aplikacj konsolow.
Aplikacje konsolowe Aplikacje konsolowe to programy uruchamiane w oknie konsoli. Tego rodzaju aplikacje nie posiadaj interfejsu uytkownika i s przydatne, jeeli chodzi o prosty program, ktry bdzie uywany przez wsk grup ludzi posiadajcych wiedz potrzebn do uruchomienia go i sterowania nim z linii polece. Przykad aplikacji konsolowej zosta przedstawiony w tym rozdziale wczeniej, gdy zaprezentowaem moliwo skompilowania prostego programu napisanego w C.
Windows Forms W rozdziale 1. Po uruchomieniu takiego programu uytkownik widzi standardowe okno Windows wraz z etykiet porodku. Tego typu aplikacje bd dziaa jedynie w przypadku, gdy na komputerze jest zainstalowane rodowisko. Windows Forms czsto nazywana w skrcie WinForms jest bibliotek wizualn, umoliwiajc zaprojektowanie graficznego interfejsu uytkownika GUI, czyli Graphical User Interface.
WinForms jest czci rodowiska. NET Framework, tak wic takie komponenty jak Button uyty w przykadzie z rozdziau 1. NET np. Visual Basic. O bibliotece Windows Forms bdzie mowa w rozdziale Formularze Web Forms Technologia.
Chciabym teraz wspomnie o czym takim jak formularze Web Forms. Tworzenie dynamicznych stron ASP. NET odbywa si w C w sposb wizualny. Do dyspozycji pozostaje formularz ktry odzwierciedla przysz stron WWW oraz zestaw kontrolek. Wykorzystanie owych komponentw opiera si na dynamicznym generowaniu kodu HTML dla strony.
Projektowanie strony odbywa si wizualnie programista umieszcza odpowiedni element na stronie np. Czytelnika zainteresowanego t technologi odsyam do dokumentacji firmy Microsoft lub do ksiek traktujcych o tej technologii. NET Framework W tym miejscu mona by si zatrzyma i zapyta: Zaraz, zaraz wczeniej bya mowa o skadnikach platformy.
NET, a teraz o skadnikach platformy. NET Framework?. Trzeba wic wyjani, e zagadnienia zwizane z. NET s bardzo rozlege i caociowe ich omwienie w tej ksice jest po prostu niemoliwe. Chciabym jednak poruszy kilka najwaniejszych kwestii zwizanych z t platform. Nie mona przy tym pomin najwaniejszego, czyli rodowiska. NET Framework jest podstawow technologi budowania i uruchamiania aplikacji. Szczegowo omwimy j w rozdziale 4. Tutaj chciabym wspomnie jedynie o kilku jej skadnikach:.
Class Libraries CL biblioteki klas. S to gotowe komponenty, funkcje i biblioteki, ktre mona wykorzysta we wasnym programie. Wizualna biblioteka WinForms jest take czci CL, podobnie jak szereg innych funkcji, ktre stopniowo bd omawia w tej ksice. Technologia CLR odpowiada za uruchamianie aplikacji. NET oraz ich prawidowe dziaanie, a take za zwalnianie pamici czy inne skomplikowane czynnoci. Szerzej o CLR opowiem w rozdziale 4. Dziki tej technologii jest moliwa wsppraca pomidzy rnymi aplikacjami na platformie.
Na razie nie musimy zaprzta sobie tym gowy. Wystarczy tylko wiedzie, e co takiego istnieje. Usugi sieciowe Usugi sieciowe s aplikacjami udostpnianymi poprzez interfejs WWW. Nie chodzi tutaj bynajmniej o strony WWW, gdy aplikacje sieciowe mog komunikowa si ze sob za pomoc mechanizmu zdalnego wywoywania procedur ang. Dobrym przykadem jest wypoyczalnia DVD. Szef takiej firmy moe podpisa umow z wacicielami sklepw z pytami DVD, ktrzy na swoich stronach bd oferowali pyty z wypoyczalni.
Wwczas serwisy wacicieli sklepw mog komunikowa si z usug sieciow znajdujc si na serwerze przynalenym do wypoyczalni w celu pobrania aktualnej oferty, sprawdzenia, czy dany tytu jest ju wypoyczony i kiedy ma zosta zwrcony. Wszystkie dane znajduj si na jednym serwerze i s udostpniane przez usug sieciow. Wszelkie zmiany w tytuach bd produktach bd przeprowadzane jedynie na centralnym serwerze nie zachodzi wwczas potrzeba aktualizacji oprogramowania w placwkach. Usugi sieciowe mona take sprzedawa.
Jeeli kto napisze innowacyjn usug wykorzystujc niepowtarzalny, nowatorski algorytm szyfrujcy, moe j udostpnia w internecie. Klienci natomiast mog dostosowa odpowiednio swoje oprogramowanie, tak aby umoliwi wykorzystanie tej nowej usugi. W takim przypadku wszelkie poprawki czy naprawa bdw bd dotyczyy tylko tej jedynej usugi, a klienci nie musz nawet o tym wiedzie. Warunkiem jest jedynie zapewnienie dostpnoci takiej aplikacji przez internet.
Inny przykad: autorzy popularnej wyszukiwarki Google udostpnili programistom jej interfejs. Dziki usugom sieciowym mona wykorzysta mechanizmy Google do przeszukiwania zasobw internetu.
Nastpnie wyniki takiego wyszukiwania mona zaprezentowa w swoim programie lub stronie internetowej. Usugi sieciowe s uniwersalnym sposobem wymiany informacji pomidzy aplikacjami czy stronami WWW. Teraz aplikacja nie musi skada si z tylko jednego moduu pliku wykonywalnego.
Centralna aplikacja, znajdujca si na komputerze klienta, moe bezproblemowo czy si z serwerami i wymienia dane oraz realizowa zadania. Niezaleno Bardzo wanym aspektem usug sieciowych jest ich niezaleno od platformy jzykowej. Wane jest, aby usuga dziaaa pod kontrol.
NET Framework, jednak nieistotne jest to, w jakim jzyku zostaa napisana. Moe to by wic C , Visual Basic. NET czy Delphi. Aplikacja, ktra korzysta z danej usugi, rwnie moe by napisana w jakimkolwiek jzyku obsugiwanym przez. Uniwersalno A zatem ju wiadomo, e usuga napisana w C moe by wykorzystywana przez aplikacj napisan w Delphi. Jak to si wic dzieje, e pomidzy usug a uywajc jej aplikacj zachodzi swobodna komunikacja?
Chciabym zasygnalizowa kilka podstawowych poj zwizanych nie tylko z usugami, lecz oglnie z platform. Aplikacja moe wysa do usugi sieciowej zapytanie w formacie XML, a nastpnie otrzyma odpowied rwnie w tym formacie. Kluczow rol w procesie komunikowania si z usugami sieciowymi odgrywa wanie jzyk XML opracowany przez konsorcjum W3C.
Konsorcjum W3C ang. World Wide Web Consorcium jest organizacj wyznaczajc standardy technologii zwizanych z internetem specyfikacje, wytyczne aplikacji itp. Organizacja W3C jest odpowiedzialna m. Stanowi niewtpliwy autorytet w dziedzinie definiowania standardw sieciowych. Wicej informacji na temat konsorcjum mona znale na stronie www. Z usugami sieciowymi wie si kilka nastpnych poj:. XML ang. Jest to uniwersalny jzyk znacznikw przeznaczony do publikowania danych.
Jego uniwersalno, niezaleno od platformy oraz coraz wiksza popularno czyni go idealnym formatem do przesyania danych pomidzy usugami sieciowymi. SOAP ang. Simple Object Access Protocol. Protok SOAP okrela format przesyanych danych, nazwy parametrw itp. WSDL ang. Web Service Description Language. WSDL suy do opisywania usugi, dostarcza uytkownikom informacji o jej przeznaczeniu i sposobie wykorzystania.
UDDI ang. Universal Description, Discovery and Integration. Jest to spis usug sieciowych udostpnianych publicznie. Bardziej szczegowo o rodowisku. NET Framework opowiem w rozdziale 4. Trzeba rwnie odrnia model programowania dla Win32 od modelu. NET ma dziaa na kadej platformie, ale pod warunkiem e bdzie to produkt firmy Microsoft.
Powstaje jednak darmowy projekt Open Source , ktrego zaoeniem jest stworzenie platformy zintegrowanej z. NET dla systemu Linux.
Projekt nosi nazw dotGNU, a jego strona internetowa to www. Rozdzia 3 Podstawy jzyka C Zawsze, na kadym kroku staram si podkrela, i tworzenie aplikacji nie opiera si jedynie na ukadaniu klockw komponentw w oknie formularza. Oczywicie, nowoczesne jzyki programowania takie jak C oraz rodowiska tworzenia aplikacji Visual C Express Edition daj nam moliwo szybkiego oraz przyjemnego projektowania aplikacji, lecz nie na tym polega programowanie!
Naley mie wiedz na temat podstawowych elementw jzyka programowania oraz podstawowych polece sucych do sterowania prac programu. W tym rozdziale zajmiemy si wanie jzykiem C. Celowo podkreliem sowo jzyk, gdy omwi podstawowe terminy programistyczne oraz elementy kadego wysokopoziomowego jzyka programowania. Odstawimy w tym miejscu na chwil przyjemne i adne projektowanie wizualne przy pomocy komponentw na rzecz aplikacji konsolowych. Wszystko dlatego, i moim zdaniem prociej jest nauczy si danego jzyka na przykadach zawierajcych jak najmniejsz ilo kodu, tak jak to ma miejsce w przypadku programw konsolowych.
Skadnia to specyficzne sowa kluczowe elementy danego jzyka suce do sterowania prac programu oraz znaki, ktre musz zosta zapisane w okrelonym porzdku.
Podstawowa skadnia Kod rdowy musi skada si z polece zakoczonych okrelonymi znakami. Nie mona pozostawi w kodzie adnego baaganu nawet pominicie jednego znaku czy zwyka literwka mog spowodowa brak moliwoci uruchomienia programu. Tak jak w jzyku polskim, pominicie odpowiedniego znaku interpunkcyjnego jest bdem. Takie banalne z pozoru bdy mog by prawdziw udrk dla pocztkujcego programisty i w konsekwencji spowodowa spowolnienie prac nad programem.
Z czasem wyrabia si pewien nawyk, dziki. Na szczcie nowoczesne kompilatory potrafi bardzo precyzyjnie wskaza rdo bdu wraz ze szczegowym komunikatem oraz numerem linii, w ktrej on wystpi. Zacznijmy wic. Utwrz swj pierwszy projekt aplikacji konsolowej. Zaznacz ikon Console Application. Kliknij przycisk OK. W tym momencie rodowisko utworzy nowy projekt aplikacji konsolowej rysunek 3.
W edytorze kodu zostanie automatycznie wpisany startowy kod naszego programu. Taki kod moesz w tym momencie skompilowa nie zawiera on adnych bdw i jest to praktycznie punkt startowy do rozwijania aplikacji.
Rysunek 3. Wszystko tworzy jedn spjn cao i nazywane jest skadni programu. Najprostszy program Napiszmy najprostszy program w jzyku C. W swoim projekcie musimy pozostawi pewne niezbdne elementy programu. Oczywicie taka aplikacja nic nie robi, zaraz po uruchomieniu klawisz F5 zostanie zamknita.
Jak kompilatory czytaj kod Podczas kompilowania programu kompilator sprawdza najpierw, czy kod rdowy nie zawiera bdw. Kod jest czytany linia po linii, poczwszy od gry, tak wic instrukcje s wykonywane w takiej kolejnoci, w jakiej zostay zapisane.
Przykadowo polecenie Foo nie jest rwne poleceniu foo z punktu widzenia kompilatora to dwa rne polecenia. Jeeli wic wczeniej programowae w Delphi lub Turbo Pascalu ktre nie rozrniay wielkoci znakw , musisz przywykn do tego, e kompilator C rozrnia wielko znakw, i powica duo uwagi temu, co piszesz. Po dokadnej analizie moesz zauway, e dokonaem jednej maej poprawki.
Zamieniem nazw funkcji z Main na main. Podczas prby skompilowania takiego programu wywietlony zostanie bd: Program 'ConsoleApplication1. Komunikat mwi o tym, e aplikacja nie zawiera metody o nazwie Main, ktra jest punktem startu programu. Jest to pierwsza regua charakterystyczna dla programw pisanych w C.
A mianowicie:. Program musi posiada metod Main Dla prawidowej terminologii uywam tutaj pojcia metoda, mimo i nie wyjaniem, czym waciwie jest metoda! Na razie nie przejmuj si tym zostanie to omwione dalej. Zapamitaj jedynie, e metoda Main jest obowizkowym elementem programu. To od niej program rozpoczyna swe dziaanie i na niej je koczy. WriteLine "Witaj wiecie! Po uruchomieniu takiego programu F5 na ekranie konsoli zostanie wywietlony tekst: Witaj wiecie!.
Jest to potwierdzeniem moich sw o tym, i to wanie w metodzie Main rozpoczyna si waciwe dziaanie programu, czyli wykonanie instrukcji: System. Taki kod powoduje wywietlenie na ekranie konsoli tekstu zapisanego pomidzy apostrofami.
Nie moesz zapomina o obowizkowych nawiasach, bez ktrych aplikacja nie zostanie skompilowana. Na szybkim komputerze program moe zosta skompilowany i uruchomiony z tak prdkoci, i nie dostrzeemy w ogle jego dziaania, gdy od razu zostanie zamknity. Abymy to my mogli decydowa, kiedy aplikacja zostanie zamknita, naley doda do programu odpowiednie instrukcje. Wskazwki znajdziesz w dalszej czci rozdziau. Kompilator jest tylko programem, ktry m. Piszc kod, musimy poinstruowa kompilator, i w tym miejscu nastpuje zakoczenie danej instrukcji.
Oznaczamy to, stawiajc na kocu danego wyraenia rednik taka zasada obowizuje w wikszoci nowoczesnych jzykw programowania. Zwr uwag na powysz instrukcj wywietlajc tekst na konsoli. Jest ona zakoczona rednikiem. Gdyby go nie byo, kompilator w trakcie kompilacji wywietliby bd: ;. Jest to bardzo wana zasada i musisz o niej pamita. Nie martw si po jakim czasie znak rednika na kocu wyraenia bdziesz stawia automatycznie.
Program musi posiada klas Kolejne pojcie, jakie naley wprowadzi, to klasa. O klasach szczegowo opowiem w rozdziale 5. Kada klasa musi mie nazw poprzedzon sowem kluczowym class: class Foo. Nazw klasy od sowa kluczowego musi dzieli co najmniej jedna spacja. Klasy mog zawiera m. Tak naprawd kada aplikacja jzyka C musi posiada przynajmniej jedn klas lub struktur!
O strukturach opowiem w dalszej czci ksiki; teraz jedynie zaznaczam ten fakt, gdy moe on mie znaczenie dla osb, ktre programoway wczeniej np. Wcicia, odstpy Z punktu widzenia kompilatora nie jest istotne, jak pisany jest kod, czy zawiera odstpy oraz wcicia.
Czytelno takiego kodu pozostawia jednak wiele do yczenia i dlatego taki sposb pisania nie jest zalecany. Kady jzyk programowania posiada specyficzne elementy, tzw. Mog one oznacza rozkaz czy instrukcj, ktre s w dany sposb interpretowane przez kompilator.
Standardowo w rodowisku Visual C Express Edition sowa kluczowe wyrniane s kolorem niebieskim. Do sw kluczowych C mona zaliczy m. Przykadowo, sowo class oznacza deklaracj klasy o danej nazwie. Deklaracja w kontekcie jzyka programowania moe zwyczajnie oznacza utworzenie danego elementu np. Symbole Symbole to pojedyncze znaki, ktre wraz ze sowami kluczowymi tworz skadni. Przykadowo, znak cudzysowu " okrela pocztek oraz koniec acucha tekstu. Sprbuj usun cudzysowy z instrukcji wypisujcej tekst na konsoli: System.
WriteLine Witaj wiecie! Podczas prby kompilacji kompilator zasygnalizuje bd, poniewa nieznane s dla niego instrukcje Witaj oraz wiecie, ktre wraz z cudzysowem tworz acuch, a zwarto acucha nie jest przez niego sprawdzana pod wzgldem wystpienia danych polece. Komentarze Najprostszym elementem kadego jzyka programowania s komentarze.
W kodzie rdowym moesz dodawa wzmianki informacje absolutnie niemajce wpywu na dziaanie programu. W trakcie kompilacji s one usuwane przez kompilator i nie znajduj si w pliku wynikowym.
Oczywicie kompilator nie usuwa tych komentarzy fizycznie, tzn. Komentarze maj ogromny wpyw na proces powstawania aplikacji, szczeglnie jeeli pracujesz w grupie. W kodzie moesz zawrze informacje przeznaczone dla innych czytajcych go programistw, o tym jak on dziaa i co robi. W nowoczesnych edytorach kodu takich jak w rodowisku Visual C komentarze s specjalnie wyrniane w moim przypadku kolorem zielonym.
Podzespoy, metody, klasy Powiedzielimy sobie ju o symbolach oraz sowach kluczowych, ktrymi mona si posuy w trakcie pisania programw. Nim przejdziemy dalej, musz Ci wyjani kilka dodatkowych poj.
W poprzednim rozdziale wspominaem o rodowisku. NET Framework oraz bibliotece klas jako o gwnym narzdziu projektowania aplikacji. Chciabym w tym momencie wyjani pewn kwesti. Ot rodowisko. NET Framework udostpnia programistom szereg klas i bibliotek, ktre uatwiaj proces programowania.
Jest to co na wzr WinAPI, o ktrym wspominaem w poprzednim. Gwn bibliotek w. NET Framework jest mscorlib. Zawiera ona przestrze nazw System, ktra z kolei zawiera klas Console! Klasy z kolei zawieraj metody, m. WriteLine, ktra suy do wypisywania tekstu na konsoli.
Jak widzisz, system zalenoci jest do skomplikowany, a wielo poj, jakie trzeba opanowa, moe przyprawi o bl gowy! Dlatego na razie nie bd Ci zadrcza skomplikowanymi definicjami oraz opisami tych poj bdziesz je poznawa stopniowo w trakcie czytania tej ksiki. Na tym etapie wane jest aby wiedzia, e istniej metody, ktre na wzr funkcji realizuj gotowe zadania takie jak np. Mona powiedzie, e s to polecenia, ktre mona wykorzysta w aplikacji, chocia taka terminologia nie jest raczej dopuszczalna.
Nie zagbiajc si w szczegy, postaram si opisa kilka podstawowych elementw jzyka programowania w C , ktre do czsto bd wykorzystywane w dalszej czci ksiki. Funkcje Funkcje jako takie nie istniej w C! Zamiast tego mwimy o wspomnianych ju w tej ksice metodach. Idea jest w zasadzie identyczna, ale aby unikn nieporozumie, bd si stara nie uywa sowa funkcja. Z tym sowem spotkasz si zapewne nie raz w swojej karierze, gdy mechanizm funkcji jest obecny w wielu jzykach programowania.
Funkcje to wydzielony blok kodu realizujcy jakie zadanie. Chciabym w paru sowach przybliy ide tzw. Idea programowania proceduralnego zacza si pojawia wraz z bardziej zaawansowanymi aplikacjami. Tradycyjny modu projektowania nie sprawdza si dobrze, gdy programy zaczy by bardziej skomplikowane wwczas ich konserwacja i naprawianie bdw byy niezwykle trudne.
Kto mdry wymyli wtedy, e mona by byo dzieli program na mniejsze czci tzw. Przykadowo, jeeli napisano kod, ktry wywietla pewien komunikat i koczy dziaanie programu, a w fragment jest uywany wiele razy w tej aplikacji, to naleaoby go dublowa wiele razy. Powoduje to nie tylko zwikszenie objtoci kodu, ale rwnie potguje podatno na bdy. Bo co si stanie, jeeli wanie w tym maym, wielokrotnie powtrzonym w aplikacji fragmencie, wystpi bd? Naleaoby wwczas przeszuka cay kod i w kadym miejscu poprawia usterk.
Teraz, w nowoczesnych jzykach programowania mona umieci pewien fragment kodu w procedurze i wywoa j za kadym razem, kiedy zajdzie potrzeba jego wykonania! Sama idea jest identyczna, ale z uwagi na to, i w C procedury nie istniej, nie bd o nich wicej wspomina.
Metody Mam nadziej, e masz ju w gowie pewien zarys tego, czym jest metoda. Ju wkrtce nauczysz si pisa wasne metody oraz klasy. Aktualnie jedyne, co musisz wiedzie, to to, e metody mog posiada tzw.
Spjrz na poprzedni przykad uycia metody WriteLine. Parametrem tej metody by tekst Hello World!. Innymi sowy przekazujemy metodzie tekst do wywietlenia na konsoli. Moesz myle o parametrach jak o danych wejciowych przekazujesz metodzie dane, na ktrych ona operuje. Obowizkowym elementem kadej metody s nawiasy, w ktrych podaje si parametry. Jednak nie wszystkie metody w rodowisku. NET Framework maj parametry w takim wypadku pozostawiamy pusty nawias, np.
Read ;. Klasy O klasach mona powiedzie, i jest to zestaw metod. Przykadowo, klasa Console zawiera zestaw metod sucych do operowania na konsoli. Myl o klasach jak o przyborniku, paczuszce zawierajcej przydatne narzdzia.
NET Framework udostpnia szereg klas gotowych do uycia. Przykadowo, chcemy napisa program, ktry obliczy logarytm z danej liczby. Zamiast samemu mczy si z pisaniem odpowiedniego kodu, moemy wykorzysta klas Math, ktra jest czci rodowiska.
NET Framework, i udostpniane przez ni mechanizmy. Przestrzenie nazw rodowisko. NET Framework jest na pierwszy rzut oka do specyficzne dla osb, ktre programoway wczeniej na platformie Win32 lub dopiero si ucz. Bo c oznacza zapis: System. Przede wszystkim jest strasznie dugi! Mamy tutaj kilka instrukcji oddzielonych znakiem kropki.
Czy nie atwiej i krcej byoby pisa po prostu sam nazw metody? Zawiera tysice klas i innych typw, kady posiada inn nazw. W rodowisku Win32 nie mogo si zdarzy, e istniay dwie funkcje o takiej samej nazwie 1 , co jest moliwe w. Przykadowo, metoda WriteLine wypisuje tekst, ale istnieje rwnie metoda WriteLine , ktra zapisuje go do pliku metoda klasy TextWriter. Ich jednoczesna obecno jest niewykluczona, poniewa nale do innych klas. Podobnie jest w przypadku przestrzeni nazw ang. W obrbie kilku przestrzeni nazw mog istnie klasy o tej samej nazwie.
Operator kropki Pojcie operator zostanie wprowadzone w dalszej czci rozdziau. Znak kropki. Przy pomocy tego operatora otrzymujemy dostp do elementw danej klasy czy przestrzeni nazw. Uywajc rodowiska Visual Studio. Wykonaj mae dowiadczenie. W edytorze napisz sowo System. Po chwili powinna pojawi si rozwijana lista zawierajca list klas oraz innych zagniedonych przestrzeni nazw, ktre moemy wykorzysta rysunek 3. Sowo kluczowe using Pisanie za kadym razem nazwy przestrzeni nazw, a nastpnie klasy i metody moe by nieco mczce.
Dlatego te mona wykorzysta sowo kluczowe using, ktre informuje kompilator, e w programie bdziemy korzystali z klas znajdujcych si w danej przestrzeni nazw np. WriteLine "Hello World! Zmienne W kadym programie, ktry ma wicej ni kilkanacie linijek kodu, zachodzi konieczno przechowywania tymczasowych danych w pamici komputera. Takie dane przechowywane s jedynie w trakcie dziaania programu.
Zmienne definiujemy jako obszar w pamici komputera, ktry suy do przechowywania danych tymczasowych obecnych w pamici do czasu wyczenia programu , majcych posta liczb, tekstu itp.
Zapisywanie danych w pamici komputera w obecnych jzykach programowania jest bardzo proste. Naley okreli unikaln nazw, pod ktr bdziemy uzyskiwa dostp do danych. Deklarowanie zmiennych Operacja utworzenia zmiennej nazywana jest deklaracj zmiennej. Musimy okreli unikaln nazw zmiennej, ktra nie moe si powtarza w obrbie danej klasy czy metody.
Musimy rwnie okreli typ danej zmiennej, czyli zidentyfikowa dane, jakie bdziemy przechowywa w pamici tekst, liczby itp. W powyszym programie utworzyem zmienn o nazwie Bar oraz typie string. Jak widzisz, sposb deklaracji jest bardzo prosty, schemat mona przedstawi w ten sposb:.
Deklaracja kilku zmiennych Najczciej bywa tak, i w aplikacji potrzebujemy wielu zmiennych. Przykadowo, jedna zmienna przechowuje pobrany login uytkownika, druga imi uytkownika, a trzecia jego nazwisko.
Potrzebujemy wobec tego trzech zmiennych. Jeeli wszystkie zmienne s tego samego typu string , moemy zadeklarowa je w ten sposb: string Login, FName, LName;. Nazwy zmiennych musimy oddzieli znakiem przecinka. Z punktu widzenia kompilatora nie ma znaczenia to, w jaki sposb deklarujesz zmienne, wic rwnie dobrze moesz je zadeklarowa w ten sposb: string Login; string FName; string LName;.
Przydzia danych Zadeklarowalimy ju zmienn, lecz nie przypisalimy do niej adnych danych, wic jej zawarto jest pusta. Przypisanie danych do zmiennej jest rwnie proste jak deklaracja. Kady tekst zadeklarowany w ramach zmiennej musi by ujty w cudzysowie. Zmodyfikujemy nieco nasz ostatni program, tak aby tekst wywietlany w oknie konsoli by odczytywany ze zmiennej.
WriteLine Bar ; Console. W metodzie WriteLine zamiast tekstu umiecilimy nazw zmiennej. W trakcie dziaania programu odczytywana jest zawarto zmiennej Bar czyli Hello World i przekazywana jest metodzie WriteLine, co oczywicie skutkuje wypisaniem tekstu na konsoli.
Zwr uwag, e w programie wykorzystaem metod Read, ktra w tym wypadku czeka na reakcj uytkownika. Program zostanie zamknity wwczas, gdy uytkownik nacinie klawisz Enter. Jak sama nazwa wskazuje, zmienne lub raczej ich zawarto mog by modyfikowane w trakcie dziaania programu.
WriteLine Bar ;. Jak widzisz, tutaj napisaem zawarto zmiennej; na skutek tego na konsoli wywietlony zostanie tekst Hello my darling!. Jzyk C oferuje kilka innych typw danych, ktrymi moemy posugiwa si we wasnych aplikacjach. Jest to bardzo popularny typ danych. Typy danych jzyka C rni si od siebie tzw. Typy danych rni si od siebie rwnie iloci pamici, jak pochaniaj. W tabeli 3.
Tabela 3. Wbudowane typy danych jzyka C Typ danych Zakres byte od 0 do sbyte od do short od 32, do 32, int od 2,,, do 2,,, uint od 0 do 4,,, long od 9,,,,,, do 9,,,,,, ulong od 0 do 18,,,,,, float od 3.
Jak widzisz, mamy do dyspozycji ca gam typw, zarwno stao-, jak i zmiennoprzecinkowych. Specyficznym typem danych jest bool, ktry moe przybiera jedynie dwie wartoci true lub false. Jednake jest on do czsto wykorzystywany przez programistw, o czym przekonasz si w trakcie czytania tej ksiki. Nie jest do koca prawd, e nazwa zmiennej moe by zupenie dowolna. Niestety, istniej pewne restrykcje, o ktrych trzeba wiedzie.
Na przykad pierwszym znakiem nazwy zmiennej nie moe by cyfra nazwa ta musi rozpoczyna si od litery. Stae Stae od zmiennych odrnia to, e zawarto przydzielana jest jeszcze w trakcie pisania kodu i nie ulega pniejszym zmianom. Zawartoci staych nie mona zmienia w trakcie dziaania aplikacji. Stae deklarowane s prawie identycznie jak zmienne. Jedyna rnica to konieczno poprzedzenia deklaracji sowem kluczowym const. Do czego mog przyda si stae? Przykadowo, w staej Version moesz przechowywa numer wersji swojej aplikacji.
Taki numer wersji moesz wywietla w oknie O programie oraz w innych miejscach kodu rdowego. Jeeli uznasz, e naley zmieni numer wersji aplikacji, po prostu zmodyfikujesz zawarto staej. Nie musisz kadorazowo zmienia fragmentw kodu, w ktrych wywietlasz wersj programu.
Operacje na konsoli Wiesz ju, czym s aplikacje konsolowe. Nie posiadaj one adnych okien, kontrolek itp. Program moe jedynie wypisywa tekst na konsoli WriteLine lub odczyta tekst wpisany przez uytkownika. Moge zauway, e program, ktry napisalimy wczeniej, zamyka si zaraz po uruchomieniu i wywietleniu tekstu.
To dlatego, e nie nakazalimy mu czeka na pozwolenie uytkownika. Metoda ReadLine umoliwia odczytanie tekstu wpisanego w oknie konsoli. Program zostaje wwczas wstrzymany do czasu nacinicia klawisza Enter. Napiszmy prost aplikacj, ktra pobierze od uytkownika jego imi, a nastpnie zapisze je w zmiennej. Kod rdowy takiego programu prezentuje listing 3. Listing 3. WriteLine "Cze, jak masz na imi? Jak si masz? Moesz skompilowa, a nastpnie uruchomi tak aplikacj.
Umoliwia ona wpisanie imienia, ktre nastpnie wywietli. Przeanalizujmy ten program. Taka konstrukcja nakazuje przypisanie do zmiennej wartoci tekstu wpisanego i pobranego w oknie konsoli.
Innymi sowy, zmienna name zawiera imi pobrane przez uytkownika. Kolejna linia kodu, ktr trzeba objani, to: Console. W trakcie wykonywania instrukcji w miejsce name zostanie podstawione imi pobrane od uytkownika.
W rzeczywistoci klasa udostpnia wicej metod, z ktrych najwaniejsze zaprezentowaem w tabeli 3. Clear Czyci ekran konsoli. ResetColor Ustawia domylny kolor ta oraz tekstu. SetCursorPosition Ustawia pozycj kursora w oknie konsoli. SetWindowPosition Umoliwia ustawienie pooenia okna konsoli. SetWindowSize Umoliwia okrelenie rozmiaru okna konsoli.
SetCursorPosition 10, 10 ; Console. ReadLine ; Console. Clear ; Console. Naley zaznaczy, e parametry tych metod nie oznaczaj rozmiaru przedstawionego w pikselach! Przykadowo, pierwszym argumentem metody SetWindowSize jest szeroko okna konsoli wyraona w iloci kolumn tekstu.
0コメント