Programlama Dili Fortran

Genel Bakış

Fortran, "Formül Çevirisi"nin kısaltmasıdır ve özellikle bilimsel ve mühendislik uygulamaları için son derece uygun olan yüksek seviyeli bir programlama dilidir. Elektronik bilgisayarlar için geliştirilen ilk programlama dillerinden biri olan Fortran, ortaya çıktığı günden bu yana önemli ölçüde evrim geçirmiştir. Fortran, dizi verilerini verimli bir şekilde manipüle etmeyi sağlar ve karmaşık matematiksel hesaplamaları destekler, bu da onu sayısal hava tahmini, hesaplamalı fizik ve biyoinformatik gibi birçok alanda tercih edilen bir dil haline getirir.

Tarihsel Boyutlar

Oluşum

Fortran, 1950'lerde IBM tarafından sayısal hesaplama ve bilimsel hesaplama için tasarlanmış bir dil olarak geliştirilmiştir. İlk versiyonu Fortran I, 1957'de piyasaya sürülmüştür. Temel fikir, bilim insanlarının ve mühendislerin, temel donanımın karmaşıklıklarını bilmeden program yazmalarını sağlayacak bir dil oluşturmaktı.

Evrim

Fortran'ın ardından gelen versiyonlar, her biri yeni özellikler ekleyerek ve kullanılabilirliği artırarak tanıtılmıştır. Kısa süre sonra Fortran II, yapılandırılmış programlama özellikleri eklemiştir. 1966'da tanıtılan Fortran IV, endüstri standardı haline gelmiştir. 1978'de piyasaya sürülen Fortran 77, karakter veri türleri ve geliştirilmiş girdi/çıktı yetenekleri gibi özellikler eklemiştir.

1991'den itibaren Fortran 90, dizi programlama, modüler programlama, özyineleme ve dinamik bellek tahsisi gibi özellikler tanıtmıştır. Fortran 2003 ve Fortran 2008, nesne yönelimli programlama ve C programlama dili ile geliştirilmiş birlikte çalışabilirlik gibi özelliklerle dili daha da geliştirmiştir. En son standart olan Fortran 2018, paralel işleme için geliştirilmiş uyumluluk ve işlevsellik gibi daha fazla iyileştirme getirmiştir.

Mevcut Durum

Fortran, GNU Fortran (gfortran) ve Intel Fortran Compiler gibi modern derleyicilerle desteklenen birçok bilimsel ve mühendislik disiplininde aktif olarak kullanılmaktadır. Büyük bir miras kod tabanına sahiptir ve birçok bilimsel kütüphane Fortran'da yazılmıştır, bu da onu belirli alanlarda kritik bir dil haline getirmektedir.

Sözdizimsel Özellikler

Güçlü Tip

Fortran, değişken türlerinin açık bir şekilde beyan edilmesini gerektiren güçlü bir tip dilidir. Örneğin:

INTEGER :: i
REAL :: x
CHARACTER(len=10) :: name

Dizi İşleme

Fortran, dizileri işleme konusunda mükemmeldir ve basit sözdizimi ile tüm diziler üzerinde işlemler yapmayı sağlar.

REAL, DIMENSION(10) :: A
A = 2.0 * A  ! Dizi A'nın her bir elemanını 2 ile çarpar

Kontrol Yapıları

Fortran, döngüler ve koşullu ifadeler gibi geleneksel kontrol yapıları sağlar.

DO i = 1, 10
   IF (A(i) > 0) THEN
       PRINT *, 'Pozitif'
   END IF
END DO

Fonksiyonlar ve Alt Programlar

Fortran, modüler programlama için fonksiyonlar ve alt programlar tanımlamaya olanak tanır.

FUNCTION square(x)
   REAL :: square
   REAL, INTENT(IN) :: x
   square = x * x
END FUNCTION square

İkincil Tip

Varsayılan olarak, Fortran'da "I", "J", "K", "L", "M" veya "N" ile başlayan isimlere sahip değişkenler otomatik olarak INTEGER olarak kabul edilir. Bu, açıklık için geçersiz kılınabilir.

IMPLICIT NONE  ! İkincil tipi devre dışı bırakır
INTEGER :: I
REAL :: R

Do-While Döngüleri

Fortran, bir koşula dayalı olarak tekrar eden yürütme için do-while döngülerini destekler.

i = 1
DO WHILE (i <= 10)
   PRINT *, i
   i = i + 1
END DO

Türetilmiş Tipler

Fortran, yapı benzeri veri tanımlarına olanak tanıyan güçlü kullanıcı tanımlı tipler olan türetilmiş tipleri destekler.

TYPE :: Person
   CHARACTER(len=20) :: name
   INTEGER :: age
END TYPE Person

TYPE(Person) :: p1

Modül Desteği

Fortran, veri ve prosedürleri kapsüllemek için modülleri destekler, bu da kodun yeniden kullanımını ve organizasyonunu teşvik eder.

MODULE myModule
   CONTAINS
   SUBROUTINE mySubroutine()
       ! Uygulama
   END SUBROUTINE
END MODULE

Göstergelerin Kullanımı

Fortran, C gibi dillerdeki dinamik bellek yönetimini kolaylaştıran göstergeleri destekler.

REAL, POINTER :: pA
ALLOCATE(pA(10))  ! Dinamik olarak bir dizi tahsis eder

Birlikte Çalışabilirlik

Fortran, C ile birlikte çalışabilirlik oluşturan özelliklere sahiptir ve karışık dil programlamasına olanak tanır.

INTERFACE
   FUNCTION c_function(x) BIND(C, NAME="c_function")
       INTEGER(C_INT) :: c_function(INTEGER)
   END FUNCTION c_function
END INTERFACE

Geliştirici Araçları ve Çalışma Zamanları

Derleyiciler ve Yorumlayıcılar

En popüler Fortran derleyicileri şunlardır:

Entegre Geliştirme Ortamları (IDE'ler)

Fortran, bazı diğer diller kadar modern IDE'lerle yaygın olarak ilişkilendirilmemiş olsa da, birkaç IDE bunu desteklemektedir:

Projelerin Oluşturulması

Bir Fortran projesi oluşturmak genellikle .f, .f90 veya .f95 uzantılı kaynak dosyaları oluşturmayı ve bunları bir Fortran derleyicisi kullanarak derlemeyi içerir. Tipik bir komut şöyle görünebilir:

gfortran -o my_program my_source.f90

Fortran Uygulamaları

Fortran, bilimsel hesaplama, sayısal hava tahmini, iklim modelleme, hesaplamalı fizik, hesaplamalı kimya ve biyoinformatik gibi alanlarda yaygın olarak kullanılmaktadır. Özellikle ağır sayısal hesaplamalar ve simülasyonlardaki performansı ile tanınmaktadır.

Benzer Dillerle Karşılaştırma

Fortran'ın bilimsel ve mühendislik programlama alanındaki ana rakipleri şunlardır:

Kaynak-Kaynağa Çeviri İpuçları

Fortran, geliştiricilerin eski kodları daha çağdaş dillere dönüştürmelerine veya mevcut kodları optimize etmelerine yardımcı olabilecek birkaç kaynak-kaynağa çeviri aracı sunmaktadır. Bazı araçlar şunlardır:

Bu araçlar, daha eski Fortran sürümlerinden veya tamamen farklı programlama paradigmalarından geçişi kolaylaştırırken, performans ve işlevselliği korumaya yardımcı olur.