Konuyu görüntüle
IUCODERS FORUM > Genel > Geyik > C#,JavaScript, Simurg, bilgisayar tarihçesi
Yazar
deadday


avatar

Kayıt: 22.09.2007
22.08.2008-09:55 #50711
C# (sişarp diye okunur)

İlk bulunan programlama dilidir. Bu dil ile mesela "is this a book?" demek için "this.isABook()" yazmanız gerekir. Evet, İngilizce'ye çok benzeriyor. Sadece soru cümlelerini olumlu cevap cümlesine dönüştürüp this'den sonra bir nokta koyuyorsunuz. Bir örnek daha verelim : "is this English or CSharp?" demek için "this.isEnglishOrCSharp()" yazabilirsiniz. Gördüğünüz gibi gayet kolay. Asıl zor olanı merhaba dünya programı yazmaktır. İnceleyiniz:

public interface ISaluting
{
void Salute();
}
public class Program : ISaluting
{
#region ISaluting implementation
public void Salute()
{
Console.WriteLine("Merhaba dünya");
}
#endregion

public static void Main() // burası zorunlu
{
ISaluting p = new Program(); // bunu yazmasanız da olur
p.Salute(); // burası size kalmış
}
}

Evet yukarıdaki örnekte basitçe çıktıya "Merhaba Dünya" yazan bir program yazdık. Çok açık olduğu için teferruata girmiyorum. Son olarak C# dilinin kullanım alanlarından bahsetmek isterim: C# özellikle NASA tarafından "evrende bizden başka akıllı varlıklar var mı?" araştırmalarında kullanılan bir dildir. Bu kapsamda C# ile bir düzine "Merhaba Mars", "Merhaba Jüpiter", vb. program yazılmıştır. Henüz bu gezegenlerin hiç birinden cevap gelmemiştir. NASA mühendisleri "uzaylılarla iletişimde remoting yerine web service mi kullansak acaba?" diye düşünmektedir.

Simurg

Tembel programcının dili olarak bilinen Simurg az kodla çok iş yapmak için geliştirilmiş bir dildir. Gerçekte simurg, fraktal tüylere sahip bir çeşit kuştur. Bu dile simurg adının verilmesinin sebebi; Simurg'un, C#'ın şu veya bu özelliklerinin kırpılarak kuşa çevrilmesiyle oluşturulmuş olmasıdır.

Simurg çok basit bir dildir. Merhaba dünya örneğiyle başlayalım:

p class MerhabaDunya
{
p s v M() // public static void Main
{
cnsl.wrt("Merhaba Dünya"); // Console.Write
}
}

Gördüğünüz gibi tam tembel programcı işi. Kim uğraşıcak uzun uzun "public static void Main" yazmakla.. Kısaca "p s v M" yaz olsun bitsin.

Simurg'un kendine has bir framework'ü de vardır. Dotnet Framework'ün üzerine bindirilmiş bu framework de tam tembel işidir. Diyelim ki Simurg ile bir CRM uygulaması yazmak istiyorsunuz. Aşağıdaki gibi bir şeyler yazabilirsiniz:


using System.CodeSource.CodeProject;
using System.CodeSource.MSDNLibrary;
using System.CodeSource.BilisimKulubu;

p class CRM
{
p s v M()
{
CodeProject cp = new CodeProject(); // bakalım codeproject.com'da yazılmışı var mı?
Code code = cp.SearchCode("CRM"); // arayalım

if(code!=null)
{
// oley bulduk!
code.Download(); // download edelim
bool calisti = code.TryToExecute(); // çalıştırmayı deneyelim
if(!calisti)
{
return to start; // başa dönelim, tekrar arayalım..
}
}
else
{
return to start; // başa dönelim, tekrar arayalım..
}
}
}

JavaScript

JavaScript :

Albert Java tarafından geliştirilen bu dilin en önemli özelliği browser tarafından yorumlanıyor olmasıdır. Browserlar Javascript kodunuzu değişik şekillerde yorumlayabilir. Mesela geçenlerde yazdığım JavaScript koduyla ilgili Internet Explorer isimli browserın yorumu çok kötüydü.
- "Bu script kodu olmamış baba" dedi,
- "Neden baba ya?" butonuna tıkladım, açılan pencerede,
- "değişken isimlendirmede camel case kullanmışsın, pascal case kullansaydın daha hoş olurdu" yazıyordu.
- "Sanane be!" butonuna tıklayarak "sen kodu çalıştır, gerisine karışma" demeye getirdim ama
- "yok" dedi, "bu rezaleti hayatta çalıştırmam ben". Ben de
- "sensin rezalet!" butonuna tıklayıp kapattım browserı mrowserı. Hayır, kodu çözemedi, zor geldi çalıştırmak, yok camel case bilmem ne, kıvırmaya çalışıyor. Yapamıyorsan, yapamıyorum de delikanlı gibi bizi de uğraştırma, di mi ama?

Neyse bir Javascript kodu örneği verelim ve bu konuyu da kapatalım, daha bi sürü dil var anlatılacak. Aşağıdaki örnek kod email adresinin düzgün yazılıp yazılmadığını kontrol ediyor:


<script>
function emailValidate(email)
{
if(email.indexOf('@')==-1)
alert('Lütfen email adresinizi adam gibi yazın. @'siz adres mi olur?');
else if(email=='a@b.com')
alert('a@b.com ne ya? Email adresini vermeyeceksen üye olma kardeşim!');
else if(email.substring(0,6)=='nospam')
alert('sensin spamci! normal kullandığın maili versene.');
else
return true;

return false;
}
</script>

Bilgisayarın Tarihçesi

Bilgisayar ilk defa milattan önce II. yüzyılda, Çinliler tarafından mayın tarlası oynamak için düşünülmüş bir makinedir. Fakat o dönemde henüz mayın icat edilmediği için bilgisayar icadından vazgeçilmiş ve - biraz da işin kolayına kaçılarak - pusula icat edilmiştir. Çinliler'den sonra tarihte ilk defa bilgisayar kavramına Yunanlılar'da rastlıyoruz. Yunanlılar abaküs denilen bir makine icat etmişlerdi. Bu makine ile toplama, çıkarma ve çarpma işlemlerini yapabiliyorlardı. Bölme işlemi ise yapılamıyordu. Çünkü abaküs ile bölme işlemi yapma denemeleri abaküsün paramparça olmasıyla birlikte başarısızlığa uğramıştı. Neyseki o dönemde bölmek çok da gerekli değildi. İnsanlar toplayıp, çıkarıp, çarparak da mutlu olabiliyordu.

Bir kaç sıra tel üzerine geçirilmiş boncuklardan ibaret olan bu makine kısa sürede farklı milletler tarafından benimsendi. Türkler abaküsle ilk defa Köksal* Han komutasındaki Yunanistan seferinde karşılaştı. Köksal Han, beğeniyle karşıladığı bu makineye boncuksayar ismini vermişti. Boncuk saymakta pratik bir fayda görmeyen Türkler kısa sürede bu makineyle uğraşmaktan vazgeçmiş ve Türk kültüründe abaküs, çocukları eğlendirmek için kullanılabilecek bir çeşit oyuncak olarak kalmıştır. Halen ilkokul birinci sınıftaki çocuklara bu oyuncak verilir.

Bilgisayarın atasının abaküs olduğunu iddia etmek alışılagelmiş bir yazar tavrıdır. Biz de bu alışkanlığı bozmayalım dedik, abaküsten bahsettik. Ama aslında abaküsün günümüz bilgisayarlarıyla herhangi bir benzerliği olduğu söylenemez. Bir kere abaküsle İnternet'e bağlanamazsınız. Counter Strike da yok. Eee? Nasıl bilgisayar bu? Varsa yoksa boncuk! Üç boncuk sağa, iki boncuk sola. Ne anladım ki ben bundan?

Abaküs uzunca bir süre kullanılmış, bu durum bilgisayarın icat edilmesini yüzyıllar boyu geciktirmiştir. Arapların sıfırı bulmasıyla abaküs ilk büyük problemle karşılaştı. Buna n0k (number zero problem) deniyordu. Sıfır boncuk abaküs üzerinde gösterilemiyordu. Sıfır boncuğu sola çekmeye çalışan Yunan bilim adamları "segmentation fault" hatasıyla karşılaşmış, mavi boncuğa düşmüşlerdi. (Mavi boncuk günümüz bilgisayarlarında mavi ekran olarak görülür.) Her ne kadar dönemin Abasoft isimli başı çeken abaküs firması sıfır problemiyle ilgili patch neyin çıkarmaya çalışmışsa da, abaküsün makus talihi değişmedi ve bir daha dirilmemek üzere tarihin karanlıklarına gömüldü. (The History of Abacus, O'Reilly Books, 1994)

Abaküsten sonra bilgisayar tarihinde zikredilebilecek bir diğer buluş Mantık'tır. Mantık, p ise q, q ise r gibi önermelerle beynin çalışma mantığını anlamaya çalışan, özellikle lise birinci sınıf öğrencilerinin Matematik'ten nefret etmesini sağlamak için geliştirilmiş gereksiz bir bilim dalıdır. Bu bilim dalının gerekli olduğunu düşünen bilim adamları "p ve q veya r gerekli ise mantık neden gerekli olmasın?" gibi söylemlerle bilim dünyasını meşgul etmiş, ortaya somut birşey koyamamış, tesadüfen bilgisayarın temel mantığını formüle eden boolean cebirini keşfetmişlerdir. Soyadı Boole olacak kadar kendini bu konuya kaptırmış bir bilim adamı olan George Boole, onluk sayma sistemindeki başarısızlığını ikilik sayma sistemiyle ilgili boolean cebirini geliştirerek örtbas etmeye çalışmış, bu arada hasbelkader bilgisayarın felsefi temellerini de inşa etmiştir.

Şimdilik bu kadar tarih yeter. Son olarak ilk mekanik bilgasayarı Charles Babbage'ın, elektrikli olanını da Konrad Zuse'nin icat ettiğini belirterek daha heyecanlı konulara yelken açalım.

Kendi bilgisayarımızı yapalım!

Malzemeler :
- 1 adet televizyon,
- 1 adet daktilo,
- 2 metre kadar kablo,
- 1 tane fare (cansız)

Yapılışı :
Daktiloyu televizyonun önüne koyun. Daktilonun herhangi bir yeriyle televizyonun anten girişini kabloyla birleştirin. Ölü fareyi daktilonun sağına koyup kuyruğunu daktilonun altına sıkıştırın. İşte size bilgisayar! Hahaha! Şaka şaka. Kolay mı öle bilgisayar yapmak? Önce bilgisayarın yapısından bahsetmemiz lazım. Nelerden oluşur? Nasıl çalışır? Bütün bu konuları irdeledikten sonra hala bilgisayar yapmak isterseniz, artık size kalmış. Yiyin kendinizi.

Bilgisayarın Yapısı

Bilgisayarlar hard ve soft ware'den oluşur. Hard sert, soft yumuşak demektir. Hard kısımları (ekran, fare, klavye gibi) vurulduğunda acıtacak cinsten malzemelerden yapılmıştır. Hatta ekran öldürücü bile olabilir. Fare az acıtır. Klavyenin tuşları çıkartılıp rakibe taş niyetine atılabilir ama hafif oldukları için fazla acıtmazlar. Soft kısımları ise rüya gibi, aşk gibi soyuttur. Yazı şeklinde yazılıp, bilgisayarın hafızasına yüklenip, oradan execute ettirilirler. Bilgisayarın sert kısımları bu yumuşak yazılarla yönetilir. Bu şekilde bilgisayar faydalı bir insan olmaya çalışır. Yumuşak yazılara bilgisayar terminolojisinde program denir. Programlar programlama dilleri denilen özel dillerle yazılırlar. Bu diller insanoğlunun kullandığı dillerden farksızdır. Kendilerine has gramerleri vardır, kelimeleri vardır, cümleleri vardır. Normal bir insan 3-4 aylık bir eğitimle herhangi bir programlama dilinde akıcı olarak konuşabilir. Ama bu gereksizdir, çünkü bilgisayarların kulağı yoktur. Bu yüzden programcılar programlama dilleriyle konuşmak yerine yazmayı tercih ederler.


[Alıntıdır : http://www.bilisim-kulubu.com/makale/makale.php?e=Ge%E7mi%FEten+G%FCn%FCm%FCze+Bilgisayar+%28mizah%29&mid=4103]






sesiiiniii duuysaaam yeteeer
Del.icio.us
Digg
Facebook
Furl
Google
Blink
Simpy
Spurl
Y! MyWeb