|
Programiranje Programski jezici, tehnike, alatke... |
|
Alatke vezane za temu | Vrste prikaza |
12.11.2009, 12:11 | #41 |
V.I.P. GNU/Linux
Član od: 1.11.2005.
Poruke: 11.166
Zahvalnice: 2.085
Zahvaljeno 4.923 puta na 2.859 poruka
|
Re: How to... C#
To zapravo nema nikakve veze sa temom, koja je: .NET programiranje, da ili ne?
|
12.11.2009, 13:07 | #42 |
Deo inventara foruma
|
Re: How to... C#
Odosmo zaista u offtopic, ali diskusija je vrlo interesantna, pa mi je zao da brisem postove
Mislim da je C# korisno znati... spadam u one hardcore programere koji su pisali rucno interfejs pomocu WinAPI-ja, samo sto sam ja isao u krajnost, pa to sve radio u assembleru za Windows. Tada sam bio mlad, lud i imao vremena za takve stvari. Sticajem okolnosti C# sam morao da savladam dok sam radio u bivsoj firmi. Sada ga pretezno koristim za razvoj alata; a i zgodan je kada prihvatim neki honorarni posao sa strane kada klijent trazi da mu aplikacija radi samo u Windowsu. Skoro sam radio neku aplikaciju koja je trebala da uradi prostu stvar, ali je bilo hrpa kontrola u podesavanjima. Zavrsio sam je za 2h pomocu C# i uzeo 50e. Kad budem dobio sedmicu na loto-u i ne budem vise morao da brinem odakle ce da mi kaplje novac, rado cu se baciti na open-source i cross-platform resenja. |
Sledeći korisnik se zahvaljuje korisniku Patton na korisnoj poruci: | ||
Mimsa (3.11.2013) |
12.11.2009, 17:28 | #43 | ||
Deo inventara foruma
Član od: 22.11.2005.
Poruke: 3.399
Zahvalnice: 389
Zahvaljeno 716 puta na 542 poruka
|
Re: How to... C#
Citat:
Citat:
Posto vecinu ljudi ne zanimaju fraze 'sloboda', 'nepotkupljivost', 'bojkot monopola', 'nezavisnost od velikih kompanija', 'nezavisnost od brendova' koje prirodno idu uz open source, evo jedne reci koja nas sve interesuje: PARE! Koliko jedan pojedniac ili kompanija moze da izgubi tako sto insistira na M$ certified proizvodima koji su sami po sebi neprijateljski (i iz politickih razloga nekompatibilni) prema svemu sto nije M$ a pogotovu prema onom sto je Open Source. Dakle samo nekolio primera, imajte da da kada u daljem tekstu kazem 'ti', obrcam se bilo kome i nikome posebno. Pricam uopsteno. 1.Biranjem C# umesto nekog krosplatformskog jezika otudjujes OS X korisnike koji cine 8% desktop trzista. Ljudi koji ne zale pare za hardver ne zale ni za softver. Razna istrazivanja pokazuju da je piraterija medju Mac korisnicima na mnogo nizem nivou nego medju Windows korisnicima koji piratizuji i ono sto im treba i ono sto im ne treba. Mac korisnici imaju naviku da placaju softver, sti ne moze da se kaze za prosecnog Djoku koji koristi prozore. Mnoge kompanije imaju veci prihod na Mac trzistu nego na Windows trzistu iako bi neko na prvi pogled rekao suprotno. 2.Biranjem jezika koji se ne koristi u free & open source zajednici ostajes nekompatibilan sa milijardama redova otvorenog koda(mahom C i C++). Sad ce neko da se zapita sta ce mu to, ali neka samo cita dalje. Dosta koda je pod dopustajucim licencama kao sto je MIT X11, BSD, Apache, etc, etc... Sve ove licence dozvoljavaju eksplotaciju Open Source sofvera bez vracanja icega za uzvat. Nikakav M$-ov RAD IDE ne moze da se takmici sa time. Kod M$-a dobijes gotove dugmice i prozore a ovde dobijes gotov program koje mozes da izmenis kako ti se svidi i da mu metnes tvoj trademark. Mozes da prodajes program, samo u slucaju MIT-a ne smes da tvrdis da si ti napravio program a ako te neko pita kazi 'No comment'. U slucaju BSD-a samo stavis 'Regents of Berkley Unuversity' negde u dokumentaciji i legalan si. OS X izbacuje tu poruku pri verboose bootu. Naravno, ako budes nepazljiv u odnosima sa javnoscu, mozes da se desi da Groklaw napravi kampanju protiv tebe i da dobijes sajt u svoju (ne)cast kao sto ima Novell, ali koga to interesuje. Ionako mogu samo da te mrze. M$ to radi tako da mora da je ispravno. Samo se drzi podalje od GPL-a jer onda moras da otvoris kod a prtpostavljam da ovde niko to ne zeli da radi, barem ne dok se program dobro prodaje. A ako bas imas zelju da pomognes projektu od koga uzimas, onda lepo uzmi starije verzije svog programa i otvori ih pa tako pomogni. A ako radis custom programe po narudzbini, onda nemoras ni da izbegavas GPL. Uzmi lepo bilo koji GPL program, prepravi ga onako kako ti musterija trazi, isporuci mi racun, disk sa programom a ako trazi onda i disk sa izvornim kodom. I opet si legalan. Po GPL-u, duzan si da das izvorni kod samo onome kome das/prodas program. Prodavanje programa je dozvljeno ali mora da ide u paketu sa izvornim kodom. Free as in freedom, not price. Koga zanima vise, neka procita ovo. Tako da prica da u slbodnom softveru nema para pada u vodu k'o Milorad Cavic. Lakse ces je zaraditi pare od slobodog softvera nego od zatvorenog. 3.Veliki broj Windows programa je potrebna iskljucivo zbog mana Windows-a. Registry Mechanic, Tune Up i slcno, zatim razni AntiMalware i AntiVirus programi... sve je to bilo vrlo prfitabilno dok M$ nije izbacio M$ Security Esentials. Istog dana su akcije na berzi mnogih AV kompanija stucnule. Da li bas svako zeli da njegov program bude koristan samo dok M$ ne zakrpi rupu i dok zakrpu ne priloze uz Windows? Ko nezna odgovor na ovo pitanje neka ide da pita Netscape a usoro moze da pita i Borland. Da, kao sto neko rece, M$ sistematski, planski i strpljivo radi na unistavanju svih ostalih kompanija. Open Source je jedina alternativa koju ne mogu da uniste bas iz pravnih razloga i pametnih licenci koje ljude mahom ne interesuju ali koje nude veliku dobit za sve. I one koje zanima zarade, i one koje zanima samo funkcionalnost i one koje samo zanima sloboda. Mozes da imas sva tri u jednom ako odigras kako treba. I tu cu da stanem, 3 tacke je dovoljno i necu da gnjavim vise. Sto se tice brisanja poruka, mislim da bi bila steta iako ima dosta offtopika. Moj konstruktivni predlog je da se off topik izmesti u drugu temu i da se ako mora i zakljuca. Ali mislim da je ovde dosta zanimljivog i korisnog. C# mozda nije totalno smece ali je oruzje za postizanje djavolskih planova preko glave obicnih ljudi i svako ko ga bira za svoj rad mora toga da bude svestan i da to svesno prihvati ili odbije. Da ne bude posle kad stvari postanu ugly 'da sam to znao u ono vreme nebih ucio C#'. Takodje C# nije sveti gral programiranja kao sto ga neki predstavljaju. Programski jezik kao i svi drugi ako ga gledas sa tehnicke strane. To be continued... (character limit) Poslednja ispravka: Mickie (12.11.2009 u 18:27) Razlog: Dodat lik ka GPL FAQ-u i smajli na pravom mestu |
||
Sledeći korisnik se zahvaljuje korisniku Mickie na korisnoj poruci: | ||
Radiant (12.11.2009) |
12.11.2009, 17:29 | #44 | |
Deo inventara foruma
Član od: 22.11.2005.
Poruke: 3.399
Zahvalnice: 389
Zahvaljeno 716 puta na 542 poruka
|
Re: How to... C#
Citat:
ENDE Poslednja ispravka: Mickie (12.11.2009 u 17:42) Razlog: Slovne greske |
|
12.11.2009, 23:08 | #45 | |||||||
Deo inventara foruma
Član od: 5.12.2005.
Poruke: 6.785
Zahvalnice: 348
Zahvaljeno 1.893 puta na 1.078 poruka
|
Re: How to... C#
Citat:
Citat:
Citat:
Citat:
Citat:
Citat:
Da probam da objasnim. Ako ti lično preuzmeš neki kod sa neta koji je objavljen pod GPLom isto tako si dužan da ga objaviš pod istom licencom ako nad njim vršiš bilo kakve izmene! Nakon što izvršiš izmene možeš slobodno da ga tako modifikovanog prodaješ ali samo pod uslovom da uz binarni oblik programa ponudiš (a kupac ne mora da prihvati) i izvorni kod. Nakon toga ti si u obavezi da tako modifikovani izvorni kod objaviš javno tako da svako ko poželi može da ga slobodno preuzme i sebi recimo kompajlira aplikaciju! To znači da ja mogu recimo već odmah posle tog klijenta da se pojavim kod tebe i da ti tražim izvorni kod i ti ako ne želiš da kršiš odredbe GPLa moraš da mi daš izvorni kod! Nikakvo ograničenje tipa "samo klijent može da dobije izvorni kod" ne sme da postoji! To je fundamentalna osnova GPLa i jedno od njegovih prvih i osnovnih pravila. Citat:
Da pokušam da se vratim na temu i bar nekako spasim svoju "zlu" dušu Za sve ove godine koliko sam u softverskim vodama (bilo amaterski bilo profesionalno) ja lično smatram da je kombinacija C# i .NETa nešto najbolje što je moglo da zadesi RAD razvoj nezavisno o tome o kojoj platformi pričamo. Dugo sam se mučio sa izrodom kakav je Java a o svojoj C i C++ pozadini neću ni da govorim. Ono što je meni najbitnije u celoj priči je da me ne interesuje ko će koga da tuži i ko je kome šta maznuo niti da li će mi zbog moralne (softverske) prljavštine duša goreti u paklu već da pred sobom imam alat kojim ću mnogo brže završiti posao koji radim nego da se Sizifovski držim svoje "moralne" strane i čisto dokazivanja radi ko zna čega koristim arhaične tehologije kojih se i njihovi tvorci već stide. Poslednja ispravka: holodoc (12.11.2009 u 23:16) |
|||||||
13.11.2009, 9:42 | #46 | ||
Deo inventara foruma
Član od: 22.11.2005.
Poruke: 3.399
Zahvalnice: 389
Zahvaljeno 716 puta na 542 poruka
|
Re: How to... C#
Citat:
Istrgao si moju izjavu iz konteksta, ali cak ni tako nije netacna. Naravno da mora pod istom licencom, nisam rekao suprotno. Izvorni kod si duzan da nacinis dostupnim onima kome i program nacinis dostupnim (bilo po ceni ili dzabe). Dakle ako svoj program stavis kao besplatan download na internetu, moras i kod isto tako. Ako download sa sajta zahteva placanje, kod ne mora da bude objavljen kao besplatni download, nego je besplatan samo za one koji plate download program. Dokaz - http://www.gnu.org/licenses/old-lice...lowDownloadFee Citat:
Na ostala pitanja cu ti odgovoriti kasnije jer sam trenutno na poslu. Ovo sam jednostavno morao da odgovorim cim sam video, jer smatram brukom kad me neko optuzi da neznam odredbe GPL-a. PS: Evo jos jedan link koji moze da bude koristan. |
||
Sledeći korisnik se zahvaljuje korisniku Mickie na korisnoj poruci: | ||
Radiant (13.11.2009) |
13.11.2009, 21:03 | #47 | |||
Deo inventara foruma
Član od: 5.12.2005.
Poruke: 6.785
Zahvalnice: 348
Zahvaljeno 1.893 puta na 1.078 poruka
|
Re: How to... C#
Nema tu neke preterano velike filozofije oko GPLa osim što su njeni pomalo smotani tvorci uspeli od kiselog kupusa da naprave sarmu bez mesa pa većina ljudi iz one ogromne dokumentacije ne može ni da pohvata šta koja stavka zapravo znači.
Ta stavka koju citiraš Mickie iz GPL FAQa se ne odnosi na cenu slobodnog softvera koji objavljuješ i stavljaš na uvid ostatku zajednice nego na nešto što se zove "transportni troškovi i troškovi održavanja". Citirana stavka ti bukvalno samo dozvoljava da slobodno proceniš koliko treba da naplatiš svoj rad da na kraju ti sam ne bi bio na gubitku jer na aktivan način doprinosiš zajednici. Na kraju krajeva svako ko se ikada malo dublje zamislio nad problematikom slobodnog softvera valjda je shvatio da slobodan softver u stvari realno nema cenu tj. nikada ali apsolutno nikada sam softver nije ono što se naplaćuje. Ono što se u stvari naplaćuje se uvek svodi na podršku, razne troškove (recimo transport ili troškove vezane za vrednost medija itd.) ali generalno sam slobodan softver se i pored tolike halabuke da slobodno nije isto što i besplatno na kraju svede na to. Citat:
Citat:
Citat:
Pošto ovo zaista ode u ogroman offtopic (a kako bi i bilo drugačije na ovom forumu ) završiću svoju raspravu na ovu offtopic temu konstatacijom da nisam sujetna snobina koja pošto-poto traži razlog da nekoga stavi na tapet ali iskreno rečeno iznervirala me je tvoja potreba Mickie da u poslednje vreme kad god stigneš blatiš stvari koje jednostavno ne voliš i to još potkrepljuješ argumentima u vidu potpuno netačnih informacija. Da stvar bude gora izvlačiš zaključke na osnovu iskustva koje si do sada imao a koliko ja mogu da zaključim ona su jako tanka kada je u pitanju komercijalan softver visokog kalibra. Za klasično amatersko ili možda bavljenje razvojem softvera iz dobre volje (ono što je i srž Open sourcea) imaš argumente koji su potpuno validni ali sve ostalo ti je ispunjeno čistim (rekao bih pomodarskim) hejtom za koji jednostavno nemam razumevanja. |
|||
13.11.2009, 21:44 | #48 | ||||
Deo inventara foruma
Član od: 22.11.2005.
Poruke: 3.399
Zahvalnice: 389
Zahvaljeno 716 puta na 542 poruka
|
Re: How to... C#
Evo da ti citiram opet, ali sada cu da boldujem druge reci da ti bude jasnije:
Citat:
Citat:
Ja verujem ljudima kad kazu da nesto nije savrseno, ali automatski znam da lazu kad kazu da je nesto savrseno. C# je daleko od savrsenog. A krosplatformnost mi je prokleto vazna. Bez nje ostaje samo jedan OS. To je lose. Citat:
Citat:
Ko gubi sa C# ? Pa naravno ne Micro$oft. Ne velike kompanije kojima ove open source kompanije kvare racunicu. Gube startup kompanije i programeri koji njih uzimaju za uzor. Takve kompanije traju dok je M$-u potreban pokusni kunic (can u say Ximian, Novell), posle bivaju izbrisane sa mape. |
||||
13.11.2009, 21:58 | #49 | |
Deo inventara foruma
Član od: 22.11.2005.
Poruke: 3.399
Zahvalnice: 389
Zahvaljeno 716 puta na 542 poruka
|
Re: How to... C#
Citat:
Java – nekim ljudima se ne svidja Swing, meni se svidja. Ja volim da mi program izgleda i radi isto na svakom kompu koji dohvatim, razliciti dugimici na raznim OS-ovima mogu samo da zbunjuju nekoga koga ne drzi jedan OS. Ono sto mi se ne svidja je veci memorijski otisak, i manja mogucnost koriscenja low level funkcija... OS ne mere u Javi bez bar malo C-a ili Assemblera. Dakle treba joj veca optimizacija na prvom mestu, a treba i nesto ponuditi kao Alternativu za Swingu ovima koji ga ne vole. Kazu ljudi nece GTK i Qt da rade kako treba, to nisam probao (drzim se Swing-a) pa cu verovati na rec iskusnijima. C++ - Njega ne koristim za sad, mada me kopkaju kDevelop i Qt biblioteke. Rekao sam da ima mane vise iz kurtoazije, necu da tvrdim da je bilo sta savrseno za razliku od C# zilota. Znam da je C++ nadogradnja na C, ali mi ta nadogradnja trenutno nije potrebna, to ostavljam za kaasnije kada savladam C u potpunosti. C++ mi trenutno nije prioritet. C – On mi je prioritet. Po meni nema problema. Na C nemam bas nikakve zamrke, sintaksa se lako pamti, sve je prirodno, GCC mi je postao najbolji drugar. Za mene je savrsen jezik. Nekima se ne svidja sto je razvoj aplkacija nesto duzi nego kad prevlacis prozore i dugmice, ali ja volim da isprljam ruke i mislim da: Kod:
#include <stdio.h> int main() { printf( " Nema leba...\n bez motike"); getchar(); printf( "Nisi programer ako uopste ne kucas i citas kod\n nego samo prevlacis prozore i dugmice\n"); getchar(); return 0; } Poslednja ispravka: Mickie (13.11.2009 u 22:00) Razlog: dodat |
|
14.11.2009, 0:42 | #50 |
V.I.P. GNU/Linux
Član od: 1.11.2005.
Poruke: 11.166
Zahvalnice: 2.085
Zahvaljeno 4.923 puta na 2.859 poruka
|
Re: How to... C#
Po svemu što si napisao, mogu samo da zaključim da u životu nisi napravio nijedan program koji ima više od dva prozora i 200 redova koda.
A ako jesi, objasni mi, života ti, kako bi u čistom C-u, koristeći WinAPI, napravio non-MDI program od dva prozora gde, recimo, jedan ne bi bio modalan i ne bi imao dugmiće za zatvaranje ili Ok/Cancel, nego bi nešto radio u odvojenom threadu i o tome korisnika obaveštavao preko progress bara, a onda se zatvorio kad se posao završi, dok bi korisnik radio nešto drugo u prvom prozoru, recimo crtkao po canvasu? I kakve bi veze takav horor šou od koda imao sa RAD-om? Mislim, skucao si nešto u C-u što izgleda kao prva lekcija iz programiranja za srednju školu, kažeš da je to "getting dirty" i očekuješ da neko poveruje da si pro? Pa najbazičniji Java i C# program sa konzolnim outputom je složeniji od toga! Jel troluješ namerno ili kako? Lepo reci, ljudi nemam mnogo iskustva, neće se niko ljutiti. Ja i dalje ne verujem šta čitam na ovom forumu, ljudi koji poseduju bazično teoretsko poznavanje programiranja objašnjavaju nekome šta je dobro za višegodišnju praksu i razvoj složenih aplikacija, pa ovo je bre bolje od gornjeg dela foruma gde ljudi koji nikad nisu imali jedan tip hardvera ubeđuju druge zašto je taj hardver krš! Vrh potpuni! Poslednja ispravka: voodoo_ (14.11.2009 u 1:03) |
14.11.2009, 2:21 | #51 | ||||||||
Deo inventara foruma
Član od: 5.12.2005.
Poruke: 6.785
Zahvalnice: 348
Zahvaljeno 1.893 puta na 1.078 poruka
|
Re: How to... C#
Ponekad i ja zaista pomislim da ovom forumu treba jedan "epic fail" smajli
Mislim ne znam tačno od koje besmislene rečenice prvo da krenem kada vidim sledeće citate? Citat:
Citat:
Citat:
Citat:
Citat:
Zatim lepiš epitet C++-u da je, pajz sad, "nadogradnja" C-a... Osim što dele skoro identičnu sintaksu metodologije rada ova dva "jezika" su potpuno različite i ne možeš da tvrdiš da ti C++ "još" ne treba jer će ti svako ko ima bar i malo iskustva u pisanju ozbiljnijih aplikacija u ova dva jezika reći koliko su u produkcionim okruženjima ova dva "jezika" slična. Takođe pominješ recimo da ti je programiranje u C-u zabavno ali rad na ozbiljnim projektima često nije tako zabavan. Pitao bih te da li bi se "zabavljao" u C-u kada ostaneš par puta prekovremeno da bi stigao jutarnji deadline i da li bi ti tada bilo važnije da se dičiš nad svojih 50% gotovog umetničkog koda u C-u ili 95% u nekom Visual okruženju Kao da to nije dovoljno kasnije stavljaš Red Hat, MySQL i PostgreSQL u isti koš. Kao prvo Red Hat opstaje zbog podrške a ne prodaje svog OSa. Tu leži poenta onoga što ja tebi pokušavam da objasnim sve vreme ali ti uporno obilaziš oko tih reči kao kiša oko Čačka. MySQL sa druge strane nije čak ni potpun OpenSource a na stranu to što i on živi od podrške svom RDBMSu. I šta onda PostgreSQL radi u tom košu kad je on poptun OpenSource? A sad poslastica. Mane programskih jezika. Citat:
C++ sam manje više dotakao gore. Citat:
Da remiziram. Mislim da osnovni problem u celoj priči leži u sledećoj rečenici. Citat:
Poslednja ispravka: holodoc (14.11.2009 u 2:30) Razlog: Ovaj vbulletin zeza... |
||||||||
Sledeći korisnik se zahvaljuje korisniku holodoc na korisnoj poruci: | ||
Mobius (14.11.2009) |
14.11.2009, 2:54 | #52 |
Starosedelac
|
Re: How to... C#
Da ne postoji potreba za brzim pravljenjem aplikacija i dan danas bi radili u asembleru...
|
14.11.2009, 13:53 | #53 |
Deo inventara foruma
Član od: 14.3.2008.
Lokacija: EHCPCGG
Poruke: 12.111
Zahvalnice: 4.319
Zahvaljeno 3.295 puta na 2.274 poruka
|
Re: How to... C#
Vreme je novac, sto automatski daje prednost "prevlacenju prozora i dugmica." Veoma plitko misljenje od tebe.
|
14.11.2009, 14:49 | #54 |
V.I.P. Programiranje
Član od: 9.1.2009.
Lokacija: Beograd, Banovo Brdo
Poruke: 1.157
Zahvalnice: 83
Zahvaljeno 448 puta na 303 poruka
|
Re: How to... C#
aman bre ljudi, niko od vas ne zna sta prica.
BASIC je jedini jezik koji vredi nauciti i tacka. sve ostalo su gluposti. mislim, evo : Kod:
10 PRINT "Vidite kako je dobro, zar ne ?" 20 GOTO 10: ali volim sto je BASIC tako jednostavan za ucenje. nisi programer ako ne pises bejzik. |
Sledećih 3 korisnika se zahvaljuje korisniku irreal na korisnoj poruci: | ||
14.11.2009, 15:21 | #55 |
Kekule Mekule
|
Re: How to... C#
Nisi programer ako ovaj kod ne koristis za pravljenje prozora, raditi drugacije je no challenge at all:
Kod:
.386 .model flat,stdcall option casemap:none include \masm32\include\windows.inc include \masm32\include\user32.inc includelib \masm32\lib\user32.lib ; calls to functions in user32.lib and kernel32.lib include \masm32\include\kernel32.inc includelib \masm32\lib\kernel32.lib WinMain proto :DWORD,:DWORD,:DWORD,:DWORD .DATA ; initialized data ClassName db "SimpleWinClass",0 ; the name of our window class AppName db "Our First Window",0 ; the name of our window .DATA? ; Uninitialized data hInstance HINSTANCE ? ; Instance handle of our program CommandLine LPSTR ? .CODE ; Here begins our code start: invoke GetModuleHandle, NULL ; get the instance handle of our program. ; Under Win32, hmodule==hinstance mov hInstance,eax mov hInstance,eax invoke GetCommandLine ; get the command line. You don't have to call this function IF ; your program doesn't process the command line. mov CommandLine,eax invoke WinMain, hInstance,NULL,CommandLine, SW_SHOWDEFAULT ; call the main function invoke ExitProcess, eax ; quit our program. The exit code is returned in eax from WinMain. WinMain proc hInst:HINSTANCE,hPrevInst:HINSTANCE,CmdLine:LPSTR,CmdShow:DWORD LOCAL wc:WNDCLASSEX ; create local variables on stack LOCAL msg:MSG LOCAL hwnd:HWND mov wc.cbSize,SIZEOF WNDCLASSEX ; fill values in members of wc mov wc.style, CS_HREDRAW or CS_VREDRAW mov wc.lpfnWndProc, OFFSET WndProc mov wc.cbClsExtra,NULL mov wc.cbWndExtra,NULL push hInstance pop wc.hInstance mov wc.hbrBackground,COLOR_WINDOW+1 mov wc.lpszMenuName,NULL mov wc.lpszClassName,OFFSET ClassName invoke LoadIcon,NULL,IDI_APPLICATION mov wc.hIcon,eax mov wc.hIconSm,eax invoke LoadCursor,NULL,IDC_ARROW mov wc.hCursor,eax invoke RegisterClassEx, addr wc ; register our window class invoke CreateWindowEx,NULL,\ ADDR ClassName,\ ADDR AppName,\ WS_OVERLAPPEDWINDOW,\ CW_USEDEFAULT,\ CW_USEDEFAULT,\ CW_USEDEFAULT,\ CW_USEDEFAULT,\ NULL,\ NULL,\ hInst,\ NULL mov hwnd,eax invoke ShowWindow, hwnd,CmdShow ; display our window on desktop invoke UpdateWindow, hwnd ; refresh the client area .WHILE TRUE ; Enter message loop invoke GetMessage, ADDR msg,NULL,0,0 .BREAK .IF (!eax) invoke TranslateMessage, ADDR msg invoke DispatchMessage, ADDR msg .ENDW mov eax,msg.wParam ; return exit code in eax ret WinMain endp WndProc proc hWnd:HWND, uMsg:UINT, wParam:WPARAM, lParam:LPARAM .IF uMsg==WM_DESTROY ; if the user closes our window invoke PostQuitMessage,NULL ; quit our application .ELSE invoke DefWindowProc,hWnd,uMsg,wParam,lParam ; Default message processing ret .ENDIF xor eax,eax ret WndProc endp end start |
14.11.2009, 17:54 | #56 | |
Veteran
|
Re: How to... C#
Kod:
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ConsoleApplication1 { class Program { static void Main(string[] args) { switch (integerA) { case 1: Console.WriteLine("integerA =1"); break; case 2: Console.WriteLine("integerA =2"); break; case 3: Console.WriteLine("integerA =3"); break; default: Console.WriteLine("integerA is not 1,2, or 3"); break; } } } } Izbacuje: Citat:
|
|
14.11.2009, 18:25 | #57 | |
Deo inventara foruma
Član od: 14.3.2008.
Lokacija: EHCPCGG
Poruke: 12.111
Zahvalnice: 4.319
Zahvaljeno 3.295 puta na 2.274 poruka
|
Re: How to... C#
Citat:
|
|
14.11.2009, 18:32 | #58 | |
Veteran
Član od: 4.7.2008.
Lokacija: Somewhere along the line
Poruke: 505
Zahvalnice: 85
Zahvaljeno 34 puta na 29 poruka
|
Re: How to... C#
Citat:
Nije ti ovo game maker , moras pre koriscenja prvo da napravis varijablu P.S. Kakva crna "tipografska greska" |
|
14.11.2009, 18:44 | #59 |
Deo inventara foruma
Član od: 5.12.2005.
Poruke: 6.785
Zahvalnice: 348
Zahvaljeno 1.893 puta na 1.078 poruka
|
Re: How to... C#
Greška baš lepo opisuje u čemu je problem u tvom kodu (još jedna lepa prednost Visual okruženja gde nema kriptičnih tekstova koji više odmažu nego pomažu ) Naime, na mestu gde pokušavaš da svoj kod granaš (switch linija) promenjljiva integerA jednostavno ne postoji i to real time debugger odmah prijavljuje. Dakle ti ni na jednom mestu ne koristiš vrednost koja je uneta preko komandne linije već naprosto koristiš neku integerA promenjljivu koja nije nigde definisana Možda je u pitanju greška pa si omašio neku liniju u tom delu koja sadrži deklaraciju i definiciju te promenjljive ali evo ti kako bi kod trebao otprilike da glasi.
Kod:
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ConsoleApplication1 { class Program { static void Main(string[] args) { foreach (string arg in args) { switch (arg) { case "1": Console.WriteLine("integerA =1"); break; case "2": Console.WriteLine("integerA =2"); break; case "3": Console.WriteLine("integerA =3"); break; default: Console.WriteLine("integerA is not 1,2, or 3"); break; } } } } } Definisao sam novu promenjljivu u foreach petlji arg koja u svakoj petlji nosi vrednost po jednog argumenta sa komandne linije. Bitno je da se ta vrednost odmah pri deklaraciji postavi da bude string jer je mnogo bolje ulazne podatke tretirati kao stringove nego kao brojeve i time izbeći potencijalne probleme. Zato umesto čistih brojeva kod case treba da dodaš navodnike oko njih jer treba da upoređuješ stingove a upoređivanje brojeva i stringova bez prethodnog kastovanja nije dozvoljeno. Moglo je ovo da se reši i na druge načine i to čak i direktnim pristupom prvoj promenjljivoj (argumentu) ali ovco je sigurniji način. Uf... Nadam se da si shvatio šta sam istrabunjao gore |
Sledeći korisnik se zahvaljuje korisniku holodoc na korisnoj poruci: | ||
Ivan-94 (14.11.2009) |
14.11.2009, 18:54 | #60 |
V.I.P. Programiranje
Član od: 9.1.2009.
Lokacija: Beograd, Banovo Brdo
Poruke: 1.157
Zahvalnice: 83
Zahvaljeno 448 puta na 303 poruka
|
Re: How to... C#
kao sto boshkodj rece, ne mozes koristiti varijablu koja pre toga nije deklarisana i inicijalizovana/podesena.
pogledaj malo bolje primer u knjizi, negde sigurno stoji int integerA = <broj>; //deklarisanje i inicijalizovanje u istoj liniji ili int integerA; // deklarisanje ... integerA = <broj>; // dodeljivanje vrednosti ako varijablu deklarises, a ne dodelis joj vrednost pre nego sto pokusas negde da je upotrebis, takodje ces dobiti gresku. |
Bookmarks sajtovi |
Tagovi |
c sharp, c# tutoriali, how to, visual studio |
|
|