Avatar
Draumer
Člen
Avatar
Draumer:

Ahoj.
Rozhodla jsem se tedy, že do programování půjdu a zkusím základy a něco vytvořit. Při hledání informací i na jiných stránkách jsem ale narazila na něco, co mě docela vyvedlo z míry. Hodně lidí se ptalo, jestli je lepší Java nebo C++ pro naprostého začátečníka kolem 16 let. Odpovědi byly tak napůl. Polovina byla pro Javu a druhá pro C++. Jak to tedy je? Omlouvám se, pokud vás obtěžuji "stupidními" dotazy, ale chci si být jista, že začnu něčím jednodušším, co mě třeba neodradí od dalšího případného studia.
Děkuji všem a přeji pěknou noc :)

 
Odpovědět 1. března 22:06
Avatar
vesel.fil
Člen
Avatar
vesel.fil:

Záleží co chceš programovat. Obecně ale platí, že Java je jednoduchý moderní jazyk, kdežto C++ je složitý nízkoúrovňový jazyk v dnešní dobře vhodný jenom na části programů, které jsou velmi náročné na výkon, třeba hry. Každopádně podle mě je Java lepší pro začátečníka a změna jazyků není vůbec těžká - po 2 až 3 dnech dokážeš normálně pracovat v novém jazyce a vždycky máš při ruce Google.

Nahoru Odpovědět 1. března 22:12
I don't necessarily agree with everything I say.
Avatar
Draumer
Člen
Avatar
Odpovídá na vesel.fil
Draumer:

No, ze začátku co jsem četla, tak je dobré zkusit naprogramovat kalkulačku, jednoduchý slovník a podobně. Jsem totální zelenáč, takže myslím, že za kalkulačku která umí sčítat, odčítat, dělit a násobit budu více než ráda. A myslím, že u mě to bude více než 3 dny. Vidím to tak na měsíc.. :D

 
Nahoru Odpovědět 1. března 22:20
Avatar
vesel.fil
Člen
Avatar
Odpovídá na Draumer
vesel.fil:

Ne, je to opravdu jednoduché. Opravdu bych ze začátku doporučil spíše Javu, ale co se týče naprostých základů, jsou oba jazyky v podstatě totožné.

Editováno 1. března 22:28
Nahoru Odpovědět 1. března 22:25
I don't necessarily agree with everything I say.
Avatar
Draumer
Člen
Avatar
Odpovídá na vesel.fil
Draumer:

Dobře, děkuji. Zítra mi přijde již opravený netbook, tak na něm něco zkusím. Uvidím, jak mi to půjde a pokud byste nebyl proti, klidně bych vám napsala do zprávy mé poznatky a případné pokroky.

 
Nahoru Odpovědět 1. března 22:27
Avatar
patrik.valkovic
Šéfredaktor
Avatar
Odpovídá na Draumer
patrik.valkovic:

To záleží co chceš dělat. Pokud tomu chceš opravdu rozumět, vědět co se dole děje a umět dokonale optimalizovat program, je lepší C++. Dostaneš opravdu hluboké znalosti programování.
Pokud chceš nějakou aplikaci, kde ti moc nejde o výkon, ale prostě něco vytvořit, je lepší Java. Vývoj je rychlejší, pohodlnější. Na druhou stranu když se naskytne problém (například s rychlostí programu), nemusíš být schopen/schopná efektivně problém analyzovat a vyřešit.
Já začínal s C++. Bylo to těžké, šlo to pomaleji, ale jsme za to rád.

Nahoru Odpovědět  +1 1. března 22:30
Nikdy neumíme dost na to, abychom se nemohli něco nového naučit.
Avatar
vesel.fil
Člen
Avatar
vesel.fil:

Proti určitě nejsem. A jen tak mimochodem - "Na této síti si tykáme :)"

Nahoru Odpovědět  +1 1. března 22:31
I don't necessarily agree with everything I say.
Avatar
Martin Dráb
Redaktor
Avatar
Odpovídá na Draumer
Martin Dráb:

C++ je, jak už tu někdo řekl, složitý jazyk; obsahuje spoustu konstrukcí a má spoustu vlastností (i kvůli jeho historickému vývoji a postupnému přidávání vlastností), takže může být dost problém vybrat si z něj ty části, které mají pro člověka smysl a moc se nezaplete do toho, čemu nerozumí.

Také bych v tomto případě doporučil Javu.

Nahoru Odpovědět 1. března 22:33
2 + 2 = 5 for extremely large values of 2
Avatar
Draumer
Člen
Avatar
Draumer:

Děkuji všem. Zkusím zítra Javu a pokud ji pochopím, tak bych později přešla k C++. Jsem jen zvědavá, jestli vůbec něco dokážu, protože co jsem se náhodně dívala do článků, tak tam jsou podivné zkratky, kterým vůbec nerozumím.
A ještě otázka: co nejčastěji žádají zaměstnavatelé? Slyšela jsem i PHP a C#. Ať vím, na jakou úroveň bych se někdy mohla dostat.

 
Nahoru Odpovědět 1. března 22:57
Avatar
Martin Dráb
Redaktor
Avatar
Odpovídá na Draumer
Martin Dráb:

Ono je u té Javy (a u většiny více používaných jazyků) trochu potíž v tom, že je prolezlá objektově orientovanému programování a i v začátcích se mu nedá úplně vyhnout. Ale uvidíš, jak to půjde.

Zaměstnavatele bych zatím neřešil, na to bude spousta času později. Pokud budeš umět libovolný z více používaných jazyků (Java, C#, PHP...), nemyslím si, že budeš mít problém najít práci (resp. určitě ne kvůli jazyku). Navíc po jistém zvládnutí jednoho jazyka nebudeš mít moc problémy zvládnout jemu podobné (např. z Javy na C#), takže neber svoji aktuální volbu jako životní rozhodnutí, se kterým se pak už nedá nic dělat.

Nahoru Odpovědět 1. března 23:22
2 + 2 = 5 for extremely large values of 2
Avatar
vesel.fil
Člen
Avatar
vesel.fil:

Java společně s C# a PHP patří mezi nejžádanější jazyky. A jak jsem již psal já a Martin Dráb změna jazyka je velmi jednoduchá záležitost. V praxi programátoři ovládají klidně 10 jazyků, i když jen 2-3 ovládají na výborné úrovni, protože je užívají nejčastěji. Opravdu, důležitost volby jazyka je často zbytečně přeceňovaná.

Nahoru Odpovědět  +1 2. března 8:21
I don't necessarily agree with everything I say.
Avatar
Luboš Běhounek (Satik):

Na otázku "Java nebo C++" je moje odpověď C# - je to jazyk, který je někde mezi nimi a vychází z nich, ale jde mnohem rychleji dopředu.
Navíc teď díky krokům MS (multiplatformnost) má před sebou celkem světlou budoucnost.

Ale jak už tu padlo, jakmile se naučíš dobře používat jeden jazyk, už není problém používat jiný, obzvlášť pokud mají podobnou syntaxi (C/C++/C#/Java) nebo aspoň podobnou filozofii (imperativní x deklarativní programování apod.).

Nahoru Odpovědět  +3 2. března 9:01
:)
Avatar
Draumer
Člen
Avatar
Draumer:

Znovu všem děkuji za rady :)

 
Nahoru Odpovědět 2. března 9:46
Avatar
vesel.fil
Člen
Avatar
Odpovídá na Luboš Běhounek (Satik)
vesel.fil:

Pravda, hodně mě potěšilo, když jsem o tom poprvé četl, hlavně kvůli ASP.NET. Jenom je škoda, že Visual Studio je jen na Windows, protože je to v podstatě jediné rozumné IDE pro C#. Ale zrovna přechod z Javy na C# je asi nejjednodušší přechod ze všech, to se člověk jen diví, jak je to všechno lepší a jednodušší. Ještě to chce multiplatformní DirectX. :)

Nahoru Odpovědět 2. března 12:00
I don't necessarily agree with everything I say.
Avatar
martanec
Člen
Avatar
martanec:

Pokial sa pytas, ci zacat s C++ alebo Javou, tak urcite C++. Dovod je jednoduchy: z C++ lahsie prejdes do Javy/C# ako opacne.

Moj nazor je taky, ze pokial sa chce niekto ucit programovat, mal by zacat s algoritmami a nie s objektami. Dokonca by som zaciatocnikovi odporucil zacat programovat (za tento nazor budem asi zatracovany) v Pascale. Syntax nie je prilis zlozita, da sa z neho prejst velmi lahko do C/C++ ci PHP.

 
Nahoru Odpovědět  +2 2. března 13:30
Avatar
Erik Báča
Člen
Avatar
Odpovídá na martanec
Erik Báča:

S tímto názorem nesouhlasím, dítě se taky nejdřív naučí lézt po čtyřech a až potom se naučí chodit. Všechno co se učíš tak se učíš od nejjednoduššího po nejsložitější, ne obráceně.
btw. každou chvíli to tu David utlumí, protože se to tu pořád řeší dokola přitom je tu na to článek: http://www.itnetwork.cz/…ace-programy

Nahoru Odpovědět 2. března 13:35
Když mi dáš mínus, napiš proč!
Avatar
Draumer
Člen
Avatar
Odpovídá na Erik Báča
Draumer:

Ten článek jsem si přečetla už nejméně 3x. Nemám nic proti této stránce, je dokonalá, ale dívala jsem se i po jiných. Přeci jen 100 lidí, 100 chutí (názorů). Přečtu si tedy něco o C# s tím, že bych začala Javou, poté přešla na C# a následně na C++. Může být?

 
Nahoru Odpovědět 2. března 13:42
Avatar
martanec
Člen
Avatar
Odpovídá na Draumer
martanec:

Je to nakoniec tvoje rozhodnutie. ;)

 
Nahoru Odpovědět 2. března 13:58
Avatar
martanec
Člen
Avatar
Odpovídá na Erik Báča
martanec:

ano, novodoby trend je Object First. Znie to uzasne. Ale...
Zacinajuci programator hned narazi na pojmy ako je objekt, trieda, instancia triedy. Jednotlivo tieto pojmy su lahko pochopitelne, az pokial nepride veta: Vytvor mi objekt X1 ako instanciu triedy XY.
A presne tu mala drviva vacsina mojich studentov na univerzite problem, lebo zrazu nevedeli co vlastne maju robit.
Urcite, ked vytvaras nejaky objekt, tak ten objekt by mal nieco robit. Najlepsie riesit nejaky problem. Teda je potrebne navrhnut a implementovat nejaky algoritmus (napriklad vypocet korenov kvadratickej rovnice).

Takze metoda Object First je podla mna o mnoho narocnejsia, pretoze musis pochopit nie len objekty, ale zaroven sa ucit navrhovat aj implementovat algoritmy.

 
Nahoru Odpovědět  +1 2. března 14:26
Avatar
Draumer
Člen
Avatar
Odpovídá na martanec
Draumer:

Tak teď jsi mě totálně zmátl :D Budu se muset naučit základní terminologii.

 
Nahoru Odpovědět  +1 2. března 14:51
Avatar
Erik Báča
Člen
Avatar
Odpovídá na martanec
Erik Báča:

Pochopil jsi mě špatně, samozřejmě, že by každý měl začít "neobjektově", ale v nějakém vysokoúrovňovém jazyku, jako je java, C#, a potom až přejít na složitější nízkoúrovňový jazyk, jako je C, C++.

Nahoru Odpovědět 2. března 14:52
Když mi dáš mínus, napiš proč!
Avatar
Draumer
Člen
Avatar
Draumer:

Omlouvám se za svou nezkušenost, ale toto jsem taky nepochopila:

*Je důležité si uvědomit, že začínající programátor se neučí jazyk. Učí se programovat a jazyk je jen prostředek pro zápis programu. Umění programovat není vázáno na žádný programovací jazyk. Pokud umíte programovat třeba imperativním způsobem, tak se naučíte nový jazyk z dané skupiny během 2 dnů, maximálně týdne. Počet jazyků neříká vůbec nic o schopnostech programátora.

Doporučuje se začít programovat s imperativním jazykem. Nejdříve nízkoúrovňový, potom vysokoúrovňový jazyk.*

Nechápu smysl prvních dvou vět. Neučím se jazyk, ale programovat, k němuž je vlastně jazyk potřeba.. Jsem jediná, kdo to nepojal?
A také poslední věta - píší, že dříve nízkoúrovňový a poté vysokoúrovňový. Přičemž o pár řádků výše na dané stránce je napsáno, že Java patří do vysokoúrovňového.. Takže podle nich by se mělo začít Pascalem a C.. Jaký je váš názor?

 
Nahoru Odpovědět 2. března 15:23
Avatar
vesel.fil
Člen
Avatar
Odpovídá na Draumer
vesel.fil:

Já se opět vmísím do diskuse...

Programovat se dá třeba pomocí vývojových diagramů, jazyk k tomu vůbec není potřeba. Ten slouží jen jako prostředek jak program předat procesoru. Je to jen nástroj. Programování samo o sobě by se dalo chápat jako "vytváření řešení problémů spustitelné na počítači". Jazyk je opravdu jenom nástroj.

Pro začátečníka jsou většinou vhodné jazyky imperativní, staticky typované.

Dám sem příklad hledání dělitelů zadaného čísla v Javě a C/C++ pro porovnání:

Java:

package com.company;

public class Main
{
    public static void main(String[] args)
    {
        int cislo = 1000;

        for (int i = 1; i <= cislo; i++)
        {
            if (cislo % i == 0)
            {
                System.out.printf("%d\n", i);
            }
        }
    }
}

C/C++

#include <stdio.h>

int main()
{
        int cislo = 1000;

        for (int i = 1; i <= cislo; i++)
        {
                if(cislo % i == 0)
                {
                        printf("%d\n", i);
                }
        }
}

Jak vidíš, kód je prakticky stejný. Ta část, která se liší je automaticky generovaná vývojovým prostředím. Tudíž ze začátku tam není prakticky žádný rozdíl. Začínat v nízkoúrovňovém jazyce je poměrně složité. Pascal je starý jazyk se špatným návrhem, dnes nepoužitelný. Pokud chceš začít s nízkoúrovňovým jazykem tak rozhodně C/C++. Za mě ale pořád musím doporučit Javu nebo C#. Tady už je poměrně jedno, který z nich si vybereš.

Ačkoli se znalost C++ hodí, dnes se bez něj obejde i profesionální programátor. Proč se zaobírat manuální správnou paměti, když to garbage collector udělá za tebe? Začátečníka to zbytečně zatěžuje.

Takže jak jsem již mnohokrát řekl a myslím, že je to většinový názor, Java nebo C# je vhodnější.

Ještě bych doplnil část článku, na který bylo výše odkazováno.

Mezi nevhodné jazyky patří např. zastaralý Pascal, Delphi nebo céčko. Pro začátečníky není vhodné ani C++, jelikož je příliš složité, to samé platí pro JavaScript.

Editováno 2. března 19:53
Nahoru Odpovědět 2. března 19:51
I don't necessarily agree with everything I say.
Avatar
Draumer
Člen
Avatar
Odpovídá na vesel.fil
Draumer:

Díky za rady. Nakonec jsem se (na základě rad zdejšího člena) rozhodla zkusit Python. Je to prý velmi jednoduché a takový ten základ. Jakmile zvládnu Python, chtěla bych přestoupit na Javu nebo C# C++ (podle toho, co je vhodnější).

 
Nahoru Odpovědět 2. března 19:55
Avatar
vesel.fil
Člen
Avatar
Odpovídá na Draumer
vesel.fil:

Až na dynamické typování souhlasím, že je to dobrý jazyk pro začátečníky.

Nahoru Odpovědět 2. března 20:01
I don't necessarily agree with everything I say.
Avatar
Draumer
Člen
Avatar
Odpovídá na vesel.fil
Draumer:

Tak to asi nepůjde :/ Stáhla jsem si to, ale nejde to spustit. Resp. potřebuji aktualizovat na novější systém (mám Windows 7 Starter). Půjde nějaký jiný jazyk spustit bez další aktualizace?

 
Nahoru Odpovědět 2. března 20:03
Avatar
vesel.fil
Člen
Avatar
Odpovídá na Draumer
vesel.fil:

Co přesně nefunguje? Nejde Ti to vůbec nainstalovat? Mám dojem, že Starter nespustí .msi soubor. Každopádně tady: "https://www.pyt­hon.org/downlo­ads/release/pyt­hon-351/" jsem našel .exe instalátor. To taky nefunguje?

Editováno 2. března 20:09
Nahoru Odpovědět 2. března 20:08
I don't necessarily agree with everything I say.
Avatar
Draumer
Člen
Avatar
Draumer:

Posílám screen. Stahovala jsem to ze stránky python.org. Verzi 3.5.1 (novější jsem nenašla)

 
Nahoru Odpovědět 2. března 20:21
Avatar
Draumer
Člen
Avatar
Draumer:

Jak vidím, tak mi není souzeno začít programovat.. Java taky požaduje novou verzi, ale tentokrát Google Chrome.

 
Nahoru Odpovědět 2. března 21:08
Avatar
vesel.fil
Člen
Avatar
Odpovídá na Draumer
vesel.fil:

Starter edice Windows je velice limitovaná. Ale pokud vím, tak Java by tam měla jít bez problémů. Ale Microsoft to dost omezil, takže je možné, že to prostě nepůjde a nic s tím nepůjde udělat.

Nahoru Odpovědět 3. března 14:32
I don't necessarily agree with everything I say.
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 30 zpráv z 30.