Į pradžią > programavimas > C# nori būti panašus į Php :D

C# nori būti panašus į Php :D

Taigi, mano MS Visual Studio naujausias Heading’as “Get ready for C# 4.0″. Tai aš ir atsidarau. O atsidaręs matau… :D … matau, kad C# dar improvement’us, kuris Php turi seniausias.

Taigi didžioji C# naujiena ‘dynamic‘ keyword’as, kurio paskirtis nusakyta šia eilute:

“Now you can create dynamic objects and let their types be determined at run time.”

T.y., kad nebereikės aprašinėt kintamųjų tipo, o jų tipas bus nustatytas kompilavimo metu.

Pavyzdys kodo(C#):

dynamic info = new ExpandoObject();
info.a = "Noriu";
info.b = 10;
info.c = 'k';
info.d = 'a';
info.e = 'i';
info.viskaMoku = true;

Pavyzdys kodo Php:
<?php
$a = "Noriu";
$b = 10;
$c = 'k';
$d = 'a';
$e = 'i';
$viska_moku = true;
?>

————-

Antrasis dalykas, apie kurį aš svajojau 100 metų nors vienoje kitoje kalboje. Ir ‘at last’, MS atėjo į protą – tai galimybė deklaruoti default parametrų reikšmes, t.y. tai ką Php turi jau aibę metų:

Kodo pavyzdys(C#):
public static void masina(int ratuSkaicius = 4, bool galiVaziuoti=true) { }
Kvietimai:
autoparkas.masina();
autoparkas.masina(3);

Kodo pavyzdys(PHP):
static function masina($ratu_skaicius = 4, $gali_vaziuoti=true) { }
Kvietimai:
$autoparkas::masina();
$autoparkas::masina(3);

—————–

Manau niekam nebekyla minčių atsakinėjant į klausimą – “What is the best programming language” bei ‘kas nuo ko rippina’ :D .
Beje, galbūt yra nežinojusių, tai pasakysiu - ”pats C# kompiliatorius parašytas su C++”.
Ko man dar trūksta C# kalboje:
1.Neapibrėžiamų tipų metodų, t.y. kad kompiliavimo metu būtų nustatomas koks yra gražinamo atsakymo iš metodo tipas, ir ar išvis jis yra. T.y. tai ką php turi jau 100 metų.
2.By default integruotų labai puikių Php funkcijų, pvz. in_array(), dechex(), hexdec(),decoct(),octdec(). Dabar esu pasidaręs atskirą libą C#, kad šitas dauguma php funkcijų veiktų, bet toks dalykas turėtų būti integruotas C# kalboje pagal nutylėjimą.
3.Build-in variable’ų, t.y. tai ką turi Php:
$petras = “abc“;
$petras_55 = “def“;
$tomas = ${$petras.”_55};
echo $tomas; // def

4.Php funkcijų – print_r(), var_dump().

Trumpai nupasakokime dabartinę situaciją:

Assembler – mov hujAX,dafigznaetkudaQX;
Pascal - is it (NOT)(STILL)(COULD BE) a programming language???
Java – Am I dead? Oh… it’s just a lagggggggg.
C# – my intention is to be a php.
Php – why the hell I’m so perfect and everybody rips me?
Python – “Get set! Ready! Fire in the hole!”
Logo – Left, Left, Right, Right, Right, Towards, Bump! Ouch! :D

—-

Got it? :D

  1. Bomber
    2010.04.22 22:58 | #1

    PHP is da best, woohoo (rofl) xDDDDDDDD

  2. Julius
    2010.04.25 18:08 | #2

    Na, tokie dalykai yra tikrai ne stebuklai.

    Pirmas dalykas vadinasi dynamic typing ir juo pasižymi dauguma “skriptinimo” kalbų:
    http://en.wikipedia.org/wiki/Type_system#Dynamic_typing
    Antras dalykas yra default/optional argumentai:
    http://en.wikipedia.org/wiki/Default_argument

    ir abiejų dalykų PHP neišrado, nes jie buvo įgyvendinti kitose kalbose daug seniau.

  3. Xamas
    2010.04.25 19:24 | #3

    O kur aš rašiau kad Php tai išrado? Ar rašiau kad tai turi Php jau 100 metų, o C# ne. Kadangi Php itin populiari kalba, ir turi šias funkcijas, tai blogo įrašo pavadinimas manau yra visai logiškas :)

  4. Zinovas
    2010.04.25 22:22 | #4

    Ta proga, kad jau stumiam ant kalbų, šitą visai linksma pasiskaitinėt :) http://en.wikiquote.org/wiki/Rasmus_Lerdorf

  5. Benas
    2010.05.16 14:29 | #5

    Logo – Left, Left, Right, Right, Right, Towards, Bump! Ouch! :D

    Prajuokino! :D

  1. Atsekčių dar nėra.