Obecně o programování.....nevím kam to zařadit – .NET – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Obecně o programování.....nevím kam to zařadit – .NET – Fórum – Programujte.comObecně o programování.....nevím kam to zařadit – .NET – Fórum – Programujte.com

 

schimpanze0
Návštěvník
7. 3. 2008   #1
-
0
-

Ahoj.

Chtěl bych se zeptat, jak jste se dostali k programování a jestli máte nějaké rady nebo postřehy jak se začít trochu v programování orientovat. Jakým jazykem začít, jestli bych se v budoucnu chtěl programování více věnovat a jaký je podle vás jazyk nejjednoduší (teď nevím jestli dvě j a š ;) a který nabízí největší možnosti rozvíjení se v něm? Pak bych měl dotaz jestli existuje nějaká programovací jazkyk, který nepotřebuje nainstalovat do PC speciální prostředí, ale stačí k jeho používání pouze normální textový editor.

Předem děkuji za všechny názory a omlouvám se jestli jsem dotaz zařadil do správné diskuze (ale já opravdu nevěděl kam :)!

Nahlásit jako SPAM
IP: 194.108.206.–
Nejlepší způsob jak se připravit na budoucnost je, vymyslet si jí.
Tocimanko0
Grafoman
7. 3. 2008   #2
-
0
-

Závisí od toho, na aký druh aplikácií sa chceš zamerať. Webové, desktopové.... ? Ja momentálne programujem v PHP a začínal som na Atari Basic, neskôr Visual Basic 4,5,6 a potom .NET. Trošku sa učím C# ale neviem. Možno ostanem pri PHP (+MySQL) :)

Nahlásit jako SPAM
IP: 195.91.54.–
schimpanze0
Návštěvník
7. 3. 2008   #3
-
0
-

To Tocimanko : Nedávno (tak 3 měsíce) jsem také začal s PHP, postupně jsem zašal zkoušet i MySQL, které jakš takš ovládám, ale chtěl bych do budoucna se zaměřit na desktopové programy (možná i vývoj her, kdo ví :)

Nahlásit jako SPAM
IP: 194.108.206.–
Nejlepší způsob jak se připravit na budoucnost je, vymyslet si jí.
Tocimanko0
Grafoman
7. 3. 2008   #4
-
0
-

V tom prípade C/C++, C# alebo Java.. To ma z fleku napadlo :) Spýtaj sa na názor skúsenejších ;)

Nahlásit jako SPAM
IP: 195.91.54.–
schimpanze0
Návštěvník
7. 3. 2008   #5
-
0
-

a nevíš jestli jsem tento dotaz zařadil správně? :)

Nahlásit jako SPAM
IP: 194.108.206.–
Nejlepší způsob jak se připravit na budoucnost je, vymyslet si jí.
Chrasty
~ Redaktor
+4
Posthunter
7. 3. 2008   #6
-
0
-

Hlavně lidi ti spíš doporučí to v čem programují oni...proto ti já doporučuju C# :smile1:

V prvních příspěvku jsi se ptal, jestli je jazyk pro který nemusíš instalovat žádné prostředí. Takové je i C#, kde potřebuješ jenom nainstalovaný .NET framework a kompilovat můžeš přes csc.exe :smile3:

Nahlásit jako SPAM
IP: 193.179.196.–
DeaLer+2
Hero
7. 3. 2008   #7
-
0
-

Na tohle se dost těžko odpovídá, každej z nás je jinej - musíš najít vlastní cestu.

BTW: Pokud se tedy rozhodneš pro .NET (teď neberu v potaz zvolenej jazyk), nechám to tady, jinak tu diskuzi přesunu ;) Tak asi ne, chybí tady jakákoliv vhodná obecná diskuze.

Nahlásit jako SPAM
IP: 84.21.124.–
Dušan Janošík | web: djanosik.cz, @djanosik
w3q0
Věrný člen
7. 3. 2008   #8
-
0
-

To schimpanze : Pridávam sa k Chrastymu, najviac mi asi sadol C#. Je to dobrý jazyk. Ak chceš hry, tak jednoznačne C++, ale do úvahy prichádza aj Java, C#. Prirástol mi k srdcu aj Python, ale dovolím si tvrdiť, že v tom veľa dobrých hier nespravíš.

Nahlásit jako SPAM
IP: 88.212.21.–
HTML,CSS,PHP,MySQL, začínam s Objected C 2.0
pin2k
~ Anonymní uživatel
49 příspěvků
7. 3. 2008   #9
-
0
-

To w3q: a divil by ses :). Nedávno jsem viděl screnshoty komerční hry napsané v podání python + pyGame, velmi mi to připomínalo Oblivion, nebo něco takového (pařani prominou), ale jméno si bohužel nepamatuji, hodil bych ti sem link.

shimpanze: já se dostal k programování na základce, kde jsme kdysi vytvářeli různé blbinky v Qbasicu, pak jsem časem přeskočil na Pascal, něco málo jsem udělal i ve Visual Basicu a skončil u C/C++ a Pythonu, u kterých už určitě zůstanu a přesně tak jak psal DeaLer, každý si musí najít vlastní cestu. Také je dobré si ujasnit, pro jakou platformu psát aplikace. Navíc ovládám velmi dobře PHP a MySQL, ale to už jsem pustil k vodě.

Nahlásit jako SPAM
IP: 85.70.183.–
w3q0
Věrný člen
7. 3. 2008   #10
-
0
-

To pin2k : Nepovedal som, že sa to nedá. Ale že je na to proste lepší C++. Popr. hoď link.

Nahlásit jako SPAM
IP: 88.212.21.–
HTML,CSS,PHP,MySQL, začínam s Objected C 2.0
mephi0
Expert
7. 3. 2008   #11
-
0
-

Neprogramuj :D je to namahave, časovo naročne a kym budeš vedieť robiť veci, o ktorých teraz snívaš zostarneš a zmeniš nazor aj na svet. Po čase štúdia sa ti bude zdať, že ti ľudia nerozumejú a o trochu neskôr ti fakt prestanú rozumieť. Po vyriešení zložitých problémov sa niet komu pochváliť pretože ti nikto nerozumie. Proste niečo strašne.

Nahlásit jako SPAM
IP: 85.248.56.–
Program nemusi fungovat rychle, staci ze funguje dostatecne rychle.
w3q0
Věrný člen
7. 3. 2008   #12
-
0
-

To mephi : Zaujímavý názor. A aj s ním súhlasím. Ale aj tak ma od programovania neodradí :P.

Nahlásit jako SPAM
IP: 88.212.21.–
HTML,CSS,PHP,MySQL, začínam s Objected C 2.0
DeaLer+2
Hero
7. 3. 2008   #13
-
0
-

To mephi : Aneb krutá realita v několika větách ... moc pěkný.

Nahlásit jako SPAM
IP: 84.21.124.–
Dušan Janošík | web: djanosik.cz, @djanosik
F_Lupus0
Newbie
8. 3. 2008   #14
-
0
-

To mephi : některým lidem nikdo nerozumí a proto se z nich stanou programátoři :) a pak jim rozumí alespoň ostatní programátoři... no teda někdy... :D

Nahlásit jako SPAM
IP: 85.160.25.–
-SnakyWolf-
Tomcat0
Newbie
8. 3. 2008   #15
-
0
-

Ja myslim, ze jednou z nejzajimavejsich veci na programovani je, ze kazdy zacatecnik hrozne resi, jaky jazyk se naucit. Plne to chapu, resil jsem to kdysi uplne stejne. A jeste zajimavejsi na tom je, ze casem clovek zjisti, ze to je ve vysledku pomerne druhotna vec a ze pokud clovek najde ten urcity zpusob mysleni, je to uz spise o znalosti knihoven a drobnosti (pokud statecne vyskrtnu funkcionalni jazyky).

Nahlásit jako SPAM
IP: 62.24.93.–
"Nemůžete nikoho nic naučit, můžete mu maximálně pomoci, aby to sám v sobě nalezl. " Galileo Galilei
F_Lupus0
Newbie
8. 3. 2008   #16
-
0
-

To schimpanze : třeba k pokusům s javascriptem ti stačí notepad a nějaký browser :) nebo na nějaký to macro ve visual basicu v excelu taky nepotřebuješ speciální prostředí instalovat tedy pokud máš MS excel... ale jestli se chceš programování věnovat víc speciálnímu prostředí se nevyhneš.
Jinak se hodí seriály typu "programujeme v ..." klidně si jich projdi víc a uvidíš co se ti bude líbit... orientovat se budeš jedině tak že se budeš zajímat, zkoušet, číst... pro začátek najdeš něco česky, ale později se neobejdeš bez angličtiny. Hodně štěstí :)
A nesmím zapomenout... rozhodně vyzkoušej C# ;)

Nahlásit jako SPAM
IP: 85.160.25.–
-SnakyWolf-
F_Lupus0
Newbie
8. 3. 2008   #17
-
0
-

To Tomcat : souhlasím v podstatě jde nakonec jen o soubor proměnných, podmínek a cyklů ;)
btw: já jsem na začátku jazyk neřešila... brala jsem co bylo dostupný :) jde prostě o to začít... změnit rozhodnutí můžete přece vždycky, nejde o život :)

Nahlásit jako SPAM
IP: 85.160.25.–
-SnakyWolf-
Santas0
Věrný člen
8. 3. 2008   #18
-
0
-

no podla mna striedanie jazykov nikoho neminie
zacal som Pascalom (3.trieda ZS) -> pauza -> c++(minimalne zaklady) -> potom som sa dostal k PHP (tomu som sa zacal viac venovat) -> c# (ten sa mi velmi paci) -> c (po prestupe na novu skolu)

Nahlásit jako SPAM
IP: 195.91.64.–
http://psandtner.sk/blog
Tase0
Stálý člen
8. 3. 2008   #19
-
0
-

lol tak mě na tom velice inspirovalo to že to je přeci pěkný pocit když napíšeš program a on běží jako hodinky a dělá co chceš.Někdy se ti třeba něco nepovede, ale to neznamená abys toho nechal, protože hodně lidí s programováním seklo, protože se jim něco nepovedlo.Chce to velkou trpělivost.Já osobně doporučuji Python který se můžeš naučit tady na webu.Já jsem s ním také začínal.
jeho kod na první program je velmi primitivní a sám usoudíž že pro začátečníka ja to velmi jednoduché:

print "Ahoj svete"

Nahlásit jako SPAM
IP: 85.70.210.–
HTML, Python, Visual Basic.NET, PHP, CSS, C, C#.
Jazyky jso sestaveny podle toho jak jsem se je učil.
schimpanze0
Návštěvník
8. 3. 2008   #20
-
0
-

Když vezmu své základy PHP (a MySQL :), tak by to pro rozjezd mohlo stačit ne? A jak si to tady pročítam, myslím že asi pokusím štěstí s Pythonem.

Nahlásit jako SPAM
IP: 194.108.206.–
Nejlepší způsob jak se připravit na budoucnost je, vymyslet si jí.
Architekt0
Super člen
9. 3. 2008   #21
-
0
-

schimpanze: Začni s Pythonem, je jednoduchý (né co se týče možností a výkonu, ale co se týče zápisu zdrojového kódu), intuitivní a naučíš se psát pěkně čitelný kód. Můžeš v něm psát webové i desktopové aplikace a bohatě ti vystačí i na hry, které zvládneš naprogramovat sám. A že se v něm dají naprogramovat i hodně náročný hry dokazuje např. EVE Online. Časem až přijdeš na to, že programování je o způsobu myšlení a né o jazyku, klidně rozšiř své znalosti o C++, Javu, C#, nebo cokoliv jiného. Ale přijdeš na to, že ti tyhle jazyky stejně nenabízí nic moc navíc, naopak ti jejich kód bude připadat zbytečně složitý hůře čitelný (a taky že je :-) ).

Nahlásit jako SPAM
IP: 213.192.22.–
Python + Django + PostgeSQL = spokojený vývojář :-)
Santas0
Věrný člen
9. 3. 2008   #22
-
0
-

nvm, ale mne sa osobne python nepaci, pretoze:
ak viem napr. PHP, viem citat c, c++, c# a vsetky podobne jazyky
no ked sa pozeram na Python tak ho trochu musim rozlustovat

Nahlásit jako SPAM
IP: 195.91.64.–
http://psandtner.sk/blog
w3q0
Věrný člen
9. 3. 2008   #23
-
0
-

Santas napsal:
nvm, ale mne sa osobne python nepaci, pretoze:
ak viem napr. PHP, viem citat c, c++, c# a vsetky podobne jazyky
no ked sa pozeram na Python tak ho trochu musim rozlustovat

Je pravda že python ma úplne inú syntax ako napr. C#. Ja osobne mám python rád, aj keď už v ňom nerobím. Ale rozmýšľam že sa k nemu vrátim. PyGame to istí :D.

EDIT: Mne sa napríklad nepáči VB(flame :P ). Podľa mňa má v sebe veľa angličtiny. Napríklad sa mi nepáči
Class Ukaz

//Niejaký kód
End Class


Viac mi vyhovuje:
Class Ukaz

{
//Niejaký kód
}
. Toť vše :P.

Nahlásit jako SPAM
IP: 88.212.21.–
HTML,CSS,PHP,MySQL, začínam s Objected C 2.0
Santas0
Věrný člen
9. 3. 2008   #24
-
0
-

ale prave v Pythone nemas {}

Nahlásit jako SPAM
IP: 195.91.64.–
http://psandtner.sk/blog
Blujacker
~ Moderátor
0
Grafoman
9. 3. 2008   #25
-
0
-

To Santas :
Jo, v pythonu je odsazení, čímž se spousta prasáren eliminuje:



class ukaz:
def __init__(self):
print "Ahoj Svet"
ukaz()

Nahlásit jako SPAM
IP: 213.220.226.–
Navštivte server Matematika pro každého
Najdete zde články zabývající se matematikou základních a středních škol a databázi hlavolamů.
Pro vyzkoušení Vaš
Chrasty
~ Redaktor
+4
Posthunter
9. 3. 2008   #26
-
0
-

Já když dělával v Pythonu (rok zpátky?), tak mi přišel hrozně přehledný, ale teď dělám C# a nedávno jsem si otevřel nějaký Py kód. Zděsil jsem se a nějakou dobu jsem se musel zorientovávat než jsem se v těch odsazeních vyznal :smile1: Je to celé o zvyku..:)

Nahlásit jako SPAM
IP: 193.179.196.–
Architekt0
Super člen
9. 3. 2008   #27
-
0
-

Používat správné odsazení v kódu je zásada každého slušného programátora. A když se správně odsazuje, aby byl kód pěkně čitelný, jsou ty složené závorky zbytečné (stejně jako středníky na konci řádku, apod.), čož si uvědomil Guido van Rossum a navrhnul podle toho Python.

Jen tak pro srovnání PHP:



function Test($a, $b, $reverse = False)
{
if ($reverse)
{
$c = $a;
$a = $b;
$b = $c;
}

if ($a > $b)
{
return $a - $b;
}
else if ($a < $b)
{
return $b - $a;
}
else
{
return False;
}
}

a stejný kód v Pythonu:


def Test(a, b, reverse = None):
if reverse:
a, b = b, a

if a > b:
return a - b
elif a < b:
return b - a
else:
return None


Myslím že výhody zjednodušeného zápisu jsou jasné - rychlejší zápis (= rychlejší vývoj = ušetřené prostředky ...), jednodužší čtení a orientace v kódu a hlavně vždy pěkný kód. Výhoda C-like zápisu je v tom, že se nemusí odsazovat, což bylo zásadní v minulosti kdy se programovalo v C na 80 a méně znakových monitorech, kde se kód musel zalamovat, protože nešlo stránky vertikálně rolovat. Ale dnes už to není potřeba a stejně jako třeba psaní několika příkazů na jeden řádek, a když to někdo udělá (neodsazuje, patlá na jeden řádek víc věcí než tam má být, apod.) je to víc ke škodě než k užitku.

Nahlásit jako SPAM
IP: 213.192.22.–
Python + Django + PostgeSQL = spokojený vývojář :-)
w3q0
Věrný člen
9. 3. 2008   #28
-
0
-

Chrasty napsal:
Já když dělával v Pythonu (rok zpátky?), tak mi přišel hrozně přehledný, ale teď dělám C# a nedávno jsem si otevřel nějaký Py kód. Zděsil jsem se a nějakou dobu jsem se musel zorientovávat než jsem se v těch odsazeních vyznal :smile1: Je to celé o zvyku..:)

Presne ;)

To Santas : Ja viem, ale proste stále tam nieje End Class ;) Proste Python mi viac pripomína programovanie, narozdiel od VB, ktorý mi pripomína lekcie angličtiny. :smile14:

Nahlásit jako SPAM
IP: 88.212.21.–
HTML,CSS,PHP,MySQL, začínam s Objected C 2.0
DeaLer+2
Hero
9. 3. 2008   #29
-
0
-

To Architekt : Já s tebou nemůžu souhlasit. Když srovnám kód v C# a Pythonu, tak nemůžu říct, že by jeden byl víc nebo míň přehlednej, každej má prostě svoje pro a proti. Python jsem nikdy nepoužíval, zdejší články nečtu, ale i tak nemám problém ho číst (to neznamená, že pokaždý vím, o co jde).

Řekl bych tedy, že je to hodně subjektivní a nemůžeš říct "naopak ti jejich kód bude připadat zbytečně složitý hůře čitelný". Resp. říct to můžeš, ale nemusí to bejt pravda.

Nahlásit jako SPAM
IP: 84.21.124.–
Dušan Janošík | web: djanosik.cz, @djanosik
DeaLer+2
Hero
9. 3. 2008   #30
-
0
-

Já nejsem zrovna zastánce více příkazů na jednom řádku, ale jsou sitace, kdy se mi to zdá vhodnější (tam kde to nepůsobí nepřehledně). Naopak závorky mám rád i tam kde nejsou třeba (kód se mi pak zdá přehlednější, asi jde o zvyk). Myslím, že pojmenovávat proměnný jako a, b nebo c na kráse taky moc nepřidá.

private object Test(int a, int b, bool reverse)

{
if (reverse)
{ int c = a; a = b; b = c; }

if (a > b)
return a - b;
else if (a < b)
return b - a;
else
return false;
}


Můžu to napsat ještě na míň a nebo naopak ještě na víc řádků, ale z mého pohledu tím pokaždý něco ztratím (řekl bych, že je to kompromis mezi přehledností a úsporností). Každej si může vybrat jakej styl zápisu zvolí, pro každýho je čitelnější jiná forma.

BTW: Existuje v Pythonu nějaká obdoba Lambda výrazů nebo LINQu? http://www.vyvojar.cz/Articles/562-novinky-v-c-3-0.aspx

Nahlásit jako SPAM
IP: 84.21.124.–
Dušan Janošík | web: djanosik.cz, @djanosik
Architekt0
Super člen
9. 3. 2008   #31
-
0
-

DeaLer: Přesně takový způsob psaní zdrojáků považuji za prasárnu a že ti to jazyk umožní, jako jeho nevýhodu (I když i v Pythonu se dá spousta věcí sprasit, ale naštěstí to moc lidí nedělá :-) ). Ale na druhou stranu kdyby to nešlo, softwarový průmysl by přišel o Kontrolory kvality kódu (s tím jsem se už v praxi setkal, shodou okolností ve firmě, kde se primárně vyvýjí v C#), což by byla velká ztráta!

Lambda tam je. LINQ ani tak není o schopnostech jazyka, jako o schopnostech .NET frameworku. V Pythonu můžeš použít např. SQLAlchemy pro práci s databází fungující podobně jako LINQ.

Nahlásit jako SPAM
IP: 213.192.22.–
Python + Django + PostgeSQL = spokojený vývojář :-)
DeaLer+2
Hero
9. 3. 2008   #32
-
0
-

To Architekt : Vždyť řikám, že syntaxe je spíš věc osobního vkusu. Proč to považuješ za prasárnu, mě se ten kód zrovna nelíbí (napsal jsem ho jen jako příklad úspornýho kódu, v praxi by to bylo jiný), ale proč prasárna?

BTW: LINQ je pouze syntaktickej cukr, s frameworkem nemá co dělat. Po kompilaci do IL je kód stejnej jako kdybys ho nepoužil. Navíc to není jen pro DB.

Nahlásit jako SPAM
IP: 84.21.124.–
Dušan Janošík | web: djanosik.cz, @djanosik
F_Lupus0
Newbie
9. 3. 2008   #33
-
0
-

Architekt napsal:
Myslím že výhody zjednodušeného zápisu jsou jasné - rychlejší zápis (= rychlejší vývoj = ušetřené prostředky ...), jednodužší čtení a orientace v kódu a hlavně vždy pěkný kód.



Rychlost vývoje nezávisí ani tak na tom jak rychle je člověk schopen napsat kód, ale na tom jak je schopný analytik a architekt případně jak schopného analytika/architekta má v týmu.

Každý jazyk má své přednosti nebo nedostatky a jeden znak může být dost dobře předností i nedostatkem zároveň... pokud ovšem v něm píše dost schopný člověk umí přednosti jazyka využít k omezení jeho nedostatků. Hádat se o tom který jazyk je lepší a poznávat to podle toho kolik se v něm píše závorek nebo středníků je fakt blbost.

Nahlásit jako SPAM
IP: 85.160.12.–
-SnakyWolf-
DeaLer+2
Hero
9. 3. 2008   #34
-
0
-

To F_Lupus : Ano, přesně to tím chci říct. Díky.

Nahlásit jako SPAM
IP: 84.21.124.–
Dušan Janošík | web: djanosik.cz, @djanosik
Architekt0
Super člen
9. 3. 2008   #35
-
0
-

DeaLer: Je to prasárna, protože kombinování různých zápisů bloků kódu a psaní více příkazů na jeden řádek dělá v kódu úplně zbytečný zmatek. Při čtení tě to jenom ztěžuje, protože tvůj vnitřní parser musí počítat se všemi těmi variantami zápisu a vyhodnocovat je. A hlavně to dělá problémy při práci více lidí na jednom projektu. Napíšu třeba ty podmínky bez složených závorek. Někdo jiný pak ty podmínky rozšíří o další příkazy a kvůli tomu tam bude muset přidat ty složené závorky, tím pádem se to vizuálně úplně změní. A já, když si pamatuji jak vypadalo to co jsem napsal to pak budu podvědomě hledat a třikrát ten kód přehlédnu, než si všimnu, že je to napsané jinak. Když budu vždy psát ty složené závorky i pro jeden příkaz a nebudu psát víc příkazů na jeden řádek (a moji spolupracovníci taky), tak nikdy nebudeme mít problém rychle se vyznat v tom kódu. A nejd jen o to, že na zdrojáku může pracovat i někdo jiný, ale i o čitelnost a přehlednost když to třeba za pár let bude někdo přepisovat. Z těchto důvodů mají softwarové firmy Coding Style manuály a kontrolory kvality kódu.

Nahlásit jako SPAM
IP: 213.192.22.–
Python + Django + PostgeSQL = spokojený vývojář :-)
DeaLer+2
Hero
9. 3. 2008   #36
-
0
-

To Architekt : Aha, už jsem tě pochopil. S tímhle s tebou souhlasím, i když mě osobně se takový problémy netýkaj, ale to asi časem přijde.

Nahlásit jako SPAM
IP: 84.21.124.–
Dušan Janošík | web: djanosik.cz, @djanosik
Architekt0
Super člen
9. 3. 2008   #37
-
0
-

To F_Lupus : Kdyby to byla blbost, tak stále vyvýjíme v assembleru nebo na děrných štítcích přímo ve strojovým kódu. A Python není jen o ořezání o zbytečných závorek nebo středníků, ale o celkovém zjednodušení složitých konstrukcí v C-like jazycích. Mrkni třeba na tohle http://www.25hoursaday.com/weblog/2007/12/13/NaturalSortInIronPythonVsC20.aspx Práce analytika a softwarového architekta, pokud je dobře odvedená, nemá na rychlost naprogramování aplikace zásadní vliv. Ale jestli má stejně pracující kód ve výsledku sto stránek a programoval se tři měsíce, nebo třeba dvě stě a programoval se pů roku, je dost zásadní rozdíl.

Nahlásit jako SPAM
IP: 213.192.22.–
Python + Django + PostgeSQL = spokojený vývojář :-)
F_Lupus0
Newbie
9. 3. 2008   #38
-
0
-

To Architekt : dobře, dobře uznávám že python je pokrokový jazyk... a dokonce si o něm po téhle diskuzi něco zjistím ;) i když za zápis C# v tom příkladu bych autora osobně zabila :) hold můj vnitřní parser je taky nastavený na jeden příkaz na řádek... :)

Co se týká vývoje softwaru má právě práce analytika a softwarového architekta na rychlost vývoje softwaru dost zásadní vliv... a nejen jejich taky práce testerů, managemnetu atd. Ve vývoji softwaru je samotné programování (kódování) paradoxně to nejmenší. Chápu že teď se bavíme spíš o rychlosti kódování... pak bohužel ze zkušenosti vím že i v jednom jazyku jde stejná aplikace napsat na sto stran a nebo taky na pět set... podle toho kdo to psal, kdo to analyzoval a kdo to navrhoval... a to samozřejmě při dodržování stejného formátu zápisu...
Jen tím chci říct, že rychlost není ani tak závislá na jazyku jako na kvalitě lidí a jejich znalosti toho konkrétního jazyka. Připouštím že teoreticky by člověk se stejnou znalostí pythonu i např. C# pravděpodobně napsal stejnou aplikaci rychleji v pythonu, ale bohužel o tom praxe není. Tím vůbec neříkám že se bráním pokroku jen tím chci říct že rychlost na jazyku závisí jen z části...

Nahlásit jako SPAM
IP: 85.160.12.–
-SnakyWolf-
Architekt0
Super člen
9. 3. 2008   #39
-
0
-

To F_Lupus : Jo, s tím souhlasím.

Nahlásit jako SPAM
IP: 213.192.22.–
Python + Django + PostgeSQL = spokojený vývojář :-)
pawlik0
Grafoman
9. 3. 2008   #40
-
0
-

btw python: v notepadu to fakt nepude, ale už existuje portable..

Nahlásit jako SPAM
IP: 84.42.152.–
Sa Nata A Na. Howgh
DeaLer+2
Hero
9. 3. 2008   #41
-
0
-

Ten C# kód v příkladu fakt vypadá hrozně a ke všemu moc nefunguje. Proč si to myslím? Řetězec "z.txt" se zařadí před řetězec "za.txt", ale to je pokud vím špatně, správně by se měl zařadit před řetězec "z2.txt". Pokud nemám pravdu, tak mi někdo zkuste říct proč.

Nahlásit jako SPAM
IP: 84.21.124.–
Dušan Janošík | web: djanosik.cz, @djanosik
DeaLer+2
Hero
10. 3. 2008   #42
-
0
-

Napsal jsem tedy vlastní "Natural Sort" s použitím několika novinek v C# 3.0 - inicializátor kolekce, LINQ a odvození typu lokální proměnné, rozšiřující metoda a lambda výrazy. Doufám, že jsem to moc nepřehnal ;)

using System;

using System.Collections.Generic;
using System.Linq;
using System.Text.RegularExpressions;

static class Program
{
public static void Main(string[] args)
{
// vstupní kolekce
List<string> list = new List<string> { "z.txt", "y.txt", "z22", "z5.txt", "z10.txt", "z3.txt", "z2.txt", "z 12.txt", "za.txt", "z11.txt", "z400.txt" };

// zobrazí seřazené hodnoty
foreach (string text in list.NaturalSort(true))
{
Console.WriteLine(text);
}
}

/// <summary>
/// Seřadí položky v kolekci podle abecedy (alphanumericky).
/// </summary>
/// <param name="ignoreSpaces">Mezery budou při řazení ignorovány (pokud je hodnota <c>true</c>).</param>
static List<string> NaturalSort(this List<string> list, bool ignoreSpaces)
{
// seřadí položky kolekce
var sortedList = list.OrderBy(key =>
{
// odstraní z klíče mezery
if (ignoreSpaces)
{
key = key.Replace(" ", string.Empty);
}

// čísla v klíči zarovná vpravo a doplní nuly
key = Regex.Replace(key, "\\d+", match => match.Value.PadLeft(50, '0'));

// vrátí klíč vhodný pro NaturalSort
return key;
});

// vrátí seřazenou kolekci
return sortedList.ToList();
}
}

Kód má jeden menší nedostatek. Nedokáže s jistotou správně zařadit řetězec, kterej obsahuje číslo o více než 50 číslicích. Dá se to napravit, ale teď je to myslím zbytečnost.

Nahlásit jako SPAM
IP: 84.21.124.–
Dušan Janošík | web: djanosik.cz, @djanosik
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 4 hosté

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý