====== 1 - Úvodní cvičení ====== Co by se mohlo hodit: * [[https://google.github.io/styleguide/javaguide.html|konvence programování v Javě]] * [[http://www.odi.ch/prog/design/newbies.php|antipatterny programování v Javě]] * [[https://githowto.com/|git tutorial]] ===== UML ===== Pro potřeby vytváření UML diagramů, na kterých je vidět softwarový design aplikace, můžete použít jeden z nástrojů: /* * Enterprise architect: http://ocw.cvut.cz/moodle/course/view.php?id=157*/ * Enterprise architect 12: https://moodle.fel.cvut.cz/course/view.php?id=2345 * Opensource: http://argouml.tigris.org/ ===== GITLAB ===== * Zkontrolujte zda vám funguje účet na fel gitlabu https://gitlab.fel.cvut.cz. * Podle kódu vašeho předmětu zkontrolujte, jestli máte vytvořený repozitář v příslušné skupině: https://gitlab.fel.cvut.cz/B191_B6B36OMO/[username] ===== GIT ===== Stahněte si nějaký nástroj pro práci s gitem: * git na windows https://git-scm.com/download/win * cygwin (software pomocí kterého můžeme používat linuxové příkazy) https://www.cygwin.com/ * rabbitvcs (graficky git pro linux) http://rabbitvcs.org/ ==Návod na git: == **Git global setup** git config --global user.name "name" //<- jméno pod kterým budou evidované moje commity// git config --global user.email "login@fel.cvut.cz" //<- email pod kterým budou evidované moje commity// **Create Repository** mkdir login cd login git init //<- vytvořím prázdné lokální repo v aktuálním adresáři// touch README git add README //<- připravím si upravený soubor do staging area// git commit -m "first commit" //<- provedu commit do lokálního repository// git remote add origin git@gitlab.fel.cvut.cz:B171_B6B36OMO/login.git //<- prolinkuji lokální repo s remote repem na gitlab serveru, nadále se na něj budu odkazovat přes origin a nebudu muset pořád vypisovat celé url// git push -u origin master //<- přenesu změny provedené v lokálním repu do vzdáleného repa origin a větve master// **Existing Git Repo?** cd existing_git_repo git remote add origin git@gitlab.fel.cvut.cz:B171_B6B36OMO/login.git git push -u origin master ------------------------------------------------- ==git FAQ:== *Když gitlab píše zprávu ve smyslu, že je branch vytvořenej ale přitom není. git checkout master git pull --rebase origin master git push -u origin master *Když se při příkazu push objeví tato hláška: Could not open a connection to your authentication agent. Je potřeba zadat tyto příkazy: eval `ssh-agent -s` ssh-add ===== Domácí úkoly ===== Zadání domácích úkolů naleznete zde: https://cw.fel.cvut.cz/wiki/courses/b6b36omo/hw/start Odevzdávání na: https://cw.felk.cvut.cz/brute /* *1. domácí úkol je pro vás důležitý, abyste se naučili zacházet s nástroji. * *Popis naleznete zde: https://cw.fel.cvut.cz/wiki/courses/a7b36omo/infrastruktura * *Odevzdavejte pouze třídy, kde se nachází vaše implementace, nikoli celý projekt. V souboru také smažte nahoře příkaz package viz obrázek. * *{{:courses:a7b36omo:labs:du1.png?600|}} * *Adresářová struktura pro domaci ukoly: * * pro ukol č.1: homeworks/Homework1.java ** * pro ukol č.2: homeworks/Homework2.java * * atd. * *Úkoly vám mají ukázat, že není důležité vyvíjet software pouze lokálně, *ale také je potřeba ho vždy otestovat na realném serveru s testovacími soubory (local vs deploy). Každá z těchto částí vyžaduje vaši pozornost! */ ===== Úloha na cvičení ===== - Vytvořte třídu reprezentující **Kolo**. Kolo má neměnnou vlastnost **průměr**. - Vytvořte třídu reprezentující **Auto**. U auta evidujeme vlastnosti **rok výroby** a **barva**. Při vytváření instance auta budeme požadovat počet kol a jejich průměr. - Vytvořte testovací program a zajistěte výpis informací o vytvořených objektech. - Vytvořte dvě **factory metody** vytvorNakladni (6 kol, průměr 50) a vytvorOsobni (4 kola, průměr 17). - Implementujte čítač, který umožní v testovacím programu vypsat informaci o počtu vytvořených instancí aut.