Yazılıma yeni başlayan kişiler Yazılım’daki 3 aşamayı dikkat ederek ilerlemelidir. Bunlar şu şekildedir;
Kodlama da ilk önce asıl dile yani yazılım diline geçmeden önce ilk olarak alt yapı yapılmalıdır. Bu alt yapı nedir derseniz, ilk önce yalancı kodları öğrenmek gerek yani Algoritma ve Akış Diyagramlarıdır. Bu iki konuyu öğrenmek kodlamadaki karışık kodları öğrenmeden önce size bir alt yapı kazandırıp öyle kodlamaya geçmenizi sağlar. Bu iki aşamayı iyice öğrendikten sonra artık projeleriniz ne olacak yani hangi alanda iyi olmak istiyorsanız o dile yönelmek gerekir. Bu diller ve alanları şu şekildedir.
1. Python
Günümüzde en çok kullanılan dil Python’dur sebebi ise öğrenmesi daha kolay ve kısa kodlar olduğu için bi kaç satırla birçok iş yapılabilir.
Seviye: Kolay başlangıç seviyesi olan yazılımcılar için iyi bir programlama dilidir.
Avantajları:
• Esnek
• Öğrenmesi kolay
• Kısa kodlar kullanılır
• Birçok alan ’da kullanılan
• Derlemenin aksine komut dosyası yazılmış
Dezavantajları: Programlamanın önemli yapı taşlarından başlamaz önemli olan programlama konularına girmez önemli konuları soyutladığı bilinir.
Platformları: Web, Masaüstü
Alanları:
• Web geliştirme (Python en popüler alanıdır)
• Yapay Zeka
• Veri Analizi
• Robotik kodlama
2. Java
Java günümüzde en çok kullanılan programlama dilleri arasında yer almaktadır. Sebebi ise nesne tabanlı kodlama, Andorid, İOS, Windows vb. platformlarda yaygın olarak kullanıldığı için çok fazla talep görmektedir.
Seviye: Öğrenmesi kolaydır. Orta seviyedir.
Avantajları:
• Bir programcı gibi düşünmek ya da başarılı bir programcı olmak için ideal bir dildir.
• Nesneye yönelik bir programlama dilidir
• Yapısı dinamik ve yorumlana bilir bir özelliktedir
• Taşınabilir bir özelliktedir (Farklı ortamlarda kolayca çalışabilir)
• Sağlam bir dildir
Dezavantajları:
• Öğrenmesi zordur makine diline yakındır yani 010110101 gibidir
• Telif hakkı olmayan bir oyunu veya programın kaynak kodlarını alıp değiştirip ben yaptım diyebilirsiniz.
• C dilin ’den üstündür ama C diline nazaran daha zordur
• Bilgisayar Java olmadan uygulamanızı tanımaz (.exe gibi dosyalar)
Platformları: Andorid, İOS, Windows
Alanları:
• Mobil ve gömülü uygulamalar
• Web tabanlı içerikleri
• Oyunlar
• Kurumsal yazılımların geliştirme ve dağıtımında küresel bir standart haline gelmiş bulunmaktadır
3. Kotline
Kotline, Java sanal makinesi üzerinde çalışan ve ayrıca JavaScript kaynak koduna derlenebilir, statik tipli bir programlama dilidir. İlk geliştirme SanktPeterburg, Rusya merkezli JetBrains programcıları tarafından yapılmıştır. Java’ya rakip bir dil olarak çıkmış ve Java’dan çok daha iyi olduğunu yazılımcılarda zamanla anlamış oldu.
Seviye: Ortadan ileri seviye doğru giden bir dildir
Avantajları:
• Java ve diğer dillerden daha az kod ağırlıklı
• Kabul etmesi daha kolay
• Java ile tam uyumlu
Dezavantajları:
• Değişen derleme yapısından kaynaklı static anahtar kelimesi yoktur
Platformları:
• Çıktısı Java sanal makinesi JavaScript kaynaklıdır
Alanları:
• Java’nın alanları ile aynı yapıdadır
4. Swift
Apple tarafından geliştirilmiş bir programlama dilidir. Apple’ın uygulamalarını geliştirmek ya da üretmek için kullanılır.
Seviye: Kullanımı kolay
Avantajları:
• Öğrenmesi kolay
• Daha az kod
• Açık kaynaklıdır
• Karışık programlama dillerine göre daha hızlı yazılabilir
Dezavantajları:
• İOS alt sürümlerinde uyumsuzluk sorunlarına yol açabilir.
• Genç ve yeni çıkan bir dildir.
Platformları:
• İOS, Linux, tvOS, watchOs, macOS, İPadOS
Alanları: Apple uygulamalarını geliştirilebilir
5. C#
Microsoft tarafından geliştirilen C# nesneye yönelik programlama yapmak için en iyi diller arasında yer alıyor. Java gibi değil ama C++ gibi bir dildir.
Seviye:
• Orta seviyeli bir dildir.
Avantajları:
• Açık kaynak kullanan kütüphanesi
• Kullanımı hızlı ve nesne tabanlıdır
• Başka kodlar ile uyumlu çalışabilir
Dezavantajları:
• Zayıf GUI alt yapısı
Platformları:
• Mobil ve masaüstü uygulama geliştirme ve çapraz platform desteği
Alanları:
• Oyun
• Masaüstü uygulama yapımı
• Yapay Zeka
6. C ve C++
C yapısı gereği çok eski ve şu an popüler olan çoğu kodlama dilinin başlangıcı ve bel kemiği cinsindedir. Java, C#, C++ atası niteliğinde bir programlama dilidir.
Seviye:
• C ve C++ ikisi de orta seviyeli diller ama başlangıçta sonra da C++ ağırlaşan bir dildir
Avantajları:
• C bütün dillerin başlangıç olarak mantığını anlamak için öğrenilen bir dildir ve çok eskidir
• C++ diğer dillere nazaran çok kontrollü ve kompleks bi yapıdadır
Dezavantajları:
• C ve C++ başlangıç serisi için zor bir dildir öğrenilmesi zordur diğer dillere nazaran
Platformları:
• Masaüstü uygulama geliştirme ve Mobil
Alanları:
• Çip programlama
• Oyun yapımı
• Grafik yazılımları için kullanılır
7. GO
API tabanlı ve web uygulamaları geliştirmek için birçok başarılı programcı için tercih edilen bir dildir. Sebebi ise çok çekirdekli ağ tabanlı sistemleri kullanma yönetebilme yetkisi vermesi.
Seviye:
• Başlangıçta orta seviyeli bir dildir
Avantajları:
• Öğrenilmesi kolay
• Hızlı
Dezavantajları:
• Diğer programlama dillerine nazaran daha fazla kod yazmak gerekir sebebi ise jenerik yoktur
• Çok az sayıda kütüphane desteği vardır. Bazen ihtiyacı karşılayamayabilir kütüphane kıtlığından dolayı
Platformları:
• Çapraz kodlama ve çoğunlukla masaüstü geliştirme yapabileceğiniz bir programlama dilidir
Alanları:
• Web alanın ‘da projeler yapılabilir
• Android alan’dada projeler yapılabilir
8. PHP
PHP, büyük web siteleri veya web programcılığın ’da çok sık kullanılan bir programlama dilidir
Seviye:
• Orta seviye bir dildir
Avantajları:
• Açık kaynak yapısı sayesinde proje geliştirmesi daha kolay
• Veri taban işlerinde daha kopilsek bir yapıdadır
Dezavantajları:
• Uygulama desteği az
• Güvenilir bir dil değildir
• Birçok açık buluna bilir
• Büyük web siteleri ya da programlar için uygun bir dil değildir yetersiz kalır
Platformları:
• Çapraz bağlantı alanında en çok kullanılır bunlar; Masaüstü, web, mobil
Alanları:
• Web geliştirme
9. Matlab
Bilim adamları ve mühendisler bu dilli kullanır. Autocat’in farklı bir versiyonu
Seviye:
• Acemi
Alanı:
• 3d grafik çizimi yapılabilir
10. Ruby
Nesneye yönelim ve web geliştirme için öğrenmesi kolay bir dildir
Seviye: Başlangıç için kolay
Alan: Web