08.01.2015 Views

PDF - Xakep Online

PDF - Xakep Online

PDF - Xakep Online

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

C vs Delphi<br />

Íàòóðàëüíûé Mortal Combat ñðåäè êîäåðîâ<br />

Horrific (smirnandr@mail.ru) TanaT (tanat@yes.ru)<br />

Óæå äîëãîå âðåìÿ èäåò áîðüáà ìåæäó äâóìÿ êëàíàìè Ñ/Ñ++ è Delphi. Êàæäûé èç íèõ<br />

ïûòàåòñÿ äîêàçàòü, ÷òî åãî ÿçûê êîäèíãà ëó÷øå è ÷òî âñå äîëæíû êîäèòü èìåííî<br />

íà íåì. Ñåãîäíÿ ìû ðåøèëè ïðîâåñòè ýêñïåðèìåíò è ïîñàäèòü íàïðîòèâ äðóã äðóãà ïî<br />

îäíîìó ïðåäñòàâèòåëþ èç êàæäîãî êëàíà è óñòðîèòü áèòâó òèòàíîâ. Èòàê, êëàí<br />

Ñ/Ñ++ çàùèùàåò TanaT. Êëàí Delphi çàùèùàåò Horrific.<br />

Ïðàâèëà áîÿ ñëåäóþùèå:<br />

1. Áèòâà ïðîèñõîäèò äî ïåðâîé ïóùåííîé êàïëè êðîâè.<br />

2. Õîëîäíîå îðóæèå â õîä íå ïóñêàòü.<br />

Çóáû è ïîëîâûå îðãàíû õîëîäíûì îðóæèåì íå ñ÷èòàþòñÿ.<br />

3. Ñçàäè è íèæå ïîÿñà íå áèòü, îñîáåííî ïîëîâûìè îðãàíàìè.<br />

4. Îáñóæäàòü òîëüêî Ñè è Delphi.<br />

Ãàëëþöèíàöèè ó÷àñòíèêîâ áîÿ â áèòâå íå ó÷àñòâóþò.<br />

5. Ïîêåìîíîâ íå ïðèìåíÿòü.<br />

Áîé èäåò òîëüêî ñîáñòâåííûìè ñèëàìè.<br />

Èòàê...<br />

Ëåäè-è-è è äæåíòëüìåíû! Ñåãîäíÿ... Íà àðåíå ][...<br />

Ñîñòîèòñÿ áèòâà òèòàíîâ êîäèíãà.<br />

 ïðàâîì óãëó â êðàñíûõ òðóñàõ: çàñëóæåííûé ìàñòåð ñïîðòà ïî õóäîæåñòâåííîìó<br />

êîäèíãó ïðîãðàììû «Hello World», òðèæäû ÷åìïèîí ìèðà ïî âåðñèè ÕÇ...<br />

Âåëèêîëåïíûé TanaT!!!<br />

 ëåâîì óãëó â áåëûõ ðåéòóçàõ ñ ìèøêàìè è òåëåïóçèêàìè: çàñëóæåííûé ìàñòåð<br />

ñïîðòà ïî ñêîðîñòíîìó èñïðàâëåíèþ ñîáñòâåííûõ áàãîâ, ÷åìïèîí âñåëåííîé<br />

ïî âåðñèè Õ, øàìàí è ïðåäâîäèòåëü ñåêòû «VR-<strong>Online</strong>»... Ìèñòåð<br />

Horrific!!!<br />

Áîéöû, âûéäèòå íà öåíòð ðèíãà è ïîêàæèòå äðóã äðóãó ÿçûê. ÔÀÑ!!!<br />

ÐÀÓÍÄ ÏÅÐÂÛÉ<br />

TanaT: ßçûê Ñè ÿâëÿåòñÿ ñòàíäàðòîì, ïîýòîìó îí ñóùåñòâóåò ïðàêòè÷åñêè<br />

âî âñåõ ÎÑ, à Delphi òîëüêî äëÿ Windows è Linux, è òî Linux ïîääåðæèâàåòñÿ<br />

òîëüêî ïîñëåäíèìè âåðñèÿìè. Ñòàðûå ÎÑ ïðîñòî ïîçàáûòû è ïîçàáðîøåíû<br />

(ïðîñòóïàþò êàïëè ñëåç íà ãëàçàõ :)).<br />

HORRIFIC: Íè÷åãî, âñå åùå âïåðåäè. Delphi - áûñòðî ðàçâèâàþùèéñÿ<br />

ÿçûê, è êîãäà îí ïîëó÷èò äîëæíóþ ðàñïðîñòðàíåííîñòü, åãî âàðèàíòû áóäóò<br />

íà âñåõ ÎÑ.<br />

TanaT: Áëàãîäàðÿ ñòàíäàðòèçàöèè Ñè êàæäûé, êòî çàõî÷åò ñîçäàòü ñâîé<br />

êîìïèëÿòîð, îáÿçàí êàê ìèíèìóì ïðèäåðæèâàòüñÿ óñòàíîâëåííûõ íîðì. À âîò<br />

ñ Delphi êàæäûé ìîæåò äåëàòü âñå ÷òî çàõî÷åò.<br />

HORRIFIC: Ñòàíäàðò - ýòî êðóòî. À òû íå äóìàë, ÷òî ÿçûêè ïðîãðàììèðîâàíèÿ<br />

ðàçâèâàþòñÿ ñëèøêîì áûñòðî, è â íèõ ïîñòîÿííî ÷òî-òî ìåíÿåòñÿ.<br />

Ïðîèçâîäèòåëÿì êîìïèëÿòîðîâ Ñè ïðèõîäèòñÿ òàùèòü çà ñîáîé âîðîõ ñòàðüÿ,<br />

êîòîðîå ñòàíäàðòèçèðîâàíî åùå â 70-å ãîäû, à â Delphi ïðîñòî îáðóáèëè âñå<br />

ýòî äåëî è ñîçäàëè íîâûé ÿçûê, îòäàëåííî ïîõîæèé íà Pascal. Òî÷íî òàê æå<br />

äÿäÿ Áîðìàí ïîñòóïèë è ñ<br />

C++ Builder, êîòîðûé îáëàäàåò<br />

òîé æå âèçóàëüíîñòüþ<br />

è ìîùüþ, ÷òî è Delphi,<br />

íî â áîëüøèíñòâå ñâîåì<br />

íàðóøàåò ñòàíäàðò íà ÿçûê<br />

Ñè. Áëàãîäàðÿ îòêàçó îò<br />

ñòàíäàðòà êîìïèëÿòîðû îò<br />

äÿäè Áîðìàíà ñìîãëè ïîëó÷èòü<br />

ñâîþ ïîëíóþ âèçóàëüíîñòü<br />

è ïðè ýòîì óäîáñòâî<br />

ðàçðàáîòêè.<br />

Ãîëûé Delphi<br />

TanaT: Çíàþ ÿ âàøó<br />

âèçóàëüíîñòü!!! Ñèäèøü<br />

êàê ïîëíûé ëàì è ðàññòàâëÿåøü ïèìïî÷êè ïî ôîðìàì!!! À ãäå æå ñàì ïðîöåññ<br />

êîäèíãà Ðàññòàâëÿòü ôèãóðêè ìîæíî íàó÷èòü è îáåçüÿíó, à âîò êîäèòü êàê íàñòîÿùèé<br />

ìóæèê äàíî íå êàæäîìó.<br />

HORRIFIC: Òû ÷å ìåíÿ çà ëàìåðà ïèíãóåøü :) Åñëè òàêîé êðóòîé, òî ïèøè<br />

íà àññåìáëåðå èëè ëó÷øå â ìàøèííûõ êîäàõ. Âîò òóò òåáå áóäåò ïðîöåññ<br />

êîäèíãà è ñîåäèíåíèå ñ êîñìîñîì â îäíîì ôëàêîíå :). Òîëüêî íå çàáóäü ïèâîì<br />

çàïàñòèñü íà áëèæàéøóþ<br />

ïÿòèëåòêó, ïîòîìó ÷òî<br />

äàæå ïðîñòåéøóþ óòèëó<br />

íàïèñàòü â ìàøèííûõ êîäàõ<br />

- ýòî òåáå íå êðàñîòêó<br />

÷ìîêíóòü :).  Delphi òîæå<br />

åñòü êîäèíã. Âèçóàëüíî òû<br />

ñîçäàåøü òîëüêî èíòåðôåéñ<br />

áóäóùåé ïðîãè, à<br />

âñþ ëîãèêó è âû÷èñëåíèÿ<br />

ïðèõîäèòñÿ âûáèâàòü íà<br />

êëàâå ðó÷êàìè. Âîò ÿ êàê<br />

Ïðîöåññ êîäèíãà â MS Visual C++ ðàç òàêè è çàíèìàþñü êîäèíãîì,<br />

íå òðàòÿ âðåìåíè<br />

íà ñîçäàíèå âèçóàëüíîãî èíòåðôåéñà. À òû çàíèìàåøüñÿ ãåìîððîåì.<br />

TanaT: Òû äàâíî ó çóáíîãî áûë<br />

HORRIFIC: Äà ÿ êàê-òî íà çóáû íå æàëóþñü.<br />

TanaT: Ñåé÷àñ ïîæàëóåøüñÿ :)!!! Âîçüìåì, íàïðèìåð, Visual C++. Ó íåãî<br />

åñòü äîñòàòî÷íî óäîáíûå ìàñòåðà, êîòîðûå ìîãóò ñîçäàòü òåáå øàáëîíû<br />

áóäóùèõ ïðîã. Òû ïðîñòî âûáèðàåøü, ÷òî òåáå íàäî, è Visual C++ áåç ïðîáëåì<br />

ãåíåðèðóåò òåáå íóæíûé êîä. Ïîñëå ýòîãî òû òîëüêî äîáàâëÿåøü òî, ÷òî<br />

íóæíî, è ïðîãà ãîòîâà.<br />

HORRIFIC: Çíàþ ÿ òâîèõ ìàñòåðîâ. Òîëüêî è óñïåâàåøü êëèêàòü äàëüøå,<br />

äàëüøå, äàëüøå, à â èòîãå ãëóïåéøåå îêíî. È âñå ðàâíî âñå íåîáõîäèìûå<br />

ýëåìåíòû óïðàâëåíèÿ ïðèõîäèòñÿ ñîçäàâàòü âðó÷íóþ.<br />

TanaT: À òû íè ðàçó<br />

íå ñëûøàë ïðî ðåäàêòîðû<br />

ðåñóðñîâ Èëè òû ñ äåòñòâà<br />

ãëóõîé íà îáà óõà :) Â<br />

Visual C++ ëþáîå äèàëîãîâîå<br />

îêíî ìîæíî ñîçäàòü,<br />

âèçóàëüíî ðàññòàâëÿÿ<br />

âñå íåîáõîäèìûå ýëåìåíòû<br />

óïðàâëåíèÿ!!!<br />

HORRIFIC: Íó-íó. ß<br />

òàêóþ âèçóàëüíîñòü ïðîõîäèë<br />

â ïåðâîì êëàññå. Â MS VC++ òîæå íå ëèøåí âèçóàëüíîñòè!<br />

Visual C++ ïðè âèçóàëüíîì<br />

ïðîåêòèðîâàíèè äèàëîãîâ òû ìîæåøü èñïîëüçîâàòü òîëüêî ÷óòü áîëüøå<br />

äåñÿòêà ñòàíäàðòíûõ êîìïîíåíòîâ. Âñå îñòàëüíîå - ýòî áóäóò OCX êîìïîíåíòû,<br />

êîòîðûå òðåáóþò ðåãèñòðàöèè â ñèñòåìå, à ýòî òåáå ãðîçèò:<br />

1. Íàñòîÿùèì ãåìîðîì ïðè ïåðåíîñå êîäà íà äðóãóþ ìàøèíó.<br />

2. Ïðèõîäèòñÿ ïèñàòü èíñòàëëÿòîð, êîòîðûé áóäåò óñòàíàâëèâàòü ïðîãó, óñòàíàâëèâàòü<br />

OCX ôàéëû è ðåãèñòðèðîâàòü âñå ýòî.<br />

3. Êîëè÷åñòâî ôàéëîâ óâåëè÷èâàåòñÿ, è óæå íåâîçìîæíî ñîçäàòü ïðîãðàììó<br />

èç îäíîãî ôàéëà.<br />

4. OCX êîìïîíåíòû ìîãóò ïîòðåáîâàòü ó ïîëüçîâàòåëÿ ïåðåçàãðóçêó êîìïà, à<br />

ýòî íå ìíîãèì ïîíðàâèòñÿ.<br />

 Delphi ó òåáÿ âñåãäà ïîä ðóêîé åñòü áîëüøå 30 êîìïîíåíòîâ.  èíåòå ìîæíî<br />

çàòàðèòüñÿ åùå ìèëëèîíîì ðàçëè÷íûõ âàðèàíòîâ. Âñå ýòè êîìïîíåíòû êîìïèëèðóþòñÿ<br />

â êîä ïðîãè è íå òðåáóþò ðåãèñòðàöèè ïðè ïåðåíîñå. Íó à ñàìîå<br />

ãëàâíîå, ÷òî èñõîäíûé êîä ïîëîâèíû ýòèõ êîìïîíåíòîâ äîñòóïåí äëÿ òåáÿ.<br />

TanaT: Íó è ïóñêàé ïðîãà òÿíåò çà ñîáîé âàãîí äîïîëíèòåëüíûõ ôàéëîâ,<br />

çàòî çàïóñêíîé ôàéë ïîëó÷àåòñÿ ìåíüøå. À åñëè ó òåáÿ ðóêè âûðîñëè èç çàäíåãî<br />

ïðîõîäà è òû íå ìîæåøü íàïèñàòü èíñòàëëÿòîð, òî ýòî òâîè ïðîáëåìû,<br />

è Ñè íå âèíîâàò, ÷òî òû ðîäèëñÿ ñ îøèáêîé â êîäå ÄÍÊ :). Ïîïðîáóé ñäàòüñÿ<br />

ó÷åíûì, è ïóñêàé îíè ïîïðîáóþò ðàñøèôðîâàòü òâîþ ÄÍÊ. Èç-çà ãðóáåéøåé<br />

îøèáêè îíè íå ñìîãóò ðàñøèôðîâàòü åå äàæå çà 100 ëåò :).<br />

63

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!