M andriva Pow e r Pack 2007 Gold, Pro Podpis cyfrow y, cze m u w
Transkrypt
M andriva Pow e r Pack 2007 Gold, Pro Podpis cyfrow y, cze m u w
num e r 6 | 2006 M andriva Pow e r Pack 2007 Gol d, Pro M andrak e s oftjak i obe cnie M andriva k ojarz one s ą z dys trybucjam i bardz o pros tym i i prz yjaz nym i użytk ow nik ow i. Była to ch yba pie rw s z a dys trybucja, k tóra była w pe łni s pol oniz ow ana. Z tych pow odów cz ęs to M andriva w ybie rana je s tprz e z pocz ątk ujących . Je dnocz e śnie s ys te m te n je s tbardz o dopracow any i s tabil ny. Pol ityk a firm y w tym z ak re s ie je s tk ons e k w e ntnie re al iz ow ana. > s tr.3 Podpis cyfrow y, cz e m u w arto używ ać? Je s te śm y w dobie pow s z e ch ne j inform atyz acji s połe cz e ńs tw a - to już truiz m , pow tarz any na k ażdym k rok u. Kom pute ry w dz ie rają s ię do w s z e l k ich m ożl iw ych dz ie dz in życia. Podobnie jak w k ontak tach m iędz yl udz k ich , tak że w Inte rne cie is tnie je potrz e ba uw iarygodnie nia s w oje jtożs am ości, tak aby k ore s ponde ntm iałpe w ność, że k om unik uje s ię z w łaściw ą os obą. > s tr.30 W s tępniak Św ięta Boże go Narod z e nia z bl iżają się w ie l k im i k rok am i... K ażd a w itryna sk l e pow a ośw ie tl ona je st różnym i św iate łk am i, na ch oink ach w isz ą b om b k i. Śnie gu je sz cz e nie m a, al e atm osfe rę św iat juz d aw no się od cz uw a. Św ięta to cz as m agicz ny! Św ięta to cz as... spęd z ony z rod z iną i prz y k om pute rz e :-) . W tym num e rz e prz e cz ytacie m .in. o d ystryb ucji l inuk sa K ate O s III , Pod pisie e l e k tronicz nym , Efe k tyw nym z arz ąd z aniu inform acją w firm ie . Życz ę m iłe j l e k tury i cz e k am y na W as z e opinie i s uge s tie d otycz ące D ragonia M agaz ine . R e d ak tor Nacz e l ny Piotr K rak ow iak W s z ys tk ie m ate riały s ą objęte praw e m autors k im (na z as adach l ice ncji Cre ative Com m ons ). Nie ponos im y odpow ie dz ial ności z a tre ść ogłos z e ń. Naz w y firm , naz w y h andl ow e i z nak i tow arow e , je śl i z os tały z os tały użyte w publ ik acji, to je dynie w ce l ach inform acyjnych i s ą w łas nością pos z cz e gól nych podm iotów . S PIS T R E Ś C I SYSTEM 3 - M andriva Pow e r Pack 2007 Gol d, Pro 5 - K ate O s III 7 - Efe k tyw ne z arz ądz anie inform acją w firm ie cz .1 PRO GRAM OW ANIE 10 - O bie k tow ość 15 - C+ + cz .5 20 - W prow adz e nie do Tcl \Tk cz .3 SO FTW ARE 23 - W yk orz ys tanie program u gnupl otdo do tw orz e nia w yk re s ów 2D 27 - Apach e cz .4 30 - Podpis cyfrow y, cz e m u w arto używ ać? 32 - Th aw te - jak dos tać darm ow y ce rtyfik atnie k w al ifik ow any 34 - K il k a upięk s z e ń dl a K DE 38 - VPN i PPTP - jak to z robić? H ARDW ARE 39 - Note book i - prz ys z łość k om pute ra? KO NK URS 19 - Konk urs ! RO Z RYW K A 41 - Littl e Sh e e p cz yl i z abaw a z ow ie cz k am i Re dak tor Nacz e l ny: Piotr K rak ow iak (dragon) w w w : h ttp://w w w .dragonia.pl Re dak torz y: Tom as z Cz unk o (tom cas h ), Rafał Trójniak (e rt16), M acie k M al inow s k i forum : h ttp://w w w .forum -dragonia.be e .pl (borim ir), Piotr Sz e w cz uk , Rafał Dom e rack i (RD), M arcin Lipie c (l ipi3c), M ich ał Rz e pk a, e -m ail : dragonia.m agaz ine @ gm ail .com Tom as z Łucz ak W s półpracujący: Tom as z Be dnars k i, M acie k Rute ck i num e r 6 | 2006 2 SYSTEM PRO GRAM OW ANIE H ARDW ARE SO FTW ARE RO Z RYW K A M andriva Pow e r Pack 2007 GO LD, PRO M andrak e s oftjak i obe cnie M andriva k ojarz one s ą z dys trybucjam i bardz o pros tym i i prz yjaz nym i użytk ow nik ow i. Była to ch yba pie rw s z a dys trybucja, k tóra była w pe łni s pol oniz ow ana. Z tych pow odów cz ęs to M andriva w ybie rana je s tprz e z pocz ątk ujących . Je dnocz e śnie s ys te m te n je s tbardz o dopracow any i s tabil ny. Pol ityk a firm y w tym z ak re s ie je s tk ons e k w e ntnie re al iz ow ana. M ACIEK 'borim ir' M ALINO W SK I M and riva nie je st b ard z o starą firm ą, al e na pe w no m ożna śm iało pow ie d z ie ć, że je st je d ną z firm o najb ard z ie j b ujne j h istorii. Je j pocz ątk i m ożna d atow ać na 19 9 8 rok . W ów cz as z ałożono w e Francji firm ę M and rak e soft. Firm a ok oło 2003 rok u prz e żyw ała z nacz ne prob l e m y finansow e i prz e z praw ie rok trw ało postępow anie napraw cz e , al e re organiz acja d z iałania i z m iana styl u z arz ąd z ania poz w ol iła w yjść z prob l e m ów . Z ysk i staw ały się coraz w ięk sz e i w 2004 rok u M and rak e soft połącz ył b ard z o spraw nie i sz yb k o, sprz ęt w yk ryw any je st w je j trak cie w z orow o.Na ob e cną ch w il ę je st to je d yna d ystryb ucja, k tóra popraw nie w yk ryła uk ład graficz ny w jak i w yposażony je st m ój k om pute r. Je st to ch ipse t VIA Unich rom e Pro, k tóry prz ysparz ał m i w ie l e prob l e m ów d o te j pory. W re sz cie m ogę ogl ąd ać fil my na pe łnym e k ranie , popraw iła się rów nie ż jak ość w yśw ie tl ane go ob raz u.W yk ryw anie sprz ętu je st m oim z d anie m je d nym z najw ięk sz ych pl usów M and rivy. Z d ośw iad cz e nia z auw ażyłe m , że je st o w ie l e l e psz e niż w SUSE, a naw e t SLED . Lin D VD M and riva to d ystryb ucja, k tóra prz ygotow yw ana je st w k il k u w e rsjach w z al e żności od w ym agań użytk ow nik a, prz e z nacz e nia syste m u jak i z asob ności portfe l a, b ow ie m pe w ne w e rsje ud ostępniające d od atk ow e e l e m e nty są płatne . K ażd y b e z w ięk sz e go prob l e m u m oże z nal e źć w e rsję najl e psz ą d l a sie b ie i sw oich w ym agań oraz ocz e k iw ań. Kol e jnym pl use m je st je j w ie l k a m ul tim e d ial ność. Syste m d ostarcz any je st w raz z k od e k am i um ożl iw iającym i od tw arz anie m uz yk i i fil m ów w z am k niętych stand ard ach , d od atk ow o w e rsja płatna ud ostępniania je st z program e m LinD VD , k tóry św ie tnie nad aję się d o od tw arz ania fil m ów z płyt D VD . Je st to program d z ięk i, k tóre m u nie je ste śm y naraże ni na jak ie k ol w ie k nie prz yje m ności z w iąz ane z pate ntam i. W Pol sce nie m a to ob e cnie w ięk sz e go z nacz e nia, al e w sk al i św iatow e j je st to nie w ątpl iw ie d uży pl us te go syste m u. Te stow ałe m w e rsję M and riva 2007 Pow e rpack Gol d . D ystryb ucję tę z ainstal ow ałe m na m oim l aptopie Fujitsu-Sie m e ns v2030. Nie m iałe m z proce se m instal acji żad nych prob l e m ów . Instal acja prz e b ie ga W e rsja Gol d d ostarcz ana je st d od atk ow o w raz z program e m Ce d e ga, k tóry z k ol ei um ożl iw ia instal ację gie r i innych program ów prz e z nacz onych na pl atformę W ind ow s. D z ięk i nie m u be z się z b raz yl ijsk ą firm ą Cone ctiva. D osz ło d o z m iany naz w y na M and riva, a w 2005 rok u M and riva w yk upiła firm ę Lycoris. num e r 6 | 2006 prob l e m u z ainstal uje m y najnow sz e gry b e z potrz e by posiad ania syste m u z pod z nak u O k ie n. D l a osób nie m ających l e gal ne go syste m u b ęd z ie to na pe w no w yb aw ie nie prz e d w iz ytą od pow ie d nich w ład z . Sk orz ystają rów nie ż na tym osoby, k tóre cz ęsto prz e łącz ają się m ięd z y d w om a syste m am i. M and riva z Ce d e gą ch roni nas od te j k onie cz ności d z ięk i cz e m u osz cz ęd z am y nasz cz as. O cz yw iście nie m am y pe w ności, że k ażd a gra b ęd z ie d z iałać i że nie pojaw ią się z w iąz ane z je j d z iałanie m żad ne prob l e m y, al e postęp program ów typu Ce d e ga je st b ard z o d ynam icz ny i co jak iś cz as pojaw iają się uak tual nie nia. D od atk ow o w inte rne cie m ożna z nal e źć b ard z o w ie l e inform acji od użytk ow nik ów w jak i sposób d any prob l e m ob e jść. W e rsja je sz cz e b ard z ie j roz b ud ow ana M and riva Pow e rpack Pro d ostarcz ana Ce d e ga 3 SYSTEM PRO GRAM OW ANIE Ph otosh op uruch om iony z a pom ocą CrossO ve r O ffice je st w raz z pe łną w e rsją program u Cross O ve r O ffice , k tóry um ożl iw ia pod ob nie jak Ce d e ga uruch am ianie program ów stw orz onych d l a syste m u W ind ow s, al e w od różnie niu od Ce d e gi z am iast d o uruch am iania gie r prz e z nacz ony je st d o uruch am iania i pracy program ów b iurow ych z acz ynając od M s O ffice , k ończ ąc na Ph otosh opie cz y Core l D raw . D od atk ow o jak w w ięk sz ości d ystryb ucji d od ano ob sługę b iurk a 3D . M and riva z aw ie ra z arów no A IGLX i Xgl . D z ięk i te m u m ożna pow ie d z ie ć, że roz w iąz uje prob l e m y z w iąz ane z prz ysz łością ow ych roz w iąz ań. O b a b ow ie m roz w ijane się rów nol e gl e prz e z różnych prod uce ntów , nie są z e sob ą k om patyb il ne i ob e cnie ciężk o cok ol w ie k pow ie d z ie ć, k tóre z nich prow ad z i i najpraw d opod ob nie j stanie się w prz ysz łości stand ard e m . Po pie rw sz e z te go pow od u, że z aw ie rają tyl e sam o w ad co z al e t, a to z pow od u ich stosunk ow o w cz e sne go e tapu roz w oju. H ARDW ARE SO FTW ARE Na uw agę z asługuje rów nie ż to, że syste m te n d ostarcz any je st w raz z oprogram ow anie m antyw irusow ym z nane j i b ard z o sol id ne j firm y K aspe rsk y. Jak z ape w niają prod uce nci syste m u - Linux je st w ol ny od w irusów , a program te n m a służyć jak o sposób na och ronę prz e ch od z ące go prz e z syste m ruch u sie ciow e go, sk anow ania pocz ty d l a W ind ow s itp. Je d nak m oże m y ocz e k iw ać w prz ysz łości, że coraz w ięk sz a popul arność Linuk sa nie ste ty d oprow ad z i d o pojaw ie nia się w ięk sz e j l icz by w irusów prz e z nacz onych d l a te go syste m u. D l ate go już w k rótce antyw irus b ęd z ie nie ste ty nie tyl k o d od atk ie m , al e i stałym e l e m e nte m syste m u. Je śl i ch od z i o och ronę syste m u to M and riva d ostarcz a k ol e jne b ard z o cie k aw e i z araz e m prz yd atne narz ęd z ie m ianow icie BitD e fe nd e r, k tóre go z ad anie m je st ch ronie nie nasz e go syste m u prz e d trojanam i, program am i typu spyw are i w irusam i. Na pe w no z d ub l ow anie oprogram ow ania ch roniące go syste m prz ycz yni się d o je go w ięk sz e go b e z pie cz e ństw a.D od atk ow o program y d ostarcz ane w raz z M and rivą b ard z o łatw o ak tual iz ują sw oje b az y d anych . W M and rivie d ostaje m y ponad to: jąd ro Linux w w e rsji 2.6.17, K D E 3.5.4 i GNO M E 2.16, O pe nO ffice 2.0.3, Sk ype , RO Z RYW K A pl uginy R e al Pl aye r 10 i Fl ash 7, Java, i w ie l e w ie l e innych użyte cz nych program ów ; W raz z syste m e m otrz ym uje m y d w ie publ ik acje e l e k tronicz ne w form acie pd f. Pie rw sz a z nich je st 300 stronicow ym pod ręcz nik ie m o użytk ow aniu M and rivy, a d ruga d otycz y posługiw ania się w ie rsz e m pol e ce ń.O b ie z ostały prz e tłum acz one na jęz yk pol sk i. W stosunk u d o w e rsji poprz e d nich z auw ażal na je st z nacz na popraw a w prz ypad k u pręd k ości uruch am iania syste m u. Je d nocz e śnie z m ie niono program służący d o z arz ąd z ania pak ie tam i i instal ator sys- prz ypad k ów m oże go śm iało z astąpić i co je st najw ażnie jsz e d z ięk i tym program om nie m usim y iść już na żad ne k om prom isy. Ud ostępnie nie spe cyfik acji Płatnik a m oim z d anie m je sz cz e b ard z ie j prz yspie sz y z ad om aw ianie się Linuk sa w b iurach , b ow ie m w b ard z o w ie l u instytucjach to w łaśnie tyl k o ow y Płatnik je st argum e nte m z a poz ostanie m prz y W ind ow s. M ożna o nie j pow ie d z ie ć, że je st syste m e m , k tóry w z nacz ny sposób prz ycz yni się do roz prz e strz e niania się Linuk sów na b iurk ach . D ostarcz anie ob u roz w iąz ań A IGLX i Xgloraz program u antyw irusow e go je st św iad e ctw e m d al e k ow z rocz ności firm y. Pol e cam M and rivę z arów no jak o ce ntrum m ul tim e d ial ne d o d om u, se rw e r w b iurz e jak i z am ie nnik W ind ow sa. Przydatne adre s y Biurk o 3D te m u. Te d w a ostanie e l e m e nty w z b ud z ają najw ięk sz e k ontrow e rsje w śród użytk ow nik ów . M oim z d anie m je st to k w e stia prz yz w ycz aje nia. M ożna pok usić się o stw ie rd z e nie , że M and riva ostro w al cz y o użytk ow nik ów d om ow ych i b iurow ych z W ind ow s. Na ob e cnym e tapie roz w oju (w łącz ając Ce d e gę i Cross O ve r O ffice ) w w ięk sz ości num e r 6 | 2006 Oficjalna strona Mandrivy http://www.mandriva.pl Polski klub użytkowników Mandrivy http://strefa.mandriva.pl Sklep Mandrivy http://store.mandriva.pl Nieoficjalna strona Mandrivy http://www.mandriva.org.pl 4 SYSTEM PRO GRAM OW ANIE H ARDW ARE SO FTW ARE RO Z RYW K A K ate O S III Pe w ne go raz u, k ie dy m arudz iłe m na te m atbrak u dos tępu do partycji NTFS, z najom y w s pom niałcoś o s ys te m ie , k tóry rz e k om o potrafi z apis yw ać na tak ich partycjach od raz u po z ains tal ow aniu. Brz m iało cie k aw ie ;pil nie potrz e bow ałe m tak ie jfunk cjonal ności w ięc w s z e dłe m na s tronę w w w .k ate os .org i już nas tępne go dnia m iałe m trz y płytk i. ak tual iz acji z aś służy Upd ate os. A l e o nich pote m . K ie d y napisałe m 'prz e różnych program ów ', to nie prz e sad z ałe m , K ate b ow ie m w yk az uje b ard z o d ob re z b il ansow anie pom ięd z y typow ym i z astosow aniam i se rw e row ym i i program istycz nym i, a m ul tim e d iam i i prostotą użycia.Już d om yśl na, pe łna instal acja ud ostępnia m asę program ów tak różnorod ną, że je śl i nie je ste ś w yb re d ny, to racz e j z upd ate os b ęd z ie sz m usiał k orz ystać w yłącz nie w ce l ach ak tual iz acji. Z najd ują się tu – m ięd z y innym i – jąd ro 2.6.17.13, GIM P 2.2.13, apach e 2 2.2.3, PH P 5.1.6, Xorg 7.1, pak ie t O pe n O ffice 2.0.3, cz y k ad u. Jak pok az ują w e rsje program ów , K ate stara się uch od z ić z a syste m now ocz e sny. M ICH AŁ RZ EPK A W sz ystk ie pak ie ty k om pil ow ane są pod i686, w ięc K ate od z nacz a się d ość sz yb k im d z iałanie m , naw e t na słab sz ym sprz ęcie . W łaśnie ta l e k k ość syste m u i sz yb k ość je stk ol e jnym z prioryte tów tw órców K asi. D l ate go stand ard ow ym środ ow isk ie m graficz nym , d ostępnym już po instal acji z płyt 1 i 2, je st XFCE 4.4. Na trz e cie ji cz w arte jpłycie z najd ują się k ol e jno K D E (w w e rsji 3.5.4) i Gnom e . Je śl i k om uś nie ch ce się ściągać k il k u giga, m oże z aopatrz yć się w M iniiso, w ażące ok oło 80 M B. Ta m iniatura syste m u z aw ie ra w sz e l k ie narz ęd z ia potrz e b ne d o z b ud ow ania 'pe łnopraw ne go' syste m u, a k onk re tnie j ściągnięcia je go e l e m e ntów z Była to K ate O S 3.0, k ol e jna od słona syste m u k ie d yś z nane go jak o K ate Linux. Tym raz e m nie b az ow ała już na Sl ack w are , (jak d aw nie j) – z ostała z b ud ow ana od z e ra. K ate 3.0 (i 3.1), w z upe łnym sk rócie , to d ość pok aźny z e staw now ych w e rsji prz e różnych program ów , k tórym i l ok al nie z arz ąd z a unik al ny i spotyk any tyl ko w K asi m e nad że r PKG. O pe ruje on na pl ik ach TGZ e x – form acie k tóre go racz e jnigd z ie w ięce j nie spotk acie . D o z d al ne j na sz cz ęście d l a w ie l u, je st on całk ow icie po Pol sk u, a na stronie d ok um e ntacji proje k tu z najd uje się sz cz e gółow y prz e w od nik instal acji we Fl ash u. Pod ob ie ństw o d o Sl ak a pojaw ia się je sz cz e w je d nym m ie jscu – instal acji pak ie tów . PKG potrafi b ow ie m instal ow ać TGZ , 'instal l pk g' z aś potrafi z ainstal ow ać pak ie t 'K asiow y'. Nie je st to je d nak prak tyk a z al e cana prz e z tw órców syste m u, ch ociażby d l ate go (al e nie tyl k o) że instal l pk g nie poinform uje użytk ow nik a, że b rak uje jak ich ś z al e żności.A by z ainstal ow ać pak ie t TGZ e x (z ak ład ając, że m am y go na d ysk u) w ystarcz y napisać pkg -i nazwa_pakietu Je śl i z k ol e i ch ce m y usuw ać, z am ie niam y w pow yższ e j k om e nd z ie i na r. Jak d o te go d orz ucim y '--w ith -d e ps', to usunie m y rów nie ż pak ie ty z al e żne . Pod nie sie nie pak ie tu d o w yższ e j w e rsji um ożl iw ia argum e nt '-u'. Upd ate -n otifie r w ak cji – m ilej się już ch yba n ie d a sie ci. Innym prioryte te m d e ve l ope rów K asi je st prostota użycia. Syste m w ym aga z nacz nie m nie j 'z ab aw ' prz y użytk ow aniu niż na prz yk ład Sl ack w are , co nie z nacz y je d nak że prow ad z i użytk ow nik a z a rącz k ę. Z al e żności są pil now ane , al e m ożna (je śl i się k onie cz nie ch ce ) z nich z re z ygnow ać. K ate b ow ie m je st z z ałoże nia prz e z nacz ona d l a użytk ow nik a k tóry już coś o Linuk sach w ie . D ow od e m tak ie go m yśl e nia m oże być już sam instal ator. Je st to b ow ie m surow o w ygl ąd ający, z m od yfik ow any instal ator z nany z e Sl ack w are - num e r 6 | 2006 In stalator K ate O S – m ałe d e ja-vu? Je śl i nie m am y pak ie tu na d ysk u, l ub ch ce m y ściągnąć jak iś program z Inte rne tu, z pom ocą prz ych od z i upd ate os. Po instal acji syste m u w arto w yd ać pol e ce nie : updateos -usd 5 SYSTEM PRO GRAM OW ANIE H ARDW ARE SO FTW ARE RO Z RYW K A forum K ate O S pod z ie l one je st już na cz ęść Pol sk o- i A ngie l sk ojęz ycz ną).O ficjal na d ok um e ntacja z aw ie ra h ow -to o b ud ow aniu pacz e k TGZ e x. Je śl i z głosisz ch ęć pom ocy, i w yk aże sz się um ie jętnościam i, to d ostanie sz autoryz ację i praw o d o pod z ie l e nia się z e św iate m w łasnoręcz nie z rob ionym i pacz k am i na PKG-Portald ystryb ucji. Je śl i cz e goś nie m oże sz z nal e źć z a pom ocą upd ate os, w arto z e rk nąć na PKGPortal . Je śl i nie m oże sz sob ie porad z ić na prz yk ład z instal acją m od e m u od Ne ostrad y, cz y k arty W iFi, to od pow ie d ź z najd z ie sz w ce ntrum d ok um e ntacji. Nie d a się uk ryć, że K ate O S roz w ija się b ard z o prężnie , i już od jak ie goś cz asu je st w ysok o oce niane , ch ociażby na tuxm ach ine s.org, cz y 'u nas' – na l inux.pl . M nie to osob iście nie d z iw i, i nie z am ie rz am instal ow ać pók i co żad ne go inne go syste m u... Przydatne adre s y http://kateos.org/ - strona domowa projektu http://wikidoc.kateos.org/index.php/ Main_Page – centrum dokumentacji http://kateos.org/forum/ - forum użytkowników KateOS http://kateos.org/?sekcja=kateIIIss – tak wygląda Kasia 3 In stalator K ate O S – m ałe d e ja-vu? Co z ak tual iz uje l istę pak ie tów . Te raz m ożna już sz uk ać, pisz ąc na prz yk ład : updateos -f kdegraphics Je śl i z aś w ie m y o co nam d ok ład nie ch od z i, m oże m y napisać: updateos -i apache2 'I' jak 'instal uj', 'f' jak 'find '. Upd ate os m oże z ak tual iz ow ać nam tyl ko k onk re tną grupę program ów , z a pom ocą: updateos -ug nazwa_grupy M oże i od raz u cały syste m , w ystarcz y go o to poprosić k om e nd ą: updateos -ud Tu m oże d ać o sob ie z nać je d na z nie prz yje m ności K ate . O tóż, m oże ona... nie w stać po ak tual iz acji, pók i nie w yd am y k om e nd y 'l il o'. M ożna te go d ok onać po ak tual iz acji a prz e d re starte m syste m u, m ożna rów nie ż pote m , b ootując K asię z a pom ocą płyty instal acyjne j. O b a w yże j opisane narz ęd z ia d z iałają w k onsol i, al e je śl i k toś ch ce , m oże z ainstal ow ać nie d aw no pow stałe go 'Upd ate -notifie ra'. Po je go od pal e niu, z ob acz ym y w tray-u l ogo K ate , k tóre m igając d a z nać, że w yk ryto d ostępne ak tual iz acje .W ystarcz y nań k l ik nąć, w yb rać co ch ce m y ak tual iz ow ać i z atw ie rd z ić. K asia to prod uk t rod z im y. Je d nak na ch w il ę ob e cną je go roz w oje m - od strony pacz k ow ania, d ok um e ntacji i w sparcia z ajm ują się l ud z ie z w ie l u k rajów (sam o Nie co trud n ie jsz y upd ate os, w yk on ujący z lece n ia n ie co prostsz e go upd ate -n otifie ra. num e r 6 | 2006 6 SYSTEM PRO GRAM OW ANIE H ARDW ARE SO FTW ARE RO Z RYW K A Efe k tyw ne z arz ądz anie inform acją w firm ie cz .1 Co je s tnajw ażnie js z e w proce s ie z arz ądz ania inform acją w firm ie ? TO M ASZ BEDNARSK I stosow anie k onstruk cji i sposob u d z iałania syste m u inform acyjne go d o spe cyfik i prz e d sięb iorstw a i je go ce l ów nad rz ęd nych . Je st to k w e stia ocz yw ista. Nie ocz yw ista je st je d nak m e tod a osiągnięcia te go ce l u. O d pow ie d z i na pytanie co je st najw ażnie jsz e w proce sie z arz ąd z ania firm ą nal e ży Tak ie pytanie z ad aje sob ie w ięk sz ość sz uk ać staw iając k ol e jne pytanie : co je st osób od pow ie d z ial nych z a prz ygotow anajw ażnie jsz e w proce sie roz w oju i prz e nie i w d roże nie z m ian w syste m ie z atrw ania firm y w d ługim ok re sie ? I tutaj rz ąd z ania firm ą. O d pow ie d z i są różne w m oże m y natrafić na w ie l e różnych od z al e żności k to nam je j ud z ie l i. W ygod a – pow ie d z i, al e je że l i firm a d z iała na rynpow ie d z ą pracow nicy; e k onom icz ność – k u k onk ure ncyjnym najw ażnie jsz y d l a je j od pow ie d yre k tor finansow y; b e z prz ysz łości je st k l ie nt. K l ie nt z ad ow ol ony pie cz e ństw o – ucz ul i ad m inistrator sysz ob sługi, prod uk tu, ce ny i k ontak tów z te m u l ub d yre k tor IT; e fe k tyw ność – firm ą w ok re sie użytk ow ania prod uk d yre k tor z arz ąd z ający. I k ażd y z nich m a tu/ k onsum ow ania usługi. K ażd y sz e f firrację. Pogod z e nie w sz ystk ich potrz e b je st m y w ie jak im trud nym z ad anie m je st b ard z o trud ne i w ym aga w łaściw e go poosiągnięcie te go ce l u. W arunk i otocz e nia, d e jścia na e tapie b ud ow ania k once pcji sysk onk ure ncja, d ostaw cy, w arunk i w sam e j te m u inform acyjne go prz e d sięb iorstw a. firm ie i w re sz cie potrz e by k l ie nta stanoSyste m inform acyjny w now ocz e sne j firw ią b ard z o z m ie nne i trud ne środ ow im ie pe łni rol ę pod ob ną d o te j, k tórą spe sk o. Sz tuk ą je st tak ie w yk orz ystanie łnia uk ład ne rw ow y w organiz m ie sprz yjających i z niw e l ow anie ne gatyw cz łow ie k a.Prz e k az uje sygnały m ięd z y ponych cz ynnik ów , aby ce l e firm y z ostały sz cz e gól nym i organam i i d e cyd uje o ich osiągnięte . Sz tuk ą, k tóra potrz e b uje d z iałaniu. Pod ob nie jak w prz ypad k u orpożyw k i w postaci d uże j il ości inform acji ganiz m u je że l i je d e n z organów z acz yna o od pow ie d nie j jak ości oraz narz ęd z i sz w ank ow ać – z acz ynają się k łopoty d ow spom agających pod e jm ow anie w łaścityk ające całości. W ażne je st z ate m d o- w ych d e cyz ji. Proce s pod e jm ow ania d e cyz ji m a różny ch arak te r. Je st on uz al e żniony od w ie l k ości firm y, je j roz m ie sz cz e nia ge ograficz ne go, struk tury organiz acyjne j, sposob u pod e jm ow ania d e cyz ji, il ości m ie jsc, w k tórych pod e jm ow ane są d e cyz je o różnym z ak re sie , w ad z e i w pływ ie na poz ostałe ob sz ary funk cjonow ania firm y. M ożna w yod ręb nić różne m od e l e funk cjonow ania, d l a k tórych pow stały tysiące k once pcji, m od e l i i roz w iąz ań w z ak re sie organiz acji i z arz ąd z ania syste m e m inform acyjnym . M im o te go ogrom u rz ad k o k ie d y roz w iąz anie stw orz one d l a je d ne j firm y spraw d z i się w inne j. D l acz e go? Ponie w aż k ażd a firm a inacz e j rad z i sob ie z opanow anie m sz tuk i d b ania o k l ie nta. I je st to z jaw isk o natural ne ponie w aż w arunk i funk cjonow ania są inne d l a k ażd e j z nich . Co z te go w ynik a w św ie tl e nasz ych roz w ażań nad b ud ow ą syste m u inform acyjne go? W ynik a z te go potrz e b a b ard z o ind yw id ual ne go pod e jścia d o b ud ow ania k once pcji syste m u z arz ąd z ania inform acją już na poz iom ie pl anow ania strate gicz ne go. Staw iając z ad ow ol e nie k l ie nta na sz cz ycie h ie rarch ii ce l ów firm y (z ysk i prz e trw anie uz naje m y z a ce l e z al e żne od z ad ow o- num e r 6 | 2006 l e nia k l ie nta) z m ie niam y spojrz e nie na w sz ystk o co d z ie je się w firm ie i je j otocz e niu. A nal iz a strate gicz na od pow iad a na pytanie , co je st w ażne d l a roz w oju firm y w d ługim ok re sie – w sk az uje k onk re tne cz ynnik i jak ie m ają d e cyd ujący w pływ na ofe rtę (k osz ty i w e fe k cie ce ny prod uk tów , jak ość surow ców i je j w pływ na jak ość prod uk tów ) oraz pod pow iad a ich pożąd ane w artości. Prz yk ład ow o ce na m e bl i z l ite go d re w na z al e ży w proste j l inii od ce n d re w na na rynk u. Prod uce nt m e bl i pow inie n prz e anal iz ow ać jak i w pływ na je go sytuację b ęd ą m iały ruch y ce n ponie w aż ich z m iany ok re śl ają ostate cz ny k sz tałt ofe rty i tym sam ym d e cyd ują w pe w ne j m ie rz e o z ad ow ol e niu k l ie nta. Z nając k l ucz ow e cz ynnik i d e cyd ujące o suk ce sie l ub porażce prz e d sięw z ięcia m ożna prz ygotow ać roz w iąz ania, k tóre um ożl iw ią ich optym al ne w yk orz ystanie . O b e jm uje to rów nie ż d z iałania z w iąz ane z syste m e m inform acyjnym . R oz pocz ynając proje k tow anie syste m u inform acyjne go od anal iz y potrz e b k l ie ntów (jak o w artości nad rz ęd ne j) oraz cz ynnik ów w pływ ających na poz iom ich z aspok oje nia, m oże m y osiągnąć e fe k t w postaci narz ęd z ia e fe k tyw nie 7 SYSTEM PRO GRAM OW ANIE w spom agające go nasz e d ąże nia. Jak ie narz ęd z ie m oże m y ok re śl ić m iane m e fe k tyw ne go? Trud no to ok re śl ić w z łotów k ach . Istnie ją co praw d a m e tod y syste m atyz ujące proce s oce ny e fe k tyw ności syste m u inform acyjne go, je d nak osiągane w ynik i nal e ży uz nać z a co najm nie j nie pre cyz yjne . Prz yjm ijm y w uprosz cz e niu, że sys- H ARDW ARE SO FTW ARE te m e fe k tyw ny to tak i, k tóry re al iz uje postaw ione prz e d nim z ad ania, łatw o d ostosow uje się z m ie niających się w ym agań, nie prz e sz k ad z a w prow ad z e niu b iz ne su i nie ab sorb uje z byt w ie l e środ k ów finansow ych . Tak a d e finicja e fe k tyw ności od pow iad a m nie j w ięce j od cz uciu osoby od pow ie d z ial ne j z a z arz ąd z anie fir- RO Z RYW K A m ą. Prod uce nci roz w iąz ań inform atycz nych coraz l e pie j to roz um ie ją i tw orz ą roz w iąz ania uk ie runk ow ane na re al iz ację prz e d staw ione j k once pcji proje k tow ania syste m ów inform acyjnych . O cz yw iście w prak tyce ok aże się, że oce na e fe k tyw ności d ane go roz w iąz ania b ęd z ie b ard z o różna d l a różnych środ ow isk , w k tórym prz yjd z ie im d z iałać. D l ate go nie z b ęd ne je st z roz um ie nie k once pcji jak a k ryje się z a proce se m proje k tow ania syste m u inform acyjne go w d ane j firm ie – k once pcji d b ania o z ad ow ol e nie k l ie nta – i prz ygotow anie roz w iąz ania w spółtw orz ące go now ą w artość. Pod sum ow ując. Spraw ny syste m inform acyjny je st nie z b ęd ny d o sk ute cz ne go z aspok ajania potrz e b k l ie ntów . Spraw ny syste m inform acyjny w now ocz e sne j firm ie nie m oże funk cjonow ać b e z spraw ne go syste m u inform atycz ne go. Tak i syste m pow inie n m ie ć z d ol ność e fe k tyw ne go w spie rania w sz ystk ich d z iałań firm y.Na e fe k tyw ność sk ład a się: - m ożl iw ości re al iz acji ok re śl onych z ad ań - m ożl iw ość sz yb k ie go d ostosow ania d o ind yw id ual nych potrz e b firm y m ożl iw ość z ape w nie nia be z pie cz e ństw a inform acji - cz as ab sorb ow any prz e z utrz ym anie i d ostosow yw anie syste m u - k osz t utrz ym ania i stosow ania w d ługim ok re sie O tw arte oprogram ow anie d osk onal e w pisuje się w z ałoże niom ok re śl ającym m iarę e fe k tyw ności syste m u. Jak ob jaw ia się to w prak tyce ? Nad tym z astanow im y się w k ol e jnym od cink u. num e r 6 | 2006 8 SYSTEM H ARDW ARE SO FTW ARE RO Z RYW K A PRO GRAM OW ANIE O bie k tow ość Na pocz ątk u program ow ano l iniow o. Prz yk łade m jęz yk a w yk orz ys tujące go tę te ch nik ę je s tBASIC. Program pis ano w te n s pos ób, że pie rw s z e l inijk i program u z najdow ały s ię na pocz ątk u pl ik u, a os tatnie na je go k ońcu (w s um ie je s tto najbardz ie jintuicyjny s pos ób k odow ania). W tak ie js am e j k ol e jności program s ię w yk onyw ał. M iędz y pos z cz e gól nym i m ie js cam i w program ie „s k ak ano” prz y pom ocy ins truk cji goto. Doprow adz ało to do pow s tania bardz o trudne go w pie l ęgnacji i cz ytaniu k odu z w ane go cz ęs to k ode m s pagh e tti. M ACIEJ 'borim ir' M ALINO W SK I Kol e jnym k rok ie m było w prow ad z e nie proce d ur (funk cji). D z ięk i te m u m ożna było pod z ie l ić program na l ogicz ne cz ęści i w ie l ok rotnie w yk orz ystyw ać tak napisany k od , po raz pie rw sz y w prow ad z ono d o program ow ania z asad ę ponow ne go w yk orz ystania k od u, d z ięk i te m u program y staw ały się k rótsz e . Łatw ie jsz e stało sie rów nie ż z arz ąd z anie nim i, prak tycz nie w cz e śnie jsz e l iniow e program y pisane były prz e z je d ne go program istę. O d m om e ntu z ad om ow ie nia się funk cji od pow ie d z ial ny m ógł być z a to już z e spół, k tóry d z ie l ił m ięd z y sie b ie pracę. ob ie k cie . D z ięk i te m u m oże m y w je sz cz e b ard z ie j intuicyjny niż w prz ypad k u struk tur sposób od d ać pe w ne e l e m e nty środ ow isk a. Tak a organiz acja program u z w ięk sz a rów nie ż je go prz e jrz ystość, o w ie l e łatw ie jsię nim z arz ąd z a oraz co najw ażnie jsz e o w ie l e łatw ie j program tak i m ożna roz b ud ow yw ać i posz e rz ać. O b ie k ty w yk orz ystyw ane są w b ard z o w ie l u jęz yk ach program ow ania m ięd z y inPostęp następnie d otk nął sposob u or- nym i w D e l ph i, Javie , cz y C+ + . W ganiz acji d anych . Pojaw iły sie b ow ie m k ażd ym z tych jęz yk ów prob l e m ob ie k struk tury (w Pascal u z w ane re k ord am i). tow ości roz w iąz any je st w nie co inny spoByły to typy d anych , k tóre w od - sób , al e te oria d z iałania ob ie k tów różnie niu od tab l ic m ogły sk ład ać się z poz ostaje prak tycz nie nie z m ie niona. w ie l u różnych typów d anych . Prz yk ła- Ucz ąc się program ow ania ob ie k tow e go d e m m oże być na prz yk ład w pis w k si- w je d nym z pow yższ ych jęz yk ów po poążce te l e fonicz ne j, k tóry oprócz naz w isk a z naniu nie w ie l k ich różnic m ożna prz e sii im ie nia ob e jm uje rów nie ż num e r ąść się na inny. te l e fonu. O d te go m om e ntu m ożna było w b ard z ie j natural ny sposób od d aw ać Z acz nijm y w ięc od ogól ne go poz nania pe w ne m od e l e z e św iata rz e cz yw iste go. ob ie k tów . Z tą te ch nik ą, z re sz tą jak z k ażd ą inną w iąże się pe w ie n z b iór naz w Kol e jnym k rok ie m było w prow ad z e nie od nosz ących się d o posz cz e gól nych ob ie k tów , o k tórych b ęd z ie trak tow ał te n pojęć. Najw ażnie jsz ym z nich je st ob ie k t, artyk uł. Te ch nik ę w yk orz ystującą ob ie k ty naz yw any je st on rów nie ż e gz e m pl arz e m i ich w łaściw ości tak ie jak pol im orfiz m i k l asy. K l asa je st type m d anych . d z ie d z icz e nie naz yw am y Program ow a- D e finiującym z arów no ob ie k ty, z k tórych nie m O rie ntow anym O b ie k tow o. się sk ład a jak i rów nie ż pe w ne funk cje . Kl asę m ożna porów nać d o typu sam och oNajproście j m ożna w yjaśnić cz ym w z asa- d u Ford Escort, a ob ie k t d o je go ok re śl od z ie je st ob ie k t m ów iąc o nim jak o o ne go fiz ycz nie istnie jące go e gz e m pl arz a. struk turz e , w k tóre joprócz d anych sk ład o- K l asa m ożna pow ie d z ie ć nie istnie je w ych z aw arte są rów nie ż funk cje sk ład o- fiz ycz nie w program ie , al e je d ynie ob ie k w e , k tóre służą d o ope row ania na ty, k tóre są je j e gz e m pl arz am i. Pod ob nie num e r 6 | 2006 d o w spom niane go pow yże j Ford a Escorta. Nie m ożna pow ie d z ie ć, że jak o typ sam och od u je st on ob e cny fiz ycz nie i nam acal nie , al e już je go k onk re tny e gz e m pl arz jak najb ard z ie j. Jak już w spom niałe m k l asa opisuje el e m e nty sk ład ow e .M ogą nim i być ob ie k ty.M ów iąc o ob ie k tach m am na m yśl i z arów no typy w b ud ow ane w d any jęz yk program ow ania, typy prz e z nas z d e finiow ane jak i rów nie ż inne ob ie k ty. Nie d oz w ol one je st je d ynie z am ie sz cz anie ob ie k tu te j sam e j k l asy. Jak na raz ie m oże m y m yśl e ć o ob ie k tach po prostu jak o struk turach .O d różnia je je d nak w ystępow anie tak z w anych funk cji sk ład ow ych ( w innych jęz yk ach np. PH P naz yw ane są m ało sz cz ęśl iw ie m e tod am i). Funk cje sk ład ow e to pe w ne „z ach ow ania”, k tóre cz ęsto naz yw am y inte rfe jse m d ane j k l asy, cz yl i sposob am i w jak i m oże m y na nią w pływ ać. Poniże j z am ie sz cz am pe w ie n prz yk ład . M am y ob ie k t kl asy w łącz nik . Je st to jak iś w łącz nik , k tóry naz w ijm y np. m ój_ w łącz nik (k ol e jną w ażną ce ch ą ob ie k tu je st to, że ob ie k ty roz różniam y prz y pom ocy pe w ne j unik atow e j d l a nich naz w y). M oże m y ustaw ić go w stanie w łącz ony, l ub w yłącz ony. Je st to pe w na ak cja jak ą m ożna na nim w yk onać, a w ięc je st to el e m e nt inte rfe jsu. Prz yk ład ow o k l asę w łącz nik ów m oże m y z d e finiow ać następująco: 10 SYSTEM H ARDW ARE SO FTW ARE RO Z RYW K A PRO GRAM OW ANIE class włącznik { bool stan; void włącz() { stan = true; dalsze ciało funkcji odpowiedzialnej za włączanie } void wyłącz() { stan = false; dalsze ciało funkcji odpowiedzialnej za wyłączanie } }; Pow yższ a d e finicja k l asy je st napisana w pse ud ok od z ie . W id z im y w nie j d e finicję ob ie k tu z ach ow ujące go ob e cny stan w łącz nik a (ob ie k t stan), oraz d w ie funk cje , k tóre um ożl iw iają ope row anie na nim . Je st to d e finicja pe w ne j k l asy w łącz nik ów , k tóra w rz e cz yw istości nie istnie je w program ie . Z d e finiujm y w ięc sob ie pe w ie n w łącz nik : włącznik mój_włącznik; M am y już w program ie je d e n ob ie k t k l asy w łącz nik i od te go m om e ntu m oże m y nim się posługiw ać.W jak i sposób ope ruje m y na d anym ob ie k cie ? O cz yw iście używ am y inte rfe jsu, a w ięc je go funk cji sk ład ow ych . By np. w łącz yć nasz w łącz nik m oże m y napisać: mój_włącznik.włącz(); Je st to b ard z o prz e jrz ysty sposób ope racji na ob ie k cie . Najpie rw pod aje m y je go naz w ę, a następnie po k ropce funk cję, k tórą ch ce m y na je go rz e cz w yw ołać.O popraw ność w yw ołania funk cji sk ład ow e j w łącz () na rz e cz ob ie k tu m ój_ w łącz nik d b a k om pil ator. M oże m y od w oływ ać się rów nie ż d o ob ie k tów sk ład ow ych . Na prz yk ład po utw orz e niu ob ie k tu urz ąd z e nie , z a w łącz anie , k tóre go od pow ie d z ial ny je st w łącz nik je st w yłącz one i ch ce m y by było to w ob ie k cie uw z gl ęd nione .M ożna ucz ynić to w następujący sposób : mój_włącznik.stan = false; O z nacz a to, że ob ie k t stan prz yjm uje w artość fal se (fałsz ) i tym sam ym uz naje m y, że je st on w yłącz ony. W id z im y tutaj, że pod ob nie jak d o funk cji m ożna od nie ść się d o ob ie k tów sk ład ow ych d ane go ob ie k tu i od pow ie d nio m od yfik ow ać ich w artości. O b ie k ty i funk cje sk ład ow e są w pe łni w artościow ym i ob ie k tam i i funk cjam i i m ogą się pojaw ić w tych sam ych m ie jscach co z w yk łe z m ie nne i funk cje w program ie .Z apre z e ntow any sposób od nosz e nia się b e z pośre d nio d o e l e m e ntu sk ład ow e go w łącz nik a nie je st d ob rym pom ysłe m . Po pie rw sz e naraża nas to na pe w ne prob l e m y z w iąz ane z k ontrol ą prz ypisyw anych d o d ane go ob ie k tu d anych , a po d rugie m od yfik ow anie k ol e jnych sk ład ow ych ob ie k tu je st nie prak tycz ne w prz ypad k u gd y ich l icz b a w je d ne j kl asie prz e k racz a np. 10 (m oże m y z d e finiow ać k l asę ob ie k tów z aw ie rającą in- form acje nie tyl k o o stanie w łącz nik a, al e np. o tym jak ie go on je st k ol oru, jak i je st je go roz m iar, il e raz y był w łącz any i w yłącz any, z a w łącz anie i w yłącz anie cz e go od pow iad a) i m am y w program ie np.10 w łącz nik ów to praca z nim i je st l ek k o m ów iąc nie e fe k tyw na, a d osad nie j- naraża nas na cz ęste pope łnianie pom yłe k . Dl ate go l e pie j je st używ ać funk cji sk ład ow ych d o ope racji na ob ie k tach , po pie rw sz e m ożna w nie j od nosić się i z m ie niać d ow ol ną l icz ę param e trów k l asy na raz , a d od atk ow o m ożna w nich łatw o d od ać m e ch aniz m y k ontrol i w prow ad z anych d anych . Ponie w aż ch ce m y m ie ć m ożl iw ość ustaw iania w artości od pow ie d nich d l a nasz e go ob ie k tu po je go k onstruk cji m oże m y d od ać k ol e jną funk cję sk ład ow ą: class włącznik { bool stan; kolor kol; void ustaw(kolor _kol) { stan = false; kol = _kol; } void włącz() { stan = true; dalsze ciało funkcji odpowiedzialnej za włączanie } void wyłącz() { stan = false; dalsze ciało funkcji odpowiedzialnej za wyłącza- num e r 6 | 2006 nie }; } M am y te raz d od atk ow ą sk ład ow ą typu k ol or, k tóra z aw ie ra inform acje o k ol orz e ob ie k tu typu w łącz nik , oraz funk cję, k tóra um ożl iw ia ustaw ie nie d om yśl nych w artości stanu i k ol oru. W id z im y tutaj, że od w ołując się d o e l e m e ntów sk ład ow ych d ane jk l asy w ystarcz y pod ać ich naz w y, a k om pil ator spraw d z i, cz y w ystępują one w d ane jk l asie i od pow ie d nio nam je ud ostępni. W artość z m ie nne j stan ustaw iana je st d om yśl nie na w artość fal se , a k ol or m oże m y pod ać jak o param e tr funk cji ustaw . Tak , w ięc, by utw orz yć ob ie k t m ój_ w łącz nik typu w łącz nik i prz ypisać m u w artości d om yśl ne m oże m y posłużyć się następującym sposob e m : włącznik mój_włącznik; mój_włącznik.ustaw(biały); Tw orz ym y w te n sposób ob ie k t w łącz nik i w d rugie j l inijce ustaw iam y w artości je go ob ie k tów sk ład ow ych . Nie je st to je d nak w ygod ne roz w iąz anie . O b ie k ty z e sw e j natury pow inny być rów nie proste jak typy sk ład ow e , a m y potrz e b uje m y tym cz ase m , aż d w óch l inije k by utw orz yć i od pow ie d nio ustaw ić nasz ob ie k t. Nie je st to na pe w no w ygod ne . Prz ych od z i nam z pom ocą pe w na spe cjal na funk cja sk ład ow a z w ana k onstruk tore m . W yw oływ ana je st nie jaw nie prz e z k om pil ator w m om e ncie tw orz e nia now e go ob ie k tu. Konstruk tor je st funk cją, k tóra m a tak ą sam ą naz w ę jak k l asa, d o k tóre j je st prz ypisany i nie z w raca on żad nych w artości, al e m oże m y d o nie go pe w nie 11 SYSTEM H ARDW ARE SO FTW ARE RO Z RYW K A PRO GRAM OW ANIE d ane w ysłać. Tak w ięc nasz a k l asa w ygl ąd a te raz w sposób następujący: class włącznik { bool stan; kolor kol; włącznik(kolor _kol) { stan = false; kol = _kol; } void włącz() { stan = true; dalsze ciało funkcji odpowiedzialnej za włączanie } void wyłącz() { stan = false; dalsze ciało funkcji odpowiedzialnej za wyłączanie } }; Po te j nie w ie l k ie j z m ianie m oże m y tw orz yć ob ie k ty w następujący sposób : włącznik wł_biały = biały; włącznik wł_czerwony(czerwony); W id z im y, że pie rw sz y z e sposob ów je st id e ntycz ny z tym jak ie go używ am y d o nad aw ania w artości ob ie k tom w b ud ow anym . Po prostu po z nak u rów ności prz e k az uje m y w artość, k tórą k om pil ator w ysyła d o k onstruk tora i now e m u ob ie k - tow i prz ypisany je st od pow ie d ni k ol or. D rugi sposób je st nie co m nie j prosty. W id z im y tutaj po prostu w pisanie w artości b e z pośre d nio po naz w ie ob ie k tu. Ta w artość rów nie ż prz e k az yw ana je st d o uruch am iane go k onstruk tora, k tóry prz ypisuje nam od pow ie d nio w artości d l a sk ład ow ych .Pie rw sz y sposób m ożna używ ać tyl k o w ów cz as, gd y d o k onstruk tora prz e k az uje m y je d ną w artość, a d rugi sposób prz ypom inający w yw ołanie funk cji m oże być k orz ystny gd y d o k onstruk tora w ysyłam y w ięce jniż je d ną w artość. W prz ypad k u k onstruk torów b ard z o cz ęsto stosow ana je st te ch nik a z w ana prz e ład ow anie m funk cji. O z nacz a to, że d e finiuje m y sob ie w k l asie parę k onstruk torów (k ażd y m a tak a sam ą naz w ę), al e różnią się one il ością i rod z aje m prz e syłanych d o nich w artości. M oże m y w ów cz as b ard z o łatw o tw orz yć ob ie k ty, prz e k az ując d o k onstruk tora jak najm nie j w artości. Je d nocz e śnie k onstruk tor, k tóry m oże z ostać w yw ołany b e z żad ne go argum e ntu naz yw any je st k onstruk tore m d om yśl nym . O cz yw iście m oże m y z aw sz e w yw ołać proce d urę sk ład ow ą w yłącz prz e d l ik w id acją ob ie k tu: mój_włącznik.wyłącz(); Pojaw iają się d w a prob l e m y, b ow ie m w cal e nie m usim y, prz e cie ż w ie d z ie ć, gd z ie nasz ob ie k t je st l ik w id ow any, l ub po prostu nie ch ce m y pam iętać o tym , by z aw sz e w yłącz yć d ane urz ąd z e nie . Tutaj z roz w iąz anie m prz ych od z i k ol e jny rod z aj funk cji sk ład ow e j m ianow icie d e struk tor. Je st on prz e ciw ie ństw e m k onstruk tora. R ów nie ż o je go uruch om ie nie nie m usim y się m artw ić, gd yż w m om e ncie l ik w id ow ania ob ie k tu k om pil ator uruch om i go d l a nas. D o d e struk tora nie m oże m y d od atk ow o prz e słać, ani od e b rać żad nych d anych , nie m oże być on rów nie ż prz e ład ow any, a w ięc d l a d ane go ob ie k tu je st tyl k o je d e n d e struk tor. D e struk tor pod ob nie jak k onstruk tor m a tak ą sam ą naz w ę jak k l asa, w k tóre j je st d e finiow any i d l a od różnie nia d od atk ow o prz e d je go naz w ą z najd uje się z nak '~ '. Te raz d e finicja nasz e j k l asy w ygl ąd a w sposób następujący: W ie m y jak są tw orz one ob ie k ty, w ie m y rów nie ż, że nie m ogą one istnie ć w class włącznik { program ie w nie sk ończ oność tyl ko w bool stan; pe w nym m om e ncie są l ik w id ow ane . kolor kol; K ie d y się to d ok ład nie d z ie je z al e żne je st nie tyl k o od rod z aju jęz yk a program ow awłącznik(kolor _kol) nia, k tórym się posługuje m y, al e rów nie ż { od je go im pl e m e ntacji. M oże się z d arz yć stan = false; tak , że prz e d z l ik w id ow anie m w łącz nik a kol = _kol; m oże m y ch cie ć by urz ąd z e nie , k tóre } w łącz ał było w yłącz ane , by po prostu po z ak ończ e niu d z iałania program u nie z uży~włącznik() w ało b e z se nsu prąd u (um ów m y się, że { m artw im y się o środ ow isk o natural ne ). wyłącz(); num e r 6 | 2006 } void włącz() { stan = true; dalsze ciało funkcji odpowiedzialnej za włączanie } void wyłącz() { stan = false; dalsze ciało funkcji odpowiedzialnej za wyłączanie } }; D z ięk i utw orz e niu d e struk tora d l a k asy k ażd y ob ie k t w m om e ncie l ik w id ow ania go b ęd z ie m iał poprz e z d e struk tor uruch am ianą funk cję sk ład ow ą w yłącz (), po cz ym b ęd z ie k asow any. Są to w z asad z ie pod staw ow e e l e m e nty sk ład ow e k ażd e j k l asy w w ięk sz ości jęz yk ów program ow ania. Poz ostał je sz cz e je d e n b ard z o w ażny e l e m e nt – m ianow icie d ostęp d o ok re śl onych e l e m e ntów . D ostęp d o e l e m e ntów sk ład ow ych w iąże się ściśl e z b ard z o w ażnym z ad anie m ob ie k tów – z e nk apsul acją d anych . Pojęcie to oz nacz a, że w ob ie k tach pe w ne e l e m e nty m oże m y ch ow ać prz e d użytk ow nik am i nasz e j k l asy.D z ięk i cz e m u m a ona m nie jsz y inte rfe js, je st b ard z ie j prz e jrz ysta i z w ięk sz a się b e z pie cz e ństw o je j użytk ow ania. Cz e m u je st to tak ie w ażne ? O b ie k ty w ym yśl ono jak o sposób na uspraw nie nie pracy nad d użym i proje k tam i. W proje k tach tak ich pe w ne z e społy 12 SYSTEM H ARDW ARE SO FTW ARE RO Z RYW K A PRO GRAM OW ANIE pracują nad ok re śl onym fragm e nte m program u. D od ają posz cz e gól ne e l e m e nty d o sw oje j cz ęści cz ęsto używ ając ob ie k tów stw orz onych prz e z inne z e społy. Nie inte re suje ich sposób w jak i osiągnięto np. w łącz anie i w yłącz anie d anych urz ąd z e ń prz e z ob ie k ty k l asy w łącz nik , inte re suje ich tyl k o to, że tak ie ope racje m ożna na w łącz nik ach w yk onać. Pisz ąc d aną k l asę nal e ży rob ić to tak jak byśm y pisal i ją d l a jak ie goś inne go program isty (nigd y prz e cie ż nie w ie m y co się z nią stanie ).D ob rz e je st w ów cz as, pe w ne e l e m e nty d o k tórych użytk ow nik nie pow inie n m ie ć d ostępu z ab e z pie cz yć. Cz e m u? Ch oćby d l ate go by nie d aw ać m u sz ans na z e psucie ob ie k tu. Z ałóżm y. że posługując się nasz ą k l asą użytk ow nik z rob i coś tak ie go: mój_włącznik. włącz(); mój_włącznik.stan = false; Najpie rw w łącz y d ane urz ąd z e nie , a następnie ustaw i stan w łącz nik a na w artość fal se , cz yl i w yłącz ony. Je st to ocz yw iście b łąd , b o sam o ustaw ie nie stanu nic nie d a. Urz ąd z e nie je st nad alw łącz one , al e w łącz nik już o tym nie w ie i z acz ynają się prob l e m y.M ożna sob ie z ad ać w ięc pytanie po co użytk ow nik ow i d ostęp d o el e m e ntu sk ład ow e go stan, sk oro to nie on, al e funk cje sk ład ow e na nim ope rują? Je śl i postaw im y sob ie to pytanie i uz nam y, że d ostęp d o te go e l e m e ntu nie je st k onie cz ny to d och od z im y d o b ard z o w ażne j funk cji ob ie k tów . M oże m y b ow ie m pe w ne e l e m e nty sk ład ow e tak ie jak ob ie k ty, cz y funk cje ucz ynić pryw atnym i dl a ob ie k tu. W ystępują one w d anym ob ie k cie , al e użytk ow nik nie m a praw a d o nich się od w oływ ać. Nie tyl k o je z m ie niać, al e naw e t cz ytać. M ogą na nich ope row ać tyl k o funk cje sk ład ow e d ane go ob ie k tu w nasz ym prz ypad k u funk cje w łącz i w yłącz , oraz k onstruk tory i d e struk tor. Je st to tak z w ana e nk apsul acja. Uprasz cz am y inte rfe js i je d nocz e śnie z ab e z pie cz am y nasz ob ie k t prz e d popsucie m , z m nie jsz ając praw d opod ob ie ństw o pope łnie nia b łęd u. Tryb pryw atny nie je st je d ynym tryb e m d ostępu d o ob ie k tów . W ystępują rów nie ż tryby ch roniony i pub l icz ny. Pub l icz ny oz nacz a, że d o d ane j sk ład ow e j m oże od w oływ ać się k ażd y użytk ow nik , inne ob ie k ty cz y funk cje sk ład ow e , natom iast ch roniony um ożl iw ia od w oływ anie się tyl ko kl as d z ie d z icz ących d aną k l asę (o d z ie d z icz e niu nie b ęd ę pisał). Nasz a k l asa w ygl ąd a te raz następująco: class włącznik { private: bool stan; kolor kol; public: włącznik(kolor _kol) { stan = false; kol = _kol; } cji odpowiedzialnej za włączanie } void wyłącz() { stan = false; dalsze ciało funkcji odpowiedzialnej za wyłączanie } }; M am y w nie j d w a ob sz ary je d e n roz ciąga sie od e tyk ie ty private d o pub l ic i oz nacz a cz ęść, k tóra ch roniona je st prz e d użytk ow nik ie m , d ruga od pub l ic d o k ońca d e finicji k l asy, k tóra d ostępna je st dl a w sz ystk ich . Tak i sposób organiz acji kl asy z pod z iałe m je j na od pow ie d nie cz ęści o ok re śl onym d ostępie św iad cz y o d ob rym styl u program ow ania i d uże j od pow ie d z ial ności z a proje k t. Z nam y już w sz ystk ie pod staw ow e w łaściw ości k l as i ob ie k tów . Ch cę z az nacz yć, że nie w sz ystk ie one m usz ą być d ostępne w k ażd ym z jęz yk ów ob ie k tow ych . W z asad z ie w ie l e z nich posiad a d od atk ow e ud ogod nie nia, k tóre w je sz cz e w ięk sz ym stopniu ułatw iają pracę, al e ich opis w yk racz a poz a ram y te go artyk ułu. ~włącznik() { wyłącz(); } void włącz() { stan = true; dalsze ciało funk- W ie m y już jak d e finiow ać k l asy i ob ie k ty oraz jak ich używ ać. Nie w ie m y je sz cz e w jak i sposób stosow ać je w nasz ych program ach . Po pie rw sz e k l asy um ożl iw iają najw ie rnie jsz e od d anie rz e cz yw istości w program ie z proponow anych d o te j pory te ch nik program ow ani. Prz e z co ich używ anie i pisanie je st b ard z o intuicyj- num e r 6 | 2006 ne . Łatw ie j je st napisać np. program sym ul ujący d z iałanie proste go m óz gu (sie ć ne uronow ą) d e finiując sob ie najpie rw ob ie k ty z w ane ne uronam i, a następnie prz y ich pom ocy tw orz yć od pow ie d nie e l e m e nty całe j sie ci. W trad ycyjnym pod e jściu byl ibyśm y z m usz e ni z d e finiow ać sz e re g nie połącz onych w program ie , a je d ynie l ogicz nie funk cji i ob ie k tów , Cały program prz e z to, że d e finiow any od m ie nnie od sposob u w jak i postrz e gam y św iat byłby trud ny i od strasz ający. M im o te go, że program ow anie ob ie k tow e w yd aje się być tak ie natural ne d l a w ie l u osób , z w łasz cz a tych prz yz w ycz ajonych d o program om ania proce d ural ne go w yd aje się być trud ne , b o ok az uje się, że najtrud nie j je st rob ić z rz e cz y sk om pl ik ow anych proste , a w łaśnie d o te go Program ow anie O rie ntow ane O b ie k tow o najl e pie j się nad aje . O cz yw iście w sz ystk o m a sw oje granice i nie z aw sz e opłaca się w prow ad z ać ob ie k ty, gd yż w b ard z o prostych program ach , typu „H e l l o W orl d ” m ogą one całą spraw ę nad m ie rnie k om pl ik ow ać. Jak pl anow ać program ob ie k tow y? Nie je st to proste pytanie i by być d ob rym program istą ob ie k tow ym po pie rw sz e potrz e b ne je st pe w ne d ośw iad cz e nie , a po d rugie w ie d z a. Program u ob ie k tow e go nie m ożna po prostu napisać, trz e b a go w cz e śnie j od pow ie d nio z aproje k tow ać. Dl a spore j rz e sz y osób je st to d uży m inus Program ow ania O b ie k tow e go, al e d z ięk i te m u nasz program z am iast być b e z ład ną pl ątaniną ob ie k tów i k l as stanie się pe re łk ą, z k tóre j b ęd z ie m y d um ni. Po pie rw sz e nal e ży b ard z o d ogłęb nie po- 13 SYSTEM H ARDW ARE SO FTW ARE RO Z RYW K A PRO GRAM OW ANIE z nać m od e l , k tóry b ęd z ie m y od w z orow yw ać. Następnie nal e ży się z astanow ić jak ie k l asy b ęd ą nam potrz e b ne np. ne urony w m óz gu (w ażne je st by d e finiow ać tyl e kl as il e je st to napraw d ę nie z b ęd ne d o roz w iąz ania prob l e m u, nie m nie j nie w ięce j, cz ęsto b ow ie m m ożna tw orz yć ob ie k ty, prz y k tórych nie potrz e b nie się napracuje m y i je d nocz e śnie b ęd ą one cały program nie potrz e b nie gm atw ać), m usim y ok re śl ić od pow ie d nie z al e żności m ięd z y nim i i to jak naw z aje m z e sob ą od d z iałują. D opie ro po tym m oże m y z acz ąć program ow ać. Je st to ocz yw iście b ard z o sk rócony opis, pow stało w ie l e k siąże k trak tujących o proje k tow aniu program ów . Cz y ob ie k tow ość je st ostate cz nym e tape m roz w oju program ów i cz y nie d a się cz e goś now e go w ym yśl ić? O d pow ie d z ie ć je st prosta - ob ie k tow ość na pe w no nie je st ostatnią rz e cz ą jak ą m ożna w program ow aniu popraw ić i na pe w no nie roz w iąz uje w sz ystk ich prob l e m ów . By ją je sz cz e b ard z ie j uspraw nić w prow ad z ono m e ch aniz m y d z ie d z icz e nia, funk cji w irtual nych i pol im orfiz m . Na pe w no je sz cz e w ie l e d o program ow ania m ożna w nie ść prz yk ład e m m ogą być w ciąż roz w ijane sz ab l ony stosow ane w C+ + . M am nad z ie ję, że w ie l e osób po prz e cz ytaniu te go k rótk ie go artyk ułu o program ow aniu ob ie k tow ym pocz uje się pe w nie j i sprób uje sw oich sił w te j d z ie d z inie . Z apras zam y na FO RUM w /w / : p t t h m u r o f . w num e r 6 | 2006 b . a i n o g a r -d l p . e e 14 SYSTEM H ARDW ARE SO FTW ARE RO Z RYW K A PRO GRAM OW ANIE C+ + cz .5 W tym odcink u s k ończ ym y om aw ianie pods taw ow ych el e m e ntów jęz yk a C+ + i od prz ys z łe go num e ru z acz nie m y z ajm ow ać s ię już typam i de finiow anym i prz e z program is tę cz yl i tak z w anymikl as am i. Z ach ęcam do prz e cz ytania m oje go artyk ułu o Program ow aniu O bie k tow ym w tym num e rz e . Je s t to w s tęp do te ch nik i, k tórą będz ie m y poz naw ać od nas tępne go num e ru. M ACIEJ 'borim ir' M ALINO W SK I O m aw iane b ęd ą d z isiajw sk aźnik i i now ość w C+ + w stosunk u d o C - re fe re ncja. Cz ym są w sk aźnik i? Są to ob ie k ty, w k tórych prz e trz ym uje m y ad re sy innych ob ie k tów .Używ ając ich m oże m y się od nosić d o d anych w sk az yw anych prz e z te n ad re s. Pe w nie w ie l e osób z astanaw ia się po co tak a k onstruk cja? O tóż pow stała ona by uspraw nić pracę z tab l icam i i um ożl iw ić m od yfik ow anie w artości argu- m e ntów prz e k az anych d o funk cji. O pe ratore m w sk aźnik a je st z nak '*'. Staw ia się go prz e d naz w ą w sk aźnik a w m ie jscu d e finicji. Prz yk ład e m w sk aźnik a, k tóry m oże prz e ch ow yw ać ad re s ob ie k tów typu d oub l e je st: double * wskaznik; Następnie m oże m y tak ie m u w sk aźnik ow i prz ypisać ad re s jak ie goś ob ie k tu typu d oub l e: double pi = 3.14; double * wskaznik; wskaznik = π Poz naje m y k ol e jny ope rator `& `. Je st to tak z w any ope rator re fe re ncji. Staw ia się go prz e d naz w ą ob ie k tu i z w raca on ad re s te go ob ie k tu w pam ięci. K ażd y ob ie k t (z m ie nna, funk cja) po z d e finiow aniu otrz ym uje ok re śl one m ie jsce w pam ięci, w k tórym z apisana je st je go w artość. Kol e jna w ażną spraw ą je st sposób od w oływ ania się d o ob ie k tu w sk az nik .Je śl i prz ypisuje m y mu ad re s od pow ie d nie j z m ie nne j to nie stosuje m y `*` prz y naz w ie w sk aźnik a. Natom iast je śl i ch od z i nam o w artość z m ie nne j, na k tórą w sk az uje to z nak '*' je st w ym agany. Co m ożna z rob ić z e w sk aźnik ie m (z ak ład ając, że m am y już popraw nie prz ypisa- ny m u ad re s)? Najw ażnie jsz ą spraw ą je st to, że m oże m y z rob ić to sam o co z e z w yk łą z m ie nną typu d oub l e (a d ok ład nie z je j w artością). D o w artości z m ie nne j, k tórą w sk az uje d any w sk aźnik od nosim y się poprz e z ope rator d e re fe re ncji '*' (te n sam , k tóre go używ al iśm y w m om e ncie d e finiow ania ob ie k tu). w sk aźnik – w ów cz as m ożna m od yfik ow ać z m ie nną, k tóre j ad re s z aw ie ra poprz e z te n w sk aźnik , al e nie m ożna z m ie niać w artości ad re su z apisane go w tym w sk aźnik u, ostatnia m ożl iw ość to stały w sk aźnik d o stałe j, k tóry łącz y pow yższ e d w ie ce ch y. A oto prz yk ład y d e finicji: cout << *wskaznik << endl; const int * wsk_i; // wskaźnik do stałej char * const wsk_c; // stały wskaźnik do zmiennej const double * const wsk_d; // stały wskaźnik do stałej Z ak ład ając z e w sk az nik je st ob ie k te m z pow yższ ych prz yk ład ów na k onsol i pow inniśm y otrz ym ać w artość 3.14.M ożna pow ie d z ie ć, że w sk aźnik je st innym sposob e m od w ołania się d o d ane j z m ie nne j poprz e z je j ad re s. Na raz ie nie w id ać nic cie k aw e go w te j m ożl iw ości gd yż d o te j pory od w oływ anie się w z w yk ły sposób nam w ystarcz ało, al e z anim poz nam y now e m ożl iw ości m usz ę d ok ład nie jopisać w sk aźnik i. Po pie rw sz e w sk aźnik nie prz e ch ow uje je d ynie ad re su ob ie k tu d o k tóre go się od nosi, al e rów nie ż typ te go ob ie k tu. D l ate go w m om e ncie d e finicji pod al iśm y typ d oub l e dl a w sk aźnik a w sk az nik . W ażne je st to, że w sk aźnik d ane go typu m oże w sk az yw ać tyl k o na z m ie nne te go sam e go typu. Nie m ożna prz ypisać ad re su z m ie nne j typu ch ar w sk aźnik ow i d o d oub l e . D o d ane go w sk aźnik a m oże m y w ie l ok rotnie w trak cie pisania program u prz ypisyw ać różne ad re sy z m ie nnych je śl i tyl k o typ w sk aźnik a na to poz w al a. D e finiując w sk aźnik i m oże m y ok re śl ić w ich d e finicji posługując się m od yfik atore m const cz y m a to być w sk aźnik d o ob ie k tu stałe go (nie m oże m y w ów cz as m od yfik ow ać w artości te go ob ie k tu poprz e z te n w sk aźnik ), cz y m a to być stały num e r 6 | 2006 Poz nal iśm y już sposób w jak i d e finiuje się w sk aźnik d o ob ie k tu poje d yncz e go. Jak w tak im raz ie w ygl ąd a w sk aźnik d o tab l icy? O tóż w ygl ąd a on id e ntycz nie . Jak o typ ob ie k tu w sk az yw ane go nal e ży pod ać typ, k tóry w tab l icy je st prz e ch ow yw any. char imie[] = „Jan”; char *wsk_imie = imie; W id z im y d e finicję tab l icy z nak ów , k tóra prz e ch ow uje ciąg im ie i k ończ ący go z nak '\ 0' (tab l ica ta m a roz m iar rów ny 4) oraz d e finicję w sk aźnik a, k tórym m ożna w sk az yw ać ob ie k ty typu ch ar. Je d nocz e śnie m am y w tym m ie jscu inicjal iz ację w sk aźnik a. Prz ypisuje m y m u ad re s tab l icy im ie . I tutaj je st pie rw sz a nie spod z iank a w m om e ncie prz ypisyw ania ad re su nie stosuje m y w od nie sie niu d o tab l icy ope ratora '& ', ponie w aż naz w a tab l icy z aw ie ra ad re s sw oje go pie rw sz e go e l e m e ntu. M oże w yd aw ać się to sk om pl ik ow ane , al e je st b ard z o l ogicz ne . 15 SYSTEM H ARDW ARE SO FTW ARE RO Z RYW K A PRO GRAM OW ANIE Gd yż naz w ę tab l icy m oże m y trak tow ać jak o w sk aźnik d o je j pie rw sz e go e l e m e ntu. Gd y um ie m y już d e finiow ać w sk aźnik i d o z m ie nnych i tab l ic m oże m y z ad e m onstrow ać jak z nacz nie uprasz cz a to pracę (Listing 1). Lis ting 1 #include <iostream> using namespace std; char * strcat(char * a, char * b); //(1) int main() { char imie_nazw[100] = "Jan"; //(2) char * nazwisko = " Kowalski"; //(3) cout << strcat(imie_nazw, nazwisko) << return 0; //(5) } char * strcat(char * a, char * b) //(6) { char * poczatek = a; //(7) while( *++a); //(8) while( *a++ = *b++ ); //(9) return poczatek; //(10) } W ynik d z iałania program u: Jan Kow al sk i 1)W tym m ie jscu m am y d e k l arację funk cji strcat, k tóre j z ad anie m je st d ołącz ać tab l icę z nak ow ą pod aną jak o d rugi argum e nt funk cji na sam k onie c tab l icy z nak ów pod ane j jak o pie rw sz a. D e finicja w łaściw a tre ści te j funk cji z naj- d uje sie tutaj(6). 2)Tw orz ym y tab l icę z nak ów im ie _ naz w o od pow ie d nio d ługim roz m iarz e (by z m ie ścić je sz cz e d opisyw ane naz w isk o) i prz ypisuje m y je jim ię. 3)Tw orz ym y d rugą tab l icę i um ie sz cz am y w nie jnaz w isk o. 4)Tutaj w yw ołuje m y nasz ą funk cję i prz e k az uje m y d o nie j od pow ie d nie d w ie tab l ice z nak ow e . W id z im y rów nie ż, że w artość z w racana prz e z nasz ą funk cję prz e k az yw ana je st od raz u d o strum ie nia. D z ie je się tak ponie w aż nasz a funk cja z w raca w sk aźnik typu z nak ow e go, a struendl; //(4) m ie ń je st tak z aproje k tow any, że prz y pom ocy tak ich w sk aźnik ów w yśw ie tl a te k st z aw arty w tab l icy z nak ow e j, k tórą w sk az uje te n w sk aźnik . 5)Kończ ym y program z w racając z funk cji m ain w artość 0, cz yl i inform ację o popraw nym z ak ończ e niu program u. 6)W tym m ie jscu roz pocz yna się w łaściw a d e finicja nasz e j funk cji. O prz e k az yw anych do nie j param e trach i od b ie ranych z funk cji w artości m ów il iśm y już w cz e śnie j. 7)Tw orz ym y now y w sk aźnik , k tóry ustaw iam y na pocz ąte k nasz e j pie rw sz e j tab l icy i to on b ęd z ie z w racany z funk cji. Cz e m u tak postępuje m y? Ponie w aż w e w nątrz funk cji b ęd z ie m y z m ie niać z aw artość w sk aźnik a a i po w sz ystk ich na- sz ych ope racjach nie b ęd z ie już w sk az yw ać na pocz ąte k tab l icy. 8)Je st to b ard z o z w ięz ła i prz e z to na pie rw sz y rz ut ok a prz e rażająca k onstruk cja, al e tak ie form y są cz ęsto spotyk ane w program ach ope rujących na w sk aźnik ach , nie d l ate go, że w sk aźnik i są trud ne , al e dl ate go, że um ożl iw iają tak d al e k o id ące uprosz cz e nie sk ład ni. W tym m ie jscu ustaw iam y w sk aźnik a pok az ujący na tab l icę z nak ów na je j k onie c. Jak w ie m y tab l ice z nak ow e w C+ + z ak ończ one są w artością '\ 0', cz yl i z e re m . Najpie rw z w ięk sz am y w artość w sk aźnik a p prz y pom ocy ope ratora pre ink re m e ntacji - z w raca on w artość w sk aźnik a z w ięk sz oną o je d e n. W sk aźnik w sk az uje na d aną k om órk ę pam ięci je śl i z w ięk sz ym y je go w artość to prz e suw am y go na k om órk ę następną, cz yl i w nasz ym prz ypad k u z l ite ry J na a. Ponie w aż z w racana je st w artość w sk aźnik a, a jak w ie m y prz e ch ow uje on ad re s to by spraw d z ić co pod d anym ad re se m się z najd uje używ am y ope ratora d e re fe re ncji '*'. O pe rator te n z w róci z aw artość z najd ującą się pod pod anym ad re se m . Z w raca a. W artość ta staje się w arunk ie m pętl i w h il e , k tóra w yk onuje się pók i d o póty w arune k je st praw d z iw y.Ponie w aż w C+ + istnie je d om nie m anie , że praw d ą je st w sz ystk o różne od z e ra, a k ol e jne l ite ry J, a, n są od nie go różne pętl a się w yk onuje i z atrz ym a w m om e ncie gd y z w rócony z ostanie z nak '\ 0' rów ny z e ro. Będ z ie m y w ów cz as m ie ć ustaw iony w sk aźnik na k onie c tab l icy z nak ow e j. 9 )W tym m ie jscu prz ypisuje m y k ol e jne z nak i z tab l icy z nak ow e j b na k onie c tab l icy a. Z asad a je st b ard z o pod ob na d o pow yższ e j i nie b ęd ę je j d ok ład nie num e r 6 | 2006 opisyw ać. 10)W tym m ie jscu k ończ ym y nasz ą funk cję z w racając pocz ątk ow y ad re s tab l icy z nak ow e ja. Now ością w C+ + je st w prow ad z e nie re fe re ncji, k tóre w z nacz y sposób ułatw iają prz e k az yw anie w artości, z w łasz cz a b ard z o d użych ob ie k tów , d o funk cji, al e nie tyl k o. R e fe re ncję m ożna porów nać d o w sk aźnik a z tą je d nak różnicą, że nie z aw ie ra ona ad re su d ane go ob ie k tu w pam ięci, al e b e z pośre d nio się d o nie go od w ołuje . D e finicja re fe re ncji m usi być połącz ona z prz ypisanie m je j w artości. M usi w ięc nastąpić je j inicjal iz acja. O to prz yk ład d e finicji: double pi = 3.14; double &ref = pi; W od różnie nia d o w sk aźnik a re fe re ncję d e finiuje się z ope ratore m re fe re ncji '& '. Te n sam ope rator w innym m ie jscu niż d e finicja z m ie nne j służy d o uz ysk ania je j ad re su. W ażną ce ch ą re fe re ncji je st to, że w b ard z o natural ny sposób m ożna się nią posługiw ać. M ianow icie id e ntycz nie jak z w yk łą z m ie nną i d e facto prz y je j pom ocy ope ruje m y na w artościach z apisanych w z m ie nne j, k tóra je st prz ypisyw ana w m om e ncie d e finicji.R e fe re ncja używ ana je st z w łasz cz a jak o argum e nt funk cji, ponie w aż z nacz nie prz yspie sz a prz e k az yw anie d o nie j w artości. R e fe re ncja b ow ie m z apob ie ga prz e d spow al nianie m program u w m om e ncie prz e k az yw ania d użych ob ie k tów d o funk cji. W typow e j funk cji prz yjm ujące j argum e nt prz e z w artość w m om e ncie prz e k az yw ania d o nie j d anych następuje w yk onanie ich k opi w z m ie n- 16 SYSTEM H ARDW ARE SO FTW ARE RO Z RYW K A PRO GRAM OW ANIE ne j l ok al ne j i to na nich funk cja ope ruje , dl ate go po je j z ak ończ e niu w artość prz e k az yw ane go ob ie k tu nie ul e ga z m ianie .Inacz e j je st w prz ypad k u re fe re ncji. Nie m am y tutaj d o cz ynie nia z k opiow anie m w artości, al e funk cja b e z pośre d nio poprz e z re fe re ncję ope ruje na z m ie nne j d o nie j w ysłane j. D z ięk i te m u program d z iała sz yb cie j, al e nie b e z pie cz ne m oże się ok az ać to, że w ów cz as w sz e l k ie z m iany d otycz ące te j z m ie nne j z ach od z ące w e w nątrz funk cji d otycz ą z m ie nne j z e w nętrz ne j. Z ob raz ujm y to program e m (Listing 2): W ynik d z iałania program u: W artość z m ie nne j prz e d w ysłanie m d o funk cji prz e z w artość : 2 W artość z m ie nne j w ysłane j d o funk cji prz e z w artość w ynosi : 2 Po z w ięk sz e niu 5 po w yk onaniu funk cji : 2 W artość z m ie nne j prz e d w ysłanie m d o funk cji prz e z re fe re ncję : 2 W artość z m ie nne j w ysłane j d o funk cji prz e z re fe re ncję w ynosi : 2 Po z w ięk sz e niu 5 po w yk onaniu funk cji : 5 (1)Tw orz ym y z m ie nną a, k tórą b ęd z ie m y się posługiw ać w trak cie d z iałania nasz e go program u. (2)W yśw ie tl am y w artość z m ie nne j a by ud ow od nić z m iany z w iąz ane z je j w artością w Lis ting 2 ciągu d z iałania całe go #include <iostream> program u. using namespace std; (3)W yw ołuje m y funk void wartosc(int a); cję, k tóra od b ie ra z m ie nvoid referencja(int &a); ną prz e z w artość. int main() (4)W yśw ie tl am y z aw ar{ int a = 2; //(1) tość z m ie nne j po w ycout << "Wartość zmiennej przed wysłaniem do funkcji przez wartość : " << a << endl; //(2) k onaniu funk cji. wartosc(a); //(3) (5)To sam o w yk onuje cout << "po wykonaniu funkcji : " << a << endl << endl; //(4) m y dl a prz e k az yw ania cout << "Wartość zmiennej przed wysłaniem do funkcji przez referencję : " << a << endl;//(5) z m ie nne j d o funk cji od referencja(a); b ie rające j z m ie nną cout << "po wykonaniu funkcji : " << a << endl; prz e z re fe re ncję. return 0; (6)Tutaj d e finiuje m y } funk cję w artosc, k tóra void wartosc(int a) //(6) od b ie ra z m ie nną w te n { sam sposób jak się nacout << "\tWartość zmiennej wysłanej do funkcji przez wartość wynosi : " << a << endl; z yw a. D och od z i tutaj a += 3; d o k opiow ania w arcout << "\tPo zwiększeniu " << a << endl; tości z m ie nne j i um ie sz } cz anie je j w z m ie nne j void referencja(int &a) //(7) l ok al ne j. D z ięk i te m u { funk cja pracuje na cout << "\tWartość zmiennej wysłanej do funkcji przez referencję wynosi : " << a << endl; k opi z m ie nne j i a += 3; z m iany d ok onyw ane cout << "\tPo zwiększeniu " << a << endl; w je j ob ręb ie nie m ają } żad ne go pływ u na num e r 6 | 2006 z m ie nną d o nie j w ysłaną. D ow od e m te go je st w yd ruk d z iałania program u. (7)Tutaj d e finiuje m y funk cję, k tóra ob ie ra z m ie nną prz e z re fe re ncję i z m iany w artości d ok onane w je j ob ręb ie d otycz ą te ż z m ie nne j z e w nętrz ne j.Z je d ne j strony prz yspie sz a to d z iałanie program u w prz ypad k u d użych ob ie k tów , k tóre m usz ą być cz ęsto k opiow ane , al e m oże d oprow ad z ać d o nie z roz um iałe go d z iałania program u, gd y w e w nątrz funk cji w artość tych ob ie k tów w „taje m nicz y” sposób ul e ga z m ianie . Nal e ży w ięc unik ać z m iany w artości ob ie k tu prz e k az ane go d o funk cji prz e z re fe re ncję, je śl i nie w ynik a to w prost z d z iałania funk cji. Na prz yk ład nie je st roz sąd ne m noże nie z m ie nne j prz e z l icz b ę pi w e w nątrz funk cji, k tóra tą z m ie nną m a w yśw ie tl ić na e k ranie . Gd y z nam y już w sk aźnik i i re fe re ncję m oże m y te raz poroz m aw iać o z astosow aniu tych struk tur. O re fe re ncjach już m ów il iśm y, al e w sk aźnik i oprócz z astosow ania d o uspraw nie nia pracy z tab l icam i służą rów nie ż d o od nosz e nia się d o ok re śl onych k om óre k pam ięci k om pute ra oraz d o tak z w ane j d ynam icz ne j re z e rw acji tab l ic. Z d arz a się, że m usim y napisać program , k tóry ob sługuje d uże il ości d anych , al e d ok ład nie nie w ie m y il e b ęd z ie tych d anych . Jak d ob rz e w ie m y z poprz e d nie go od cink a tab l ice w C+ + m ają stałą w ie l k ość, k tóra m usi być pod ana w m om e ncie ich d e finiow ania w program ie je sz cz e prz e d k om pil acją. M ożna pow ie d z ie ć, że je ste śm y w te n sposób m ocno ogranicz e ni. Prob l em pojaw ia się w m om e ncie gd y nie je ste śm y w stanie stw ie rd z ić jak w ie l k a tab l ica b ęd z ie nam w rz e cz yw istości 17 SYSTEM H ARDW ARE SO FTW ARE RO Z RYW K A PRO GRAM OW ANIE potrz e b na. M oże m y w ów cz as w yb rać od pow ie d nio w ięk sz ą w ie l k ość, uw z gl ęd niając e w e ntual ne d od atk ow e e l e m e nty na w sz e l k i w ypad e k .Je d nak w tym prz ypad k u al b o b ęd z ie m y m arnow ać sporą cz ęść pam ięci, ponie w aż nasz a tab l ica b ęd z ie z a d uża, al b o je śl i źl e oce nim y z apotrz e b ow anie na pam ięć ok aże się z a m ała. Je śl i d otyk ają nas tak ie prob l e m y to z pom ocą prz ych od z ą d w a ope ratory, k tóre służą d o d ynam icz ne j al ok acji pam ięci i je j z w al niania. O pe rator ne w służy d o prz yd z ie l ania now e go m ie jsca w pam ięci, natom iast d e l e te to m ie jsce z w al nia. W C+ + nie m a od śm ie cacz a z te go pow od u je ste śm y z m usz e ni sam od z ie l nie z w al niać al ok ow aną prz e z nas pam ięć. D z ie je się tak ponie w aż w C+ + położono głów nie nacisk na pręd k ość d z iałania program ów a od śm ie cacz by z nacz nie je spow al niał. Pam ięc al ok uje m y w b ard z o prosty sposób . Po praw e j stronie ope ratora ne w pod aje m y d l a jak ie go ob ie k tu m a nam al ok ow ać m ie jsce , a z w raca w sk aźnik d o te go m ie jsca w pam ięci.Najb ard z ie j inte re suje nas to, że ope rator ne w um ożl iw ia al ok ow anie pam ięci pod tab l ice , k tórych roz m iar m oże być ok re śl any już w m om e ncie w yk onyw ania program u. Tak ą tab l ice m usim y w ów cz as usunąć od pow ie d nim ope ratore m d e l e te . Istnie ją d w a rod z aje ope ratorów ne w i del e te . Je d ne d o pracy z poje d yncz ym i ob ie k tam i naz yw ają się one ne w i d e l e te , a d rugie d o pracy z tab l icam i od pow ie d nio ne w [] i d e l e te []. W ażne je st to, że by stosow ać się d o k il k u z asad . M ianow icie d any ob ie k t m oże m y usunąć tyl k o raz , d od atk ow o m oże m y z w al niać pam ięć tyl ko dl a ob ie k tów , k tóre sam i al ok ow al iśm y, oraz , że ob ie k ty al ok ow ane prz y pom ocy tab l icy. cają pe w ne w artości, al e rów nie ż m ogą je otrz ym yw ać.Tak rów nie ż je st w prz ypad k u funk cji m ain. Z anim poz nam y sposób Lis ting 3 w jak i te w artości od b ie ra m usim y od pow ie d z ie ć sob ie na pytanie sk ąd te w ar#include <iostream> tości są w ysyłane ? O d pow ie d z ią using namespace std; ponow nie je st pow łok a syste m ow a. W arint main() tości d ocie rające d o funk cji m ain to te { z najd ujące się po naz w ie program u w int rozmiar; m om e ncie w pisyw ania je go pol e ce nia d o cout << "Jaki rozmiar tablicy należy zaalokować : "; funk cji. Z anim napisz e m y pie rw sz y //(1) program od b ie rający d ane z l inii pol e ce ń cin >> rozmiar; m usim y poz nać sposób z apisu argum e nchar *string; //(2) tów w funk cji m ain, b o je st on ściśl e ok re string = new char[rozmiar]; //(3) śl ony. D ane d o funk cji m ain d ocie rają w cout << "Jak masz na imię : "; post aci tab l icy w sk aźnik ów d o tab l ic cin >> string;//(4) z nak ow ych , k ażd a z tab l ic z aw ie ra je d e n cout << "Witaj " << string << "!!\n"; z param e trów prz e k az anych do delete [] string; //(5) program u w l inii pol e ce ń. D od at k ow o } Naucz yl iśm y się ob ch o- ostatni w sk aźnik m a ad re s z e ro, a pie rw d z ić je d no z pow ażnych sz y od nosi się d o tab l icy z aw ie rające j nane w usuw am y d e l e te , a ne w [] - d e l e te ogranicz e ń C+ + , cz yl i k onie cz ność posłu- z w ę program u. Je d nocz e śnie d o funk cji []. W jak i sposób z w ol nić pam ięć - po giw ania sie tab l icam i ok re śl one go typu. prz e k az ana je st l icz b a param e trów . M oże prostu po ope ratorz e d e l e te um ie sz cz a- D od atk ow o ope rator ne w um ożl iw ia to w ygl ąd ać d osyć sk om pl ik ow anie , al e m y w sk aźnik w sk az ujący na w cz e śnie jal o- nam tw orz e nie napraw d ę d użych tab l ic. w rz e cz yw istości je st to b ard z o proste . k ow ane k om órk i (Listing 3). Z w ycz ajow o tab l icę w sk aźnik ów do O statnim z agad nie nie m , k tóre b ęd z ie m y tab l ic z nak ow ych naz yw am y argv, a l icz W ynik d z iałania program u: porusz ać w d z isie jsz ym od cink u je st funk - nik je j e l e m e ntów argc. Prz yk ład cja m ain. W ie m y już, że m ain je st z w yk łą program u (Listing 4): Jak i roz m iar tab l icy nal e ży z aal ok ow ać : funk cją, w ięc m oże m y z w racać z nie j w ar12 tości (prz y pom ocy re turn), al e gd z ie w ar- W ynik d z iałania program u: Jak m asz na im ię : M acie k tości te d ocie rają? D ocie rają d o m ie jsca W itajM acie k !! syste m ie , k tóre nas program w yw ołały. [b orim ir@fujitsu Source ]$ ./ m ain -l raz W prz ypad k u syste m ów Linux je st to po- "d w a trz y" (1)W cz ytuje m y z k l aw iatury roz m iar w łok a, k tóre używ am y d o uruch om iania A rgum e nt nr.0 > ./ m ain< tab l icy jak a b ęd z ie nam potrz e b na. program u. By spraw d z ić co z w rócił nasz A rgum e nt nr.1 > -l < W id ać w yraźnie , że roz m iar je j prz y program proponuje b e z pośre d nio po je go A rgum e nt nr.2 > raz < k ażd ym uruch om ie niu program u m oże w yk onaniu w pisać pol e ce nie 'e ch o $?' - A rgum e nt nr.3 > d w a trz y< być inny i w żad e n sposób nie je st z w róci one w artość stojącą z a re turn w z nany w m om e ncie k om pil acji. funk cji m ain. (1)D e finiuje m y funk cje m ain i jak o (2)Tw orz ym y sob ie w sk aźnik , w pie rw sz y argum e nt pod aje m y z m ie nną, k tórym z apisz e m y ad re s al ok ow ane j W ie m y rów nie ż, że funk cje nie tyl k o z w rak tóra prz e ch ow yw ać b ęd z ie il ość z aw ar- num e r 6 | 2006 (3)W tym m ie jscu z a pom ocą ope ratora ne w [] al ok uje m y tab l icę o roz m iarz e roz m iar.O pe rator z w raca nam ad re s d o te go m ie jsca, k tóre go m oże m y używ ać by od nie ść się d o te jtab l icy. (4)W cz ytuje m y jak ie ś d ane d o nasz e j tab l icy np.im ię. (5)Po z ak ończ e niu pracy z nasz ą tab l icą z w al niam y pam ięć używ ając ope ratora d e l e te []. 18 SYSTEM SO FTW ARE H ARDW ARE RO Z RYW K A PRO GRAM OW ANIE Lis ting 4 KO NK URS #include <iostream> using namespace std; int main(int argc, char*argv[]) //(1) { for(int i = 0 ; i < argc ; i++) //(2) cout << "Argument nr. " << i << " >" << argv[i] << "<" << endl; } tych w tab l icy w sk aźnik ów , cz yl i il ość w ysłanych d o program u argum e ntów . O raz d rugą, k tóra je st tab l icą w sk aźnik ów d o tab l ic z nak ow ych . (2)W tym m ie jscu roz pocz ynam y pętl e, k tóra w yśw ie tl a z aw artość w sz ystk ich tab l ic z nak ow ych w sk az yw anych prz e z k ol e jne w sk aźnik i z apisane w tab l icy. W ynik d z iałania program u je st ocz yw isty. W id z im y w k ol e jnych l inijk ach w ypisane w artości param e trów prz e k az anych w m om e ncie uruch am iania nasz e go program u. Pie rw sz ą w artością je st naz w a program u. Nal e ży z az nacz yć, że k ol e jne argum e nty ok re śl ane są na pod staw ie roz d z ie l ających je spacji ch yb a, że um ie ścim y je m ięd z y parą cud z ysłow ów . Na tym sk ończ ym y om aw ianie pod staw ow ych e l e m e ntów C+ + i od prz ysz łe go num e ru jak z apow iad ałe m z ajm ie m y się d e finiow anie m k l as i w yk orz ystyw anie m ob ie k tów . Do w ygrania Lice ncja + płyta DVD z M andrivą Pow e r Pack 2007 Gol d. O dpow ie dz na pytania w yśl ij w raz z podanie m im ie nia i naz w is k a oraz adre s u i k ontak tu (m ail , te l e fon) na adre s k onk urs @ dragonia.pl . Pośród Praw idłow ych odpow ie dz i roz l os uje m y M andrivę Pow e r Pack 2007 Gol d (Lice ncje + płytk ę DVD). O to pytania: 1. Na il u płytach DVD m ie ści s ię Sl ack w are 11? 2. W ym ie ń prz ynajm nie jdw a darm ow e program y graficz ne dl al inuk s a. 3. Co oz nacz a s k rótM andriva CS4 ? Na odpow ie dz i cz e k am y do 10 s tycz nia. Życz ym y s z cz ęścia w l os ow aniu!! num e r 6 | 2006 19 SYSTEM H ARDW ARE SO FTW ARE RO Z RYW K A PRO GRAM OW ANIE W prow adz e nie do Tcl \Tk W artyk ul e prz e ds taw iono prz yk ładow ą apl ik ację Tcl /Tk - e dytor te k s tu. M im o pros toty prz yk ładu m ożna pok az ać prz yk łady program ow ania w jęz yk u Tcl . TO M ASZ ŁUCZ AK W s tęp d o w prow ad z e nia d o Tcl Poniższ y ,,w yciąg'' z jęz yk a Tclm a na ce l u d anie pod staw d o z roz um ie nia prz yk ład u. Nie nal e ży trak tow ać że je st to z w ięz ły opis jęz yk a Tcl ! Z m ie nne Z m ie nną tw orz ym y z a pom ocą pol e ce nia: set nazwaZmiennej ?wartość? istnie jącą z m ie nną m ożna usunąć pol e ce nie m : unset nazwaZmiennej1 ?nazwaZmiennejn? D o z m ie nne j od w ołuje m y się (prz ytacz am y je j w artość) poprz e d z ając je j naz w ę z nak ie m d ol ara: set zmiennaA $zmiennaB Typy d anych W jęz yk u Tclm am y trz y typy d anych : łańcuch , l ista i tab l ica. El e m e nty l isty są z w yk l e ujęte w naw iasy { i }. Pol e ce nia Sk ład nia pol e ce nia Tclje st postaci: polecenie ?-opcja wartość? ?argument1? ... ?argumentn? W sz ystk ie el e m e nty pol e ce nia są se parow ane spacją, a pol e ce nia z nak ie m k ońca w ie rsz a l u pol e ce nie m śre d nik a. Jęz yk Tcl um ożl iw ia pod staw ianie pol e ce ń, cz yl i z w racanych prz e z pol e ce nie w artości, prz e z ujęcie pol e ce nia w naw ias k w ad ratow y [ i ], np: se t a [pw d ] W yraże nia W yraże nia to k om b inacja ope ratorów i ope rand ów , d l a z ape w nie nia w łaściw e j k ol e jności ob l icz e ń m ożna stosow ać naw iasy ok rągłe . O pe rand am i m ogą być: łąńcuch y z nak ów , w artości l ogicz ne , pod staw ie nia pol e ce ń (cz yl i w ynik pol e ce nia) oraz funk cje m ate m atycz ne . Ins truk cje s te rujące Instruk cja w arunk ow a if je st postaci: if wyrażenie ?then? polecenie1 ?elseif polecenie2 else polecenie3? Dl a z ape w nie nia popraw ne j inte rpre tacji instruk cji, w ygod nie je stz apisyw ać pol e ce nie oraz w yraże nie w arunk ow e w naw iasach { i } i w od d z ie l nych w ie rsz ach , np: if {a eq 1} then { set b 1 set c 2 } else { set b 2; set c 1 } Istnie ją je sz cz e inne instruk cje ste rujące , z nane z innych jęz yk ów : sw itch , w h il e, for, fore ach . Nie są one w yk orz ystane w prz yk ład z ie , d l ate go nie z ostały opisane . Proce d ury Dl a w ięk sz e j prz e jrz ystości k od u i w yk orz ystaniu te go sam e go k aw ałk a k od u m ożna w yk orz ystać proce d ury. Ponad to z d e finiow ane w nich z m ie nne są z m ie nnymi l ok al nym i nie d ostępnym i poz a proce d urą.Postać proce d ury: proc naz w a ?argum e nty? pol e ce nia D o proce d ury m ożna prz e k az yw ać argum e nty. Pol e ce nia proce d ury m ogą m ie ć d ostęp d o z m ie nnych gl ob al nych , je śl i w tre ści proce d ury pod ano ich naz w y po słow ie k l ucz ow ym gl ob al . Proce d ura w yw oływ ana je st prz e z pod anie naz w y i je śl i z d e finiow ano proce d urę z param e tram i to nal e ży pod ać param e try. W yk onanie proce d ury z w raca w ynik ostatnie go w yk onanane go w nie jpol e ce nia. O b s ługa b łęd ów D o ob sługi w yjątk ów służy pol e ce nie catch postaci: catch polecenie ?zmienna? Je śl i pol e ce nie w yge ne ruje b łąd , pol e ce nie catch z w róci nie z e row ą w artość, a w num e r 6 | 2006 cz .3 z m ie nne j zmienna k om unik at o b łęd z ie . z aw arty je st O pe racje na pl ik ach Z a pom ocą pol e ce nia ope n uz ysk uje m y d ostęp d o pl ik ów .Pol e ce nie je st postaci: textttopen plik ?trybdostępu? ?prawa? gd z ie : tryb d ostępu ok re śl a cz y to b ęd z i z apis, od cz yt, z usunięcie m z aw artości cz y nie , a praw a to unik sow e praw a d ostępu d o pl ik u. Z apisu i od cz ytu z otw arte go k anału d ok onuje m y z a pom ocą pol e ce ń puts i re ad . O tw arty k anał z am yk am y pol e ce nie m cl ose O b jaśnie nia d o k od u prz yk ład u W yk orz ystane w id ge ty z ostały już prz e d staw ione w e w cz e śnie jsz ych artyk ułach . Te raz z apre z e ntow ano ich prz yk ład ow e z astosow anie . W ie rsz 9 Pol e ce nie source poz w al a na w cz ytanie i w yk onanie z e w nętrz ne go pl ik u z k od e m w jęz yk u Tcl . W ie rsz 25 Pol e ce nie m e nu w yk onuje proce d urę now yPl ik W ie rsz 27 Pol e ce nie m e nu w yk onuje proce d urę z apisz Pl ik z param e tre m 0 20 SYSTEM H ARDW ARE SO FTW ARE RO Z RYW K A PRO GRAM OW ANIE z w a pl ik u (w ie rsz 9 8). W ie rsz 33 Pol e ce nie m e nu w yk onuje w b ud ow ane pol e ce nie w id ge tu. W ie rsz e 42-46 Instruk cja ste rująca if. W yk onyw any je st pol e ce nie w naw iasach po słow ie k l ucz ow ym th e n je śl i w artość z m ie nne j z aw ijajW ie rsz e je st rów na 1. W prz e ciw nym w ypad k u w yk onane z ostanie pol e ce nie z aw arte w naw iasach po słow ie k l ucz ow ym e l se . Pol e ce nia w yk onyw ane w z al e żności od w arunk u k onfigurują ok no e d ytora tak by z aw ijał w ie rsz e tre ści l ub nie z aw ijał. W ie rsz e 52-56 Kol e jna instruk cja ste rująca. W w ynik u je j d z iałania głów ne ok no je st w tryb ie e d ycji l ub je st z ab l ok ow ane . W ie rsz e 89 -105 Proce d ura otw orz Pl ik b e z param e trów (pusty naw ias) w yw ołuje ok no w yb oru pl ik u (w ie rsz e 9 1-9 2). Następnie otw ie ra w yb rany pl ik (w ie rsz 9 3), je śl i otw arcie się nie pow ie d z ie , to w yw oływ ane je st ok no d ial ogow e z od pow ie d nim k om unik ate m . Je śl i z aś otw arcie się pow ie d z ie , to d o z m ie nne j z aw artoscPl ik u w cz ytyw ana je st z aw artośc pl ik u (w ie rsz 9 4) i z am yk any otw arty k anał (w ie rsz 9 5). Następnie usuw ana je st z aw artość ok na od pie rw sz e go z nak u d o ostatnie go (w ie rsz 9 6). Pol e ce nie w w ie rsz u 9 7 d od aje d o ok na z aw artość pl ik u. W tytul e ok na w yśw ie tl ona z ostanie na- W ie rsz 113 W w ie rsz u 113 z d e finiow ana je st proce d ura z je d nym param e tre m . Naz w a te go param e tru w yk orz ystyw ana je st w tre ści proce d ury. W ie rsz e 122 i 124 W z al e żności od w yb rane j k onw e ncji z nak ów k ońca w ie rsz a, d ok onyw ana je st k onfiguracja k anału. W ie rsz 126 Z apis pob rane j z w id ge tu (w ie rsz 118) z aw artości ok na e d ytora je st z apisyw ana d o k anału. W ie rsz e 128-132 W raz ie nie pow od z e nia z apisu w yśw ie tl any je st k om unik at b łęd u. Lis ting 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 #!/bin/sh #the next line restarts using wish \ exec tclsh "$0" "$@" # wywołanie biblioteki graficznej package require Tk # wczytanie i wykonanie pliku zewnętrznego source procedury.tcl # zmienne set zawijajWiersze 1 set koniecWiersza 0 set nazwaPliku "" # tworzenie menu menu .m # konfiguracja głównego okna z menu . configure -menu .m .m add cascade -label "Plik" -menu .m.plik .m add cascade -label "Edycja" -menu .m.edycja .m add cascade -label "Pomoc" -menu .m.pomoc # zawartosc menu Plik menu .m.plik .m.plik add command -label "Nowy" -command nowyPlik .m.plik add command -label "Otwórz" -command otworzPlik .m.plik add command -label "Zapisz" -command { zapiszPlik 0 } .m.plik add command -label "Zapisz jako" -command { zapiszPlik 1 } .m.plik add separator .m.plik add command -label "Koniec" -command exit # zawartosc menu Edycja menu .m.edycja .m.edycja add command -label "Cofnij Ctrl+Z" -command {.f.okno edit undo} .m.edycja add command -label "Ponów Ctrl+Y" -command {.f.okno edit redo} .m.edycja add separator .m.edycja add command -label "Wytnij Ctrl+X" -command {tk_textCut .f.okno} .m.edycja add command -label "Kopiuj Ctrl+C" -command {tk_textCopy .f.okno} .m.edycja add command -label "Wklej Ctrl+V" -command {tk_textPaste .f.okno} .m.edycja add separator .m.edycja add checkbutton -label "Zawijaj wiersze" \ -variable zawijajWiersze -command { if {$zawijajWiersze eq 1} then { .f.okno configure -wrap word } else { .f.okno configure -wrap none } } .m.edycja add checkbutton -label "Końce wiersza CRLF" \ -variable koniecWiersza .m.edycja add checkbutton -label "Tylko do odczytu" \ num e r 6 | 2006 21 SYSTEM SO FTW ARE H ARDW ARE RO Z RYW K A PRO GRAM OW ANIE 51 -variable tylkoDoOdczytu -command { 52 if {$tylkoDoOdczytu eq 1} then { 53 .f.okno configure -state disable 54 } else { 55 .f.okno configure -state normal 56 } 57 } 58 # zawartosc menu Pomoc 59 menu .m.pomoc 60 .m.pomoc add command -label "Pomoc" -command pomoc 61 .m.pomoc add command -label "O programie" -command { 62 tk_messageBox -title "O programie" \ 63 -message "Ja jestem autorem, a to jest mój pierwszy program" 64 } 65 # menu podręczne tez sie przyda 66 menu .mp 67 .mp add command -label "Cofnij" -command {.f.okno edit undo} 68 .mp add command -label "Ponów" -command {.f.okno edit redo} 69 .mp add separator 70 .mp add command -label "Wytnij" -command {tk_textCut .f.okno} 71 .mp add command -label "Kopiuj" -command {tk_textCopy .f.okno} 72 .mp add command -label "Wklej" -command {tk_textPaste .f.okno} 73 .mp add separator 74 .mp add command -label "Zapisz" -command {zapiszPlik 0 } 75 bind . <Button-3> {tk_popup .mp %X %Y} 76 # okno edytora 77 frame .f 78 text .f.okno -width 80 -height 30 \ 79 -wrap word -undo 1 \ 80 -xscrollcommand {.f.sbx set} \ 81 -yscrollcommand {.f.sby set} 82 scrollbar .f.sbx -orient horizontal -command {.f.okno xview} 83 scrollbar .f.sby -orient vertical -command {.f.okno yview} 84 pack .f -padx 2m -pady 2m 85 pack .f.sbx -side bottom -fill x 86 pack .f.sby -side right -fill y 87 pack .f.okno # Koniec pliku Lis ting 88 89 90 91 92 93 proc otworzPlik {} { global nazwaPliku set nazwaPliku [tk_getOpenFile -title "Otwórz plik" \ -filetypes {{Wszystkie *} {Tcl .tcl} {Tekst .txt}}] if { [catch {set input [open $nazwaPliku r]} wynik] eq 0} then { set zawartoscPliku [read $input] 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 136 137 138 139 close $input .f.okno delete 0.0 end .f.okno insert 0.0 $zawartoscPliku wm title . "$nazwaPliku" } else { set zawartoscPliku "" tk_messageBox -title "Błšd" -icon error \ -message "Nie można otworzyć pliku: $zawartoscPliku" } } return $nazwaPliku proc nowyPlik {} { global nazwaPliku set nazwaPliku "" .f.okno del 0.0 end } proc zapiszPlik zapiszJako { global nazwaPliku global koniecWiersza if { $zapiszJako eq 1 } then { set nazwaPliku [tk_getSaveFile -title "Zapisz plik"] } set zawartosc [.f.okno get 0.0 end] if { [catch {set output [open $nazwaPliku w+]} wynik] eq 0} then { if {$koniecWiersza eq 1} then { fconfigure $output -translation crlf } else { fconfigure $output -translation lf } puts -nonewline $output $zawartosc close $output } else { set filecontents "" tk_messageBox -title "Błšd" -icon error \ -message "Nie można otworzyć pliku: $nazwaPliku" } } # Pomoc proc pomoc {} { tk_messageBox -title "Pomoc" \ -icon info -type ok \ -message "Pomoc jeszcze nie jest dostępna" } # Koniec pliku num e r 6 | 2006 22 SYSTEM H ARDW ARE PRO GRAM OW ANIE RO Z RYW K A SO FTW ARE W yk orz ys tanie program u gnupl ot do tw orz e nia w yk re s ów 2D W artyk ul e prz e ds taw iono s pos ób tw orz e nia w yk re s ów 2D z a pom ocą program u gnupl ot. O pis ano tyl k o te m ożl iw ości program u, k tóre autorow i były potrz e bne , w s z cz e gól ności k re śl e nie w yk re s ów na pods taw ie danych pom iarow ych , z az nacz e nie obs z arów nie pe w ności danych pom iarow ych , inte rpol acje , prz e l icz e nia w artości oraz dopas ow anie w ygl ądu w yk re s u do s w oich potrz e b. TO M ASZ ŁUCZ AK K rótk o o program ie gnupl ot je st d arm ow ym program e m d o k re śl e nia funk cji i d anych . Program d ostępny je st d l a w ięk sz ości syste m ów ope - racyjnych (M SD O S, M S W ind ow s, Unix, Linux, O S/ 2, M acO S, Be O S, VM S) i pl atform sprz ętow ych (PC, A tari, A m iga, R ISC). Program gnupl ot je st tak że w yk orz ystyw any prz e z inne program y (np. octave ) jak o tz w . b ack e nd d o pl otow ania w yk re sów . Z e w z gl ęd u na m ożl iw ość pracy w sad ow e j je st nie oce niony prz y prz e tw arz aniu d użych il ości d anych . Praca z program e m Program ste row any je st z w ie rsz a pol e ce ń, al e dl a uprosz cz e nia m ożna w cz ytyw ać z pl ik ów z e w nętrz nych (w form acie A SCII) d ane oraz k orz ystać z e sk ryptów pl otow ania. D om yśl nym w yjście m w yk re sów je st e k ran, al e m ożna je prz e k ie row ać d o pl ik u graficz ne go. Struk tura pl ik ów d anych Struk tura pl ik u z d anym i d o pl otow ania je st b ard z o prosta. D ane są um ie sz cz one w k ol um nach i roz d z ie l one z nak am i od stępu (spacja l ub tab ul ator). D om yśl nie d ane są pob ie rane pocz ąw sz y od pie rw sz e jk ol um ny, ch yb a że pod am y inną k ol e jność pob ie rania d anych z k ol um n. Poniże j prz e d staw iono prz yk ład ow y pl ik z d anym i z e b ranym i z pom iarów . Z nak i # stanow ią k om e ntarz i d al sz a cz ęść w ie r- sz a pocz ąw sz y od z nak u # je st ignorow ana. Kol e jne k ol um ny prz yk ład ow e go pl ik u d anych z aw ie rają: rz ęd ne , od cięte , nie pe w ność w artości rz ęd nych i nie pe w ność w artości od ciętych . # To jest plik test.dat # X Y errX errY 0.000 0 0.0004 3 0.001 104 0.0004 4 0.002 202 0.0004 5 0.003 290 0.0005 5 0.004 291 0.0005 8 0.005 310 0.0005 6 0.010 311 0.0005 9 0.020 280 0.0005 5 Sk rypty pol e ce ń Pol e ce nia m oże m y z apisyw ać d o pl ik ów A SCII i w cz ytyw ać je z a pom ocą pol e ce nia l oad w w ie rsz u pol e ce ń gnupl ota: gnuplot> load "nazwa.skryptu" M ożna rów nie ż w yw oływ ać gnupl ota z naz w ą sk ryptu: gnuplot nazwa.skryptu K re śl e nie w yk re s ów K ażd y w yk re s sk ład a się z k il k u el e m e ntów : tytułu, opisów osi, z nacz nik ów na osiach , l e ge nd y, k om e ntarz y oraz w łaściw e go w yk re su. Pow yższ e el e m e nty, oprócz sam e go w yk re su, są d e finiow ane num e r 6 | 2006 z a pom ocą pol e ce nia se t.Sam w yk re s k re śl ony je st z a pom ocą pol e ce nia pl ot. D e finiow anie e l e m e ntów w yk re s u Na pocz ątk u z d e finiujm y e l e m e nty opisu w yk re su. Tytuł w yk re s u Tytuł w yk re su w yśw ie tl any je st u góry rysunk u i je st w yśrod k ow any. set title "Pierwszy wykres" O pis os i O pisy osi w yśw ie tl ane są na z e w nątrz w yk re su w środ k u osi. set xlabel "U [V]" # opis osi X set ylabel "I [pA]" # opis osi Y Le ge nd a Je śl i nie pod am y żad nych pol e ce ń d otycz ących l e ge nd y, to z ostanie ona um ie sz cz ona d om yśl nie w praw ym górnym narożnik u rysunk u. set key 0.015,100 # współrzędne legendy set key box # legenda w ramce Le ge nd ę m ożna rów nie ż w yłącz yć: set nokey # bez legendy na wykresie Zakresy osi W yk re sy są d om yśl nie autom atycz nie sk al ow ane , al e być m oże z e ch ce m y pod ać 23 SYSTEM H ARDW ARE PRO GRAM OW ANIE RO Z RYW K A SO FTW ARE inne z ak re sy osi w yk re sów . set xr [0.0:0.022] # zakres osi X set yr [0:350] # zakres osi Y Z nacz nik i na os iach gnupl ot sam d ob ie ra z nacz nik i na osiach . Je śl i je d nak ch ce m y ustaw ić je po sw oje m u to ocz yw iście m oże m y. set xtics (0.002, 0.004, 0.006, 0.008, 0.010, 0.015, 0.020) Z nacz nik i na osiach m oże m y w yłącz ać i w łącz ać, w z al e żności od potrz e b . set noxtics # wyłączenie znaczników set xtics # włączenie znaczników K om e ntarz e na w yk re s ie Na w yk re sach m oże m y rów nie ż um ie sz cz ać k om e ntarz e . Kom e ntarz e są poz ycjonow ane na w yk re sie prz e z pod anie w spółrz ęd nych . set label "Punkt zalamania" at 0.0035,260 M oże m y rów nie ż w sk az ać, d o k tóre go m ie jsca od nosi się k om e ntarz prz e z narysow anie strz ałk i.Pod cz as rysow ania strz ałk i nal e ży pod ać w spółrz ęd ne pocz ątk u i k ońca (z e strz ałk ą) strz ałk i. set arrow from 0.0032,250 to 0.0031,280 W yk re s m oże m y rów nie ż opatrz yć tz w . ,,stopk ą'' w staw ioną w l e w ym d ol nym narożnik u, z aw ie rającą np. d atę utw orz e nia w yk re su l ub autora. set timestamp "Utworzono dnia %Y-%m-%d o godzinie %H:%M przez TLu" Z m ie nne %Y-%m -%d i %H :%M w yśw ie tl ą nam b ie żącą d atę i god z inę. Pl otow anie W yd ruk u w yk re su 2D d ok onuje m y z a pom ocą pol e ce nia pl ot, k tóre um ożl iw ia w yk re śl e nie rów nie ż k il k u w yk re sów na je d nym rysunk u. W yk re sy m ogą być w yd ruk ow ane jak o punk ty z pl ik u d anych al b o m ogą być inte rpol ow ane od cink am i l ub k rz yw ym i sk l e janym i. M ożna tak że w ygład z ić w yk re s z a pom ocą k rz yw ych b e z ie ra. Sposób pl otow ania je st ustaw iany z a pom ocą d yre k tyw pol e ce nia pl ot. Sk ład nia pol e ce nia pl ot: plot [zakres] {funkcja|plik} [osie] [tytuł] [styl] [, kolejne polecenie] gd z ie : zakres pod aje m y z ak re s k ol e jno d l a osi rz ęd nych (X), pie rw sz e j funk cji i k ol e jnych . W artości w naw iasach są se parow ane z nak ie m d w uk ropk a :, np.: plot [-3.14:3.14] sin(x) funkcja|''plik danych'' pod aje m y funk cję d o pl otow ania al b o naz w ę pl ik u. Naz w a pl ik u m usi być z aw arta w cud z ysłow ach . osie tutaj ok re śl am y, k tóre osie m ają być w yk orz ystane d o opisu.D om yśl nie w yk orz ystyw ana je st l e w a (y1) i d ol na (x1) oś. tytuł D yre k tyw a prz e z nacz ona je st d o d e finicji naz w y w yk re su, k tóra pojaw i się w l e ge nd z ie . Tytuł nal e ży um ie ścić w cud z ysłow ie i poprz e d z ić d yre k tyw ą titl e l ub sk rótow o t. styl Stylok re śl a sposób rysow ania w yk re su i z az nacz ania punk tów . Styl poprz e d z ony je st d yre k tyw ą w ith .D yre k tyw a w ith w y- m aga od d z ie l ne go opisu. , kolejne polecenie po prz e cink u m ożna um ie ścić pol e ce nie pl otow ania k ol e jne go w yk re su, np: plot sin(x) , cos(x) , tan (x) Pierwszy wykres W yk orz ystajm y w ie d z ę z poprz e d nich se k cji i napisz m y prosty sk rypt: # Plik wykres1, dane są pobierane z pliku wykres.dat set title "Pierwszy wykres" # tytuł set xlabel "U [V]" # opis osi X set ylabel "I [pA]" # opis osi Y set key 0.015,100 # współrzęd- ne legendy set timestamp "Utworzono dnia %Y-%m-%d o godzinie %H:%M przez TLu" plot "test.dat" Po uruch om ie niu program u pisz e m y: gnuplot> load "wykres1" gnupl ot sk l e janą) i były z az nacz one ob sz ary nie pe w ności pom iarów na w yk re sie . Prz e l icz anie z aw artości k ol um n # prz e l icz e nie w artości prz e z stałą ($2*0.1) pl ot "w yk re s.d at" using 1:($2*0.1) sm ooth cspl ine s titl e "W yk re s" Z nacz nik i w ie l k ości b łęd u gnupl ot um ożl iw ia nam nanie sie nie na w yk re s rów nie ż słupk ów l ub ob rysów ob sz arów nie pe w ności.By um ie scić je na rysunk u nasz pl ik z d anym i d anych m usi z aw ie rać k ol um ny z aw ie rające te w artości. Z nacz nik i m ożna w yśw ie tl ać na trz y sposoby: z nacz nik i d l a rz ęd nych (Y), z nacz nik i d l a od ciętych (X), z nacz nik i d l a rz ęd nych i od ciętych . Z nacz nik b łęd u m ożna pod aje m y jak o od ch yl e nie od w artości l ub w prz ypad k u różnych w artości b łęd ów in pl us i in m inus jak o w spółrz ęd ne k ońców ob sz arów od ch yl e ń. Ponad to z nacz nik i d l a rz ęd nych i od ciętych m ogą być postaci słupk ów l ub prostok ątów . W yk re s z rysunk u [*] uz ysk ano z a pom ocą następujące go pol e ce nia: plot "test.dat" using 1:2:3 title "Znaczniki X" with xerrorbars , \ "test.dat" using 1:($2*0.8):4 title "Znaczniki Y" with yerrorbars , \ W yk re s utw orz ony prz e z sk rypt w yk re s1 w ygl ąd a nie źl e , al e nie od pow iad a nasz ym w ym aganiom . Ch ce m y aby punk ty były połącz one l inią (od cink ie m , k rz yw ą num e r 6 | 2006 "test.dat" using 1:($2*0.6):3:4 title "Znaczniki XY" with xyerrorbars , \ "test.dat" using 1:($2*0.4):($1$3):($1+2*$3):(0.4*$2-$4):(0.4*$2+2*$4) \ 24 SYSTEM H ARDW ARE PRO GRAM OW ANIE RO Z RYW K A SO FTW ARE title "Znaczniki XY rozne" with xyerrorbars , \ "test.dat" using 1:($2*0.2):3:4 \ title "Znaczniki XY prostok." with boxxyerrorbars Z a pom ocą d yre k tyw y using pod aje m y jaw nie , z k tórych k ol um n pl ik u d anych k orz ystam y. Num e ry k ol um n se paruje m y z nak ie m d w uk ropk a :. Z nak \ oz nacz a k ontynuację b ie żące go w ie rsz a w w ie rsz u następnym . Uw aga: po tym z nak u nie m oże w ystąpić spacja! Nal e ży z w rócić uw agę na l icz b ę k ol um n w yk orz ystaną prz y k re śl e niu k ol e jnych w yk re sów . Pie rw sz y w ie rsz z aw ie ra pol e ce nie pl otow ania z aw artości pl ik u te st.d at z e z nacz nik am i b łęd ów rz ęd nych . D o pl otow ania b ęd ą być w yk orz ystane w k ol e jności k ol um na pie rw sz a, d ruga i trz e cia. D rugi w ie rsz z aw ie ra pol e ce nie pl otow a- nia z e z nacz nik am i b łęd ów od ciętych . D o pl otow ania b ęd ą w yk orz ystane k ol um ny: pie rw sz a, d ruga prz e m nożona prz e z sta- łą 0.8 i k ol um na cz w arta pl ik u te st.d at. Trz e ci w ie rsz z aw ie ra pol e ce nie pl otow ania z e z nacz nik am i b łęd ów rz ęd nych i od ciętych . Do pl otow ania b ęd ą w yk orz ystane k ol um ny: pie rw sz a, d ruga prz e m nożona prz e z stałą 0.6, trz e cia i cz w arta k ol um na pl ik u. Cz w arty i piąty w ie rsz z aw ie ra pol e ce nie pl otow ania z e z nacz nik am i b łęd ów rz ęd nych i od ciętych o różnych w artościach nie pe w ności in pl us i in m inus. D o pl otow ania b ęd ą użyte k ol um ny w k ol e jności: pie rw sz a, d ruga prz e m nożona prz e z stałą 0.4, pie rw sz a m inus trz e cia, pie rw sz a pl us trz e cia pom nożona prz e z 2, d ruga pom nożona raz y 0.4 m inus cz w arta i num e r 6 | 2006 d ruga pom nożona raz y 0.4 pl us cz w arta k ol um na pom nożona prz e z 2. Sz ósty i siód m y w ie rsz nie w ym aga już k om e ntarz a. W ygład z anie w yk re s u W yk re s m ożna inte rpol ow ać z a pom ocą od cink ów łącz ących k ol e jne punk ty i k rz yw ych sk l e janych . M ożna rów nie ż w ygład z ić w yk re s k rz yw ym i Be z ie ra. R ysune k : W ygład z ony w yk re s Pol e ce nie pl otow ania w ygład z one go w yk re su: plot "test.dat" title "Odcin- 25 SYSTEM H ARDW ARE PRO GRAM OW ANIE RO Z RYW K A SO FTW ARE set output "wykres.png" Pe łny prz yk ład Narysujm y w yk re s funk cji y=1/ x w ygład z ony k rz yw ą sk l e janą oraz z z az nacz onym i z ak re sam i nie pe w ności. D ane są id e ntycz ne jak pod ane w cz e śnie j. #set terminal x11 # wyjście na ekran #set terminal png # wyjście do pli- ku png #set terminal latex # wyjście do pli- ku LaTeX set terminal postscript # wyjście do pliku PostScript, np. do druku set output "test.ps" # nazwa pliku wyjściowego set title "Wykres y=1/x"# tytuł set xlabel "os X" # opis osi X set ylabel "os Y" # opis osi Y set xr [-0.002:0.022] # zmiana zakre- su osi X set yr [0:0.015] # zmiana zakre- su osi Y ki" with linespoints , \ "test.dat" smooth csplines title "Krzywa sklejana" , \ "test.dat" smooth bezier title "Krzywa Beziera" W yd ruk w yk re s u d o pl ik u D om yśl nym te rm inal e m w yjściow ym je st x11 cz yl i w yjście na e k ran. Je śl i ch ce m y otrz ym ać pl ik z rysunk ie m nal e ży z m ie nić te rm inalna je d e n z poniższ ych : x11 - e k ran - d om yśl nie , png - pl ik png, late x - pl ik u LATEX-a, postscript - pl ik Postscript, z a pom ocą pol e ce nia: set terminal latex set nokey # bez legendy Pol e ce nie : set terminal 0.008, 0.010, 0.015, 0.020) set timestamp "Utworzono dnia %Y-%m-%d o godzinie %H:%M przez TLu" set xtics (0,0.002, 0.004, 0.006, plot "test.dat" using 1:(1/$2) smooth csplines , \ w yśw ie tl a w sz ystk ie d ostępne te rm inal e cz yl i m ożl iw ości z apisu d o różnych form atów . W prz ypad k u nie k tórych te rm inal i m ożna pod ać d od atk ow e opcje . Nal e ży je sz cz e pod ać naz w ę pl ik u w yjściow e go, np.: "test.dat" using 1:(1/$2):3:(0.01/$4) with xyerrorbars num e r 6 | 2006 SYSTEM H ARDW ARE PRO GRAM OW ANIE RO Z RYW K A SO FTW ARE Apach e K ie dy w łącz ym y nas z ą cudow ną prz e gl ądark e (jak a k ol w ie k by ona nie była), w pis z e m y adre s nas z e go ul ubione go s e rw is u inte rne tow e g (praw ie dow ol ne go), nas z ym ocz om z ape w ne uk aże s ię coś cudow ne go. M as a grafik i, w ie l e inform acji, anim acji, forul arz e i odnośnik i. Je dnym k l ik nięcie m m oże m y s praw dz ić jak a je s t z a ok ne m pogoda, jak ie s ą w ynik i w yborów , na k tórą m am jutro do s z k oły l ub popros tu prz e cz ytać św ie tny dow cip. Kol e jne k l ik nięce dos tarcz a nam je s z cz e w ięce j inform acji i z abaw y. Jak ie to w s z ys tk o pięk ne - al e cz y to je s z cz e h ttpd ?? RAFAŁ 'e rt16' TRÓJNIAK D ynam icz ne ge ne row anie s tron cz .4 K ie d y proje k tow ano h ttpd nik t je sz cz e nie m yśl ał o autom atycz ne j ge ne racji stron inte rne tow ych . Se rw e r H TTP m iał z a z ad ania w prosty, sz yb k i i prz e jżysty sposób se rw ow ać pl ik i, poprostu prz e syłać d ane . Nik t w te d y nie m yśl ał o m od yfik ow aniu cz ęści tych d anych , a co d opie ro ich tw orz e nia. Postęp te ch nol ogicz ny spraw ił nam praw d z iw e go b z ik a. A k tual nie w ięk sz ość w ięk sz ych se rw isów oparta je st o ogrom ne syste m y ge ne rujące strony. Sk rypty napisane w jęz yk ach tak ich jak Pe rl , PH P, A SP, pre k om pil ow ane jak JAVA l ub program y CGI. Protok ół z apisany w R FC 2616 z ape w nia d osk onały pom ost pom ięd z y roz m aitym i apl ik acjam i a se rw e re m , nie z al e żnie od sk rytym i z a nim m e ch aniz m am i. D z ięk i te m u m am y d z isiaj d ostęp d o gie r poprz e z prz e gl ąd ark e , k onfiguracje użąd z e ń sie ciow ych , inform acji, pocz ty. Z ysk uje m y prz e nośność nasz e go b iurk a, m ożl iw osć pracy z k ażd e go z ak atk a gl ob u w k tórym je st d ostęp d o inte rne tu.A k tual nie całe syste m y prz e nosz one są w sie ć, w łącz nie z e d ytoram i te k stu i ark usz am i k al k ul acyjnym i. D l acz e go w ięc i m y nie sprub uje m y sw oich sił w tym w yścigu ?? m od _ cgi(d )?? Prócz ph p cz ęsto spotyk ane są je sz cz e program y cgi. D o w yk ożystyw ania te j te ch nol ogii w yk ożystyw anych je st sz e re g m od ułow ,tak ich jak m od _ cgi, m od _ cgid oraz suExe c. W yk ożystyw anie program ów CGI d ostarcz onych prz e z użytk ow nik ów je st na tyl e nie b e z pie cz ne , iż ud ostępniam y m u o poz iom w ięce j prz e strz e ni d ow yk ożystania, niż prz y jęz yk ów sk ryptow ych jak PH P. Je st to te m at na osob ny num e r, w ięc b ęd e z m usz ony opisać go innym raz e m . m od _ ph p w s k rócie Instal acja m od _ ph p od strony A pach e w ym aga je d ynie k il k u z m ian. Ch ciałbym tutaj z az nacz yć, iż w tym opisie nie je ste m w stanie om ów ić w sz ystk ich z ab ie gów w ym aganych prz e z aspe k ty b e z pie cz e ństw a. Te go typu instal acja w ystarcz y w z upe łności jak o d om ow e dew el ope rsk ie środ ow isk o program isty w PH P. D l a syste m ów w ie l oużytk ow nik ow ych nal e ży prz e m yśl e ć z asad ność w ie l u ope racji i ogranicz yć je go praw a. w yłącz yć nie b e z pie cz ne funk cje , ogranicz yć d ostęp d o syste m u pl ik ów . D o rz e cz y. Instal uje m y pacz k e , prz y cz ym nal e ży uw ażać d l a jak ie j w e rsji se rw e ra je st ona prz e z nacz ona.(pacz k i z A pach e v2 nie są k om patyb il ne z v1.3). Następnie m usim y poinform ow ać apach e , aby z aład ow ał od pow ie d ni m od ułpoprz e z um ie sz cz e nie w pl ik u k onfiguracyjnym d yre k tyw y LoadModule php5_module modules/libphp5.so Kol e jnym k rok ie m je st poinform ow anie se rw e ra k tóre pl ik i m a pod d aw ać prz e tw arz aniu prz e z m od uł. AddType application/x-httpdphp .php .php3 .phtml num e r 6 | 2006 AddType application/x-httpdphp-source .phps Pie rw sz a d yre k tyw a inform uje jak ie roz sz e rz e nia m ie sz cz ą się w k ate gorii M IM E ok re śl ajace j sk ryptóy ph p, natom iast d ruga źród ła sk ryptów ph p. D z ięk i te j inform acji są one od pow ie d nio prz e tw arz ane . Sk rypty są w yk onyw ane , a ich w yjście je st k e irow ane d o k l ie nta (najcz ęście jprz e gl ąd ark i), natom iast źród ła są prz e tw arz ane do postaci stron H TM L z k ol orow anie m sk ład ni i prz e z e ntow ane użytk ow nik om . Na tym e tapie po z re startow aniu se rw e ra pow inie n d z iałać już inte rpre te r PH P. M oże m y to spraw d z ić w b ard z o prosty sposób . Tw orz ym y pl ik te st.ph p o następujące jtre ści: <?php phpinfo(); ?> Je śl i uprz e d nio nie z ab l ok ow al iśm y pow yższ e j funk cji w pl ik u ph p.ini , po w yb raniu ad re su te go pl ik u w prz e gl ąd arce pow inniśm y z ob acz yć e k ran z inform acją o z ainstal ow anym m od ul e . D ow ie m y sie tutaj o w sz ystk ich w yk rytych prz e z m od uł roz sz e rz e niach , ich w e rsjach oraz opcjach . Funk cja ph pinfo je st pie rw sz ym k and yd ate m d o z ab l ok ow ania, ch ociarz w ięk sz ość ud ostępnianych prz e z nią inform acji je st d ostępna w innych m ie jscach . Kol e jną, b ard z ie j k osm e tycz na z m ianą je st um ożl iw ie nie sk ryptom PH P w ystępow anie jak o ind e xy k atal ogów . Konfiguracja je st d ok onyw ana prz y pom ocy 27 SYSTEM H ARDW ARE PRO GRAM OW ANIE RO Z RYW K A SO FTW ARE opisane jjuż d yre k tyw y D ire ctoryInd e x. "%{Referer}i" DirectoryIndex index.php index.html index.html.var poz w ol i z apisać strony od nosz ące się d o d ane go pl ik u ( nagłów e k R e fe re r ).D od atk ow o w śród opcji m oże się pojaw ić spe cjal ny z nak "<" l ub "> " ok re śl ający cz ęść z apytania (pocz ąte k l ub k onie c ). W yk orz ystyw any np. w prz ypad k u prz e k ie row ania k l ie nta. Pam iętnik s e rw e ra A pach e , jak k ażd y praw d z iw y d e m on, posiad a w b ud ow any m od uł poz w al ający na z apisyw anie w sz ystk ich z apytań jak ie ob sługuje , oraz roz m aitych inform acji na ich te m at. Popul arne Logi poz w al ają na ob se rw acje w yk ożystania nasz e go se rw e ra, ob l icz anie statystyk oraz (co ch yb a najb ard z ie j b ol i) pom agają w z nal e z ie niu spraw cy w yrz ąd z onych sz k ód . No tak , tyl k o gd z ie ? Z nam y już sposób na ustal e nie w ygl ąd u k ażd e go re k ord u, nal e z y się te raz z ab rać z a ich w yk orz ystanie . Logi m ogą być w ysyłane d o pl ik ów , l ub d o program u prz e tw arz ające go i z apisujące go te inform acje . A by z apisać d ane d o pl ik u w ystarcz y pod ać ście żk ę pl ik u, z najd ującą się w Se rve rR oot. Używ anie program u d o z apisyw ania pl ik ów je st m ożl iw e , prz e z pod anie je go naz w y poprz e d z one go pionow ą k re są ( "| " - pipe ". Program te n b ęd z ie uruch am iany prz e z se rw e r na tych sam ych praw ach , oraz k arm iony prz e z stand ard ow e w e jście d anych . A co to ja m iałe m z apam iętać ? Z aw artość i form at l ogów je st b ard z o sz e rok o k onfigurow al ny. M oże m y tutaj w pisyw ać w ie l e inform acji, roz m ie sz cz ać je w d ow ol ne j k ol e jności. Sam w ygl ąd k ażd e go re k ord ów ustal am y prz e z from atujący ciąg z nak ów . Je st to sposób z apożycz ony z e z b ioru funk cji printf z nane go z c+ + i innych jęz yk ów program ow ania. K ażd e pol e z acz yna się z nak ie m procęta ( % ), po k tórym m oże nastąpić sz e re g param e trów , z ak ończ ony sym b ol e m d ane go pol a. D l a prz yk ład u form at : D o k onfiguracji tych cz ynnosci posłużą nam 3 d yre k tyw y: * D yre k tyw a LogForm at prz yjm uje 2 argum e nty. D e finiuje ona sposób z apisyw ania l ogów , prz e z nad anie m u naz w y z ararte j w d rugim argum e ncie . Pie rw są opcją je st form at re k ord u ( d e finiow any ciągm ie m z nak ów w cud z ysłow ie ) l ub naz w a już z d e finiow ane go form atu. "%!200r %200f" poz w ol i z al ogow ać pie rw sz ą l inijk e z apytania d l a w sz ystk ich nie ud anych (status różny od 200) żąd ań, natom iast ad re s pl ik (fl aga f ) d l a w sz ystk ich ud anych . M oże m y użyć w ięce jtak ich opcji od d z ie l ając je prz e cink ie m . D l a nie k tórych pul opcje pod aw ane m ogą być w naw iasach kl am row ych , tak prz yk ład ow o : LogFormat "%h %l %u %t \"%r\" %>s %b" common LogFormat common common_copy num e r 6 | 2006 28 SYSTEM H ARDW ARE PRO GRAM OW ANIE RO Z RYW K A SO FTW ARE * D yre k tyw a Custom Log prz yjm uje 3 argum e nty. Pie rw sz ym z nich je st m ie jsce um ie sz cz e nia d anych .D rugą opcja je st naz w a form atu w pisów , l ub sam ciąg form atujący. syw anie sw oich pocz ynań, co d aje nam w ie l e k ożyści.Nal e ży pam iętać, że z b ie ranie tak ich inform acji je st ob ow iąz k ie m k ażd e go ad m inistratora. CustomLog tajne/logi/access_log "%h %l %u %t \"%r\" %>s %b" CustomLog logs/access_log common * D yre k tyw a Transfe rLog d z iała pod ob nie d o Custom Log. Prz yjm uje ona je d e n argum e nt b ęd ący m ie jsce m prz e ch ow yw ania l ogów . Z a form at l ogów prz yjm uje ostatni z d e finiow any d yre k tyw ą LogForm at, al e nie naz w any form at. LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-agent}i\"" TransferLog logs/access_log Inne z apis k i Prucz z w yk łych inform acji o d ostępie d o pl ik ów re je struje m y rów nie ż b łęd y. D o um ie jscow ie nie te go typu inform acji służy d yre k tyw a ErrorLog prz yjm ujące je d e n argum e nt. D od atk ow o m oże m y tutaj rów nie ż użyć d z ie nnik a syste m ow e go sysl og pod ając jak o param e tr sysl og:TYP , gd z ie TYP je st grupą d o jak ie j z ostaną z ak fal ifik ow ane inform acje od se rw e ra.M oże m y w łącz yć b uforow anie l ogów poprz e z d yre k tyw e Buffe re d Logs prz yjm ującą argum e nt w postaci off l ub on. M oże m y rów nie ż z b ie rać inform acje o ciaste cz k ach z apisując je d o pl ik u d z ięk i d yre k tyw ie Cook ie Log. h ttp://w w w .ne tbe ans .org A pach e poz w al a na w sz e ch stronne z api- num e r 6 | 2006 29 SYSTEM H ARDW ARE PRO GRAM OW ANIE RO Z RYW K A SO FTW ARE Podpis cyfrow y, cz e m u w arto używ ać? Je s te śm y w dobie pow s z e ch ne jinform atyz acji s połe cz e ńs tw a - to już truiz m , pow tarz any na k ażdym k rok u. Kom pute ry w dz ie rają s ię do w s z e l k ich m ożl iw ych dz ie dz in życia. Podobnie jak w k ontak tach m iędz yl udz k ich , tak że w Inte rne cie is tnie je potrz e ba uw iarygodnie nia s w oje jtożs am ości, tak aby k ore s ponde ntm iał pe w ność, że k om unik uje s ię z w łaściw ą os obą. M ACIEJ RUTECK I (unixy.pl ) O il e prz yz w ycz ail iśm y się d o b e z pie cz nych stron (sz yfrow anych ) b ank ow ych , pocz tow ych , to jak oś ciągl e je st prob l em z e z roz um ie nie m potrz e by pod pisyw ania sw oich w iad om ości pod pise m cyfrow ym . A sz k od a, z w ięk sz a to b ow ie m z aufanie d o nas, k ie d y go używ am y (nie z al e żnie od w ie d z y te ch nicz ne jd rugie jstrony). Tutaj nal e ży w spom nie ć różnicę pom ięd z y pod pise m cyfrow ym a e l e k tronicz nym . O il e pie rw sz y je st ściśl e z w iąz any z k om pute ram i i te ch nol ogiam i infor- m atycz nym i, to pod pis e l e k tronicz ny je st b ard z ie j ogól nym pojęcie m , ob e jm ującym z arów no pod pis cyfrow y, jak i w sz e l k ie inne (m arginal ne d z iś) e l e k tronicz ne sposoby pośw iad cz ania aute ntycz ności d anych [6]. Z asad nicz ym prob l e m e m w nasz ym k raju je st topornie w prow ad z ana inform atyz acja, w sz ystk o w sk az uje na to, że prz e d 2008 rok ie m nie m am y co l icz yć na m asow e w yk orz ystanie pod pisu el e k tronicz ne go w pol sk ie j ad m inistracji. Z d rugie j strony osoby cz ęsto k om unik ujące się z z ach od nim i firm am i m ogą już m ie ć potrz e b ę je go używ ania. W tym artyk ul e z am ie rz am się sk upić nad z al e tami pod pisu el e k tronicz ne go w prz ypad k u z w yk łych użytk ow nik ów . Nie b ęd ę z ajm ow ał się te ch nicz nym i aspe k tam i, gd yż nie w niosą nic prak tycz ne go d o artyk ułu. Sam sposób otrz ym ania ce rtyfik atu z ostał opub l ik ow any już w cz e śnie j. M oim ce l e m je st z ach ęce nie d o sz e rsz e go w yk orz ystania pod pisu cyfrow e go w k om unik acji e l e k tronicz ne j. Dl acz e go? O soby, k tóre cz ęsto k orz ystają z tak ie go m e d ium jak im je st Inte rne t i pocz ta el e k tronicz na w cz e śnie j cz y późnie j pad ły ofiarą spam e rów - l ud z i m asow o w ysyłających różne go rod z aju re k l am y prz e z sie ć. Ponie w aż tak i proce d e r je st cz ęsto na granicy l e gal ności b ąd ź je d noz nacz nie sprz e cz ny z praw e m , to autorz y re k l am cz ęsto pod sz yw ają się pod ob ce osoby. R az m iałe m prz yje m ność d ostać spam z e sfałsz ow anymi nagłów k am i w iad om ości, gd z ie jak o nad aw ca w id niał m ójad re s e -m ail ... R od z i się pytanie ; jak z ape w nić innych o aute ntycz ności sw oje go l istu? Jak z ab e z pie cz yć d ok um e nt prz e d nie pow ołanym i z m ianam i? W l istach "anal ogow ych " (papie row ych ) norm al ną rz e cz ą je st pod pisyw anie się na k ońcu te k stu. Cz e m u te go nie prz e nie ść d o k ore spond e ncji e l e k tronicz ne j? Pod pis el e k tronicz ny, aby go w yk orz ystać w prak tyce , m usi być: - prz ypisany je d ne j osob ie , - nie m ożl iw y d o pod - num e r 6 | 2006 30 SYSTEM H ARDW ARE PRO GRAM OW ANIE RO Z RYW K A SO FTW ARE rob ie nia (w re al nym cz asie ), - unie m ożl iw iający w yparcie się go prz e z autora, - łatw y d o w e ryfik acji prz e z osob ę nie z al e żną, - łatw y d o w yge ne row ania. R óżni się je d nak od pod pisu trad ycyjne go k il k om a w łaściw ościam i: - m oże być sk ład ow any i prz e syłany nie z al e żnie od d ok um e ntu (nie m ożl iw e w pod pisie trad ycyjnym ), - je stfunk cją d ok um e ntu (cz yl i z m iana d ok um e ntu unie w ażnia pod pis e l e k tronicz ny, z ape w nie nie o aute ntycz ności d ok um e ntu je st nie k ie d y w ażnie jsz e od aute ntycz ności nad aw cy), - ob e jm uje cały d ok um e nt. R oz w iąz ania Najb ard z ie j popul arnym i te ch nik am i pod pisyw ania w iad om ości są PGP (np. O pe nPGP) [4] oraz ce rtyfik aty X.509 [3]. Nie ch cę w d aw ać się w d ysk usję w yższ ości je d ne go nad d rugim i tyl k o k rótk o je sch arak te ryz uję w pod punk tach . O pe nPGP: - nie z al e żny od d użych firm , - z d e ce ntral iz ow ana b az a pod pisów , d z iała na z asad z ie z aufane j sie ci [2]: ucz e stnicy w z aje m nie pod pisują sob ie kl ucz e , istnie je ryz yk o, że k tóryś z kl ucz y nie b ęd z ie z aufany, - b e z płatny. X.509 : - h ie rarch icz ny sposób nad aw ania ce rtyfik atów , istnie ją głów ne ośrod k i ce rtyfik acji, sw oje go cz asu ce rtyfik at w ym agał opłaty, ob e cnie m ożna uz ysk ać go b e z płatnie , - ob sługuje go z d e cyd ow ana w ięk sz ość program ów pocz tow ych . W ygod nie jsz y je st w ob słud z e X.509 i te n pol e cam cz yte l nik om . O byd w a roz w iąz ania istnie ją na w ięk sz ość d ostępnych pl atform i syste m ów ope racyjnych (O pe nPGP tak że pod D O Sa) i są "w ol ne " te ch nol ogicz nie . Cz y pod pis e l e k tronicz ny je s t d l a m nie ? Z al e ty pod pisu cyfrow e go pow inni d ostrz e c w łaścicie l e firm roz syłających d ok um e nty do w spółpracow nik ów , k ontrah e ntów cz y k l ie ntów .O b e cność pod pisu - w tak im prz ypad k u - pod nosi z nacz ąco w iarygod ność ad re sata (już nie m oże się w yprz e ć w ysłania d ok um e ntu!). A z w yk l i użytk ow nicy? O d d nia 7 sie rpnia 2006 r. Narod ow y Fund usz Z d row ia um ożl iw ia prz e syłanie k ore spond e ncji i d ok um e ntów pod pisanych e l e k tronicz nie . Pow yższ e d ok um e nty pow inny być k ie row ane na ad re s k ance l aria.e l e k tronicz na@nfz .gov.pl . Prz yjm ow ane b ęd ą tyl ko d ok um e nty sygnow ane pod pise m cyfrow ym (ce rtyfik ate m e l e k tronicz nym ). "K l ie nci" Z US cz ęsto już m ają (nie k ie d y nie św iad om ie ) d o cz ynie nia z pod pise m cyfrow ym . Kupuje sz coś w se rw isie auk cyjnym l ub sk l e pie inte rne tow ym ? Nie m a l e psz e go potw ie rd z e nia transak cji jak z aśw iad cz e nie aute ntycz ności l istu z a pom ocą pod pisu cyfrow e go. Na z ach od z ie Europy nie k tóre d uże k once rny prz y w ięk - sz ych z ak upach ignorują nie pod pisane l isty! Ponad to m oże sz łatw o sz yfrow ać l isty. W ystarcz y, że nad aw ca m a ce rtyfik at, prz e śl e d o nas l ist pod pisany tym ce rtyfik ate m i m oże m y sz yfrow ać l isty w ysyłane d o nie go. M icrosoft i inne firm y ch ciały w prow ad z ić now e m e tod y uw ie rz yte l niania nad aw cy, z apom inając z upe łnie , że ich roz w iąz anie unie m ożl iw iłoby k orz ystanie z l ist d ysk usyjnych , al iasów pocz tow ych itp. A prz e cie ż m am y pod pis cyfrow y, k tóry łatw o d ostać i używ ać. Pod nasz ad re s pocz tow y m oże pod sz yć się nie tyl k o spam e r, al e tak że w irus cz y trojan, cz y z łośl iw y "k ol e ga". O trz ym ując pod pisany l ist m am y pe w ność, że nie z ostał z m ie niony i je d nocz e śnie nad aw ca nie m oże się w yprz e ć je go w ysłania. Z ob acz [9 ] jak łatw o pod sz yć się pod inną osob ę. Przydatne adre s y [1] http://pl.wikipedia.org/wiki/Podpis_cyfrowy [2] http://pl.wikipedia.org/wiki/Sie%C4%87_zaufania [3] http://pl.wikipedia.org/wiki/X.509 [4] http://pl.wikipedia.org/wiki/PGP_%28program_kryptograficzny%29 [5] http://ipsec.pl/podpis_elektroniczny/ [6] http://www.republika.pl/podpis_elektroniczny/ [7] http://ipsec.pl/pk/index.php?title=Faktura_elektroniczna [8] http://spam.jogger.pl/tag/podpis-cyfrowy [9] http://spam.jogger.pl/2006/04/10/e-mail-nie-mozna-mu-ufac/ num e r 6 | 2006 31 SYSTEM H ARDW ARE PRO GRAM OW ANIE RO Z RYW K A SO FTW ARE Th aw te - jak dos tać darm ow y ce rtyfik at nie k w al ifik ow any Ce rtyfik atnie k w al ifik ow any je s tw ygodnym narz ędz ie m do podpis yw ania w iadom ości e l e k tronicz nych . Probl e m e m je s tto, że w Pol s ce je s tpłatny (25PLN w prom ocji...). Al e Th aw te .com z nany ośrode k ce rtyfik acji poz w al a uz ys k ać go z a darm o. h ttp:/ / spam .jogge r.pl / tag/ pod pis-cyfrow y. A te raz jak z d obyć ce rtyfik at. W ch od z im y na stronę głów ną h ttp:/ / w w w .th aw te .com / i w yb ie ram y Se cure Your E-m ail Pojaw i się now e ok no, w k tórym m usim y z aak ce ptow ać w arunk i um ow y rad z ę prz e cz ytać uw ażnie całą tre ść, aby późnie j nie było nie d om ów ie ń. W ym agany w ie k d o stw orz e nia ce rtyfik atu to 13 l at (nie pe łnol e tni z a z god ą rod z iców / opie k unów ). Ponie w aż nasz ce rtyfik at je st nasz ą w iz ytów k ą (prak tycz nie jak d ow ód tożsam ości), z ate m nie pow inniśm y go z gub ić. Z gad z am y się je d nocz e śnie na pub l ik ację inform acji o nas i ce rtyfik acie .Z re sz tą inacz e j trud no b ęd z ie nas pow iąz ać z d anym ce rtyfik ate m . M ACIEK RUTECK I (unixy.pl ) Je śl i z gad z am y się z w arunk am i nacisk am y ne xt na sam ym d ol e. Co praw d a w nasz ym k raju w yk orz ystanie pod pisu e l e k tronicz ne go opóźni się o dw a l ata, to m oim z d anie m w arto tak i już posiad ać, sz cz e gól nie jak k toś cz ęsto prow ad z i k ore spod e ncję z z agranicą. Ponad to ob e cność pod pisu e l e k tronicz ne go z w ięk sz a z aufanie d o nasz e josoby (naw e t jak ad re sat k om pl e tnie nie z na się na tym z agad nie niu). W następnym ok nie , je śl i m am y popraw nie sk onfigurow aną prz e gl ąd ark ę, pow itani z ostanie m y k om unik atam i po pol sk u. Tutaj w arto w pisyw ać praw d z iw e d ane osob ow e , inacz je ce rtyfik at b ęd z ie b e z użyte cz ny. R ad z ę d w uk rotnie spraw d z ić w prow ad z any te k st. Ninie jsz y artyk uł opisuje stronę te ch nicz ną poz ysk ania ce rtyfik atu. Z ainte re sow anych z ach ęcam d o z ajrz e nia na stronę Tom asz a A nd rz e ja Nid e ck ie go: w yb ie ram y Cl ick h e re : W k ol e jnym ok nie poprosz e ni z ostaje m y o ad re s e -m ail , k tóry je st je d nocz e śnie naz w ą użytk ow nik a w syste m ie Th aw te .Następnie potw ie rd z am y stronę k od ow ą i k raj. W k ol e jnym num e r 6 | 2006 ok nie m usim y w ym yśl eć sol id ne h asło, m usi być m ocne , w prz e ciw nym prz ypad k u groz i to w łam anie m i k om prom itacją nasz e go k onta i ce rtyfik atu! Pote m od pow iad am y na k il ka pytań, w e ryfik uje m y d ane i cz e k am y na l ist z potw ie rd z e nie m te go e tapu re je stracji. W ch od z im y na ad re s pod any w l iście . Kopiuje m y d ane z l istu, k tóre nak az uje nam Th aw te . Po w pisaniu otrz ym am y coś pod ob ne go jak poniże j: Nacisk am y ne xt i l oguje m y sie na stronie . W yb ie ram y ce rtyfik at X.509 . W now ym ok nie w yb ie ram y prz e gl ąd ark ę, jak ie jużyw am y i nacisk am y re q ue st: 32 SYSTEM H ARDW ARE PRO GRAM OW ANIE RO Z RYW K A SO FTW ARE W k ol e jnym ok nie upe w niam y się, cz y nie z rob il iśm y jak ie goś b łęd u i nacisk am y finish . Te raz cz e k am y, aż otrz ym am y potw ie rd z e nie . Najpie rw otrz ym am y e -m ail inform ujący o z łoz e niu z am ów ie nia. D opie ro późnie j o d ostępności ce rtyfik atu. Prz e ch od z im y d o następne go ok na w yb ie ram y nasz ad re s e -m ail . 2x ne xt. W yb rać A cce pt D e faul t Exte nsions -> A cce pt. now y ce rtyfik at: Z az nacz am y nasz i w yb ie ram y w yśw ie tl : Te raz jak prz e pisać ce rtyfik at z Fire foxa d o Th und e rb ird a. Z az nacz am y nasz ce rtyfik at i w yb ie ram y W yk onaj k opię z apasow ą, w yb ie ram y h asło (m usi być m ocne !) i z apisuje m y. W l iście pod tytułe m : Th aw te Pe rsonal Uruch am iam y Th und e rb ird a: Pre fe re ncje Ce rt Issue d otrz ym asz ad re s, k tóry m usisz w pisać w prz e gl ąd arce (tak i d ługi z d użą il ością cyfr na k ońcu). Po w e jsciu pow inie n z ainstal ow ać się autom agicz nie ce rtyfik at. Użytk ow nicy Fire foxa i pok re w nych nie z ob acz ą żad ne go k om unik atu, al e w ystarcz y z ajrz e ć w Pre fe re ncje -> Z aaw ansow ane -> Be z pie cz e ństw o-> W yśw ie tl ce rtyfik aty-> Tw oje ce rtyfik aty i pow inniśm y z ob acz yć > Pryw atność-> Z ab e z pie cz e nia-> W yśw ie tl ce rtyfik aty-> Im portuj: W yb ie ram y nasz pl ik z ce rtyfik ate m , pod aje m y w cz e śnie j z apisane h asło i po otw arciu K A SUJEM Y PLIK NA D YSK U Z Z A PISA NYM CER TYFIK ATEM ! Te raz w Th und e rb ird z e w yb ie ram y Konfigurację k ont-> nasz e k onto-> Z ab e z pie cz e nia. W Pod pis cyfrow y i sz yfrow anie pocz ty w yb ie ram y nasz ce rtyfik at. W arto z az nacz yć d om yśl ne pod pisyw anie cyfrow e w iad om ości. O d te j ch w il i m oże m y te stow ać d z iałanie ce rtyfik atu. W yb ie ram y w ysok i poz iom z ab e z pie cz e ń (2048 b itów ) -> ne xt i cz e k am y aż w yge ne ruje się ce rtyfik at. Ce rtyfik at cyfrow y je st w ażny tylko prz e z rok , pote m trz e ba go od n ow ić. num e r 6 | 2006 PLD Linux Dis tribution h ttp://pl d-l inux.org/ 33 SYSTEM H ARDW ARE PRO GRAM OW ANIE RO Z RYW K A SO FTW ARE K il k a upięk s z e ń dl a K DE K DE je s tw ys oce k onfigurow al nym środow is k ie m graficz nym . Z a pom ocą Ce ntrum Ste row ania m ożna z re k onfigurow ać nie m al że k ażdy e l e m e nts ys te m u. Je dnak że K DE z acz yna błys z cz e ć dopie ro po doins tal ow aniu dodatk ow ych de dyk ow anych program ik ów . Ch ciałbym opis ać k il kaz nich . K ARO L"AXIO " KO Z IO Ł D o te stów w yb rałe m sz cz ęśl iw ą óse m k ę: Supe rk aram b a, K xd ock e r, Kool d ock , K sm ooth d ock , Kom pose , Task b ar2, K b fx, Yak uak e . Part 1. Supe rk aram b a, cz yl i jak d ob aje rz yć pul pit. Supe rk aram b a, cz yl i ul e psz ona następcz yni K aram by, je st apl ik acją potrafiącą d od ać d o k d e -ow sk ie go pul pitu różne apl e ty: m onitory b ad ające ob ciąże nie syste m u, d od atk ow e pask i z ik onam i, k al e nd arz e i z agary, cz ytnik ne w sów al bo pogod ynk a. Cie k aw e są apl e ty potrafiące w spółpracow ać z z e w nętrz nym i program am i: XM M S cz y A m arok ie m . D od atk ow o tw orz e nie w łasnych te m atów K aram by je st tak proste , że k ażd a osob a z od pow ie d nim z acięcie m pow inna sob ie porad z ić (ocz yw iście nie sz tuk a z rob ić jak iś te m at, sz tuk a to z rob ić d ob ry sch e m at). D l ate go te ż na pocz ąte k pok aże k od m oje go te m atu k aram by (prosty apl e t b e z żad nych graficz e k , k tóry m a po prostu w yśw ie tl ać k il k a inform acji o syste m ie ). Te k st k od u je st oz nacz ony taką czcionką, m oje k om e ntarz e ob jaśniające (norm al nie nie m a ich w k od z ie ) są oz nacz one tak ą cz cion k ą. karamba x=0 y=0 w=860 h=50 locked=true interval=1000 x,y to od ległości apletu w pik se lach m ie rz on e od l e w e go górn e go brz e gu e k ran u; w ,h to od pow ie d n io sz e rok ość i w ysok ość apletu; lock e d =true /false cz yl i cz y apl e t m a być z ablok ow any cz y taż je st m ożliw ość prz e suw an ia go z a pom ocą m ysz k i; in te rval d e fin iuje cz as od św ie żan ia te m atu (pod aw any w m ilise k un d ach ) #CPU text x=15 y=10 value="CPU:" color=0,0,0 fontsize=13 font="Luxi Sans" z m ie n n a te k st ok re śl a że będ z ie m y d e fin iow ać obie k t te k stow y, prz y cz ym m oże to być z arów - n o sam od z ie l ny te k st, jak i jak iś se n sor (w tym w ypad k u je st to po prostu sam od z ie lny te k st); oprócz z m ie n n e j te k st m ożl iw e są te ż (acz k olw ie k n ie stosow an e tutaj prz e z e m n ie ) im age (w staw ia obraz ), bar (se n sor w k sz tałcie m ie rn ik a an alogow e go) oraz graph (se n sor w k sz tałcie w yk re su); x,y ok re śl ają położe n ie obie k tu l icz on e od l e w e go górn e go brz e gu apletu;value ok re śla tre ść w ypisyw an e go te k stu; color ok re śl a ocz yw iście k ol or te k stu, n al e ży w pisyw ać k ol ory w postaci RGB, w tym prz ypad k u 0,0,0 to cz arny; fon tsiz e to roz m iar użyte j cz cion k i, z aś fon t ok re śla jak a cz cion k a z ostan ie użyta d o w yśw ie tl e n ia te k stu text x=55 y=10 sensor=CPU format="%v%" color=0,0,0 align=right fontsize=13 font="Luxi Sans" te raz d od am y pie rw sz y se n sor syste m ow y;se n sor=CPU oz n acz a że będ z ie to se n sor m ie rz ący z użycie proce sora (in n e se n sory użyte pon iże j to m e m ory, d isk , uptim e , n e tw ork ); se n sor będ z ie te k stow y i w yrów n any w praw o (z m ie n n a al ign =righ t); param e try cz cion k i z d e fin iow an e jak pow yże j; form at m a ok re śl ać w jak i sposób se n sor będ z ie w yśw ie tlać d an e ; % v ok re śla z e będ z ie to po prostu w artość obciąże n ia proce sora (z n acz e k % ok re śla że te 'v' to n ie z w yk ła lite rk a), n atom iast d od atk ow y '% ' w staw ia z n ak proce n ta po w yśw ie tl an e j w artości #Memory num e r 6 | 2006 text x=105 y=10 value="Ram:" color=0,0,0 fontsize=13 font="Luxi Sans" text x=145 y=10 sensor=memory format="%um of %tm MB" color=0,0,0 fontsize=13 font="Luxi Sans" te raz będ z ie se n sor m ie rz ący ilość z ajęte j pam ięci ope racyjn e j (se n sor=m e m ory); k ilka słów pośw ięcę form atow i d anych ; pow yższ y z apis oz n acz a że będ z ie w yśw ie tlan a w artość z użyte j pam ięci (% um to use d m e m ory) oraz w artość całk ow ite j il ości pam ięci (% tm cz yli totalm e m ory) roz d z ie l on e spójn ik ie m of; cz yli n a prz yk ład 333 of 768 M B; ah a, w oln a pam ięć to % fm (fre e m e m ory) text x=235 y=10 value="Swap:" color=0,0,0 fontsize=13 font="Luxi Sans" text x=280 y=10 sensor=memory format="%us of %ts MB" color=0,0,0 fontsize=13 font="Luxi Sans" tak jak w yże j tyl k o te raz m ie rz on a je st ilość pam ięci sw ap; form aty: % us to używ any sw ap (use d sw ap), % fs to n ie z ajęty sw ap (fre e sw ap) n atom iast % ts to całk ow ita ilość pam ięci sw ap (totalsw ap) #Disk text x=380 y=10 value="HDD:" color=0,0,0 fontsize=13 font="Luxi Sans" text x=420 y=10 sensor=DISK interval="10000" format="%u of %t Mb (/)" color=0,0,0 fontsize=13 font="Luxi Sans" mountpoint="/" 34 SYSTEM H ARDW ARE PRO GRAM OW ANIE RO Z RYW K A SO FTW ARE n astępn ie id z ie se n sor m ie rz ący z ajętość d ysk u (se n sor=d isk ); n ie używ an a w cz e śn ie j w se n sorach z m ie n n a in te rvalok re śl a jak cz ęsto d any se n sor m a spraw d z ać to co m a spraw d z ać (o ile obciąże n ie CPU m ożn a spraw d z ać co se k un d ę to d la z ajętości d ysk u to n ie m a w ięk sz e go se n su, w ięc lepie j w yd łużyć te n ok re s); form aty: % u to z ajęta prz e strz e ń d ysk ow a (use d ) z aś % t to całk ow ita poje m n ość d ysk u (a % f to pe w n ie w oln a prz e strz e ń); i n ajw ażn ie jsz a z m ie n n a – m oun tpoin t ok re śl a k tórą z pod m on tow anych partycji se n sor m a spraw d z ać (pod aje m y pun k t m on tow an ia z d e fin iow any w /e tc/fstab) text x=550 y=10 sensor=DISK interval="10000" format="%u of %t Mb (/axio)" color=0,0,0 fontsize=13 font="Luxi Sans" mountpoint="/axio" mat="%in kb" fontsize=13 font="Luxi Sans" DECIMALS=1 se n sor=n e tw ork cz yli m ie rz ym y obciąże n ie sie ci in te rn e tow e j; form at % in ok re śla n atęże n ie pak ie tów prz ych od z ących (in com in g), n atom iast n iże j z d e fin iow any % out ok re śla n atęże n ie pak ie tów w ych od z ących (outcom in g) z n asz e go k om pute ra, m ie rz onych w k ilobajtach ;z m ie n n a d e cim alok re śl a z jak a d ok ład n ością (a d ok ład n ie ile m ie jsc po prz e cin k u) m ają być pod aw an e d an e text x=15 y=30 value="Net (incoming)" color=0,0,0 fontsize=13 font="Luxi Sans" #out text x=280 y=30 sensor=NETWORK color=0,0,0 format="%out kb" fontsize=13 font="Luxi Sans" DECIMALS=1 #Uptime text x=720 y=10 value="Uptime:" color=0,0,0 fontsize=13 font="Luxi Sans" text x=775 y=10 sensor=uptime format="%dd %H:%M" color=0,0,0 fontsize=13 font="Luxi Sans" a tutaj z d e fin iow ałe m se n sor m ie rz ący uptim e syste m u, cz yli cz as w jak im k om pute r poz ostał be z re startu (se n sor=uptim e ); form aty: % d d to d n i % H to god z iny, n atom iast % M to m in uty (ch yba n ie m a se n su m ie rz yć uptim e w se k un d ach , n atom iast m ie siące cz y lata to je d n ak d użo, n o ch yba że k toś ad m in istruje stabilnym se rw e re m ) #Net #in text x=110 y=30 sensor=NETWORK color=0,0,0 for- Nagrom ad z e n ie te m atów supe rk aram by text x=185 y=30 value="Net (outgoing)" color=0,0,0 fontsize=13 font="Luxi Sans" i to już k onie c :-) No, to jak już w iad om o jak napisać w łasny apl e t to d o rob oty! W arto prz y tym pod gl ąd ać źród ła innych , porz ąd nie z rob ionych apl e tów , że by z ob acz yć jak d aną rz e cz m ożna z rob ić (w b re w poz orom to pow sz e ch na m e tod a d osk onal e nia um ie jętności program istycz nych , rz e k łbym naw e t że najl e psz a). Strona d om ow a proje k tu: [1], z aś pod [2] je st k il k a porad jak z rob ić w łasny te m at. Part 2. K xd ock e r, K ool d ock , K s m ooth d ock - cz yl i d ock -pane l e inne niż w s z ys tk ie . Pow yższ a trójk a m a w spól ną ce ch ę - potrafi z astąpić stand ard ow y pase k d ok ow ania program ów (tak z w ane sz yb k ie uruch om ianie ) na ład nie jsz y, z k il k om a cie sz ącym i ok o e fe k tam i. Z az w ycz aj są to pow ięk sz ające się ik onk i, cz asam i z różnym i cie k aw ym i prz e jściam i. Pask i sa półprz e źrocz yste i m aja fajne obw ód k i, l ub te ż k onfigurow al ne tło. Po naje ch aniu k ursore m na ik onk ę pojaw iają się “d ym k i” z naz w ą apl ik acji. Tak ie apl ik acje stały sie popul arne po tym jak A ppl e w prow ad z ił pase k sz yb k ie go uruch om iania w M acO SX. Najb ard z ie j w z orow anym na nim je st ch yb a K XD ock e r. Posiad a m nóstw o te m atów do z nal e z ie nia w sie ci (np. d uży z b iór na stronie d om ow e j proje k tu), d o w yb oru d o k ol oru (m i najb ard z ie j pasuje nie b ie sk i). O prócz m ożl iw ości z grom ad z e nia w je d nym m ie jscu najcz ęście j używ anych apl ik acji posiad a num e r 6 | 2006 tak że funk cyjne od pow ie d nik i pask a z ad ań (acz k ol w ie k apl ik acje w yśw ie tl ane są w postaci ik on) i tack i syste m ow e j. Efe k ty pow ięk sz ania ik on pod k ursore m są d ość ład ne (trud no opisać e fe k ty d ynam icz ne słow am i w ięc uw ie rz cie m i na słow o). Tyl k o dl acz e go to z używ a tyl e proce sora?!! Pod cz as b aw ie nia się apl ik acją (co pol e gało na suw aniu k ursore m w tą i w e w tą aby sprow ok ow ać e fe k ty ik one k ) ch w il ow e z użycie proce sora sięgało, tu uw aga, naw e t d o 40-60%. Naw e t w spocz ynk u program z ajm ow ał k il k a proce nt CPU, natom iast uruch am ianie apl ik acji z poz iom u K XD ock e ra z ajm ow ało z auw ażal nie w ięce j cz asu niż np. z m e nu start. Tak w ysok ie użycie proce sora je st w e d ług m nie nie d opusz cz al ne (naw e t je że l i tyl k o prz e z 1-2 se k und y). Nie w ie m , z aw sz e m ogę pow ie d z ie ć że m iałe m jak ąś sz cz e gól nie w yb rak ow aną w e rsję, al e uz naje to z a b łąd . D rugi m ój z arz ut prz e ciw k o te j apl ik acji je st tak i, że d od aw anie now e j poz ycji na pask u je st troch ę pok om pl ik ow ane . W e d ług m nie pow inny być tyl k o 3 opcje : w id z ial na naz w a program u, ście żk a uruch am ial na i rod z aj w yśw ie tl ane j ik ony (i tak np. je st w K sm ooth D ock ). Tym cz ase m m am y je sz cz e k il k a opcji d od atk ow ych d o w ype łnie nia, i na d od ate k nie z byt jasno naz w anych . O k , te raz prz e jd źm y d o d rugie go program u, k tóry w k ońcu ok az ał sie m oim faw oryte m . K sm ooth D ock je st m oże nie co m nie j e fe k tyw ny od poprz e d nio opisyw ane go program u, al e z a to łatw y, prosty i prz yje m ny w użyciu. Posiad a 2 tryby anim acji ik on (z nane norm ali parab ol ic), je d nak z cz e go te n d rugi (nie d om yśl ny) troch ę z że ra proce sora. D od atk ow o program posiad a funk cje task b ara, 35 SYSTEM H ARDW ARE PRO GRAM OW ANIE RO Z RYW K A SO FTW ARE systraya i z e gara.Jak napisałe m w yże jd od aw anie now ych poz ycji d o pask a je st d ość proste . M ożna ustaw ić poz iom prz e źrocz ystości tak aby pasow ał d o re sz ty w ystroju pul pitu. D e l ik atna obw ód k a oraz w ysk ak ujące opisy poz ycji m e nu d ope łniają całości. O gól nie uw ażam z a najl e psz y z trójk i b o łącz y prostotę, funk cjonal ność i e ste tyk ę. D l a form al ności opisz ę je sz cz e ostatni program : Kool d ock . Ch yb a najm nie j d opracow any. A nim acja ok ie n w ypad a jak oś b l ad o. D od atk ow o program m a prob l e m z utrz ym anie m i sk al ow anie m roz m iaru pask a pod cz as pow ięk sz ania ik one k , co w ygl ąd a po prostu b rz yd k o. Program u m ało używ ałe m , w ięc pow ie m tyl k o że w ogól ności w ygl ąd a w porz ąd k u, pod w arunk ie m że nie naje d z ie się k ursore m , b o w te d y ład ny e fe k t się roz m yw a. Strony d om ow e proje k tów to od pow ie d - postaci m ałych z rz ucik ów ok ie n) w e d ług pul pitu. Tak w najw ięk sz ym sk rócie . Z rz ut e k ranu pow inie n w sz ystk o w yjaśnić – otóż na pul picie pie rw sz ym apl ik ację, l ub te ż prz e rz ucić ją na inny pul pit). Nie d ość, że ład nie to w ygl ąd a, to i je sz cz e prz yje m ne i w ygod ne w ob słud z e . M am y pod gl ąd w sz ystk ich ok ie ne k Part 4. Tas k b ar 2, cz yl i jak m ożna ul e ps z yć pas e k z ad ań. Stand ard ow y pase k z ad ań K D E d ob rz e spe łnia sw oje z ad anie , al e to nie z nacz y że m ożna go ul e psz yć. I tak im ul e psz e nie m je st Task b ar v2. Najw ażnie jsz ym fiucz e re m je st m ożl iw ość d ołącz ania d o program u w id ocz ne go na pask u je go m ini-z rz utu ok na. Cz yl i m ożna pod e jrz e ć co rob iła z m inim al iz ow ana prz e z nas apl ik acja.Task b ar 2 ob sługuje prz e źrocz ystość (co um ożl iw ia stw orz e nie w pe łni prz e źrocz yste go pask a), ch ociaż nie d a się je j re gul ow ać. Innym ul e psz e nie m je st ustaw ie nie w ygl ąd u prz ycisk ów apl ik acji tak by po naje ch aniu k ursore m w yd aw a- K sm ooth d ock nio [3], [4], [5]. Part 3. K om pos é, cz yl i jak e fe k tyw nie i e fe k tow nie z arz ąd z ać m nogością pul pitów . Kom pose stanow i cie k aw e pod e jście d o te m atu z arz ąd z ania w irtual nym i pul pitam i. W z orow ane na m acow sk im Exposé (gd yby A ppl e porz ąd nie opate ntow ało sw oje pom ysły to gd z ie byśm y byl i? No gd z ie ?!). A ow o pod e jście pol e ga na tym , by w trak cie prz e łącz ania się m ięd z y d e sk topam i w e jść w ful l scre e n i pose gre gow ać otw arte ok na (ob raz ow ane w w y pod gl ąd . O cz yw iście m ożna z m ie niać cz ęstotl iw ość od św ie żania ob raz ów ok ie n, al e ustaw ianie z byt nisk ich w artości nie m a se nsu b o w te d y w z rasta ob ciąże nie proce sora. O gól nie program ik je st b ard z o fajny, i gd yby nie fak t że prz e gl ąd anie pul pitów w te n sposób trw a d l a m nie nie co z byt d ługo (se k und a d o se k und y a z b ie rz e się m inuta), to bym go stal e używ ał. Strona d om ow a proje k tu to [6]. Tak od byw a się prz e gląd an ie pul pitów robocz ych w K om posé w id nie ją d w ie apl ik acje , na d rugim je d na, na trz e cim rów nie ż d w ie , natom iast cz w arty pul pit je st pusty i w id nie j na d ol e. Prz e łącz ać się m ożna z arów no na k onk re tny pul pit jak i d o k onk re tne j apl ik acji (m ożna te ż z poz iom u w id ok u pe łnoe k ranow e go z am k nąć l ub z m inim al iz ow ać na w sz ystk ich pul pitach naraz , i na d od ate k je sz cz e w id z im y co k ażd e rob i. W ad ą tak ich d ob aje rz onych roz w iąz ań je st to, że z w yk łe prz e łącz e nie się na inny pul pit trw a d łuże jniż sk orz ystanie z e stand ard ow e j prz e gl ąd ark i pul pitów K D E. Cz asam i te ż Kom posé nie z d ąży od św ie żyć ob raz u ok na, gd y z byt cz ęsto pe łnoe k rano- num e r 6 | 2006 O k ie n k o k on figuracji K BFX 36 SYSTEM H ARDW ARE PRO GRAM OW ANIE RO Z RYW K A SO FTW ARE ły sie w k l ęsłe . Pl us je sz cz e k il k a m ałych l e cz pol e psz ających w ygl ąd ud osk onal e ń. Program ik je st m ały, al e m i się b ard z o pod ob a. Fajne są te m ałe scre e nsh oty ok ie n, ch ociaż w ogól ności są one m ało prz yd atne , b o apl ik ację na pask u roz poz naję głów nie po naz w ie . A l e e fe k t je st. Strona d om ow a proje k tu to [7]. Part 5. K b fx, cz yl i now e s pojrz e nie na K M e nu. No m oże nie całk ie m now e , b o coś pod ob ne go pojaw iło się już w W ind ow s XP. A d od atk ow o pow ie m tak że że w O pe nSuse te stują now e m e nu – a z w ie się K ick off (d o z ob acz e nia tutaj [8]). A l e m iała być m ow a o k b fx. Najw ięk sz ą je go innow acyjnością i z araz e m głów na z al e tą je st m ożl iw ość spe rsonal iz ow ania sob ie prz ycisk u start. W stand ard ow ym m e nu K D E z aw sz e była je d na i ta sam a ik onk a, i e w e ntual ne próby je j z m iany sprow ad z ały się d o pod m iany od pow ie d nie j ik ony w ak tual nie używ anym z e staw ie ik on K D E. Tutaj je st inacz e j. Z poz iom u ok na k onfiguracyjne go m ożna w yb rać d ow ol ny rysune k jak o ob raz ow anie m e nu start. O b raz e k m oże być w trz e ch opcjach : norm al , h ove r (gd y k ursor m ysz y je st nad prz ycisk ie m l e cz go nie nacisk a) i pre sse d (po naciśnięciu). O cz yw iście nie sz k od z i aby to był te n sam ob raz e k , al bo np. te n sam al e z e z m ie nioną gam ą k ol orów . W re sz cie w ygl ąd m e nu start m ożna z m ie niać tak sam o jak tape tę cz y z e staw y ik on. Inną innow acyjnością w porów naniu d o k l asycz ne go K-m e nu je st sposób prz e gl ąd ania m e nu.W K b fx głów ne k ate gorie m e nu sa po l e w e jstronie , natom iast posz cz e gól ne poz ycje stanow ią prz e w ijane z a pom ocą m ysz k i m e nu po praw e j (je że l i nie pasuje nam te n sposób porusz ania sie po m e nu, to je st m ożl iw ość pow rotu d o stand ard ow ych ustaw ie ń). Na d ol e sa te ż stand ard ow o um ie sz cz one prz ycisk i b l ok ow ania e k ranu / w yl ogow yw ania oraz l inia pol e ce ń d o sz yb k ie go uruch om ie nia apl ik acji. W sie ci m ożna z nal e źć m nóstw o te m atów d o K b fx, o różne j k ol orystyce , k tóre poz w ol ą je sz cz e b ard z ie jspe rsonal iz ow ać w ygl ąd m e nu. Strona d om ow a proje k tu to [9 ]. Part 6. Yak uak e , cz yl i tak a fajna k ons ol a. Yak uak e m ożna tłum acz yć jak o 'Ye t A noth e r Kuak e K D E te rm inale m ul ator' (w z ięte z e strony d om ow e j program u [10]). Ci co gral i w Q uak e (al b o inacz e j - ci co nie gral i w Q uak e ręk a d o góry) pam iętają z ape w ne tak ą fajną k onsol k ę w ysuw aną od góry e k ranu z a pom ocą k l ik nięcia m agicz ne go prz ycisk u. Te n program sym ul uje coś pod ob ne go.Z am iaststand ard ow ych XTe rm a, Konsol e , A te rm a cz y Urxvtm oże m y cie sz yć się nie co innym te rm inal e m .A l e po k ol e i. Program najl e pie j ściągnąć z w w w .k d e -apps.org. Są tam pacz k i d l a w ażnie jsz ych d ystryb ucji. D ow nl oad na stronie d om ow e j jak iś tak i m ało prz yjaz ny je st. Po instal acji od pal am y program l ub jak k to ch ce to w rz ucam y go d o autostartu K D E. Prz y uruch am ianiu program u prz e z k il ka se k und pojaw ia się napis typu “Pre ss F12 to use ”.I w łaśnie tym m agicz nym k l aw isz e m uruch am iam y Yak uak e . K l ik am y F12 i w ysuw a nam się z góry prz e źrocz ysta k onsol k a, k l ik am y F12 raz je sz cz e i k onsol a sie ch ow a. I tak m ożna b e z k ońca :-) ch ociaż ocz yw iście te rm inalsłuży d o pow ażne j pracy a nie d o z ab aw y. Program ob sługuje w ie l ość tab ów (po na- sz e m u ch yb a z ak ład e k ), acz k ol w ie k na tab -b arz e m ie ści się ich co najw yże j15.Inną cie k aw ą a prz yd atną opcją je st m ożl iw ość prz ycz e pie nia ok na Yak uak e na w sz ystk ie pul pity. Z opcji k onfiguracyjnych program u nal e ży w ym ie nić: m ożl iw ość z m iany sz e rok ości i w ysok ości ok na te rm inal a, położe nia oraz cz asu anim acji w ysuw ania/ w suw ania się, a tak że m ożl iw ość sch ow ania tab -b aru cz y kl aw isz a od pow iad ające go z a ak tyw ację (jak w spom niałe m w cz e śnie j d om yśl nie je st nim F12). A ponie w aż je ste m z łośl iw y to tak że w ym ie nię w ad y program u (prz y cz ym są to b ard z ie j m oje w id z im isię niż rz e cz yw iste w ad y). Po pie rw sz e , je że l i ustaw im y start Yak uak e prz y uruch am ianiu K D E to po pe w nym cz asie z nud z i/ z d e ne rw uje nas ciągl e w patryw ania się w rad osny napis że apl ik acja sz cz ęśl iw ie w ystartow ała i aby ją z ob acz yć w ystarcz y nacisnąć F12.Ja po pie rw - sz ym k om unik acie już to w ie d z iałe m . A w opcjach k onfiguracji nie m a jak to d e ak tyw ow ać. A d ruga w ad a je st tak a, że Yak uak e re spe k tuje m oją w ol ną w ol ę w k w e stii um ie sz cz e nia pask a z ad ań na górz e e k ranu. A re spe k tuje to w te n sposób , że w ysuw ając się z góry pom ija pase k . Pocz ynaw sz y od góry w id z ę w te d y pase k i d opie ro poniże j ok ie nk o apl ik acji. Co ak urat nie w ygl ąd a e ste tycz nie . Nie m iałbym nic prz e ciw k o że by program ch w il ow o prz yk rył m i pase k , co by d ało l e psz y e fe k t k ol orystycz no-e ste tycz ny. Sz cz e gól nie że z aw sz e m ogę te rm inal sch ow ać b e z utraty d anych . A l e pe w nie się tyl k o cz e piam . Z re sz tą tak jak z w yk l e . I tym optym istycz nym ak ce nte m k ończ ym y d z isie jsz ą aud ycję. D ob ranoc Państw u. Przydatne adre s y Dużo więcej screenów oraz opisy nowości można zobaczyć na stronie http://www.kde-look.org oraz na stronie http://www.kde-apps.org. [1] http://netdragon.sourceforge.net/ssuperkaramba.html [2] http://netdragon.sourceforge.net/sinfo.html [3] http://www.xiaprojects.com/www/prodotti/kxdocker/main.php [4] http://ksmoothdock.sourceforge.net/ [5] http://www.kde.cl/kooldock/ [6] http://kompose.berlios.de/ [7] http://www.uni-weimar.de/~wolff3/index_taskbar.html [8] http://home.kde.org/~binner/kickoff/sneak_preview.html [9] http://www.kbfx.org/ [10] http://yakuake.uv.ro num e r 6 | 2006 37 SYSTEM H ARDW ARE PRO GRAM OW ANIE RO Z RYW K A SO FTW ARE VPN i PPTP - jak to z robić? M ARCIN 'l ipie c' LIPIEC D ane z w ik ipe d ii: VPN - (an g. VirtualPrivate Ne tw ork , W irtualn a Sie ć Pryw atn a), m ożn a opisać jak o "tun e l", prz e z k tóry płyn ie ruch w ram ach sie ci pryw atn e j pom ięd z y k lie n tam i k ońcow ym i z a pośre d n ictw e m publicz n e j sie ci (tak ie j jak In te rn e t) w tak i sposób, że w ęz ły te j sie ci są prz e z rocz yste d la prz e syłanych w te n sposób pak ie tów . Tak i k an ał m oże opcjon al n ie k om pre sow ać lub sz yfrow ać w ce lu z ape w n ie n ia lepsz e j jak ości lub w ięk sz e go poz iom u be z pie cz e ństw a prz e syłanych d anych . O k re ślen ie "W irtualn a" oz n acz a, że sie ć ta istn ie je je d yn ie jak o struk tura l ogicz n a d z iałająca w rz e cz yw istości w ram ach sie ci publicz n e j, w od róz n ie n iu od sie ci pryw atn e j, k tóra pow staje n a baz ie spe cjaln ie d z ie rżaw ionych w tym ce lu łącz . Pom im o tak ie go m e ch an iz m u d z iałan ia stacje k ońcow e m ogą k orz ystać z VPN d ok ład n ie tak jak gd yby istn iało pom ięd z y n im i fiz ycz n e łącz e pryw atn e . R oz w iąz an ia oparte n a VPN pow in ny być stosow an e w firm ach , w k tórych d osyć cz ęsto pracują z d aln ie z e sw oich d om ów , n a n ie z abe z pie cz onych łącz ach . W irtualn e Sie ci Pryw atne ch arak te ryz ują się d ość d użą e fe k tyw n ością, n aw e t n a słabych łącz ach (d z ięk i k om pre sji d anych ) oraz w ysok im poz iom e m be z pie cz e ństw a (z e w z ględ u n a sz yfrow an ie ). PPTP (an g. Poin t to Poin t Tun n e l in g Protocol) to protok ół k om un ik acyjny um ożl i- w iający tw orz e n ie w irtualnych sie ci (VPN) w yk orz ystujących te ch n ologię tun e low an ia. Pol e ga to n a z d alnym d ołącz an iu się d o stacji robocz ych lub sie ci (głów n ie opartych n a syste m ie ope racyjnym W in d ow s) z a pośre d n ictw e m In te rn e tu i tw orz e n iu poz orów połącz e n ia z lok aln ą sie cią, be z w ych od z e n ia z d om u z ape w n iając je d n ocz e śn ie z ach ow an ie be z pie cz e ństw a prz y z d alnym prz e syłan iu d anych . Najbard z ie j roz pow sz e ch n ion a im plem e n tacja PPTP z ostała opracow an a prz e z firm ę M icrosoft. Protok ół PPTP stan ow i stan d ard ow e w yposaże n ie syste m u ope racyjn e go W in d ow s od w e rsji 9 8 i NT. W te k ście tym opis z ę k onfigurację VPN z PPTP w oparciu o św ie tny s ys te m jak im je s t m 0m 0w al l . Co to z a s ys te m ? M 0m 0w al lz ostał stw orz ony prz e z M anuel a K aspe ra. Je st to spe cjal na d ystryb ucja k tórą m oże m y instal ow ać na k om pute rach stacjonarnych jak i na k om pute rach je d nopłytow ych tak ich jak (Soe k ris). Konfiguracja m 0n0w al l 'a od byw a się z a pośre d nicte m prz e gl ąd ark i i je s b ard z o prosta. Z al e tą te j d ystryb ucji je st to, że pl ik k onfiguracyjny z apisyw any je stw form acie XM L. Tw orz e nie i prz yw racanie k opii z apasow ych syte m u je st tak że b ard z o proste d z ięk i spe cjal ne m u m e ch aniz om i. W artyk ul e tym z ak ład am , że użytk ow nik m a już z ainstal ow ane go m 0n0w al l 'a i pom ijam opis je go instal acji. Popraw na k onfiguracja m 0n0w al l 'a. D o pane l u k onfiguracyjne go w ch od z im i poprz e z w pisanie w jak o ad re s w itryny, IP k om pute ra gd z ie stacjonuje m 0n0w al l . Z m e nu w yb ie ram y k ol e jno VPN => PPTP. Nasz ym ocz om uk az uje się strona k onfiguracyjna.Z auw aż, że na górz e w id nie ją d w ie z ak ład k i "Use rs" i "Configuration". Prz e jd ź d o z ak ład k i "Configuration" i z az nacz k ółe cz k o prz y "Enab l e PPTP se rve r". Następnie w pol u "Se rve r ad re ss" pod aj ad re s IP se rw e ra PPTP. Nie w ie sz co tutajw pisać? Pam iętaj, że ad re se m se rw e ra PPTP m oże być ad re s k tóry z najd uje się b e z pośre d nio ponad ad re se m k om pute ra z d ystryb ucją m 0n0w al l . Z ałóżm y, że syste m m 0n0w al lz ainstal ow ałe ś w k om pute rz e je d nopłytow ym i IP te go k om pute rk a to 10.14.28.1, w ięc ad re se m se rw e ra PPTP pow inie n być te n ad re s: 10.14.28.2 Te raz prz e ch od z im y d o pol a "R e m ote ad d re ss range ". W tym pol u m usisz w pisać ad re s sie ci: np.:19 2.168.2.1. Je że l i ch od z i o k onfigurację na z ak ład ce "Configuration" to to już w sz ystk o. K l ik nij prz ycisk "Save " u d ołu strony aby z apisać ustaw ie nia. Prz e ch od z im y d o z ak ład k i "Use rs". Tutaj spraw a je st już prosta.W te j z ak ład ce d od aje m y now e go użytk ow nik a, aby m ógł on k orz ystać z nasz e jsie ci. Pol e "Use rnam e " tutaj w pisz d ow ol na naz w e . Pol e "Passw ord " d ow ol ne h asło, al e num e r 6 | 2006 nie z a proste ! Pol e "IP ad d re ss" je d e n ad re s z z ak re su jak i w pisałe ś w pol u "R e m ote ad d re ss range " na z ak ład ce "Configuration". Te raz tyl ko kl ik am y na prz ycisk "A ppl y ch ange s". Kol e jną rz e cz ą jak ą m usim y z rob ić b ęd z ie sk onfigurow anie z apory sie ciow e j dl a PPTP. A w ięc k l ik am y na z nacz e k "+ " (pl us) i k onfiguruje m y. Prz e d staw ię tutaj prz yk ład ow ą k onfigurację. W pol u "A ction" ok re śl am y co d z ie ję się z prz e syłanym i pak ie tam i. Z al e cam w yb ranie opcji "Pass" (oz nacz a że pak ie ty b ęd ą prz e pusz cz ane ). W pol u "Inte rface " w yb ie rz rod z aj sie ci (praw d opod ob nie w yb ie rz e sz LA N). W pol u "Protocol " z al e cam ustaw ie nie TCP/ UD P. R e sz ta pólpow inna poz ostać d om yśl na. Następnie k l ik nij w "Save ", a następnie na "A ppl y ch ange s". Gratul acje ! W łaśnie sk onfigurow ałe ś w łasne VPN z PPTP. Je że l i m acie jak ie ś pytania od nośnie VPN i PPTP pisz cie d o m nie , ch ętnie pom ogę. 38 SYSTEM PRO GRAM OW ANIE SO FTW ARE H ARDW ARE RO Z RYW K A Note book i - prz ys z łość k om pute ra ? TO M ASZ 'tom cas h ' CZ UNKO Spójrz m y praw dz ie w ocz y gdz ie k ol w ie k s ię nie ogl ądryne k k onsum e nck i w k racz ają prz e nie m y otacz a nas w s z ędobyl - Na b oje m coraz now sz e m od e l e note b ook ów . skael e k tronik a. Użytk ow a, Już nie są tak ciężk ie i d uże jak k ie d yś. W ie l e m od e l i m oże staw ać w sz rank i z „e fe k ciars k a” cz y po pros tu d um nym i, „d użym i” m asz ynam i stacjos łużąca s z e rok o pojęte jroz narnym i. Cz as pracy na b ate riach stal e się z w ięk sz a. Nie d aw no d osz ł o d o w ręcz ryw ce . M łodz ie ż s łuch a m uz y„ab surd al ne j” sytuacji – to pe ce ty prz e jk i z „prz yk l e jonych ” do ciała m ują roz w iąz ania stosow ane i spraw d z one w note b ook ach . Prz yk ład e m m oże tu prz e nośnych odtw arz acz y być proce sor Inte l a: Core 2 D uo.Je go e ne rm p3, s tate cz ni ojcow ie k orz y- goosz cz ęd ność i w yd ajność z araz e m b ije s tają z s am och odów napędz a- na głow ę stare k onstruk cje oparte o roz w iąz ania Pe ntium 4. D z iś l icz y się cisz a. nych s il nik am i s te row anym i Z m nie jsz e nie h ałaśl iw ości w id ać na coraz bardz ie jw yrafinow any- k ażd ym k rok u. Je d e n z cz ołow ych prod uce ntów ob ud ów ATXm i ce ntral nym i je dnos tk am i m ini/ m id i/ m ik ro/ … firm a M od e Com z arz ądz ającym i, k obie ty m ają rożne urz ądz e nia dl a w z m ocnie nia natural ne j urody – z abe z pie cz one uk ładam i w ys ok ie js k al i inte gracji. W re s z cie w s z e ch s tronny, s tary pocz ciw y pe ce t– ciągl e je s ts e rce m do pracy i roz ryw k i, al e cz y na pe w no … (w raz z w yk upionym Logic Conce pt) roz pocz ęła m asow e stosow anie z asil acz y ch łod z onych w ol noob rotow ym i w e ntyl atoram i o roz m iarz e 12 cm . Płyty głów ne są w yposażane w funk cję re gul a- cji ob rotów w e ntyl atora proce sora z al e żnie od ob ciąże nia i w arunk ów te rm icz nych panujących w e w nątrz ob ud ow y.W ięk sz ość z nas m a d ość h ałasu.Prz ych od z ąc d o d om u ch ce m y posłuch ać ul ub ionych utw orów m p3 cz y ogl ąd nąć fil m d vd . Je d nak b ard z ie j ce nim y sob ie ście żk ę d źw ięk ow ą niż sz um w e ntyl atorów . I na tym pol u k om pute ry prz e nośne nie m ają k onk ure ncji. K ino d om ow e m oże m y sob ie urz ąd z ić gd z ie je st nam w d ane j ch w il i w ygod nie j. Panoram icz ne e k rany z ape w niają b ard z o d ob re w raże nia w z rok ow e . Pod pięcie się d o z e w nętrz nych głośnik ów w w ięk sz ości note b ook ów je st k onie cz nością z racji słabych w b ud ow anych tych że . A h ałasow i m ów im y po prostu „pa pa”. Z d ośw iad - num e r 6 | 2006 cz e ń k ol e gów oraz w łasnych ch ciałbym prz e d staw ić k rótk o z al e ty i w ad y w yb ranych note b ook ów w e d ług pod z iału: w ad y i z al e ty d ane j m ark i (prod uce nta). A rtyk uł m a na ce l u prz e d staw ie nie b ard z o ogól nych d ośw iad cz e ń w ob cow aniu z se riam i note b ook ów , aby ułatw ić z orie ntow anie się i w yb ór od pow ie d nie j se rii m od e l ow e j.Późnie jm ożna d ob rać d ok ład nie jsz e param e try k ie rując się w łasnym i potrz e b am i i suge stiam i z najom ych i sprz e d aw ców . „Le t’s start” jak m aw iają am e ryk anie . A ce r – m ark a b ard z o d ługo ob e cna na rynk u, z b agaże m d ośw iad cz e ń, cz ęsto nie d oce niana (rów nie ż prz e ze m nie ). K ie d yś słynęła z m ak sym al nych k onfiguracji z a roz sąd ną ce nę – nie ste ty z jak ością było już d użo słab ie j. O b e cnie proce s prod uk cyjny z ostał z nacz nie ud osk onal ony, prz y z ach ow aniu nie m alz łote j proporcji ce ny d o w yposaże nia. D o z al e t z al icz yć m oże m y rów nie ż b ard z o d ob rz e w yprofil ow any uk ład k l aw iatury i b ard z o pre cyz yjny 39 SYSTEM PRO GRAM OW ANIE touch pad .Z w ad w ym ie nić nal e ży – śre d nie j k l asy b ate rie , k ie psk ie jak ościow o z aw iasy m atrycy oraz śre d nie j jak ości pl astik i – łatw e d o z arysow ania i d ość sz yb k o „starz e jące się”. Aw aryjność – nie je st d uża, je d nak je st k il ka l e psz ych pod tym w z gl ęd e m m are k . Co na to A sus z e sw ym i m od e l am i ? Tu b ate ria je st b ard z o słab iutk a. jak ość w yk onania i użyte m ate riały są na w ysok im poz iom ie . M ożna m ie ć z astrz e że nia d o w iotk ości pok ryw y górne j – al e m ając na w z gl ęd z ie k osz t m ałych w ym iarów i w agi, nie je st to już tak od cz uw al ne . Il ość d ołącz one go oprogram ow ania m nie jsz a niż u k onk ure ncji – z a to program y d o z arz ąd z ania note b ook ie m b ard z o roz b ud ow ane . W yd ajność A susów je st staw iana w śród k onk ure ncji jak o k l asa śre d nia w yższ a.Ce ny na prz yz w oitym poz iom ie . Cie k aw ostk a: A sus prod uk uje rów nie ż tz w . k ad łub k i note b ook ów d l a pasjonatów , k tórz y sam i ch cą posk ład ać sw ój l aptop. K ad łub k i te m ają ce rtyfik at z god ności z te ch nol ogią Inte lCore . El e m e nta- SO FTW ARE H ARDW ARE m i d ob ie ranym i są: proce sor, pam ięć R A M , d ysk tw ard y, k arty w ifi na m inipci. W z e staw ie niu nie m ogło z ab rak nąć m ark i Tosh ib a (ul ub iona m ark a autora ;) ). Cóż tu d użo m ów ić – jak ość, m ate riały, stab il ność – w sz ystk o na w ysok im poz iom ie . Te raz łyżk a d z ie gciu – tanie m od e l e z se rii Sate l ite są b ard z o głośne i nie nad ają się d o rol i d om ow e go k om pute ra „d o w sz ystk ie go”. Prz e ciw ie ństw o ich to m od e l e z se rii Q osm io. Pięk na styl istyk a, ogrom na m oc, głośnik i H arm an K ard on, w yd z ie l ona k l aw iatura num e rycz na (w w yb ranych m od e l ach ) – słow e m k om pute r na ład ny stol ik w ce ntral nym m ie jscu sal onu ;). Le novo – m ocny gracz na rynk u ofe rujący nie z łe jak ościow o w łasne k onstruk cje oraz m ark ę prz e jętą od IBM – Th ink Pad . Pod ob nie jak w spom niana poprz e d nio Tosh ib a – tanie se rie są b ard z o d ob re jak ościow o i stab il ne – natom iast b ud ow ane w oparciu o m ało w yd ajne pod z e społy (ce l e ron M, z inte grow any uk ład graficz ny, d ość m ało pam ięci R A M ). M od e l e topow e ch arak te ryz ują się b ard z o w ysok ą w yd ajnością, RO Z RYW K A b ie rz e sz cz e góły k onfiguracji i w arto na nim pol e gać. Je d nak ogól ny pogl ąd na spraw ę rów nie ż trz e b a m ie ć i to m iał na ce l u te n artyk uł. W prz ysz łym rok u pojaw i się k il k a b ard z ie j sz cz e gółow ych te stów sprz ętu. M ając d ostęp na co d z ie ń z now ości sprz ętow ych postaram się opisyw ać w raże nia z d łuższ e go ob cow ania z note b ook am i i nie tyl k o. O by now y rok prz yniósł z nacz ący prz e łom w b ranży IT – z arów no oprogram ow ania jak i prz y z ach ow aniu b ard z o stab il ne j pracy całości. Cz ytnik l inii papil arnych z ab e z pie cz ający prz e d nie autoryz ow anym d ostępe m w b ud ow any tuż ob ok touch pad a to z nak roz poz naw cz y te j m ark i. Tonacja k ol orystycz na – sz aro-b ura (tu pod ob ie ństw o d o A susa). Cz ęsto nie d oce niany, m ający m ałą w pad k ę z b iałą kl aw iaturą, Fujitsu Sie m e ns Com pute rs (FSC) – pod b ija półk ę śre d nią w yższ ą.Najtańsz e m od e l e m ają najm nie jw yd ajne k ontrol e ry grafik i na rynk u. Cz as pracy na b ate rii – śre d nia rynk ow a.Natom iast k om pute ry w ce nie 3500-4500 to to co tygrysy FSC l ub ią najb ard z ie j. D ob rz e d ob rane k onfiguracje , najnow sz e roz w iąz ania proce sorow e i z nak om ity stosune k w yd ajności d o ce ny. Św ie tnie spraw ujące się pod l inuk se m - m ożl iw ość k upie nia prak tycz nie k ażd e go m od e l u b e z syste m u z rod z iny W ind ow s d aje nam spore osz cz ęd ności. Prak tycz nie k ażd y l icz ący się na rynk u d ystryb utor m a w sw oje jofe rcie Fujitsu Sie m e ns – pow od uje to w al k ę ce now ą k orz ystną d l akl ie nta. Po te j k rótk ie j w ycie cz ce w ok ół ofe rty ob e cne j na rynk u z aprasz am na z ak upy – profe sjonal ny sprz e d aw ca d orad z i i d o- num e r 6 | 2006 sprz ętu. A tym cz ase m cie płych i pe łnych ucz ucia Św iąt Boże go Narod z e nia. 40 SYSTEM PRO GRAM OW ANIE SO FTW ARE H ARDW ARE RO Z RYW K A Littl e Sh e e p cz yliz abaw y z ow ie cz k am i Dz is iajz abaw im y s ię z ow ie cz k am i :-) M ałym i ow ie cz k am i. Litttl e Sh e e p, bo tak naz yw a s ię gie rk a k tórą ch ciałbym prz e ds taw ić, to pros ta arcadów k a, w k tóre j głów nym i nadrz ędnym ce l e m je s tprz e prow adz e nie ow ie cz e k prz e z nie bie z pie cz ny i pok om pl ik ow any topograficz nie te re n. K ARO L"AXIO " KO Z IO Ł Gie rk ę sw e go cz asu z auw ażyłe m na w w w .k d e -apps.org po cz ym z ach ęcony poz ytyw nym i k om e ntarz am i sciągnąłe m ją sob ie i z ainstal ow ałe m . Gra m a prosty ok ie nk ow y inte rfe js.W z asad z ie ob sługuje się ją m ysz k ą, ch ociaż w arto z nać nie k tóre sk róty k l aw iaturow e , np.na pauz ę. Z asad y gry są proste - nal e ży tak prow ad z ić ow ie cz k i aby d oprow ad z ić je w sz ystk ie (a je że l i nie w sz ystk ie to jak najw ięce j) d o m e ty b ęd ące j m ałym d om k ie m . Było by to prostsz e , gd yby ow ie cz k i nie rusz ały pęd e m prz e d sie b ie , a cz asam i te ż w z upe łnie l osow ym k ie runk u (gd y ow ie cz k a osiągnie prz e sz k od ę to al b o z aw róci, al b o sk ręci w praw o, al bo w l e w o). R z e cz onym i ow ie cz k am i ste ruje m y z a pom ocą m ysz k i. K l ik ając LPM na d ow ol ny punk t pl ansz y pod z ie l one j na m ałe k w ad racik i, staw iam y tam strz ałe cz k ę - d rogow sk az k tóry w sk aże prz e ch od z ące j prz e z te n punk t ow ie cz ce w k tórą stronę m a sk ręcić. Uk ład ajac tak ie d rogow sk az y w różnych m ie jscach pl ansz y nal e ży z m usić k rnąb rne ow ce aby sz ły tam gd z ie m y im k aże m y, cz yl i d o m e ty. Trz e b a sie tyl k o śpie sz yć, gd yz nasz e pod opie cz ne w cal e nie cz e k ają aż ustaw im y im najl e psz ą trasę, tyl k o rad ośnie rusz aja d o prz od u. Je że l i nie z d ążym y nim i pok ie row ać to ucie k ną z a pl ansz ę l ub się utopią l ub coś je pożre ... A te raz troch ę o uroz m aice niu pl ansz w e w sz e l ak ie prz e sz k ad z ajk i. O tóż m am y k rz ak i nie jad al ne i jad al ne (z a z je d z e nie tych jad al nych ch yb a są d od atk ow e punk ty al e pe w ności nie m am ), płoty, row y z e sm ołą, roz l e w isk a w od ne , prz e strz e nie piasz cz yste . Ich rol a je st różna. Na k rz ak ach i piask u nie m ożna ustaw iać strz ałe k (tyl k o na traw ie ). Płoty ocz yw iście nie prz e pusz cz ają nam ow ie cz e k . Natom iast je że l i ow ie cz k a w pad nie d o sm oły to staje się m artw ą ow ie cz k ą. Nie co b ard z ie j sk om pl ik ow ana sytuacja je st z w od ą. O w ie cz k a m oże prz e jść prz e z z b iornik w od ny, al e tyl ko prz e z je go 2 pol a.Je że l i z ajd z ie d al e jto ginie (co je st sym b ol iz ow ane prz e z m ały sz k ie l e cik ). Tak w ięc nal e ży uw ażać jak im i ście żk am i prow ad z i się sw oje stad o. Innym z agroże niu utrud niającym w iad om o, że je że l i ow ie cz k a w e jd z ie d o je d ne go te l e portu d ołe m to w yjd z ie innym górą. Z az w ycz aj pie rw sz e pod e jście na d ane j pl ansz y pol e ga na spraw d z e niu roz k ład u te l e portów i d opie ro z a d rugim uk ończ e nie e tapu są osy.A l e nie z w ycz aj- raz e m m oz e m y z ak ończ yć m isję ratow ane osy tyl k o osy-gigantu, z ab ijające je d - nia ow ie cz e k . Są je sz cz e inne ogranicz ansz y i nym sw ym d osk nięcie m b ie d ne ow ie cz k i. nik i gry: cz as na prz e jście d ane j pl l icz b a d ost ępnych st rz ał e k , al e nim i m nie j Trz e b a je j unik ać z a w sz e l k ą ce ne , b o l atanal e ży się prz e j m ow ać. O cz yw iście d ojąc z je d ne go k ońca pl ansz y na d rugi potrafi w yk osić nam połow e stad a. Le cz b rz e by było w yk onać z ad anie z a pone j l icz by strz ałe k (a tych naw e t prz e d strasz ną osą-gigante m je st m ocą m inim al j e st z az w ycz aj z a d użo). ob rona (oprócz intuicyjne go prow ad z e nia nym , al e je st ow ie c z d al a od nie j). O tóż gd y ow ie cz k a Gra nie je st nicz ym spe cjal na aby się roz l uźnić po całym d niu w ysz ła z w od y (b o prz ypad k ie m się nie id e al iw ość utopiła) to prz e z pe w ie n cz as je st m ok ra ciężk ie j pracy. M iłą opcją je st m ożl i w te d y osa je j nie atak uje . O cz yw iście nie z aw sz e m am y d o d yspoz ycji z b iornik i w od ne , dl ate go nal e ży stosow ać inne strate gie . Na prz yk ład na je d ne j pl ansz y z apętl iłe m ow ie cz k i w prostok ącie 2x3 (śm ie sz nie tak ch od z iły w k ółk o :-) i w ypusz cz ałe m je tyl k o w te d y gd y osa była od pow ie d nio d al e k o. A h a, i Je d e n z bard z ie j z aaw an sow anych topologicz n ie e tapów :-) bym z apom niał są te l e porty. K ażd y ch yb a w ie d o cz e go z apisu/ w cz ytania stanu gry, co nie z asłużą :-) D od atk ow ym utrud nie nie m je st w sz e w tak ich prostych gie rk ach . a ob ow iąz k u pod am je sz cz e stronę to, że z pocz ątk u nie w ie m y k tóry D l prod uce nta: h ttp://w w w .gam e craft.d e /sch afe / te l e port je st połącz ony z k tórym , i w jak im k ie runk u te l e portuje . Je d nak że Życz ę m iłe jgry :-) num e r 6 | 2006 41