Różnice

Różnice między wybraną wersją a wersją aktualną.

Odnośnik do tego porównania

Both sides previous revision Poprzednia wersja
Nowa wersja
Poprzednia wersja
pl:dydaktyka:jimp2:2016:start [2016/04/20 22:26]
msl [II część: Szablony i kontenery w C++]
pl:dydaktyka:jimp2:2016:start [2019/06/27 15:50] (aktualna)
Linia 14: Linia 14:
   * **Ocena końcowa** jest średnią ocen z pierwszej i drugiej części semestru. Każdą z nich trzeba niezależnie od siebie zaliczyć.   * **Ocena końcowa** jest średnią ocen z pierwszej i drugiej części semestru. Każdą z nich trzeba niezależnie od siebie zaliczyć.
  
 +===== WYNIKI =====
 +
 +Poniższy {{:​pl:​dydaktyka:​jimp2:​2016:​jimp2-ok.pdf|arkusz}} zawiera punktację z drugiej części laboratorium oraz podsumowanie:​ liczbę zdobytych punktów (procentowo) na obu częściach laboratorium oraz ich średnią wartość. Na tej podstawie wpisane są tam oceny końcowe z laboratorium.
 ===== I część: Podstawy programowania obiektowego w C++ ===== ===== I część: Podstawy programowania obiektowego w C++ =====
  
Linia 69: Linia 72:
 ==== Sprawy Organizacyjne ==== ==== Sprawy Organizacyjne ====
  
-Nie zmieściłyby się tutaj, więc proszę zajrzeć na [[part2:​org|oddzielną stronę]].+Nie zmieściłyby się tutaj, więc proszę zajrzeć na [[.:part2:org:start|oddzielną stronę]].
  
 +==== Ćwiczenia ====
 +
 +Zanim zaczniesz pisać program zapoznaj się z [[.:​part2:​org:​codepolicy|wymaganymi konwencjami]]
 +
 +^ L.p. ^ Tytuł ^ Czas trwania ^ Grupa ^ Deadline ^
 +^ 1. | [[.:​part2:​ex:​ex1|Szablony funkcji]] ​             | 1 tydzień | 2 os. | 28.04 |
 +^ 2. | [[.:​part2:​ex:​ex2|Szablony klas]] ​                | 1 tydzień | 2 os. | 05.05 |
 +^ 3. | [[.:​part2:​ex:​ex3|Szablony + dziedziczenie]] ​     | 1 tydzień | 2 os. | 12.05 |
 +^ 4. | [[.:​part2:​ex:​ex4|Kontenery,​ cd.]]                | 1 tydzień | 2 os. | 02.06 | 
 +^ 5. | [[.:​part2:​ex:​ex5|Iteratory]] ​                    | 1 tydzień | 2 os. | 09.06 |
 +^ 6. | [[.:​part2:​ex:​ex6|Drzewa]] ​                       | Poprawa czerwcowa | 1 os | 29.06 |
 +==== Jak wysyłać wyniki ====
 +
 +  - Przetestować kod: <code bash>g++ -std=c++11 *.cpp -o test && ./​test</​code>​
 +    * :!: proszę użyć kompilatora ''​gcc''​ w wersji ''​4.8.x''​ (tak jak na serwerze borg)
 +    * :!: proszę używać oryginalnego i niezmienionego pliku ''​main'',​ np. ''​ex1main.cpp'',​ ''​ex2main.cpp'',​ etc.
 +  - Jeżeli kod się nie kompiluje:
 +    * proszę go **nie** wysyłać, nie ma po co
 +  - Jeżeli kod się kompiluje:
 +    - proszę stworzyć katalog o nazwie <​numer_grupy>​_<​nazwisko1>​_<​nazwisko2>,​ gdzie numer grupy ''​0''​ oznacza grupę o 08:00, a ''​1''​ grupę o 09:30, np. <code bash>​mkdir 0_Slazynski_Kutt</​code>​
 +    - skopiować istotne pliki do tego katalogu, np. <code bash>cp *.cpp *.h ./​0_Slazynski_Kutt</​code>​
 +    - proszę spakować folder do archiwum zip, rar, 7z, lub tar.gz, np. <code bash>tar -zcf 0_Slazynski_Kutt.tar.gz 0_Slazynski_Kutt</​code>​
 +    - wysłać paczkę na mail [[mailto:​mslaz@agh.edu.pl|mslaz@agh.edu.pl]] z tematem: ''​[JIMP2] Ćwiczenie nr <numer ćwiczenia>'',​ np. ''​[JIMP2] Ćwiczenie nr 1''​
 +    - w treści wpisać imiona i nazwiska osób wykonujących ćwiczenie, np. ''​Mateusz Ślażyński & Krzysztof Kutt''​
 +    - :!: załączyć archiwum z ćwiczeniem,​ to ważne :!:
 +    - :!: nacisnąć przycisk wyślij i odczekać chwilę nie przerywając połączenia z internetem :!:
 +    - dostać punkty z dobrze wykonaną robotę 8-)
 +  - inne formy wysyłania zadań spotkają się z moją niechybną dezaprobatą i niekonstruktywną krytyką m(
 +    * przewidywane kary w postaci składania własnoręcznie spisanej miażdżącej samokrytyki ​
 +    * wizyta w worku pokutnym w dziekanacie pro 
 +    * no i brak punktów
 +
 +==== Automatyczne formatowanie kodu ====
 +
 +W celu uniknięcia braku punktów za dobry styl kodu, polecamy stosować narzędzia automatycznie formatujące kod. Większość profesjonalnych IDE, np. Eclipse, ma je wbudowane bądź dostępne w formie wtyczki. Jeżeli ktoś preferuje narzędzia konsolowe, to polecamy [[http://​astyle.sourceforge.net/​install.html|AStyle]],​ które jest dostępny na wszystkie wiodące systemy operacyjne. Narzędzi w użyciu jest bardzo proste: ''​astyle <opcje stylu> <​ścieżki do plików>'',​ np.
 +<code bash>
 +astyle --style=1tbs *.cpp *.h
 +</​code>​
 +sformatuje wszsytkie pliki ''​.cpp''​ i ''​.h''​ używając stylu One True Brace Style. Więcej dostępnych stylów i opcji można poznać czytając stronę [[http://​astyle.sourceforge.net/​astyle.html]].
 +
 +Na potrzeby ćwiczeń polecamy stosować styl:
 +<code bash>
 +astyle -s4 -xG -S -O -n -o -k3 -H -p -j *.cpp *.h
 +</​code>​
 +Jeżeli kogoś przeraża wpisywanie tak wielu opcji, wystarczy zapisać konfigurację jako domyślną:
 +<code bash>
 +echo "-s4 -xG -S -O -n -o -k3 -H -p -j" > ~/.astylerc
 +</​code>​
 +
 +=== Alternatywy ===
 +
 +  * [[http://​uncrustify.sourceforge.net/​|uncrustify]] - bardzo popularne narzędzie do formatowania kodu
 +  * [[http://​clang.llvm.org/​docs/​ClangFormat.html|clang-format]] - oparte o llvm narzędzie wspierane przez wiele narzędzi programistycznych. [[http://​clangformat.com/​|http://​clangformat.com/​]] pozwala generować dla niego konfiguracje.
 +  * [[http://​universalindent.sourceforge.net/​|universalindent]] - graficzne narzędzie do formatowania kodu
 ===== Przydatne materiały ===== ===== Przydatne materiały =====
  
Linia 89: Linia 146:
   * [[http://​www.eclipse.org/​|Eclipse IDE for C/C++]]   * [[http://​www.eclipse.org/​|Eclipse IDE for C/C++]]
   * [[http://​www.microsoft.com/​express/​Windows/​|MS Visual Studio Express Edition]]   * [[http://​www.microsoft.com/​express/​Windows/​|MS Visual Studio Express Edition]]
- 
 ==== Platformy online z zadaniami do ćwiczenia programowania ==== ==== Platformy online z zadaniami do ćwiczenia programowania ====
  
pl/dydaktyka/jimp2/2016/start.1461183963.txt.gz · ostatnio zmienione: 2019/06/27 15:52 (edycja zewnętrzna)
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0