Yeni Ufuklara... "Birinci Bölüm - Yatırım Yaptığım Diller"



5 dakikalık okuma
November 25, 2018

Bu yazıyı kaleme almama iten sebeplerden biri de içimde durduramadığım enerjinin açığa çıkmak istemesidir. İnsanın en büyük yatırımının kendisine olacağına inanan biri olarak yazılım hayatımda uygulayacağım bu değişimi içtenlikle herkesle paylaşarak ilerlemek istedim. O yüzden bu yazıyı kaleme aldım.

Artık odaklanmayı ve net olmayı merkeze alarak ilerlemeye başlıyorum. Yazılım, benim hedeflerim için bir araçtır. Amaç bir değer oluşturmaktır.

Bunun için çok severek kullandığım MindNode programını açarak evvela kafamdaki düşüncelerimin zihin haritasını hazırladım. Anlatımıma bu harita üzerinden devam edeceğim.

Hiç ellemeden aşağıda bunu paylaşıyorum:

https://burhantanis.com/assets/bildigim_diller.png

Yukarıdaki haritada görüldüğü üzere “Bildiğim ve yatırım yaptığım dilleri” üç açıdan ele aldım:

  1. Web Platform / Server Side
  2. Mobil Uygulama ve Genel Programlama
  3. Değerlendirme Aşamasında

Şimdi bunları detaylı bir şekilde ele alalım:

1.Web Platform / Server Side

Birinci başlıkta Web Platform / Server Side başlığını 2’ye ayırarak front-end ve back-end diye ele aldım. Bu başlıklarda bildiğim dilleri, teknolojileri listeledim.

Back-end:

Back-end’den başlarsak, burada hiç olmazsa bir dilde uzman olmam bu alanda da varım dememdir. Şimdilik bu alanda bir dil biliyorsam başka bir dil öğrenmeye kısa vadede gerek yok diye düşünüyorum. Çünkü PHP ve Laravel ikilisi ile her tür back-end bir yapı tasarlayabiliyorum. Orta vadede ilerisi için yeni bir dil için de merhaba diyebilirim; ama şuan kısa vadede gündemimde yok.

Ayrıca ilerleyen günlerde PHP dilinin popularitesinin de düşeceğine inanmıyorum. Bunu yapılan anket ve istatistikler söylüyor. Piyasadaki %80 civarı web sitesi halen altyapı için PHP dilini kullanıyor. Ayrıca birçok CMS PHP dili ile geliştirilirken, Startup firmaların tercihi de bu dil olmakta.

Front-end:

Front-end’te bulunan HTML-CSS’in geleceğinin çok parlak olduğunu ve gelecekte karmaşık arayüzler için hem mobil, hem masaüstü hem de web için bu dillerin kullanacağını öngörmekteyim. Zaten Mobil için Cross-platform araçlar bunun en büyük örneği iken, masaüstü programlar için de Electron en büyük delildir. Web’i bahsetmeye gerek yok zaten…

Bu yapıları daha ürün odaklı ve responsive kullanmak için işimizi kolaylaştıracak birçok framework geliştirildi ve geliştirilmeye devam ediliyor. Benim en severek kullandığım Bootsrap ve son sürümü 4 ile gerçekten harika bir çalışma ortaya çıkartmışlar; ama farklı perspektifte oyuna katılan diğer framework’lerle de ara sıra haşir neşir oluyorum. Bunların arasında dikkatimi en çok çeken, Laravel camiasının kullandığı ve öne çıkardığı Tailwind CSS’tir. Bunlara daha fazla yatırım yaparak HTML ve CSS’te derinleşmek istiyorum.

JavaScript dünyasında durum daha heyecanlı; ama ben Laravel topluluğunu takip ettiğim için Vue’ya odaklanarak gidiyorum.

HTML +CSS + JAVASCRIPT üçlüsünün ilerisi açısından önü çok açık ve popülaritesi katlanarak devam ediyor. İleride bol bol platformdan bağımsız yazılımsal çözümlere bu 3’lünün kullanılacağını öngörüyorum. Bu yüzden bu üçlüye ciddi manada yatırım yapıyorum.

2.Mobil Uygulama ve Genel Programlama

Mobil uygulama ve genel uygulama için piyasada birçok dil var. Benim bu diller arasında yatırım yaparak öğrendiğim sadece 2 tane.

Birincisi uzun zaman kullandığım Delphi/Object Pascal. Her ne kadar çok bilinmese de Embarcadero firması bu dili 3 platformu destekleyecek şekilde halen özveriyle geliştiriyor. (Windows, MacOs, Linux). Bu dili kullanmak pahalıya mal olacak olsa da size Community Edition sürümü ile bedava sürümünü de sunuyor. Bence Windows için piyasadaki en iyi masaüstü uygulama geliştirme dili Delphi’dir. Benim bu dili uzun süre kullanmamı kendi açımdan artı olarak görüyorum. Ne yani çok bilinmiyor diye kaldırıp bilgimi çöpe mi atayım! Ondan gerektiğinde bu dili farklı amaçlar için halen kullanmaya devam edeceğim.

İkincisi 2017 yılında ciddi zaman ayırarak öğrendiğim Apple’ın 2014 yılında WWDC konferansında tanıttığı Swift dilidir. Dil, 21.yüzyıl yazılım dünyasının ihtiyaçlarını karşılayacak şekilde modern bir dil şekline geliştirilmiştir.

Değişken tanımlama yapısını Delphi’den ilham alarak bünyesine katan bu dili öğrenmek ve adapte olmak beni çok yormadı; ama Apple’ın UIKit framework’ünü kullanarak mobil uygulama yazma ne yalan söyleyeyim zamanımı aldı. Mobil uygulama geliştirmenin bence en zor yanı tasarım kısmı. Apple, Swift diline ciddi yatırım yapıyor ve Apple’ın ileride Objective-C dilinin yerini alacak resmi dilidir. Bu dil 2015 yılında açık lisanslı yapılarak birçok programcının istifadesine sunulmuştur. Bunun ilk meyvesini de IBM şirketinin Swift’i sunucularında kullanmak için resmi dillerinden biri ilan etmesi ve yatırım yapmasıyla göstermiştir. Şu aşamada Swift dili ile geliştirdiğin bir uygulamayı MacOs ve Linux platformlarına native olarak derleyebiliyorsun. IBM şu aşamada bazı altyapılarında Linux üzerinde server-side olarak kullanıyor bile. Geliştirdiği Kitura web framework’te gelecek için heyecan verici.

Ayrıca Laravel Framework’ünden etkilenerek Swift ile geliştirilen Web-Framework Vapor‘u da saymadan geçmemeliyim. Vapor’un en önemli özelliği Swift dilinden geliyor. Hafızayı çok az kullanması, derlenmiş olması ve asenktronize işlemler yapmaya izin vermesi. Böylece hem CPU’yu meşgul etmiyor, hem çok çok az hafıza kullanıyor. Böylece RestAPI geliştirmek için birebir diyebilirim.

3.Değerlendirme Aşamasında Olanlar

Kısa vadede yukarıda dediğim gibi bildiğim dillerde derinleşeceğim. Orta vadede “Python” ve “Java” dillerini öğrenme açısından değerlendiriyorum.

Toplarlarsak…

Yazılım dünyasında diller açısından yol haritam böyle. Bu saydığım dillerde derinleştikçe, her öğrendiğim kayda değer bilgileri sıcağı sıcağına dijital günlüğümde de paylaşacağım inşallah…

Dipnotlar:

Yazıda kullandığım giriş resmi Canon 70D makinam ile çekilmiş bir görüntüdür. Mekan: Filipinler, Palawan - El Nido Adası.


Etiketler: