{"id":3732,"date":"2019-03-05T20:32:11","date_gmt":"2019-03-05T17:32:11","guid":{"rendered":"http:\/\/www.kampuskod.com\/?p=3732"},"modified":"2019-03-05T20:32:13","modified_gmt":"2019-03-05T17:32:13","slug":"programlama-dilleri-arasindaki-farklar-nelerdir","status":"publish","type":"post","link":"https:\/\/www.kampuskod.com\/kampus\/programlama-dilleri-arasindaki-farklar-nelerdir\/","title":{"rendered":"Programlama Dilleri Aras\u0131ndaki Farklar Nelerdir?"},"content":{"rendered":"\n

G\u00fcn\u00fcm\u00fczde, \u00e7ok say\u0131da\nprogramlama dili daha genel ve \u00e7ok ama\u00e7l\u0131 hale geliyor, ancak bu dillerin kendi\nuzmanl\u0131klar\u0131 ve her dilin kendi avantajlar\u0131 ve dezavantajlar\u0131 var. Programlama dilleri birka\u00e7 t\u00fcre ayr\u0131labilir, ancak   bu diller \u00e7oklu programlama stilini destekler. Her y\u0131l \u00e7ok say\u0131da programlama dili olu\u015fturulur, ancak \u00e7ok az\nsay\u0131da dil pop\u00fcler hale gelmektedir. Programlama dilleri, bilgisayar\u0131n veya\nmakinenin performans\u0131n\u0131 kontrol etmek i\u00e7in kullan\u0131l\u0131r. \u015eu anda, bir bilgisayar\nprogramc\u0131s\u0131, programlama dili se\u00e7mek i\u00e7in bir\u00e7ok se\u00e7ene\u011fe sahiptir, ancak\nprogramlama dilleri aras\u0131nda bir\u00e7ok fark vard\u0131r. Bu nedenle, bu makale\nfarkl\u0131 programlama dillerinin t\u00fcrleri ve aras\u0131ndaki farklar\u0131 hakk\u0131nda bilgi\nverecektir.   <\/p>\n\n\n\n

Programlama Dili Nedir?<\/strong><\/p>\n\n\n\n

Bir programlama dili,\ntalimatlar\u0131 bir makine veya bilgisayara ba\u011flamak i\u00e7in tasarlanm\u0131\u015f bir form\u00fcld\u00fcr. Programlama dilleri esas olarak bir makinenin\nperformans\u0131n\u0131 kontrol etmek veya algoritmalar\u0131 ifade etmek i\u00e7in kullan\u0131l\u0131r. \u015eimdiye kadar, yakla\u015f\u0131k bin programlama dili olu\u015fturulmu\u015ftur. Program\ns\u00f6zdizimi(syntax) ve anlambilim(semantics) gibi iki forma ayr\u0131labilir. Baz\u0131 diller, C dili gibi bir SO standard\u0131yla tan\u0131mlan\u0131r.<\/p>\n\n\n\n

Programlama Dillerinin T\u00fcrleri<\/strong><\/p>\n\n\n\n

\"\"<\/figure>\n\n\n\n

Prosed\u00fcrel Programlama Dili (Procedural)<\/strong><\/strong><\/p>\n\n\n\n

Prosed\u00fcrel programlama\ndili, sonuca yol a\u00e7an bir dizi ifadeyi y\u00fcr\u00fctmek i\u00e7in kullan\u0131l\u0131r. Bu tip\nprogramlama dilleri \u00e7oklu de\u011fi\u015fkenleri, a\u011f\u0131r d\u00f6ng\u00fcleri ve fonksiyonel\nprogramlama dillerinden ay\u0131ran baz\u0131 elementleri kullan\u0131r. Prosed\u00fcrel dillerde fonksiyonlar\u0131n de\u011ferini d\u00f6nd\u00fcrmek yerine\nde\u011fi\u015fkenleri kontrol edilebilir. \u00d6rne\u011fin, bilgileri\nyazd\u0131rmak.<\/p>\n\n\n\n

Fonksiyonel Programlama Dili (Functional)<\/strong><\/p>\n\n\n\n

Fonksiyonel programlama dili, genellikle\ntekrarlanan i\u015flevlerin lehine d\u00f6ng\u00fclerden ka\u00e7\u0131narak,s\u0131kl\u0131kla saklanan verileri kullan\u0131r.Fonksiyonel programlaman\u0131n\nana oda\u011f\u0131, i\u015flevlerin geri d\u00f6n\u00fc\u015f de\u011ferleridir; yan etkiler ve saklama\ndurumundaki farkl\u0131 \u00f6nerilerin \u015fiddetle tavsiye edilmedi\u011fini g\u00f6sterir. \u00d6rne\u011fin, son derece saf kullan\u0131\u015fl\u0131 bir dilde,\nbir i\u015flev adland\u0131r\u0131l\u0131rsa, i\u015flevin herhangi bir o\/p de\u011fi\u015ftirmemesi veya\nger\u00e7ekle\u015ftirmemesi beklenir. Bununla birlikte, algoritmik \u00e7a\u011fr\u0131lar\nolu\u015fturabilir ve bu \u00e7a\u011fr\u0131lar\u0131n parametrelerini de\u011fi\u015ftirebilir. Fonksiyonel\ndiller genellikle daha kolayd\u0131r ve soyut konularda anlamaya daha kolay hale\ngetirir, ancak programlama modelleri tam olarak bilmeyi zorla\u015ft\u0131r\u0131r, ancak kod\nmakine dilinde \u00e7\u00f6z\u00fcl\u00fcr (genellikle sistem programlama i\u00e7in sorunludur).<\/p>\n\n\n\n

Nesneye Y\u00f6nelik Programlama Dili(Object-oriented)<\/strong><\/p>\n\n\n\n

Bu programlama dili,\nd\u00fcnyay\u0131 i\u00e7 verilere ve bu verilerin harici eri\u015fim b\u00f6l\u00fcmlerine sahip bir grup\nnesne olarak g\u00f6r\u00fcr. Bu programlama dilinin amac\u0131, belirli bir sorunu \u00e7\u00f6zmek\ni\u00e7in kullan\u0131labilecek hizmetleri sunan bir nesne koleksiyonuna ay\u0131rarak hatay\u0131\nd\u00fc\u015f\u00fcnmektir. Nesne y\u00f6nelimli programlama dilinin temel ilkelerinden biri, bir\nnesnenin ihtiya\u00e7 duyaca\u011f\u0131 her \u015feyin nesnenin i\u00e7inde olmas\u0131 gerekti\u011fidir. Bu dil\nayn\u0131 zamanda kal\u0131t\u0131m(inheritance) yoluyla yeniden kullan\u0131labilirli\u011fi ve\npolimorfizm(polymorphism) kullanarak b\u00fcy\u00fck bir kod de\u011fi\u015ftirmek zorunda kalmadan\nmevcut uygulamalar\u0131 yayma kapasitesini de vurgular.<\/p>\n\n\n\n

Script Programlama Dili(Scripting)<\/strong><\/p>\n\n\n\n

Bu programlama dilleri\ngenellikle prosed\u00fcreldir ve nesne y\u00f6nelimli dil \u00f6\u011feleri i\u00e7erebilir, ancak\nnormalde b\u00fcy\u00fck sistemlerin geli\u015ftirilmesini destekleyen tam te\u015fekk\u00fcll\u00fc\nprogramlama dilleri olmad\u0131klar\u0131 i\u00e7in kendi kategorilerine girerler. \u00d6rne\u011fin, derleme zaman\u0131 t\u00fcr denetimi olmayabilir. Genellikle, bu dillerin ba\u015flamas\u0131 i\u00e7in k\u00fc\u00e7\u00fck s\u00f6zdizimler(syntax)\ngerekir.<\/p>\n\n\n\n

Mant\u0131k Programlama Dili(Logic)<\/strong><\/p>\n\n\n\n

Bu t\u00fcr diller,\nprogramc\u0131lar\u0131n bildirimsel ifadeler olu\u015fturmas\u0131na ve daha sonra makinenin bu\nifadelerin sonu\u00e7lar\u0131 hakk\u0131nda mant\u0131kl\u0131 olmas\u0131na izin verir. Bir anlamda, bu dil\nbilgisayara nas\u0131l bir \u015fey yapaca\u011f\u0131n\u0131 s\u00f6ylemiyor, ancak ne yapmay\u0131 d\u00fc\u015f\u00fcnmesi\ngerekti\u011fine dair k\u0131s\u0131tlamalar getiriyor.<\/p>\n\n\n\n

Bu gruplar\u0131 \u201d dil t\u00fcrleri \u201d olarak adland\u0131rmak ger\u00e7ekten biraz kafa kar\u0131\u015ft\u0131r\u0131c\u0131d\u0131r. C dilinde nesne y\u00f6nelimli bir tarzda program yazmak kolayd\u0131r. Ger\u00e7ekte, dillerin \u00e7o\u011fu, bu t\u00fcr dillerin kullan\u0131\u015fl\u0131l\u0131\u011f\u0131n\u0131 art\u0131rmaya yard\u0131mc\u0131 olan \u00e7e\u015fitli alanlardan fikir ve \u00f6zellikler i\u00e7erir. Bununla birlikte, programlama dillerinin \u00e7o\u011fu, t\u00fcm programlama stillerinde en iyi de\u011fildir.<\/p>\n\n\n\n

Programlama Dilleri Aras\u0131ndaki Farklar<\/strong><\/p>\n\n\n\n

\"\"<\/figure>\n\n\n\n

C ++ Dili<\/strong><\/strong><\/p>\n\n\n\n

C++ dili, b\u00fcy\u00fck projelerde kullan\u0131lan nesne y\u00f6nelimli bir yap\u0131ya sahiptir. Programc\u0131lar, bir program\u0131 farkl\u0131 par\u00e7alara veya program\u0131n her bir b\u00f6l\u00fcm\u00fcnde bile tek tek \u00e7al\u0131\u015fmayla i\u015fbirli\u011fi yapabilir. Nesne y\u00f6nelimli yap\u0131s\u0131 da kodun bir\u00e7ok kez yeniden kullan\u0131lmas\u0131na izin verir. Bu dil verimli bir dildir. Ancak, bir\u00e7ok programc\u0131 ayn\u0131 fikirde de\u011fildir.<\/p>\n\n\n\n

\"\"<\/figure>\n\n\n\n

C\nDili<\/strong><\/p>\n\n\n\n

C dili temel bir programlama dilidir ve \u00f6zellikle oyun programlamas\u0131nda kullan\u0131lan \u00e7ok pop\u00fcler bir dildir, \u00e7\u00fcnk\u00fc C dili C++ ‘ n\u0131n ek paketlenmesini i\u00e7erir, her programc\u0131 bu dili kullan\u0131r, \u00e7\u00fcnk\u00fc programlar\u0131 daha h\u0131zl\u0131 yapar. Bununla birlikte, bu dilin de\u011feri, C dili ile performansta hafif bir art\u0131\u015f elde etmek i\u00e7in C++ ‘ n\u0131n yeniden kullan\u0131labilirli\u011fini verir.<\/p>\n\n\n\n

\"\"<\/figure>\n\n\n\n

Pascal\nDili<\/strong><\/p>\n\n\n\n

Pascal dili \u00e7o\u011funlukla bir \u00f6\u011fretim dilidir ve sadece birka\u00e7 firma programlar\u0131 yazmak i\u00e7in bu dili kullan\u0131r. Bu dil, C dilinde semboller ve parantezler yerine anahtar kelimeler kullanma e\u011filimindedir. Yani bu dille ba\u015flayanlar i\u00e7in C, C++ gibi bir programlama dilini anlamak \u00e7ok kolayd\u0131r. Borland, Delphi programlama dilini end\u00fcstriyel g\u00fc\u00e7 i\u00e7in kullanan bir derleyici yaz\u0131l\u0131m \u015firketidir. Delphi Pascal’\u0131n nesne y\u00f6nelimli bir dilidir ve halen sadece Borland derleyicileri kullan\u0131r.<\/p>\n\n\n\n

\"\"<\/figure>\n\n\n\n

Fortran\nDili<\/strong><\/p>\n\n\n\n

Fortran dili bir dizi \u00e7at\u0131rdayan dildir ama yine de bilim adamlar\u0131 taraf\u0131ndan kullan\u0131l\u0131r. Bu dil, makinedeki bellek s\u0131n\u0131r\u0131na kadar farkl\u0131 de\u011fi\u015fken boyutlar\u0131na izin verir. Bu dil, de\u011ferleri y\u00fcksek hassasiyetle hesaplamak zorunda olan M\u00fchendisler i\u00e7in uygundur. Fortran’daki Program esnek de\u011fildir ve bazen okumay\u0131 zorla\u015ft\u0131r\u0131r.<\/p>\n\n\n\n

\"\"<\/figure>\n\n\n\n

Java\nDili<\/strong><\/p>\n\n\n\n

Java dili \u00f6zellikle a\u011f yararl\u0131 \u00e7oklu platform dilidir. Tabii ki, \u00e7o\u011funlukla bu dil Java uygulamalar\u0131 ile web \u00fczerinde kullan\u0131l\u0131r. Bununla birlikte, bu dil \u00e7apraz platform programlar\u0131n\u0131 tasarlamak i\u00e7in kullan\u0131l\u0131r, \u00e7\u00fcnk\u00fc yap\u0131 ve s\u00f6zdizimi c++ ‘ a benzer. C ++ programc\u0131lar\u0131 i\u00e7in, Java dilini \u00f6\u011frenmek \u00e7ok kolayd\u0131r ve nesne y\u00f6nelimli programlama taraf\u0131ndan sa\u011flanan baz\u0131 avantajlar sunar; yeniden kullan\u0131labilirlik gibi. \u00a0\u00a0\u00a0 Java’da verimli kod yazmak zor olabilir. Ancak, g\u00fcn\u00fcm\u00fczde Java dilinin h\u0131z\u0131 artt\u0131 ve 1.5 s\u00fcr\u00fcm\u00fc kolay program yap\u0131m\u0131 i\u00e7in baz\u0131 iyi \u00f6zellikler sunuyor.<\/p>\n\n\n\n

\"\"<\/figure>\n\n\n\n

Perl\nDili<\/strong><\/p>\n\n\n\n

Perl dili UN\u0130X i\u00e7in bir dosya y\u00f6netimi dilidir. Ancak ortak a\u011f ge\u00e7idi arabirimi programlama (CGI) i\u00e7in daha pop\u00fclerdir. Web sunucular\u0131n\u0131n web sayfalar\u0131n\u0131n ek yeteneklerine izin vermek i\u00e7in ger\u00e7ekle\u015ftirebilece\u011fi programlar i\u00e7in bir terimdir. Perl dili metin arama i\u00e7in bir y\u00f6ntemdir ve yararl\u0131 sunucu fonksiyonlar\u0131 ve di\u011fer veritabanlar\u0131 i\u00e7in kullan\u0131l\u0131r ve herhangi bir dilde herhangi bir deneyime sahip bir ki\u015fi i\u00e7in perl dilinde temelleri \u00f6\u011frenmek \u00e7ok kolayd\u0131r. <\/p>\n\n\n\n

\"\"<\/figure>\n\n\n\n

PHP\nDili<\/strong><\/p>\n\n\n\n

PHP dili web sayfalar\u0131n\u0131 tasarlamak i\u00e7in kullan\u0131l\u0131r ve bazen de betik dili (scripting language) olarak kullan\u0131l\u0131r. Bu dil h\u0131zl\u0131 bir web sitesi geli\u015ftirmek i\u00e7in tasarlanm\u0131\u015ft\u0131r ve sonu\u00e7 olarak kolay http ba\u015fl\u0131klar\u0131 olu\u015fturma ve veritabanlar\u0131na ba\u011flant\u0131 yapma gibi \u00f6zellikleri i\u00e7erir. Bir komut dosyas\u0131 dili olarak, programc\u0131n\u0131n h\u0131za kolayca ula\u015fmas\u0131na izin veren bir dizi bile\u015fen i\u00e7erir. Ancak, daha sofistike nesne y\u00f6nelimli \u00f6zelliklere sahiptir. <\/p>\n\n\n\n

\"\"<\/figure>\n\n\n\n

L\u0130SP\nDili<\/strong><\/p>\n\n\n\n

L\u0130SP dili \u00e7o\u011funlukla bilgisayar bilimi ara\u015ft\u0131rmalar\u0131nda kullan\u0131l\u0131r ve t\u00fcm verileri diziler gibi listelerde saklar. Listenin s\u00f6zdizimi \u00e7ok basittir ve geli\u015ftiriciler i\u00e7in yap\u0131lar\u0131 uygulamak kolayd\u0131r.<\/p>\n\n\n\n

\"\"<\/figure>\n\n\n\n

Scheme\nDili <\/strong><\/p>\n\n\n\n

Scheme dili,\nL\u0130SP dilinin bir alternatifidir ve daha basit bir s\u00f6zdizimi ve \u00f6zelliklere\nsahiptir. Scheme dili alt\u0131ndaki herhangi bir proje, L\u0130SP dilinin \u00e7o\u011funun\nyeniden uygulanmas\u0131na neden olacakt\u0131r. Ancak, bu, MIT’nin bilgisayar bilimi\nb\u00f6l\u00fcm\u00fcnde \u00e7ok pop\u00fcler bir tan\u0131t\u0131m dilidir. Bu dil, programlama dilinin\ns\u00f6zdizimi (syntax) sorunlar\u0131n\u0131 endi\u015fe etmek yerine kolayca \u00e7\u00f6zer.<\/p>\n\n\n\n

Bu, programlama dilleri ile birka\u00e7 b\u00fcy\u00fck programlama dili aras\u0131ndaki farklarla ilgilidir. Ve TCL, Python, Smalltalk, COBOL, C# ve Prolog gibi kalan diller tart\u0131\u015f\u0131lan yukar\u0131daki dillere benzer. Ancak bir program veya uygulama geli\u015ftirmek i\u00e7in uygun dili se\u00e7mek \u00e7ok \u00f6nemlidir.<\/p>\n\n\n\n

\"\"<\/figure>\n","protected":false},"excerpt":{"rendered":"

G\u00fcn\u00fcm\u00fczde, \u00e7ok say\u0131da programlama dili daha genel ve \u00e7ok ama\u00e7l\u0131 hale geliyor, ancak bu dillerin kendi uzmanl\u0131klar\u0131 ve her dilin kendi avantajlar\u0131 ve dezavantajlar\u0131 var. Programlama dilleri birka\u00e7 t\u00fcre ayr\u0131labilir, ancak   bu diller \u00e7oklu programlama stilini destekler. Her y\u0131l \u00e7ok say\u0131da programlama dili olu\u015fturulur, ancak \u00e7ok az say\u0131da dil pop\u00fcler hale gelmektedir. Programlama dilleri, bilgisayar\u0131n veya makinenin performans\u0131n\u0131 kontrol […]<\/p>\n","protected":false},"author":459,"featured_media":3739,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"tdm_status":"","tdm_grid_status":""},"categories":[102,67],"tags":[421,2132,420,2123,2134,2135,2133,2131,423,2126,2136,2128,2137,2124],"_links":{"self":[{"href":"https:\/\/www.kampuskod.com\/wp-json\/wp\/v2\/posts\/3732"}],"collection":[{"href":"https:\/\/www.kampuskod.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.kampuskod.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.kampuskod.com\/wp-json\/wp\/v2\/users\/459"}],"replies":[{"embeddable":true,"href":"https:\/\/www.kampuskod.com\/wp-json\/wp\/v2\/comments?post=3732"}],"version-history":[{"count":2,"href":"https:\/\/www.kampuskod.com\/wp-json\/wp\/v2\/posts\/3732\/revisions"}],"predecessor-version":[{"id":3743,"href":"https:\/\/www.kampuskod.com\/wp-json\/wp\/v2\/posts\/3732\/revisions\/3743"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.kampuskod.com\/wp-json\/wp\/v2\/media\/3739"}],"wp:attachment":[{"href":"https:\/\/www.kampuskod.com\/wp-json\/wp\/v2\/media?parent=3732"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.kampuskod.com\/wp-json\/wp\/v2\/categories?post=3732"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.kampuskod.com\/wp-json\/wp\/v2\/tags?post=3732"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}