🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.os.linux.programowanie
Article #347

Re: Kilka pytan poczatkujacego

#347
From: Dariusz K. Ladziak
Date: Mon, 13 Sep 1999 10:02
44 lines
3028 bytes
On Sun, 12 Sep 1999 21:20:34 GMT, noname@nowhere.com (anonimek) wrote:

>Wybaczcie ze zadaje tak banalne pytania ale jestem bardzo poczatkujacy
>jesli chodzi o programowanie w C/C++, prosze o wyrozumialosc.
>
>Chcialem sie tylko dowiedziec:
>1. Dlaczego caly linux jest pisany w C a nie w C++ ?

Co znaczy "caly"? Wszystkie uzytki, wszystkie aplikacje? Na pewno
wszystko przejrzales? Bo mnie sie zdaje ze czesc uzytkow pisana jest w
jezykach ciut nnych jak C i C++.
A jesli myslisz o kernelu - no coz, kod kernela ma pracowac szybko.
Technika programowania obiektowego sluzy zas temu zeby programy pisac
szybko - czyli mamy naturalna sprzecznosc. Ta sama czynnosc
obliczeniowa napisana nieobiektowo potrafi sie realizowac wielokrotnie
szybciej niz implementacja obiektowa - po prostu obiekty wymagaja
dynamicznego tworzenia w czasie wykonywania programu, spora czesc mocy
maszyny idzie na zarzadzanie tym wszystkim. I poki mozna na etapie
pisania kodu ostatecznie rozstrzygnac jakie byty programowe i w jakiej
ilosci beda potrzebne - nie ma sensu stosowac obiektowosci jesli
program nie ma byc "na wczoraj". Tak wiec przy tworzeniu interfejsow
(kwestia czasu poswieconego pisaniu) czy systemow baz danych (kwestia
dynamiki obiektow - ciezkiej i mozolnej do implementacji nieobiektowo)
korzysta sie z obiektowosci - i wowczas wlasciwym jezykiem jest C++.
Bez obiektowosci naprawde trudno rowniez stworzyc generator aplikacji
- a takimi narzedziami zwykle buduje sie interfejsy graficzne czy
konfiguruje systemy pomiarowe.
 Jesli jednak pisze sie kod czegos tak niskopoziomowego jak kernel -
wowczas od wygody piszacego czy szybkosci pisania istotniejsza jest
sprawnosc kodu wynikowego - i tu obiektowe pisanie nie jest specjalnie
na miejscu. A jak nie piszemy obiektowo - po co C++? Wystarczy zwykle
C.
A i tak jak sie chce miec naprawde szybki kod - pozostaje asembler
(choc przestaje to byc przenosne). Ruscy w tym chyba przoduja - sporo
programow w calosci lub w duzej czesci pisza w asemblerze (np. caly
Volkov Commander...)
>2. Czy wobec tego nalezalo by raczej ukierunkowac zdobywanie wiedzy na
>raczej niz na C++

C i C++ mozesz sie uczyc jednoczesnie - w koncu C++ to rozszerzenie C.
Musisz sie tylko nauczyc gdzie konczy sie C a zaczyna C++.

-- 
Darek
Technical Details
Message-ID: <37dcc8a6.12005836@news.nask.pl>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!pingwin.icm.edu.pl!mat.uni.torun.pl!uw.edu.pl!news.swierk.pl!paa.gov.pl!opoka-warszawa!orion.cst.tpsa.pl!news.task.gda.pl!news.man.lodz.pl!news.nask.pl!not-for-mail
References: <37dc17fc.12685150@news.task.gda.pl>

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!pingwin.icm.edu.pl!mat.uni.torun.pl!uw.edu.pl!news.swierk.pl!paa.gov.pl!opoka-warszawa!orion.cst.tpsa.pl!news.task.gda.pl!news.man.lodz.pl!news.nask.pl!not-for-mail
From: ladzk@ite.waw.pl (Dariusz K. Ladziak)
Newsgroups: pl.comp.os.linux.programowanie
Subject: Re: Kilka pytan poczatkujacego
Date: Mon, 13 Sep 1999 10:02:18 GMT
Organization: Institute of Electron Technology
Lines: 44
Message-ID: <37dcc8a6.12005836@news.nask.pl>
References: <37dc17fc.12685150@news.task.gda.pl>
Reply-To: ladzk@ite.waw.pl
NNTP-Posting-Host: micro2.ite.waw.pl
X-Newsreader: Forte Free Agent 1.11/16.235
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit