yazılım nedir olarak etiketli yazılar
Programlama Nedir?
25 Oca
Program belirli şartlar ve düzene göre yapılması öngörülen işlemlerin bütünüdür. Normal bir günde onlarca program anlık olarak yaparız. Sabah uyandığımız önce yüzün yıkanması veya birşeyler atıştırılması anlık kararlarımız ve kararımız ile uyguladıklarımızın her biri bir program örneğidir.
Bilgisayar dünyasında programlama ise aynı günlük hayatta olduğu gibi hedefe ulaşmak için doğru argümanların kullanımı ile istenilen sonuçların üretilmesi sağlanır.
Sabah yüz yıkamak için banyo girerken kapı kolunu kullanmak yada kapıyı kırarak banyoya girmek seçtiğimiz yöntemlerdir.
Bilgisayar programlama (software) için çeşitli araçlar mevcuttur. Her biri yaptığı iş ve dilin kendine has özelliğine göre çeşitli sınıflara ayrılmıştır.
Genel olarak sınıflandırma programlama dilinin insan dilini ne kadar barındırığı ile doğru orantılıdır.
Örneğin uygun bir alt yapı ile tamamen 0 ve 1 lerden oluşan bir program yazabileceğiniz gibi insan diline daha uygun if(eğer) for(‘için’) kelimeleri kullanarak da yazabilirsiniz. Bu alanda genel tercih insan diline yakın olan olmaktadır.
Kullanılmakta olan bazı dilleri buna göre sınıflandıralım:
Yüksek seviyeli diller
ascal, VB.NET,Acces,Foxpro,Basic ,Fortran….
Orta seviyeli diller: C ,C++, C# ,Java ,ADA
Düşük seviyeli diller:Hard makina dili (0-1), assembly de burada sayılabilir.
Aradaki farkın tam olarak anlaşılabilmesi için;
Düşük seviyeli dil ile yazılan, fibonacci dizisini hesaplayan program:
8B542408 83FA0077 06B80000 0000C383
FA027706 B8010000 00C353BB 01000000
B9010000 008D0419 83FA0376 078BD98B
C84AEBF1 5BC3
Orta Seviyeli
C de yazılan fibonacci dizisini hesaplayan program:
int main(){
int x;
printf("bir sayi gir\n");
scanf("%d",&x);
printf("fibonacci=%d",fibonacci(x));
getch();
return 0;
}
int fibonacci(int x){
int fib;
if(x>1){
fib=fibonacci(x-1)+fibonacci(x-2);
return fib;
}
else
if(x==1) return 1;
else
return 0;
}
Ve son olarak Yüksek seviyeli bir dile ile aynı program C#:
static void Main(string[] args)
{
Console.WriteLine(fibbo(10));
}
static int fibbo(int n)
{
if (n <= 1)
return n;
else
return fibbo(n - 1) + fibbo(n - 2);
}
Farktan da görüldüğü üzere dil seviyesi yükseldikte yazılması gerekenler hem insan algısına yakınlaşıyor hemde gittikçe kodlar kısalıyor.
Problemleri hızlı çözmek için bilgisayar tercih edilir. Bilgisayar problemi çözemez. Bir programcı nasıl çözüleceğini bilgisayara anlayacağı şekilde ifade eder ve çözüm yolu doğru ise bilgisayar ile hızlıca uygulayarak çözüme ulaşılır.
Problem çözümü için günlük hayatta alternatif yöntemler mevcuttur içlerinden genelde en çok tercih edilen seçilir ve uygulanır.
Temelde programcının:
Problemi iyi anlaması gerekir. Buna göre giriş(input) ve çıkışlar(output) düzenlenecektir.
Çözümün planlanması aşamasında mevcut/olası girişler(input) ile istenilen çıktıların(output) elde edilmesinin ayrıntıları belirlenir.Bu da algoritmayı oluşturmaktadır.
Girişten gelen veriyi kullanarak uygun sonuç üretilmesi bir algoritma yardımı ile planlanır.
Sorun ve çözüm için uygun yöntem belirlendikten sonrada sıra bilgisayara derdimizi anlatmaya gelir. Bunun içinde bir programlama dili seçilir (düşük,orta eya yüksek seviyeli size uygun olan) ve bu dil yardımı ile programımızı yazarız.
Bilgisayar programcılığının ne olduğunu temel olarak öğrendiğimize göre günümüzün revaçta olan C# programlama dili hakkında daha fazla bilgi verebiliriz.
İlk örneğimiz ile ekrana Merhaba Dünya yazdıralım.