Yazılıma Yeni Başlayan Biri Nereden Başlamalı

Yazılıma Yeni Başlayan Biri Nereden Başlamalı

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