Autor Zpráva
tretie oko
Profil *
Celkom by ma zaujimalo aky prog. jazyk a frameworky pouzivaju uzivatelia z djpw.cz

Potreboval by som mudru radu ako dalej, mam mensiu dilemu.

Dnes je velmi a dalej viac a viac popularny Ruby on Rails a rozhodujem sa ci sa zacnem ucit php alebo ruby on rails. Nechcem sa ucit obidva, jeden a poriadne.

Problem je v tom ze vsetky CMS aj webove projekty su skoro napisane v PHP a pod. Pre PHP je tiez ovela lapsia dokumentacia a vacsia komunita.

Tiez pouzivam CMS Joomla pre moje projekty a teraz ked sa zacnem ucit RoR, tak to v Joomle vobec nevyuzijem.

Na druhu stranu RoR sa mi velmi paci, ma super syntax a je jednoduchy.

Tak otazka znie, ako ste na tom vy, ktore technologie pouzivate a preco?

Tiez by ma zaujimalo aky js framework pouzivate a pod.

Diky za rady.

ps. diakritiku nemam rad.

Moderátor Petr ZZZ: Piš prosím s diakritikou, čtenáři ji mají rádi a je jich víc než tebe.
__construct
Profil
tretie oko:
Pletieš si pojmy a dojmy - Ruby on Rails nie je programovací jazyk ale MVC framework - programovací jazyk je Ruby.

Na druhu stranu RoR sa mi velmi paci, ma super syntax a je jednoduchy.
To si ideš vyberať jazyk podľa syntaxe? A kde si zobral, že je jednoduchy? Pozri si tento článok a urob si obraz sám - to čo tvrdíš si niekde čítal, alebo Ti to povedal nejaký kamarát v škole.

ps. diakritiku nemam rad.
My tu zase nemáme radi tých čo porušujú pravidlá
Anonymní
Profil *
__construct:
Pozri si tento článok a urob si obraz sám
Rozhodovat se na základě jednoho subjektivního článku na blogu?
Už ten úvod "Ruby je špatný jazyk. Navádí programátory k špinavým technikám" ... pokud je programátor prase, bude psát špatně jak v PHP, tak Ruby.
__construct
Profil
Anonymní:
Rozhodovat se na základě jednoho subjektivního článku na blogu?
Ja som mu nepovedal aby sa rozhodol na základe toho článku, ale aby si vytvoril obraz, aby mal aspoň približnú predstavu ako „pekný“ jazyk to je.

pokud je programátor prase, bude psát špatně jak v PHP, tak Ruby
Vidieť že si sa nedostal v tom článku ďalej ako za perex :-)

Edit:
tretie oko: Aby si netvrdil, že som neodpovedal - ako „server-side“ používam PHP a čo sa týka JS frameworkov, tak som dosť často používal jQuery. Teraz ho používam už len keď je to nutné.
imploder
Profil
__construct:
Z toho článku plyne jediné poučení: nepřepisovat už existující metody základních tříd. Ruby to umožňuje, ale je špatné to dělat. Totéž javascript umožňuje dělat s prototypy, taky je špatný nápad to v něm využívat. Víš, kolik špatného toho umožňuje PHP? :-)

Zajímalo by mě ale, jak přepsání už existující metody zabránit (člověk to může udělat omylem). Existuje na to v JS nebo v Ruby nějaká konfigurační volba nebo tak něco, co by to ohlídalo?

P.S.: Vlastně ne jen existující metody, základní třídy by se neměly vůbec přepisovat. Protože jinak by si tu samou třídu mohl každý skript rozšiřit jinak, ale nějakou metodu pojmenovat stejně a kdyby se pak daly dohromady, nastal by konflikt. Takže odpověď je jednoduchá: mít vlastní třídy, do společných nehrabat. Je to stejné, jako s používáním globálních proměnných: jazyky to umožňují, ale je to špatné.
Anonymní
Profil *
__construct:
Vidieť že si sa nedostal v tom článku ďalej ako za perex :-)
Článek jsem přečetl celý. To, že můžeš předeklarovat nějakou built-in metodu se mi také nelíbí. Ale hned tvrdit, že je Ruby špatný jazyk? To nee :)
tretie oko
Profil *
__construct:
Pletieš si pojmy a dojmy - Ruby on Rails nie je programovací jazyk ale MVC framework - programovací jazyk je Ruby.
kde som napisal ze ruby on rails je prog. jazyk?

To si ideš (…) v škole.
To si ideš vyberať jazyk podľa syntaxe? A kde si zobral, že je jednoduchy? Pozri si tento článok a urob si obraz sám - to čo tvrdíš si niekde čítal, alebo Ti to povedal nejaký kamarát v škole
ano aj, nechapen tvoj postoj k teme. Jednoducho polozena otazka ale odpovede ziadne, len provokacie.

Tu sa clovek asi odpovede nedocka len buzeracie.

Moderátor Petr ZZZ:
Tvůj projev je špatně srozumitelný, piš prosím s diakritikou.
Tučné písmo není určené na citace. Citovat je vhodné označením příslušného textu a kliknutím na "Citovat".
Anonymní
Profil *
pokud se rozhoduješ mezi nějakým PHP frameworkem a Railsama, není nic jednoduššího, než si v obou zkusit napsat nějakou "ukázkovou" aplikaci.
Pro rails je i český tutorial.
A nebo anglický tutorial, se screencasty (hodně dobrý a zábavný).

U PHP frameworku bych se poohlídl asi po českým Nette, kde je velká česká komunita a dokážou poradit ...
Chamurappi
Profil
Reaguji na tretie oko:
Co pouzivate? Ruby, PHP
C#.

jQuery alebo mootools?
jQuery, nebo, MooTools, nebo Prototype, podle toho, co už má zákazník ve stránce. Pokud nemá žádný framework, tak žádný framework (jen vlastní sadu funkcí).

ps. diakritiku nemam rad.
TomášK
Profil
imploder:
Ano, v Ruby je možné se přepisování bránit, viz http://scie.nti.st/2008/9/17/making-methods-immutable-in-ruby. Ten, kdo metodu přepisuje, může zjistit, zda už není definovaná. Ten, jehož metoda je přepisována, může zavolat hook při přidání nové metody do objektu a ověřit, že se ho neznaží přepsat a patřičně zareagovat (výjimkou, nebo se jen nenechat přepsat).
imploder
Profil
TomášK:
Díky. Podle mě je celkově špatný nápad i jenom přidávat do základních tříd vlastní metody, protože jsou sdílené se všemi ostatními knihovnami - prostě je to jako definovat globální funkce, a to je špatné (teda v jazycích jako C to jinak nejde, ale tam taky kvůli tomu by měly názvy knihovních funkcí začínat prefixem knihovny; v OOP už by se to dělat nemělo). Viz "P.S." v mojem příspěvku.
TomášK
Profil
imploder:
Určitě je potřeba to používat opatrně, ale má to i rozumná použití. Používám např. metodu 'stubs', která rozšiřuje objekt. Díky tomu, že je definovaná na objektu ji můžu zavolat na čemkoliv. Příklad:
person.stubs(:name).returns("")
assert(not person.valid?)

Tyto dva řádky mají testovat, že osoba, která nemá nemá vyplněné jméno, není validní. Stubs mi zajistí, že volání metody name na person vrátí vždy prázdný řetězec. person.name = "" v testu nechci (třeba je to udělané tak, že to vyhodí výjimku). Zatím jsem s tímto chováním Ruby nikdy neměl problém, ale až někdy narazím, budu asi nadávat hodně nahlas.

P.S. Právě jsem zjistil, že v RoR má Array metodu forty_two, která vrací 42. prvek pole. Což je příklad, že ne každé použití je smysluplné.
tretie oko
Profil *
Chamurappi:
preco c#? Nieje to trocha nezvycajne?

Ostatny: Odpovedajte na otazky, diky.

Aky prog. jazyk a framework pouzivate a preco.
shaggy
Profil
tretie oko:
preco c#? Nieje to trocha nezvycajne?
Neviem, či robí Chamurappi aj desktopové aplikácie, ale robiť stránky v asp.net nie je v dnešnej dobe vôbec nezvyčajné.

Ale odpoveď na tvoju otázku - robím v php a podobne ako Chamurappi v asp.net.
Z frameworkov používam jQuery, niekedy ak je na stránke prototype alebo Dojo, tak používam tie.
Chamurappi
Profil
Reaguji na implodera:
Podle mě je celkově špatný nápad i jenom přidávat do základních tříd vlastní metody, protože jsou sdílené se všemi ostatními knihovnami
Zrovna tohle je v C# vymyšlené tak, že potenciálně konfliktní sdílení vlastních rozšířujících metod není nutné.


Reaguji na tretie oko:
preco c#?
Vyhovuje mi jeho syntaxe i zvyklosti a struktura .NET Frameworku.

Nieje to trocha nezvycajne?
No vidíš, to jsem si neuvědomil. Tak já ho zase zapomenu :-)

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0