From: ougur@infotech.com.tr
Date: Tue 22 Jul 2003 - 10:20:34 EEST
ustune bir de IBM in java compilerini kullanin, 1 kac saniye h=FDz da =
oyle
elde ediyorsunuz...
=
=
=20
"Savas Alparslan (Garanti =
=
=20
Teknoloji)" To: <l=
inux-programlama@liste.linux.org.tr> =
=20
<SavasAl@garanti.com.tr> cc: =
=
=20
Sent by: Subject: =
[linux-programlama] Re: ' { ' =
=20
linux-programlama-bounce@liste.li =
=
=20
nux.org.tr =
=
=20
=
=
=20
=
=
=20
22.07.2003 09:51 =
=
=20
Please respond to =
=
=20
linux-programlama =
=
=20
=
=
=20
=
=
=20
> -----Original Message-----
> From: msakarya@infotech.com.tr [mailto:msakarya@infotech.com.tr]
>
> hatirliyorum. Sonuc ol=3D3D
> arak
> egitim 2 yada 4 sene olmasindan
> ote hala eski kafayla siyah beyaz dusuncelere sahip insanlarin yada
> egitimcilerin bu olayi asmasi gerektigini
> dusunuyorum bilmem anlatabildimmi
>=3D0D
Ben de 92-94 arasinda DEU IMYO Bilg. Prog.'da okudum. Bizim mufredatta=3D=
haftada 10ar saat klavye kullanimi, autocad falan gibi dersler vardi.=3D=
Bilgisayarlar ise 80286, 640KB RAM ve 5 1/4 disket (hard disk yok) idi=
.=3D
Dikkat ederseniz tarih oncesinden bahsetmiyorum.
Ama hocalarimiz 25 yas civarlarinda insanlardi ve bu mufredata uymadila=
r.=3D
Bizi ilk assembly ile baslattilar. Acayip kasildik, bircok insanlar=3D=
gelecek seneki OYS'ye hazirlanmaya basladilar. (Cok cok da iyi yaptila=
r)
Sonra QBasic. Eh biraz kasilmayi birakip algoritma ogrenelim. Dizileri=3D=
dinamik almaya gerek yok. Muhim olan algoritma, diziyi 1000'lik=3D
tanimlarsin, kafa yormazsin o asamada.
Artik COBOL, DBase. Veritabanina dalmak lazim. Tamam bircok sey hazir, =
ama=3D
tablolari tasarlamak, ekranlari ayarlamak falan gibi seyler ogreniliyo=
r.
Tekrar basa donelim. Pascal ile biraz bilimsel takilmak. Ama Turbo Pasc=
al=3D
oldugu icin biraz da hacklemek. Ekrana hizli yazdirmak icin $B000=3D
segmentinden baslayan hafizaya direk yazdirmak. Biraz ufkun genisse=3D=
dunyadaki tum monitorlerin yesil olmadigini anlayip kosula gore $B800=3D=
segmentinden de yazdirabilmek.
Sonrasinda C. Diskete sigabilen Turbo C 2.0 tabii ki. Onunla da string=3D=
kutuphaneleri kastirmak, Pascal'da yapilan seyleri C'ye aktarmak.=3D
Cakilinca makinenin BIOS setupinin bile bozulabilmesi.
Neyse, sonucta programcilik ogrenimi biraz zigzag cizmeli diye dusunuyo=
rum.
=3D
Simdi cok C'ye Assembly'e takilan kisiler ust duzeyde de bariz hatalar=
=3D
yapabiliyorlar. Gordugum en komik ornek Cinsiyet tablosu yapilmasi ve =
her=3D
SQL SELECT'de benzeri birsuru tabloya iliski kurdurularak veritabani=3D=
performansinin icine edilmesi.
Ama ust duzey programlama dillerinde yazanlar da temelleri bilmeli. Mes=
ela=3D
Java'da dongu icinde + operatoru ile stringleri ekleyerek ve her sefer=
inde
=3D
bu operasyonun yeni bir string nesnesi yaratacagini bilmeyerek garbage=
=3D
collector'de grizu patlamasi yaptirmak var. Ya da ilk once bir=3D
StringBuffer yaratmak ve hatta bu string buffer'i ilk basta 64K'lik ye=
r=3D
ayirtarak her eklemede realloc() yaptirmamasini saglamak (tabii string=
in=3D
cogu durumda o boyutlarda olacagini hissetmek lazim) ve super hizli ha=
le=3D
getirmek de var. Bu karari vermede programciligin temellerini bilmek b=
uyuk
=3D
yarar saglar.
Ama bir yandan da programci gelismeleri azimle takip etmeli. Cunku hers=
ey=3D
yerinden oynayabiliyor. Derleyiciler optimizasyon yapiyor ornegin. Buy=
uk=3D
ihtimalle C ile yazilmis bir programin GCC ile derlenmis hali benim=3D=
aynisini assembly ile yazmamdan daha hizli olacaktir. Ayni sekilde yen=
i=3D
Java sanal makineleri (JVM) calisma zamani sirasinda stringleri + ile=3D=
eklemeyi algilayip daha hizli kodu uretebilirler, benim 64K tahminimde=
n=3D
daha iyisini istatistiksel yontemlerle tahmin edebilirler. Benim tum=3D=
optimizasyon kastirmam bosa gidebilir, o sirada + ile ekleme yapan=3D
vatandas iki kat fazla program yazip parayi goturebilir vs vs
Savas
This message and attachments are confidential and intended solely for t=
he=3D
individual(s) stated in this
message.If you received this message although you are not the addressee=
you
=3D
are responsible to keep
confidential the message.The sender has no responsibility for the accur=
acy=3D
or correctness of the
information in the message and its attachments.Our company shall have n=
o=3D
liability for any changes
or late receiving,loss of integrity and confidentiality,viruses and any=
=3D
damages caused in
anyway to your computer system.
Bu mesaj ve ekleri mesajda gonderildigi belirtilen kisi/kisilere ozeldi=
r ve
=3D
gizlidir.Bu mesajin muhatabi
olmamaniza ragmen tarafiniza ulasmis olmasi halinde mesaj iceriginin=3D=
gizliligi ve bu gizlilik yukumlulugune
uyulmasi zorunlulugu tarafiniz icin de soz konusudur.Mesaj ve eklerinde=
yer
=3D
alan bilgilerin dogrulugu ve
guncelligi konusunda gonderenin ya da sirketimizin herhangi bir sorumlu=
lugu
=3D
bulunmamaktadir.Sirketimiz
mesajin ve bilgilerinin size degisiklige ugrayarak veya gec ulasmasinda=
n,=3D
butunlugunun ve gizliliginin
korunamamasindan, virus icermesinden ve bilgisayar sisteminize verebile=
cegi
=3D
herhangi bir zarardan
sorumlu tutulamaz.
=