Tag: teaching

Entries for tag "teaching", ordered from most recent. Entry count: 32.

Uwaga! Informacje na tej stronie mają ponad 3 lata. Nadal je udostępniam, ale prawdopodobnie nie odzwierciedlają one mojej aktualnej wiedzy ani przekonań.

Pages: > 1 2 3 4 >

23:11
Mon
28
Mar 2011

IGK Conference - Our Slides

8th Polish Game Engineering Conference (VIII Ogólnopolska Konferencja Inżynierii Gier Komputerowych) IGK-8'2011 is over so now we can publish slides from our presentation:

Tworzenie wydajnego kodu c++ w podejściu zorientowanym na dane (PDF)

It's in Polish. Here is abstract of the paper:

(Polish) Artykuł opisuje wady programowania obiektowego – zarówno od strony projektowej, jak i ze względu na wydajność kodu. Porusza problem opóźnienia w dostępie do pamięci RAM we współczesnych architekturach komputerowych. Przedstawia programowanie zorientowane na dane (ang. DOD –­ Data-Oriented Design) jako alternatywne podejście do projektowania i implementowania silnika gry kładące nacisk na optymalizację struktur danych pod kątem szybkości. Porusza także problem wydajności poszczególnych konstrukcji języka C++. 

(English) Paper describes pitfalls of object-oriented programming – from the design perspective, as well as regarding code performance. It mentions problem of latency in accessing data in RAM memory on today computer architectures. It shows DOD (Data-Oriented Design) as an alternative approach to design and implementation of a game engine focused on optimizing data structures in terms of performance. It also describes efficiency of different C++ language constructs. 

Comments (1) | Tags: events teaching warsztat igk c++ optimization | Author: Adam Sawicki | Share

00:40
Thu
06
Jan 2011

My Talk about OOP on Polygon Group - Slides

Here are slides from my today presentation - "Pułapki programowania obiektowego" (in Polish): PDF, PPTX.

Comments (0) | Tags: teaching events | Author: Adam Sawicki | Share

18:25
Mon
03
Jan 2011

My Talk about OOP on Polygon Group

This Wednesday on the Polygon scientific group I'll give a talk titled "Pułapki programowania obiektowego" ("Pitfalls of Object-Oriented Programming" - but that's just a translation, not to be confused with great English article with same title). It will be a polemics with the recent Veldrin's presentation on design patterns and also another expression of my interest in the topic of DOD (Data-Oriented Design). I'll post more on this subject soon, including slides from my presentation.

Comments (1) | Tags: teaching events | Author: Adam Sawicki | Share

19:09
Thu
04
Nov 2010

C++ in Game Programming - Slides

Here are slides from my yesterday lecture "C++ in Game Programming" (in Polish):

C++ w programowaniu gier.pdf
C++ w programowaniu gier.pptx

Comments are welcome. I consider this an attempt before writing something bigger of this kind that I hope to submit as a paper to one of Polish game developers conferences next year, like IGK.

Comments (3) | Tags: c++ teaching events | Author: Adam Sawicki | Share

20:11
Tue
02
Nov 2010

My Lecture on Polygon Group

I've joined "Polygon" - a scientific group of game developers on Warsaw University of Technology (Website, Forum, Facebook). That's true I'm no longer a student, but this fact doesn't forbid me to drink beer just like they do :) Tomorrow I'll give there a lecure entitled "C++ in game development". Slides will be available for download in the coming days.

Comments (2) | Tags: teaching events | Author: Adam Sawicki | Share

22:51
Sun
26
Oct 2008

Elementarne algorytmy - pomysł na artykuł

Dawno, dawno temu wymyśliłem pewien artykuł dla początkujących. Zauważyłem bowiem, że między tematami najczęściej podejmowanymi w nauce programowania - opanowaniem języka programowania i opanowaniem bardziej zaawansowanych tematów, jak biblioteka graficzna czy algorytmika - istnieje pewna luka i wielu adeptów ma z tym problem. Chodzi o 1. podstawowe struktury danych, 2. projektowanie i używanie własnych formatów plików oraz 3. elementarne algorytmy i sztuczki programistyczne.

Dwa pierwsze tematy opisałem w jakimśtam stopniu 4 lata temu w artykule Struktury danych i formaty plików. Trzeci chciałem opisać w ubiegłe wakacje, ale wyjaśnienie wszystkich zebranych zagadnień w dostatecznie dokładny i przystępny sposób kosztowałoby zbyt dużo pracy. Dlatego jedyne co zrobiłem to teraz spisałem wreszcie i opublikowałem sam "projekt" tego artykułu (co samo w sobie było niemałym zadaniem) - Elementarne algorytmy.txt.

Comments (0) | Tags: algorithms ideas teaching | Author: Adam Sawicki | Share

23:32
Thu
14
Aug 2008

Visual C++ - jak zacząć

Właśnie zagadał do mnie na Gadu-Gadu jeden z kolegów z Warsztatu z pytaniami, lękami i wątpliwościami na temat przesiadki z Code::Blocks na Visual C++. Odpowiadając uświadomiłem sobie, że Visual, jakkolwiek jest moim zdaniem najlepszym IDE, jest wygodny, potężny, szybki itd., ma pewien problem - nie można w nim od tak zacząć programowania, napisać "Hello World" czy wkleić kod z jakiegoś tutoriala. Na drodze stoją opcje projektu, które w wersjach 2005 i 2008 domyślnie są tak ustawione, że kod się nie kompiluje albo też nie działa na komputerach innych niż programisty. Początkującym można więc polecić proste kroki do wykonania po utworzeniu nowego projektu:

  1. Wejść do opcji projektu - Project > Properties.
  2. Przestawić General > Character Set na Not Set - pomaga na błędy z Unicode, wchar_t itp. dziwnymi hasłami :)
  3. Przestawić C/C++ > Precompiled Headers > Create/Use Precompiled Header na Not Using Precompiled Headers - pomaga na błędy z Stdafx.h.
  4. Przestawić C/C++ > Code Generation > Runtime Library na Multi-threaded Debug (w konfiguracji Debug) i Multi-threaded (w konfiguracji Release) - pomaga na błędy z brakiem plików DLL po przeniesieniu programu na inny komputer.
  5. Dalej warto zgłębić ten temat czytając Warsztat FAQ, bo tam opisałem to dokładniej.

Comments (0) | Tags: teaching visual studio c++ | Author: Adam Sawicki | Share

11:11
Tue
25
Mar 2008

Elementarne algorytmy

float t;
for (uint i = 0; i < Count; i++) {
  t = (float)i / (float)(Count - 1);
  Foo(t);
}

Czy da się ten kod napisać lepiej? Ano da się. Zamiast wyliczać zmienną t za każdym razem na podstawie i, można ją zwiększać niezależnie:

float t = 0.0f, t_step = 1.0f / (float)(Count - 1);
for (uint i = 0; i < Count; i++, t += t_step)
  Foo(t);

Dla niektórych to oczywiste, ale każdy musiał się tego skądś nauczyć albo samemu wymyślić. Ja mam na to nazwę "elementarne algorytmy" i uważam, że takich rzeczy nie powinno się poznawać gdzieś przy okazji, ale porządnie spisać i nauczać początkujących programistów.

Mam nawet spisane pomysły na ponad pół setki takich drobiazgów, które możnaby opisać i zacząłem to robić w czasie wakacji 2007 jako nowa wersja mojego artykułu "Struktury danych i formaty plików" (nowy tytuł to "Brakujące ogniwo"), ale dokładne opisanie i zilustrowanie tego wszystkiego przerosło moje możliwości :)

Comments (0) | Tags: c++ algorithms teaching | Author: Adam Sawicki | Share

Pages: > 1 2 3 4 >

STAT NO AD [Stat] [Admin] [STAT NO AD] [pub] [Mirror] Copyright © 2004-2017 Adam Sawicki
Copyright © 2004-2017 Adam Sawicki