Terminal / Uçbirim kullanmak için başlıca sebepler

İşletim sistemlerinde kullanılan GUI (Graphical User Interface) yani Grafiksel Kullanıcı Arayüzü, yazılım geliştirme işlemlerinde sistemsel sınırlamalar ve yetersiz alanlar sebebi ile eksik kalmaktadır. Linux ve Mac OS sistemlerde bulunan “Terminal” penceresi, bu arayüzü geçip direkt sistemin çekirdeğine ulaşarak işlem yapmamızı sağlar. Basit bir örnek olarak; bir dosyayı indirmek, kullanıcı izinleri atamak, çoğaltmak, taşımak, kopyalamak, başka bir alana iletmek gibi işlemleri GUI kullanarak yapmaktan daha hızlı bir şekilde yapmamıza olanak sağlar. Fakat bunlar hali hazırda GUI ile yapabileceğimiz basit işlemlerdir. Terminal (uçbirim), Mac OS ve Linux işletim sistemlerinde kullanıcılar tarafından aktif bir şekilde kullanılmaktadır. Ama Windows üzerinde GUI’i aşıp direkt çekirdek (kernel) üzerinden işlem yapmak mümkün değildir.

Komutları öğrenmek ve geliştirme aşamasında bu komutlar ile çalışmak yeni başlayanlar için zahmetli olabilir. Peki bu aracı -terminal- kullanmak ve pek tabii ki öğrenmek için en ikna edici sebepler neler olabilir?

  • GIT (Dağıtık Çalışma Akışları) programlarını kullanarak repolarınız üzerinden işlem yapmak basittir. Fakat büyük sistemler yazarken imlecinizi efektif butonların üzerinde dolaştırmanın, çetrefilli checkboxları kliklemenin uzun vadede vaktinizi çaldığını fark edeceksiniz. Terminal üzerinden GIT kullanımı daha hızlı ve pratik bir hal alıyor.
  • Dosya izinleri ve güvenlik, sistem yöneticilerinin demirbaşlarındandır. Bu sebeple local veya public ağlar üzerinde Terminal aracılığı ile dosya ve dizin yönetimleri  -özellikle büyük projelerde- çok daha detaylı ve önizlenebilir olacaktır.
  • Paket kurulumları yaparken önce tarayıcıyı açmak, url alanına indireceğimiz dosyanın bulunduğu alan adını yazmak, indirme butonuna tıklamak, indirdiği klasörü açmak ve kurulum sihirbazını çalıştırmak, kurulumu tamamlamak belli bir seviye üstü kullanıcılar için gereksiz derecede meşakkat demektir. Terminal aracılığı bu işlemler sağ eliniz hiç mouse’a gitmeden çok daha hızlı bir şekilde yapılabilmektedir.

Bunlar benim bireysel en temel sebeplerim. Bu hız ve performans ihtiyacı tabii ki kişiden kişiye değişmektedir. Terminal – Uçbirim- kullanımı, bir game user için manasız gelebilecekken, bir Python Developer için vazgeçilmez ihtiyaçlardan olacaktır.