Moje programy i referaty ze studiów Polski [pl] | English [en]
[Karol Bieńkowski]

CV
Kontakt
Praca
Studia
| Aplety
| Referaty
Zdjęcia
Hobby


Tu znajduje się większość programów, które napisałem przez pięć lat studiów. Te z pierwszego roku nie są napisane zbyt elagancko, gdyż to właśnie wtedy uczyłem się progamować. Im później tym lepiej - polecam do przeglądania programy ze starszych lat.

Aplety Javy są zebrane na oddzielnej podstronie, podobnie jak referaty i praca magisterska oraz materiały do laboratorim z XML-a, które prowadziłem. Obecne, już zawodowe projekty znajdziesz tutaj.



I rok. Metody programowania
Zad 3. Kalkulator. Pisałem go na pierwszym roku, ale teraz musiałbym trochę posiedzieć, żeby to powtórzyć... Pascal [specyfikacja]
[źródła i program]
Program zaliczeniowy. Gra SZEWC. Ma prawie 4 tys. linii, sporo jak na program z pierwszego roku, zwłaszcza że w liceum nie przekroczyłem trzystu. Turbo Pascal
DOS/BGI
[specyfikacja]
[pomoc do gry]
[dokumentacja]
[źródła]
[binarki]

II rok. Programowanie współbieżne
Na laboratorium z Programowania współbieżnego pisaliśmy programiki wykorzystujące mechanizmy współbieżności w Linuksie. Funkcja fork() to była podstawa. Testowaliśmy różne metody komunikacji/synchronizacji procesów: pipe, FIFO, sygnały, mechanizmy IPC (pamięć dzielona, semafory).
Zad 1. Liczby Fibonacciego (pipe) C/Linux [specyfikacja]
[źródła]
Zad 2. Wybory (kolejki komunikatów) C/Linux [specyfikacja]
[źródła]
Zad 3. Algorytm równoległy liczący pozycję węzła w liście wiżzanej (wątki) C/Linux [specyfikacja]
[źródła]
Zad 4. Algorytm ewolucyjny (test porównawczy różnych mechanizmów komunikacji) C/Linux [specyfikacja]
[źródła + wyniki testów]
[readme]

II rok. Bazy danych
Moim projektem zaliczeniowym był serwis klasy z liceum. Wykorzystuje bazę Oracle, dostęp do niej odbywa się albo przez strony WWW albo za pomocą formatek Oracle*Forms. PHP/Forms
Oracle 8i
[źródła]

II rok. Programowanie obiektowe
Symulacja sieci kolejowej. Program napisany w Smalltalku, w środowisku Dolphin Smalltalk pod Windows. To środowisko jest niezbędne do uruchomienia programu. Darmową wersję (2.1) można ściągnąć stąd: program, dokumentacja. Smalltalk
Windows
[źródła]
[dokumentacja]
Program ma ok. 12 tys. linii

II rok. Zespołowy projekt programistyczny
Zaimplementowałem, wraz z Jarkiem Zimoniem i Jurkiem Ziemiańskim system przydzielający studentów do grup ćwiczeniowych. Częścią systemu jest moduł do zbierania preferencji studentów przez WWW. Wykorzystaliśmy do niego relacyjną bazę danych oraz PHP. Ja byłem odpowiedzialny za wymyślenie algorytmu przydziału oraz zakodowanie go w C++. Program był pisany z myślą o jego późniejszej integracji z USOSwebem. C++/PHP
PostgreSQL
Linux
[projekt, żródła i dokumentacja]

III rok. Systemy operacyjne
Referat o tablicy ramek w jądrze Linuksa. Jest naprawdę niewiele osób, które coś z tego zrozumieją. A już na pewno większości ludzi do niczego się to nie przyda. Do czytania plików .ps.gz (GZipped PostScript) można użyć programu GSview (są wersje pod Linuksa i pod Windows).
Zad 1. LogStat - skrypt bash'a C/Linux [specyfikacja]
[źródła]
Zad 2. Moduł PAM (wymienny moduł autentykacyjny dla Linuksa) C/Linux [specyfikacja]
[źródła]
Zad 3. Implementacja /dev/null (moduł do jądra Linuksa obsługujący urządzenie) C/Linux [specyfikacja]
[źródła]
Zad 4. Implementacja dynamicznego linkowania w jądrze Linuksa (moduł oraz łata na jądro systemu) C/Linux [specyfikacja]
[źródła]
[readme]

III rok. Algorytmy ewolucyjne
Parę programików w Javie.
Zad 1. Symulacja ruchu punktu po kwadracie, za pomocą mutacji punktowych Java [źródła]
[aplet online]
Zad 2. Ewolucja z mutacjami, rekombinacjami i selekcją proporcjonalną (AWT) Java [źródła]
Zad 3. Ewolucja z selekcją turniejową (na przykładzie optymalizacji funkcji) Java [źródła]
Zad 4. Symulacja (za pomocą Łąńcuchów Markowa) ewolucji z populacją nieskończoną (w AWT) Java [źródła]
Zad 5. Algorytm symulowanego wyżarzania (AWT) Java [źródła]
Zad 6. Kolorowanie grafu Java [źródła]
[aplet online]

III rok. Sztuczna inteligencja
Napisałem (w C++ i Javie) parę programów wykorzystujących sieci neuronowe.
Minimalne skojarzenie w grafie Java [aplet online]
Rozpoznawanie wzorców, na przykładzie cyfr Java [aplet online]

III rok. Organizacja genomów
Referat o translokacjach genomów oraz aplet w Javie.

III rok. Programowanie funkcyjne
Program do bezstratnej kompresji plików. Powstał w języku funkcyjnym Standard ML. Do uruchomienia jest konieczny kompilator Standard ML of New Jersey do ściągnięcia ze strony http://www.smlnj.org. Standard ML [źródła]
[slajdy]

III rok. Sieci komputerowe
Zad 1. Prosty klient i serwer MUDa. Komunikacja przez TCP i UDP, napisany w C. C/gniazda
Linux
[specyfikacja]
[źródła]
[readme]
Zad 2. Gra MIMOPOL. Wykorzystuje mechanizm CORBA. Implementacja w C++. C++/CORBA
Linux
[specyfikacja]
[źródła]
[readme]

IV rok. Aplikacje bazodanowe w Internecie
Referat o serwletach.
Program do przechowywania dokukumentu XMLowego w relacyjnej bazie danych. Kod jest generowany przez składowane procedury PL/SQL i wysyłany do przeglądarki internetowej przez Oracle PL/SQL Gateway. Oracle 9i
PL/SQL
Gateway
[opis]
Program do wspomagania wyceny nieruchomości. W trakcie realizacji. Java/Turbine [tor]
[projekt]

IV rok. Obiektowe bazy danych
Porównanie obiektowej bazy danych Objectivity/DB z opcją obiektową w Oracle9i Objectivity
Oracle9i
[raport]
[offline]

IV/V rok. Systemy rozproszone
Referat o XMLowych standardach definiowania powiązań między dokumentami. Referat obejmuje następujące standardy: XML-Names, XML-Base, XPath, XPointer, XInclude, XLink oraz TopicMaps. [slajdy offline].
Referat o metadanych w internecie, czyli o RDF, RDF Schema, itp.

IV rok. Paradygmaty programowania rozproszonego
Zad 1. Bardzo prosty programik demonstrujący gniazda w Javie. Java [specyfikacja]
[źródła]
Zad 2. System poczty z wieloma serwerami napisany przy wykorzystaniu Remote Method Invocation (RMI) z Javy. Java RMI [specyfikacja]
[readme]
[źródła]
Zad 3. To samo zadanie (poczta), ale z wykorzystaniem CORBY a nie RMI jako mechanizmu komunikacyjnego. Java/CORBA [readme]
[źródła]
Zad 4. Rozproszone liczenie całki oznaczonej dowolnej funkcji z wykorzystaniem przestrzeni krotek Lindy (a dokładnie jej implementacji JINI). Java/Linda [readme]
[źródła]
Zad 5. Synchronizacja katalogów. Wykorzystuje model publisher-subscriber z Java Messaging System (zdefiniowanego w J2EE). J2EE JMS [readme]
[źródła]
Zad 6. Prosty Session EJB (ze standardu J2EE). J2EE EJB [readme]
[źródła]
Zad 7. Prosty Entity EJB (ze standardu J2EE). J2EE EJB [readme]
[źródła]

IV rok. Programowanie WWW
Wyszukiwarka internetowa Java Servlet/JSP [wymagania]
[webapp]
[źródła]

IV rok. Programowanie w logice
Małe zadanka z laboratoriów ProLog [źródła]
Zadanie zaliczeniowe. Implementacja parsera XML i XPath (oczywiście nie pełna). ProLog [źródła]

V rok. Systemy rozproszone
Implementacja standardów XPointer i XInclude. Moja praca magisterska.
©2000-2017 Karol Bieńkowski
Zmodyfikowany: 2008-09-11 07:53
[@]
www.bienkowski.net
  [Valid XHTML 1.0!]