{"id":978,"date":"2010-04-01T17:29:51","date_gmt":"2010-04-01T14:29:51","guid":{"rendered":"http:\/\/hilmibilici.com\/blog\/?p=978"},"modified":"2010-04-01T17:29:51","modified_gmt":"2010-04-01T14:29:51","slug":"programlamaya-giris-1","status":"publish","type":"post","link":"http:\/\/hilmibilici.com\/?p=978","title":{"rendered":"Programlamaya Giri\u015f-1"},"content":{"rendered":"<p><strong>Programlama nedir? Programlama dillerinin s\u0131n\u0131fland\u0131r\u0131lmas\u0131 ve hangi programlama dilini kullanmal\u0131y\u0131m?\u00a0<\/strong><\/p>\n<p>\u00d6ncelikle forumlarda s\u0131kl\u0131kla kar\u015f\u0131la\u015f\u0131lan bu b\u00fcy\u00fck soruna cevap yazmak istedim&#8230; Neden diye soracak olursan\u0131z? Arkada\u015flar\u0131m\u0131z programlama dillerini se\u00e7me konusunda hepimiz gibi kulaktan dolma yanl\u0131\u015f bilgilerle asl\u0131nda daha ba\u015flamadan programlama hayat\u0131n\u0131 bitiriyor. Onun i\u00e7in Programlamaya yeni ba\u015flayacaklar veya \u00f6\u011frenmek istedi\u011fi dilde diki\u015f tutturamayanlar l\u00fctfen bu yaz\u0131y\u0131 dikkatle okuyunuz.<\/p>\n<p><!--more--><\/p>\n<p>Her t\u00fcrl\u00fc donan\u0131m birimi mevcut olan bir bilgisayar, bu donan\u0131m\u0131 amaca uygun olarak kullanan bir program\u0131 olmad\u0131k\u00e7a i\u015fe yaramayacakt\u0131r. Buna kar\u015f\u0131l\u0131k \u00e7al\u0131\u015ft\u0131raca\u011f\u0131 donan\u0131m olmayan bir bilgisayar program\u0131 da i\u015fe yaramayacakt\u0131r. B\u00fct\u00fcn bunlara dayanarak \u015funu s\u00f6yleyebiliriz; yaz\u0131l\u0131m ve donan\u0131m olmadan bilgisayardan s\u00f6z etmek m\u00fcmk\u00fcn de\u011fildir. \u0130\u015fte bu yaz\u0131l\u0131mlarda programlama dilleri ile haz\u0131rland\u0131klar\u0131 i\u00e7in gelin \u00f6ncelikle baz\u0131 teknik terimleri yaz\u0131l\u0131m\u0131n tarihini ve dilleri iyice bir tan\u0131yal\u0131m:<\/p>\n<p><strong>Yaz\u0131l\u0131m S\u0131n\u0131flar\u0131:<\/strong><strong>\u00a0<\/strong><\/p>\n<ul>\n<li>\u0130\u015fletim Sistemleri<\/li>\n<li>Derleyiciler, Yorumlay\u0131c\u0131lar<\/li>\n<li>Edit\u00f6rler<\/li>\n<li>Bilimsel M\u00fchendislik Yaz\u0131l\u0131mlar\u0131<\/li>\n<li>G\u00f6r\u00fcnt\u00fcsel Yaz\u0131l\u0131mlar<\/li>\n<li>Mesleki Ve Ticari Yazl\u0131mlar<\/li>\n<li>Sistem Yaz\u0131l\u0131mlar\u0131<\/li>\n<li>Debug Programlar\u0131<\/li>\n<li>Yapay Zek\u00e2 Yaz\u0131l\u0131mlar\u0131\u2026 Vb<\/li>\n<\/ul>\n<p><strong>Programlama Tarih\u00e7esi<\/strong><strong>\u00a0<\/strong><\/p>\n<ul>\n<li><strong>Abdullah bin Musa el-Harezm\u00ee, <\/strong>Algoritmik tan\u0131mlama ile problem \u00e7\u00f6z\u00fcmleme yolunu geli\u015ftirerek Bilgisayar Biliminin geli\u015fmesine \u00e7ok b\u00fcy\u00fck katk\u0131 sa\u011flayan M\u00fcsl\u00fcman Bilim adam\u0131. Algoritma dedi\u011fimiz ifadede zaten el-Harezmiden gelmektedir.<br \/>\n<strong>NOT:<\/strong> \u201c <em>Algoritmik tan\u0131mlama ile problem \u00e7\u00f6z\u00fcmleme<\/em>\u201d yakla\u015f\u0131m\u0131d\u0131r<em>. <\/em>T\u00fcrk ve M\u00fcsl\u00fcman k\u00f6kenli Harzemli gerek \u201cCebir Bilim Dal\u0131n\u0131n\u201d kurucusu ve gerekse, Bilgisayar Programlama Kuram\u0131n\u0131n temeli olan \u201c <em>\u00c7\u00f6z\u00fcm ya da Program algoritmas\u0131\u201d <\/em>tan\u0131mlama kuram\u0131n\u0131n yarat\u0131c\u0131s\u0131 oldu\u011fu, toplumumuzda yayg\u0131nca tan\u0131t\u0131lmam\u0131\u015ft\u0131r. Ne cebir ne de programlama kitaplar\u0131nda yeterince vurgulanmam\u0131\u015ft\u0131r. \u00dcst\u00fcne basa basa s\u00f6yl\u00fcyorum.<\/li>\n<li><strong>Pascalline, <\/strong>Blaise Pascal \u20131649\u2019da makinenin patentini ald\u0131. Toplama ve \u00e7\u0131karma yapabilen cihaz. Pascal ad\u0131nda bilgisayar dili var.)<\/li>\n<li><strong>Leibniz<\/strong>(1646\u20131716), Pascalline\u2019\u0131 geli\u015ftirdi. \u00c7arpma ve b\u00f6lme de yapabilen ilk mekanik cihaz.<\/li>\n<li><strong>Ada LOVELACE<\/strong> Charles Babbage\u2019\u0131n yard\u0131mc\u0131s\u0131 \u2013ilk programc\u0131. Ada isimli askeri ama\u00e7la kullan\u0131lan programlama dili var<\/li>\n<li><strong>George Bole,<\/strong> 1847 \u2013 Boole cebrini yay\u0131nlad\u0131. Sembolik mant\u0131k ve ikili say\u0131 sistemi<strong> Von Neumann bilgisayar\u0131<\/strong> Magnetik tamburlar \u00fczerinde 0 ve 1\u2019lerden olu\u015fan makine dilinde yap\u0131ld\u0131.<\/li>\n<li><strong>Grace Hopper<\/strong> 1952 \u2013 ilk bilgisayar derleyicisini geli\u015ftirdi<\/li>\n<li><strong>1950 \u2013 COBOL ve FORTRAN<\/strong> y\u00fcksek d\u00fczey programlama dilleri geli\u015fti.<\/li>\n<li><strong>Bill Gates<\/strong> 21 ya\u015f\u0131nda iken bir arkada\u015f\u0131yla birlikte Microsoft firmas\u0131n\u0131 kurdu.<\/li>\n<\/ul>\n<p>\u015euan Windows i\u015fletim sistemi ve .NET platformu ile paraya para demiyor.<\/p>\n<p><strong>Programlama Nedir?<\/strong><\/p>\n<p>Program, bilgisayar\u0131n amaca y\u00f6nelik i\u015fleyi\u015fini sa\u011flayan bir grup koda verilen isimdir. Bu kodlar b\u00fct\u00fcn\u00fcne <em><u>programlama dili<\/u><\/em> denir. Bilgisayar\u0131 programlamak i\u00e7in, amaca uygun olarak \u00e7e\u015fitli programlama dilleri kullan\u0131l\u0131r. Programlama dillerini yani kod \u00f6beklerini iki ana grupta toplayabiliriz:<\/p>\n<p><strong><em>Programlama dillerinin seviyelerine g\u00f6re s\u0131n\u0131fland\u0131r\u0131lmas\u0131:<\/em><\/strong><\/p>\n<p><strong>\u0130nsana En Yak\u0131n<\/strong>: \u00a0\u00a0\u00a0\u00a0\u00a0 \u00a0\u00c7ok y\u00fcksek seviyeli programlama dilleri ya da g\u00f6rsel diller (Foxpro, Paradox, access, V\u0131sual Basic,&#8230;.<\/p>\n<p><strong>Y\u00fcksek seviyeli programlama dilleri<\/strong> :Pascal, Cobol, Fortran, Basic,&#8230;<\/p>\n<p><strong>Orta seviyeli programlama dilleri<\/strong> : C, ADA<\/p>\n<p><strong>Al\u00e7ak seviyeli programlama dilleri<\/strong>: sembolik makine dilleri<\/p>\n<p><strong>Bilgisayara en Yak\u0131n<\/strong>:\u00a0 Makine dilleri (Bilgisayar\u0131n do\u011fal \u00e7al\u0131\u015fma dilleri, l ve 0\u2019 lar\u0131n dizilimlerinden olu\u015fan)<\/p>\n<p><strong>\u00a0<\/strong><strong>Ve genel olarak ifade edilirse:<\/strong><\/p>\n<p><strong>&gt;&gt; D\u00fc\u015f\u00fck Seviyeli Diller\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 &gt;&gt; Y\u00fcksek Seviyeli Diller<\/strong><\/p>\n<p>\u2014 Makine Dili<\/p>\n<p>\u2014 Assembly\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0-G\u00f6rsel Diller\u00a0 \u00a0 \u00a0-G\u00f6rsel Olmayan Diller<\/p>\n<p>\u2014 Visual Basic\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 &gt; C<\/p>\n<p>\u2014 Delphi\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \u00a0\u00a0\u00a0\u00a0\u00a0&gt; Fortran<\/p>\n<p>\u2014\u00a0 Java\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 &gt; Cobol<\/p>\n<p>\u2014 Visual C++\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0&gt; C++<\/p>\n<p><strong>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \u00a0\u2014 <\/strong>.NET<strong>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&gt; <\/strong>Qbasic<\/p>\n<p>&gt; Pascal<\/p>\n<p>Yine Programlama dillerini, temel yakla\u015f\u0131mlar\u0131na g\u00f6re \u015fu s\u0131n\u0131flara da ay\u0131rabiliriz. Buna g\u00f6re belli ba\u015fl\u0131 programlama dili s\u0131n\u0131flar\u0131 \u015funlard\u0131r:<\/p>\n<ul>\n<li><strong>Yordamsal (procedural \/ imperative) diller<\/strong>: C, Pascal, &#8230;<\/li>\n<li><strong>Nesneye dayal\u0131 (object based \/ oriented) diller<\/strong>: Ada, Smalltalk, ABAP, Avenue&#8230;<\/li>\n<li><strong>Fonksiyonel (functional) diller<\/strong>: Lisp, Haskell, &#8230;<\/li>\n<li><strong>Mant\u0131ksal (logic) diller<\/strong>: Prolog, &#8230;<\/li>\n<\/ul>\n<p>G\u00f6rsel programlama dilleri program kodunun k\u0131smen y\u00e2 da tamamen g\u00f6rsel bi\u00e7imde \u00e7e\u015fitli ara\u00e7lar taraf\u0131ndan \u00fcretildi\u011fi dillerdir. G\u00f6rselli\u011fin ileri u\u00e7lar\u0131nda program kodu bile bulunmayabilir. Windows sistemlerinde Visual Basic, Access gibi g\u00f6rsel diller yayg\u0131n bir bi\u00e7imde kullan\u0131lmaktad\u0131r. \u00c7ok y\u00fcksek seviyeli dillere dekleratif diller de denir. Veritabanlar\u0131n\u0131n y\u00f6netimlerinde kulland\u0131\u011f\u0131m\u0131z dilleri bu gruba sokabiliriz. Y\u00fcksek seviyeli programlama dilleri daha algoritmik dillerdir. Bu dillerde \u00f6nce i\u015flerin nas\u0131l yap\u0131laca\u011f\u0131na ili\u015fkin algoritmalar tasarlan\u0131r. Daha sonra bu algoritmalar program koduna \u00e7evrilir. Basic, Pascal, Fortran gibi dilleri bu grup i\u00e7erisinde ele alabiliriz.<\/p>\n<p><strong><em>Programlama dillerinin uygulama alanlar\u0131na g\u00f6re s\u0131n\u0131fland\u0131r\u0131lmas\u0131<\/em><\/strong><em>:<\/em><\/p>\n<p><em>\u00a0<\/em><strong>Bilimsel ve M\u00fchendislik Diller<\/strong>: Bu diller daha \u00e7ok bilimsel ve m\u00fchendislik problemlerinin \u00e7\u00f6z\u00fcm\u00fcnde tercih edilirler. PASCAL ve C dillerini, birde gelece\u011fi pek parlak olmayan ve hala \u0131srarla kullan\u0131lan 90 canl\u0131, d\u00fcnyan\u0131n ilk y\u00fcksek seviyeli dili FORTRAN\u2019 \u0131 buna \u00f6rnek verebiliriz.<\/p>\n<p><strong>Veritaban\u0131 Programlama Dilleri:<\/strong> Bu diller veritabanlar\u0131n\u0131n genel\u00a0 olarak\u00a0 y\u00f6netiminde kullan\u0131lan dillerdir: DBASE, PARADOX, FOXPRO, SQL.. Ki\u015fisel bilgisayarlarda yayg\u0131n olarak kullan\u0131lanlardan baz\u0131lar\u0131d\u0131r.<\/p>\n<p><strong>Yapay Zek\u00e2 Dilleri: <\/strong>bu diller insan davran\u0131\u015f\u0131n\u0131 taklit etmeye y\u00f6nelik yapay zek\u00e2 i\u00e7eren programlar\u0131n yaz\u0131m\u0131nda kullan\u0131lan mant\u0131ksal dillerdir. En \u00fcnl\u00fcleri: LISP ve PROLOG.<\/p>\n<p><strong>Genel Ama\u00e7l\u0131 Diller:<\/strong> \u00c7ok \u00e7e\u015fitli konularda uygulama geli\u015ftirmek amac\u0131yla kullan\u0131lan dillerdir. C ve PASCAL\u2019 \u0131 \u00f6rnek verebiliriz.<\/p>\n<p><strong>Sistem Programlama Dilleri: <\/strong>Sistem programlar\u0131n\u0131n yaz\u0131m\u0131nda kullan\u0131lan dillerdir. C \u2018 yi sembolik makine dillerini bu grup i\u00e7inde ele alabiliriz.<\/p>\n<p>Programlama dili se\u00e7iminde \u00f6ncelik bu dil ile hangi t\u00fcr program yapaca\u011f\u0131m\u0131zd\u0131r. \u00d6rnek verecek olursak kendisinden portlar ile haberle\u015fme program\u0131 istenen bir arkada\u015f\u0131m\u0131z bunu COBOL ile veya FORTAN ile yapmaya kalk\u0131\u015f\u0131rsa ne olacak tabi\u00ee ki zaman kayb\u0131. Ve hayal k\u0131r\u0131kl\u0131\u011f\u0131d\u0131r. Bu ifadeleri FORTRAN\u2019\u0131 veya COBOL k\u00fc\u00e7\u00fck d\u00fc\u015f\u00fcrmek istemek i\u00e7in s\u00f6ylerim bu diller kulvarlar\u0131nda (COBOL: Muhasebe, FORTRAN: Bilimsel M\u00fchendislik Yaz\u0131l\u0131mlar\u0131)\u00a0 .Yine bir \u00f6rnekte web i\u00e7in verelim: daha \u00e7ok web ile \u00e7al\u0131\u015facak bir arkada\u015f\u0131m\u0131z gidip FORTRAN ile veya daha web ile daha alakas\u0131z bir dil ile ba\u015flarsa \u00e7ok b\u00fcy\u00fck zaman kayb\u0131 yapm\u0131\u015f olur. Peki, bu arkada\u015f\u0131m\u0131z ne yapmal\u0131 o zaman\u2026 \u0130lk \u00f6nce HTML dilini adam gibi \u00f6\u011frenmeli. Daha sonrada PHP, ASP gibi etkile\u015fimli bir dile ge\u00e7erek as\u0131l programlamaya ba\u015flamal\u0131d\u0131r.<\/p>\n<p>Bilindi\u011fi gibi programlama dilleri \u00f6\u011frenilmeden \u00f6nce programlama tekni\u011fi ve algoritma tasar\u0131m\u0131 mant\u0131\u011f\u0131 \u00f6\u011frenilmedir. Yani bir yere ula\u015fmak i\u00e7in hangi ara\u00e7 kullanaca\u011f\u0131m\u0131zdan \u00f6nce mutlaka o yolun nas\u0131l olaca\u011f\u0131 hakk\u0131nda bilgi toplamak veya fikir y\u00fcr\u00fctmek gereklidir. \u0130\u015fte Algoritmada programlaman\u0131n temelidir. \u00c7\u00f6z\u00fcme ula\u015fmak i\u00e7in kullan\u0131lan yolu y\u00e2 da yollardan birini ( kendimize en uygununu ) se\u00e7mektir\u2026<\/p>\n<p><strong>\u00a0<\/strong><strong>Peki, hangi programlama dili ile ba\u015flamal\u0131y\u0131m?<\/strong><\/p>\n<p>Evet, ortal\u0131kta bir\u00e7ok programlama dili var. Bu soru ( hangi programlama dili ile ba\u015flamal\u0131y\u0131m ) daha \u00e7ok sorulacak ve daha \u00e7ok tart\u0131\u015fmalar \u00e7\u0131kacak gibi. Bana g\u00f6re \u00f6ncelikle hangi dil amac\u0131n\u0131za uygunsa, hangi dilden zevk alarak programla yapabiliyorsan\u0131z, seviyorsan\u0131z ve en \u00f6nemlisi para kazan\u0131yorsan\u0131z en iyi dil bence odur.<\/p>\n<p>Bir kere her \u015feyden \u00f6nce kayna\u011fa kolay ula\u015fmak \u00f6nemlidir. A\u00e7\u0131k\u00e7as\u0131 bug\u00fcn sanal ortamda yaz\u0131l\u0131mc\u0131lar, bir grup olu\u015fturarak tek d\u00fc\u015f\u00fcnce gibi bilgi al\u0131\u015f veri\u015fi yap\u0131labiliyor. Bu konuda \u00fclkemizi temel alacak olursak, a\u011f\u0131rl\u0131kl\u0131 olarak DELPH\u0130 programlama dilinin yayg\u0131n oldu\u011funu g\u00f6rebiliriz. Y\u00e2da benim g\u00f6z\u00fcme \u00e7ok \u00e7arpt\u0131. J<\/p>\n<p>\u201c.NET\u201d teknolojisi ile diller birle\u015fmi\u015ftir. Bu yaz\u0131l\u0131m sekt\u00f6r\u00fc ad\u0131na yeni bir bak\u0131\u015f a\u00e7\u0131s\u0131 getirmi\u015ftir. Art\u0131k web uygulamalar\u0131nda bile \u201c.NET\u201d sayesinde programlamada kullan\u0131lan mant\u0131k gibi tasarlamalar yap\u0131labiliyor. Yaz\u0131l\u0131m sekt\u00f6r\u00fcn\u00fcn ate\u015flendi\u011fi bu y\u0131llarda rekabetin getirmi\u015f oldu\u011fu bir\u00e7ok yenilik ile daha kolay programlamalar yap\u0131labilmektedir.<\/p>\n<p><strong>SONU\u00c7 VE D\u0130L SE\u00c7\u0130M<\/strong><\/p>\n<p>O zaman dil se\u00e7imi i\u00e7in kendimize \u015f\u00f6yle sorular soral\u0131m bunlar\u0131n cevaplar\u0131na g\u00f6re se\u00e7imimizi yapal\u0131m:<\/p>\n<ol>\n<li>Yapaca\u011f\u0131m program hangi yaz\u0131l\u0131m t\u00fcr\u00fcndedir? Y\u00e2da hangi ama\u00e7(lar) i\u00e7in bu program\u0131 yazacaks\u0131n\u0131z?<\/li>\n<li>Programdan istenilen unsurlar nelerdir? Yani sonu\u00e7ta olu\u015facak program\u0131n\u0131zdan ne t\u00fcr beklentileriniz var?<\/li>\n<li>Hangi platform i\u00e7in tasarlayaca\u011f\u0131m bu program\u0131? ( \u00d6rne\u011fin: Windows, web, Linux, MS-DOS, Machintosh \u2026 vb gibi)<\/li>\n<li>Web veya network ba\u011flant\u0131s\u0131 olacak m\u0131?<\/li>\n<li>Ayn\u0131 anda ka\u00e7 ki\u015fi bu program\u0131 kullanabilecek?<\/li>\n<li>Kullan\u0131lacak de\u011fi\u015fkenlerde belirli bir \u00f6l\u00e7\u00fct varm\u0131?<\/li>\n<li>Se\u00e7ti\u011fim dil g\u00fcncellemeye ne kadar a\u00e7\u0131k olacak? Veya program\u0131n\u0131z\u0131 hangi zaman aral\u0131klar\u0131 ile g\u00fcncelleyeceksiniz?<\/li>\n<li>Program\u0131n sa\u011flam m\u0131 olmas\u0131 gerek yoksa sadece h\u0131zl\u0131 olmas\u0131 sizin i\u00e7in yeterli mi? Veya her ikisi de gerekli bir unsur mu?<\/li>\n<li>\u00a0Maliyet ve risk y\u00f6netimi nas\u0131l olacak?<\/li>\n<\/ol>\n<p>Sonu\u00e7 olarak program\u0131n hangi dille yaz\u0131ld\u0131\u011f\u0131 hi\u00e7 de \u00f6nemli de\u011fildir. Asl\u0131nda do\u011fru d\u00fc\u015f\u00fcn\u00fcp, h\u0131zl\u0131 \u00e7al\u0131\u015fan, \u00e7ok fazla problem \u00e7\u0131kartmayan ve \u015f\u0131k tasarlamad\u0131ktan sonra hangi dille yaz\u0131l\u0131rsa yaz\u0131ls\u0131n. Zaman\u0131n giderek \u00f6nem kazand\u0131\u011f\u0131 \u015fu g\u00fcnlerde tasar\u0131m s\u00fcresi k\u0131salan ve h\u0131zl\u0131 g\u00fcncellenebilir programlar tercih sebebi olsa gerektir. Yukar\u0131daki sorulara ger\u00e7ekten net cevaplar bulup tabloya g\u00f6re dilimizi se\u00e7meliyiz:<\/p>\n<table>\n<tbody>\n<tr>\n<td colspan=\"4\" width=\"247\"><strong>Platform<\/strong><\/td>\n<td colspan=\"5\" width=\"370\"><strong>Yaz\u0131l\u0131m T\u00fcr\u00fc<\/strong><\/td>\n<\/tr>\n<tr>\n<td width=\"67\"><strong>DOS<\/strong><\/td>\n<td width=\"60\"><strong>Windows<\/strong><\/td>\n<td width=\"60\"><strong>Linux<\/strong><\/td>\n<td width=\"60\"><strong>Web<\/strong><\/td>\n<td width=\"72\"><strong>Sistem<\/strong><\/td>\n<td width=\"84\"><strong>M\u00fchendislik ve Mat<\/strong><\/td>\n<td width=\"72\"><strong>Oyun <\/strong><\/td>\n<td width=\"72\"><strong>Yapay zek\u00e2<\/strong><\/td>\n<td width=\"70\"><strong>Mesleki ve Ticari<\/strong><\/td>\n<\/tr>\n<tr>\n<td width=\"67\">C<\/td>\n<td width=\"60\">.NET<\/td>\n<td width=\"60\">C<\/td>\n<td width=\"60\">HTML<\/td>\n<td width=\"72\">C<\/td>\n<td width=\"84\">Fortran<\/td>\n<td width=\"72\">VB<\/td>\n<td width=\"72\">Prolog<\/td>\n<td width=\"70\">COBOL<\/td>\n<\/tr>\n<tr>\n<td width=\"67\">C++<\/td>\n<td width=\"60\">C++<\/td>\n<td width=\"60\">C++<\/td>\n<td width=\"60\">ASP<\/td>\n<td width=\"72\">C++<\/td>\n<td width=\"84\">PL-I<\/td>\n<td width=\"72\">Delphi<\/td>\n<td width=\"72\">C++<\/td>\n<td width=\"70\">C++<\/td>\n<\/tr>\n<tr>\n<td width=\"67\">Assembler<\/td>\n<td width=\"60\">Delphi<\/td>\n<td width=\"60\">Java<\/td>\n<td width=\"60\">PHP<\/td>\n<td width=\"72\">&nbsp;<\/td>\n<td width=\"84\">Matlab<\/td>\n<td width=\"72\">Java<\/td>\n<td width=\"72\">&nbsp;<\/td>\n<td width=\"70\">C<\/td>\n<\/tr>\n<tr>\n<td width=\"67\">Pascal<\/td>\n<td width=\"60\">Java<\/td>\n<td width=\"60\">ADA<\/td>\n<td width=\"60\">Java Script<\/td>\n<td width=\"72\">&nbsp;<\/td>\n<td width=\"84\">C++<\/td>\n<td width=\"72\">Visual C++<\/td>\n<td width=\"72\">&nbsp;<\/td>\n<td width=\"70\">.NET<\/td>\n<\/tr>\n<tr>\n<td width=\"67\">Basic<\/td>\n<td width=\"60\">Pascal<\/td>\n<td width=\"60\">Basic<\/td>\n<td width=\"60\">VB Script<\/td>\n<td width=\"72\">&nbsp;<\/td>\n<td width=\"84\">.NET<\/td>\n<td width=\"72\">Pascal<\/td>\n<td width=\"72\">&nbsp;<\/td>\n<td width=\"70\">Delphi<\/td>\n<\/tr>\n<tr>\n<td width=\"67\">&nbsp;<\/td>\n<td width=\"60\">C<\/td>\n<td width=\"60\">Lisp<\/td>\n<td width=\"60\">Perl<\/td>\n<td width=\"72\">&nbsp;<\/td>\n<td width=\"84\">VB<\/td>\n<td width=\"72\">&nbsp;<\/td>\n<td width=\"72\">&nbsp;<\/td>\n<td width=\"70\">Pascal<\/td>\n<\/tr>\n<tr>\n<td width=\"67\">&nbsp;<\/td>\n<td width=\"60\">Basic<\/td>\n<td width=\"60\">Scheme<\/td>\n<td width=\"60\">.NET<\/td>\n<td width=\"72\">&nbsp;<\/td>\n<td width=\"84\">&nbsp;<\/td>\n<td width=\"72\">&nbsp;<\/td>\n<td width=\"72\">&nbsp;<\/td>\n<td width=\"70\">VB<\/td>\n<\/tr>\n<tr>\n<td width=\"67\">&nbsp;<\/td>\n<td width=\"60\">VB<\/td>\n<td width=\"60\">Kylix<\/td>\n<td width=\"60\">C#<\/td>\n<td width=\"72\">&nbsp;<\/td>\n<td width=\"84\">&nbsp;<\/td>\n<td width=\"72\">&nbsp;<\/td>\n<td width=\"72\">&nbsp;<\/td>\n<td width=\"70\">&nbsp;<\/td>\n<\/tr>\n<tr>\n<td width=\"67\">&nbsp;<\/td>\n<td width=\"60\">&nbsp;<\/td>\n<td width=\"60\">Python<\/td>\n<td width=\"60\">XML<\/td>\n<td width=\"72\">&nbsp;<\/td>\n<td width=\"84\">&nbsp;<\/td>\n<td width=\"72\">&nbsp;<\/td>\n<td width=\"72\">&nbsp;<\/td>\n<td width=\"70\">&nbsp;<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Bug\u00fcn hali haz\u0131rda kullan\u0131lan pek \u00e7ok programlama dili vard\u0131r. \u0130htiyaca g\u00f6re programlama yaparken hangi programlama dilinin se\u00e7ilece\u011fi \u00f6nemlidir. Genel olarak bug\u00fcne kadar kullan\u0131lan programlama<strong><em> dilleri<\/em> <\/strong>\u015funlard\u0131r:<\/p>\n<table width=\"588\">\n<tbody>\n<tr>\n<td width=\"165\">\u00b7\u00a0\u00a0 Basic<\/p>\n<p>\u00b7\u00a0\u00a0 Fortran<\/p>\n<p>\u00b7\u00a0\u00a0 Pl\/1<\/p>\n<p>\u00b7\u00a0\u00a0 Rpg<\/p>\n<p>\u00b7\u00a0\u00a0 Cobol<\/p>\n<p>\u00b7\u00a0\u00a0 Modular2,3<\/p>\n<p>\u00b7\u00a0\u00a0 Turbo C++<\/p>\n<p>\u00b7\u00a0\u00a0 Pascal<\/p>\n<p>\u00b7\u00a0\u00a0 Cecil<\/p>\n<p>\u00b7\u00a0\u00a0 Ada<\/p>\n<p>\u00b7\u00a0\u00a0 Blue<\/p>\n<p>\u00b7\u00a0\u00a0 Dylan<\/p>\n<p>\u00b7\u00a0\u00a0 Eiffel<\/p>\n<p>\u00b7\u00a0\u00a0 Erlang<\/p>\n<p>\u00b7\u00a0\u00a0 Avenue<\/p>\n<p>\u00b7\u00a0\u00a0 Pynton<\/p>\n<p>\u00b7\u00a0\u00a0 Kylix<\/p>\n<p>&nbsp;<\/td>\n<td width=\"133\">\u00b7\u00a0\u00a0 Forth<\/p>\n<p>\u00b7\u00a0\u00a0 Haskell<\/p>\n<p>\u00b7\u00a0\u00a0 Icon<\/p>\n<p>\u00b7\u00a0\u00a0 Logo<\/p>\n<p>\u00b7\u00a0\u00a0 Lua<\/p>\n<p>\u00b7\u00a0\u00a0 Delphi<\/p>\n<p>\u00b7\u00a0\u00a0 VBasic<\/p>\n<p>\u00b7\u00a0\u00a0 PHP<\/p>\n<p>\u00b7\u00a0\u00a0 Perl<\/p>\n<p>\u00b7\u00a0\u00a0 SGML<\/p>\n<p>\u00b7\u00a0\u00a0 XML<\/p>\n<p>\u00b7\u00a0\u00a0 HTML<\/p>\n<p>\u00b7\u00a0\u00a0 ASP<\/p>\n<p>\u00b7\u00a0\u00a0 Java<\/p>\n<p>\u00b7\u00a0\u00a0 ABAP<\/p>\n<p>\u00b7\u00a0\u00a0 Beta<\/p>\n<p>\u00b7\u00a0\u00a0 VB<\/td>\n<td width=\"139\">\u00b7\u00a0\u00a0 Mercury<\/p>\n<p>\u00b7\u00a0\u00a0 Miranda<\/p>\n<p>\u00b7\u00a0\u00a0 ML<\/p>\n<p>\u00b7\u00a0\u00a0 Oberon<\/p>\n<p>\u00b7\u00a0\u00a0 Prolog<\/p>\n<p>\u00b7\u00a0\u00a0 Rexx<\/p>\n<p>\u00b7\u00a0\u00a0 Ruby<\/p>\n<p>\u00b7\u00a0\u00a0 Sather<\/p>\n<p>\u00b7\u00a0\u00a0 SETL<\/p>\n<p>\u00b7\u00a0\u00a0 Lisp<\/p>\n<p>\u00b7\u00a0\u00a0 C<\/p>\n<p>\u00b7\u00a0\u00a0 V C++<\/p>\n<p>\u00b7\u00a0\u00a0 VFocus Pro<\/p>\n<p>\u00b7\u00a0\u00a0 Occam<\/p>\n<p>\u00b7\u00a0\u00a0 Power Builder<\/td>\n<td width=\"141\">\u00b7\u00a0\u00a0 Smalltalk<\/p>\n<p>\u00b7\u00a0\u00a0 Snobol<\/p>\n<p>\u00b7\u00a0\u00a0 ABC<\/p>\n<p>\u00b7\u00a0\u00a0 APL<\/p>\n<p>\u00b7\u00a0\u00a0 Flash<\/p>\n<p>\u00b7\u00a0\u00a0 Python<\/p>\n<p>\u00b7\u00a0\u00a0 Tcl<\/p>\n<p>\u00b7\u00a0\u00a0 Apple Script<\/p>\n<p>\u00b7\u00a0\u00a0 Shell Script<\/p>\n<p>\u00b7\u00a0\u00a0 VB Script<\/p>\n<p>\u00b7\u00a0\u00a0 Metlap<\/p>\n<p>\u00b7\u00a0\u00a0 CSH<\/p>\n<p>\u00b7\u00a0\u00a0 SH<\/p>\n<p>\u00b7\u00a0\u00a0 TSCH<\/p>\n<p>\u00b7\u00a0\u00a0 .NET<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p><strong>\u00a0<\/strong><strong>Arkada\u015flar Yaz\u0131l\u0131m Geli\u015ftirme uzman\u0131 olabilmek i\u00e7in \u00e7ok fazla \u00f6n ko\u015fullar yoktur. <\/strong><\/p>\n<p>Yaz\u0131l\u0131m s\u00fcrecine kat\u0131lmak isteyenlerin orta d\u00fczeyde \u0130ngilizce bilgisine sahip olmalar\u0131<\/p>\n<p>Yeterlidir. \u015eu an zaten hem internet \u00fczerinde hem de kitap\u00e7\u0131larda yeterli miktarda T\u00fcrk\u00e7e kaynak bulabilirsiniz.<\/p>\n<p>Ancak, sadece bir veya iki dil \u00f6\u011frenerek tam bir programc\u0131 olamayaca\u011f\u0131n\u0131z\u0131 ya da \u00fcstat seviyesine ula\u015famayaca\u011f\u0131n\u0131z\u0131 da bilmeniz gerekiyor. Herhangi bir dilden ba\u011f\u0131ms\u0131z olarak programlama problemleri hakk\u0131nda d\u00fc\u015f\u00fcnmeyi \u00f6\u011frenmelisiniz. Yani algoritmalar dedi\u011fimiz \u00e7\u00f6z\u00fcm yollar\u0131n\u0131 bulmal\u0131s\u0131n\u0131z. Ger\u00e7ek bir \u00fcstat olabilmek i\u00e7in, yeni bir dili, el kitab\u0131nda yazanlarla, bildiklerinizi ba\u011fda\u015ft\u0131rarak beklide bir ka\u00e7 g\u00fcn i\u00e7erisinde \u00f6\u011frenebilir durumda olmal\u0131s\u0131n\u0131z. Bu, \u00e7ok iyi bir programc\u0131 olmak i\u00e7in birbirinden \u00e7ok farkl\u0131 bir ka\u00e7 dil bilmeniz gerekti\u011fi anlam\u0131na geliyor.<\/p>\n<p>E\u011fer ciddi programlamaya girecekseniz, Unix&#8217;in ana dili olan C &#8216;yi \u00f6\u011frenmelisiniz. C++, C ile alakal\u0131d\u0131r; birini \u00f6\u011frenirseniz, di\u011ferini \u00f6\u011frenmek zor olmayacakt\u0131r. Her iki dil de, ilk dil olarak \u00f6\u011frenmek i\u00e7in uygun de\u011fildir ama kendinizi zorlarsan\u0131z ger\u00e7ekten de C dili kaynak kullan\u0131m\u0131nda tutumlu ve verimli bir dildir. Maalesef, C, bu verimlili\u011fi, pek \u00e7ok kayna\u011f\u0131n (bellek gibi) y\u00f6netimini do\u011frudan size b\u0131rakarak elde eder. Bu d\u00fc\u015f\u00fck seviyeli (donan\u0131ma yak\u0131n) kodlama karma\u015f\u0131k ve hataya a\u00e7\u0131kt\u0131r ve hata ay\u0131klamak i\u00e7in pek \u00e7ok zaman\u0131n\u0131za mal olur. Makinelerin g\u00fc\u00e7l\u00fc oldu\u011fu g\u00fcn\u00fcm\u00fczde, makinenin \u00e7al\u0131\u015fma verimlili\u011fi yerine sizin \u00e7al\u0131\u015fma verimlili\u011finize \u00f6ncelik tan\u0131yan bir dil ile program yazmak daha ak\u0131ll\u0131ca olacakt\u0131r. Sonu\u00e7 olarak ben size VB.NET veya VB ile ba\u015flaman\u0131z\u0131 \u00f6neririm \u00e7\u00fcnk\u00fc g\u00f6rsel bir dil ger\u00e7ekten de i\u015finizi ilk etapta baya\u011f\u0131 kolayla\u015ft\u0131racakt\u0131r. Ama C&#8217;yi tercih etmenizi \u00f6neririm.<\/p>\n<p><strong>Not<\/strong>: 2010 y\u0131l\u0131ndan itibaren yazm\u0131\u015f oldu\u011fum yaz\u0131lar g\u00fcncellenerek tekrar payla\u015f\u0131lacakt\u0131r.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Programlama nedir? Programlama dillerinin s\u0131n\u0131fland\u0131r\u0131lmas\u0131 ve hangi programlama dilini kullanmal\u0131y\u0131m?\u00a0 \u00d6ncelikle forumlarda s\u0131kl\u0131kla kar\u015f\u0131la\u015f\u0131lan bu b\u00fcy\u00fck soruna cevap yazmak istedim&#8230;&#8230;<\/p>\n","protected":false},"author":1,"featured_media":83448,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[35,43],"tags":[358,360,361,362,464],"class_list":["post-978","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-arsiv","category-programlama","tag-programlama","tag-programlama-nedir","tag-programlamaya-giris","tag-programlamaya-nereden-baslamali","tag-turkkod-programlama-dersleri"],"acf":[],"aioseo_notices":[],"_links":{"self":[{"href":"http:\/\/hilmibilici.com\/index.php?rest_route=\/wp\/v2\/posts\/978","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/hilmibilici.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/hilmibilici.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/hilmibilici.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/hilmibilici.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=978"}],"version-history":[{"count":0,"href":"http:\/\/hilmibilici.com\/index.php?rest_route=\/wp\/v2\/posts\/978\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"http:\/\/hilmibilici.com\/index.php?rest_route=\/"}],"wp:attachment":[{"href":"http:\/\/hilmibilici.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=978"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/hilmibilici.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=978"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/hilmibilici.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=978"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}