İçeriğe atla

Altyordam


Programlama bilgisayarda, bir altyordam bir birim olarak paketlenmiş belirli bir görevi yerine getiren bir dizi program talimatıdır. Bu birim daha sonra söz konusu görevin yapılması gereken her yerde programlarda kullanılabilir.

Altyordamlar programlar içinde veya birçok program tarafından kullanılabilen library içinde ayrı olarak tanımlanabilir. Farklı programlama dillerinde, bir altyordam prosedür, işlev, rutin, yöntem veya alt yordam. Çağrılabilir Birim genel terimi bazen kullanılır.[1]

altyordam adı, bir alt yordamın, daha büyük bir programda veya başka bir alt yordamda bir adım olarak kullanılan bir bilgisayar programıyla aynı şekilde davrandığını gösterir. Bir altyordam genellikle, diğer altyordamlar da dahil olmak üzere, programın bir yürütülmesi sırasında birkaç kez ve birkaç yerden başlatılabilmesi için kodlanır ve daha sonra çağrıdan sonra bir sonraki talimata geri döner (dönüş), altyordam görevi tamamlandığında. Bir altyordam fikri ilk önce ENIAC üzerinde yaptığı çalışmalar sırasında John Mauchly tarafından tasarlandı,[2] ve Ocak 1947'de "EDVAC tipi Makineler için Sorunların Hazırlanması" konulu Harvard sempozyumunda kaydedildi.[3] Maurice Wilkes, David Wheeler ve Stanley Gill genel olarak bu kavramın kapalı alt bçlümü olarak adlandırdıkları biçimsel buluşu ile katkıda bulunmaktadır,[4][5] contrasted with an open subroutine or macro.[6]

Alt bölümler güçlü bir programlama aracıdır,[7] ve birçok programlama dilinin sözdizimi, bunları yazmak ve kullanmak için destek içerir. alt yordamların mantıklı kullanımı (örneğin, yapısal programlama yaklaşımı yoluyla), genellikle kalitesini ve güvenilirliğini arttırırken, büyük bir program geliştirme ve sürdürme maliyetini önemli ölçüde azaltacaktır.[8] Genellikle kütüphanelere toplanan alt bölümler, yazılım paylaşımı ve ticareti için önemli bir mekanizmadır. Nesne yönelimli programlama disiplini nesneler ve yöntemlere (bu nesnelere veya nesneye sınıflar eklenmiş alt rutinler) dayanır.

İş parçacığı kodu olarak adlandırılan derleme yönteminde, yürütülebilir program temel olarak bir alt bölüm çağrıları dizisidir.

Kaynakça

  1. ^ U.S. Election Assistance Commission (2007). "Definitions of Words with Special Meanings". Voluntary Voting System Guidelines. 22 Şubat 2017 tarihinde kaynağından arşivlendi. Erişim tarihi: 14 Ocak 2013. 
  2. ^ Subrata Dasgupta (7 Ocak 2014). It Began with Babbage: The Genesis of Computer Science. Oxford University Press. ss. 155-. ISBN 978-0-19-930943-6. 1 Ağustos 2020 tarihinde kaynağından arşivlendi. Erişim tarihi: 12 Mart 2020. 
  3. ^ J.W. Mauchly, "Preparation of Problems for EDVAC-type Machines" (1947), in Brian Randell (Ed.), The Origins of Digital Computers, Springer, 1982.
  4. ^ Wheeler, D. J. (1952). "The use of sub-routines in programmes". Proceedings of the 1952 ACM national meeting (Pittsburgh) on - ACM '52 (PDF). s. 235. doi:10.1145/609784.609816. 19 Eylül 2020 tarihinde kaynağından arşivlendi (PDF). Erişim tarihi: 12 Mart 2020. 
  5. ^ Wilkes, M. V.; Wheeler, D. J.; Gill, S. (1951). Preparation of Programs for an Electronic Digital Computer. Addison-Wesley. 
  6. ^ Dainith, John (2004). ""open subroutine." A Dictionary of Computing". Encyclopedia.com. 26 Mart 2016 tarihinde kaynağından arşivlendi. Erişim tarihi: 14 Ocak 2013. 
  7. ^ Donald E. Knuth. The Art of Computer Programming, Volume I: Fundamental Algorithms. Addison-Wesley. ISBN 0-201-89683-4. 
  8. ^ O.-J. Dahl; E. W. Dijkstra; C. A. R. Hoare (1972). Structured Programming. Academic Press. ISBN 0-12-200550-3. 

İlgili Araştırma Makaleleri

<span class="mw-page-title-main">Programlama dili</span>

Programlama dili, yazılımcının bir algoritmayı ifade etmek amacıyla, bir bilgisayara ne yapmasını istediğini anlatmasının tektipleştirilmiş yoludur. Programlama dilleri, yazılımcının bilgisayara hangi veri üzerinde işlem yapacağını, verinin nasıl depolanıp iletileceğini, hangi koşullarda hangi işlemlerin yapılacağını tam olarak anlatmasını sağlar.

<span class="mw-page-title-main">C (programlama dili)</span> programlama dili

C, yapısal bir programlama dilidir. Bell Laboratuvarları'nda, Ken Thompson ve Dennis Ritchie tarafından UNIX işletim sistemini geliştirebilmek amacıyla B dilinden türetilmiştir. Geliştirilme tarihi 1972 olmasına rağmen yaygınlaşması Brian Kernighan ve Dennis M. Ritchie tarafından yayımlanan "C Programlama Dili" kitabından sonra hızlanmıştır. Günümüzde neredeyse tüm işletim sistemlerinin yapımında %95'lere varan oranda kullanılmış, hâlen daha sistem, sürücü yazılımı, işletim sistemi modülleri ve hız gereken her yerde kullanılan oldukça yaygın ve sınırları belirsiz oldukça keskin bir dildir. Keskinliği, programcıya sonsuz özgürlüğün yanında çok büyük hatalar yapabilme olanağı sağlamasıdır. Programlamanın gelişim süreciyle beraber programlamanın karmaşıklaşması, gereksinimlerin artması ile uygulama programlarında nesne yönelimliliğin ortaya çıkmasından sonra C programcıları büyük ölçüde nesne yönelimliliği destekleyen C++ diline geçmişlerdir.

<span class="mw-page-title-main">Bjarne Stroustrup</span>

Bjarne Stroustrup C++ programlama dilini yaratması ve geliştirmesiyle bilinen Danimarkalı bir bilgisayar bilimcisidir. Columbia Üniversitesi'nde misafir öğretim üyesi ve Morgan Stanley'de Yönetici Direktör olarak çalışmaktadır.

<span class="mw-page-title-main">Association for Computing Machinery</span>

Bilgisayar Derneği, bilgisayar bilimleri alanındaki en eski mesleki kuruluştur. 1947'de kurulmuş, günümüzde 80.000 üyeye ulaşmıştır. Mesleki ve akademik yayınları ile toplantı faaliyetlerinin yanı sıra, bilişim dalının en önemli ödülü kabul edilen Turing Ödülü'nü vermesiyle de bilinir. Merkezi New York şehrindedir. Dünya genelini kapsayan üyelik sistemi ile bilişim teknolojisinin çeşitli alanları ile uğraşan profesyonellere ve öğrencilere kaynak sağlamaktadır.

<span class="mw-page-title-main">C♯</span> programlama dili

C#; Microsoft tarafından .NET Teknolojisi için geliştirilen modern bir programlama dilidir. Sözdizimi C-like bir deneyim sunar.

<span class="mw-page-title-main">C++</span> bir programlama dili

C++, Bjarne Stroustrup tarafından 1979 yılında Bell Laboratuvarları'nda geliştirilmeye başlanmış, C'yi kapsayan ve çok paradigmalı, yaygın olarak kullanılan, genel amaçlı bir programlama dilidir.

<span class="mw-page-title-main">COBOL</span> İngilizce dil özelliklerine benzer programlama dili

COBOL, bir programlama dili. Ticaret alanı ve özellikle iş yerlerinin yönetimiyle ilgili konularda, tüm dünyada kullanılmak üzere hazırlanmıştır. ISAM yapısına izin veren sınırlı sayıdaki dilden biridir. Sayı tipi sınırsızdır. COBOL 2002 'den beri Nesne Yönelimli Programlama'yı desteklemektedir. COBOL 1959'da Üniversiteler, Hükûmetler ve Ticari Kuruluşlar tarafından oluşturulan bir komite tarafından yaratılmıştır. "COBOL" ismi 18 Eylül 1959'da toplanan komitenin kararıdır.

Yapısal programlama, programlama dilleri kullanılarak yazılan, mantıksal bütünlük gösteren bloklara (bölümlere) bölünebilirler. Bu yolla uzun ve karmaşık programların, bloklara ayırarak daha kolay biçimde yazılabilmesi mümkün olmaktadır.

<span class="mw-page-title-main">Nesne yönelimli programlama</span> nesne kavramına dayalı programlama paradigması

Nesne yönelimli programlama veya kısaca NYP, Her işlevin nesneler olarak soyutlandığı bir programlama yaklaşımıdır. NYP destekleyen programlama dilleri yüksek seviye diller olarak adlandırılır.

İstatistikte verilerin küçükten büyüğe ya da büyükten küçüğe doğru sıralanması ile elde edilen diziye denir.

Programlama dili teorisi (PDT), programlama dilleri olarak bilinen biçimsel dillerin ve bunların bireysel özelliklerinin tasarımı, uygulanması, analizi, karakterizasyonu ve sınıflandırılması ile ilgilenen bir bilgisayar bilimleri dalıdır. Matematik, yazılım mühendisliği, dilbilim ve hatta bilişsel bilime bağlı ve onu etkileyen bilgisayar bilimi disiplinine girer. PDT'ye adanmış çok sayıda dergide ve genel bilgisayar bilimi ve mühendisliği yayınlarında yayınlanan sonuçlarla tanınmış bir bilgisayar bilimi dalı ve aktif bir araştırma alanı haline gelmiştir.

Uzak yordam çağrısı (ya da uzak prosedür çağrısı; İngilizce: Remote Procedure Call , bir diğer adres uzayı üzerinde programcı açıkça bu uzaktan etkileşim detayları kodlama olmadan çalıştırmak için bir alt yordam veya prosedürü sağlayan bilgisayar programına izin veren süreçler arası iletişim teknolojisidir. Sunucu üzerindeki servisleri kontrol ettiğimizde karşımıza çıkan RPC, arka plânda birçok şeyi gerçekleştiren bir servistir. RPC, temelde istemci ve sunucu arasında yapılan işlemlerin iletişimi için tasarlandı. Bir işlemin gerçekleşmesi için bir gönderici ve bir de istemci vardır.. Yani programcı, alt prosedür ister çalışan programın yerelinde ister uzağında olsun, temelde aynı kodu yazar. Bu bir tür istemci-sunucu etkileşimidir ve tipik olarak bir istek-yanıt mesaj geçirme sistemi aracılığıyla uygulanır. Nesne yönelimli programlama modelinde, RPC'ler uzaktan yöntem çağırma ile temsil edilir. RPC modeli bir konum şeffaflığı seviyesini ifade eder, yani çağrı prosedürleri yerel ya da uzak olsun büyük ölçüde aynıdır, ancak genellikle aynı değildirler, bu nedenle yerel çağrılar uzak çağrılardan ayırt edilebilir. Uzak çağrılar genellikle yerel çağrılardan çok daha yavaş ve daha az güvenilirdir, bu nedenle bunları ayırt etmek önemlidir.

Programlama paradigmaları, programlama dillerini özelliklerine göre sınıflandırmanın bir yoludur. Diller birden fazla paradigma içinde sınıflandırılabilir.

<span class="mw-page-title-main">Gregor Kiczales</span>

Gregor Kiczales Amerikalı bilgisayar bilimci. Kanada'nın Britanya Kolumbiyası eyaletinde bulunan Vancouver şehrindeki British Columbia Üniversitesi'nde bilgisayar bilimi profesörüdür. Xerox PARC'da çalışırken tasarladığı cephe yönelimli programlaması, ve Java programlama diline AspectJ uzantısı kavramını geliştirmesiyle tanınır. Aynı zamanda Ortak Lisp Nesne Sistemi spesifikasyonunun ve Metaobject Protokolü Sanatı adlı kitabın yazarlarından biridir.

<span class="mw-page-title-main">Grady Booch</span> Amerikalı yazılımcı

Grady Booch, Ivar Jacobson ve James Rumbaugh ile Birleşik Modelleme Dili'ni (UML) geliştirmesiyle tanınan Amerikalı bir yazılım mühendisidir. Yazılım mimarisi, yazılım mühendisliği ve işbirliğine dayalı geliştirme ortamlarındaki yenilikçi çalışmaları ile uluslararası alanda tanınmaktadır.

James E. Rumbaugh, Nesne Modelleme Tekniği ve Birleşik Modelleme Dilini (UML) oluşturmadaki çalışmaları ile tanınan Amerikalı bir bilgisayar bilimcisi ve nesne yönelimli metodologdur.

Bilgisayar biliminde, bildirimsel programlama bir programlama paradigmasıdır. —bilgisayar programlarının yapısını ve öğelerini oluşturma stili— bir hesaplamanın mantığını kontrol akışını tanımlamadan ifade eder.

<span class="mw-page-title-main">DBLP</span>

DBLP, bilgisayar bilimi bibliyografya sitesidir. 1993'te Almanya'daki Universität Trier'de başlayarak, küçük bir HTML dosyaları koleksiyonundan büyüdü ve bir veritabanı ve mantık programlama bibliyografya sitesi barındıran bir organizasyon haline geldi. Kasım 2018'den bu yana DBLP, Schloss Dagstuhl – Leibniz-Zentrum für Informatik'in (LZI) bir şubesidir. DBLP, 1995'te yaklaşık 14.000 ve Temmuz 2016'da 3,66 milyon olan bilgisayar bilimi üzerine Aralık 2020'de 5,4 milyondan fazla dergi makalesi, konferans makalesi ve diğer yayın listeledi.. Bilgisayar bilimi ile ilgili tüm önemli dergiler izlenir. Birçok konferansın tutanakları da takip edilmektedir. İnternetteki üç sitede yansıtılır.

Bilgisayar biliminde zorunlu programlama ya da emperatif programlama, programın durumunu değiştiren ifadeler kullanan yazılımın programlama paradigması'dır. Doğal dillerdeki zorunlu kipin komutları ifade etmesi gibi, zorunlu program da bilgisayar'ın gerçekleştireceği komutlardan oluşur. Zorunlu programlama, beklenen sonuçlarının üst düzey tanımlarından ziyade programın nasıl adım adım çalıştığını açıklamaya odaklanır.

Yazılım, işlemci tarafından yürütülmek üzere programlanmış dijital bilgisayarların belleğinde saklanan bir dizi programlanmış talimattır. Yazılım insanlık tarihinde yeni bir gelişmedir ve Bilişim Çağının temelini oluşturur.