Yazılım Nedir? Yazılımla İlgili Merak Ettiğiniz Herşey

Teknolojinin hayatımızda çok önemli bir yer işgal etmeye başlamasıyla bazı terimleri ve kavramları daha sık duyar olduk. 
Yazılım da bu kavramlardan birisi olarak öne çıkmaktadır. Bu yazıda yazılım nedir sorusuyla birlikte yazılımın türleri, kullanım alanları gibi pek çok konuyu açıklayacağım.

Aslında teknolojinin tam göbeğinde yer alan yazılım ve onunla ilişkili diğer terimleri anlamak, teknolojinin bugününü ve geleceğini anlamak açısından hayati önemde bir konudur. Bu terim ve ilişkili terimleri anlamak ve fikir sahibi olmak, teknoloji okuryazarlığının gereksinimlerinden birisidir.

Teknoloji okuryazarı olan bir kişi, kendi işinde de teknolojiyi daha rahat kullanabilecek, zaman ve verimlilik açısından rakiplerinden bir adım öne çıkabilecektir.

Yazılım, hangi sektörde çalışırsak çalışalım bir şekilde bizi etkilemektedir. İnşaat, ticaret, turizm, otomotiv ve aklınıza gelebilecek her tür alanda yazılım artık daha fazla yer almaktadır.

Yazılım Nedir?

Yazılım genel olarak bilgisayarı işletmek ve ona belli bir işi yaptırmak için hazırlanmış olan komut kümelerine, veriye ve programlara verilen addır.

Yazılım genel bir terimdir. Betikler, uygulamalar, programlar ve komut kümelerinin hepsi yazılım olarak adlandırılır.

Türk dil kurumu (tdk) sözlüğüne göre yazılım, ‘Bir bilgisayarda donanıma hayat veren ve bilgi işlemde kullanılan programlar, yordamlar, programlama dilleri ve belgelemelerin tümü’ olarak tanımlanmış.

Yazılım ile birlikte duyduğumuz diğer bir terim de donanım terimidir. Yazılımdan farklı olarak Donanım, bilgisayarın fiziksel tarafına karşılık gelen bir terimdir. Bilgisayarın hafızası (ram), diski, işlemci (cpu), grafik kartı dediğimiz zaman bilgisayarın donanımından bahsetmiş oluruz.

Yazılım olmadan bilgisayarlar hiçbir işe yaramaz. Bilgisayar dediğimiz zaman genel olarak kastedilen üzerinde çalışan yazılımlardır.

Yazılım Türleri

Yazılımı iki kategoride sınıflandırabiliriz: Uygulama Yazılımları ve Sistem Yazılımları.

Web Uygulamaları

Uygulama Yazılımları

Uygulama yazılımları insanların çoğu tarafından yazılım olarak bilinen türdür. Kullandığımız ofis programları (word, excel, powerpoint vb.), muhasebe programları, notepad, outlook gibi programları uygulama yazılımlarına örnek olarak gösterebiliriz.

Aynı şekilde mobil veya pc oyunları, web tabanlı uygulamaları da bu kategori içerisinde değerlendirebiliriz.

İş yaparken, video izlerken, oyun oynarken kullandığınız programlardır. Bu programlar işletim sistemi üzerinde çalışırlar.

Sistem Yazılımları

Uygulama yazılımlarına temel oluşturan yazılımlara sistem yazılımı denir. Donanımı yönetmek için yazılmış yazılımlara da sistem yazılımı denir.
İşletim sistemleri, aygıt sürücüleri, ağ yazılımları sistem yazılımlarına örnek olarak gösterilebilir. Genelde düşük seviyeli dillerle yazılmışlardır. 

Düşük seviyeli dil derken kastettiğimiz dilin bilgisayarın anladığı sıfır birlerden oluşan makina diline daha yakın bir seviyede olmasıdır.
Assembly ve C dilini bu tür düşük seviye dillere örnek olarak gösterebilirim.

Örnek vermek gerekirse linux işletim sistemi c diliyle yazılmıştır. Ayrıca linux işletim sisteminde bazı yerlerde assembly kullanılmıştır.

Sistem yazılımlarının en bilinen örneği işletim sistemleridir.

İşletim Sistemleri

Bilgisayarlar satılırken içinde kurulu gelir. Bilgisayar açılırken, otomatik olarak yüklenir.

İşletim sistemleri, kullanıcıların bilgisayarların donanımına erişimine imkan sağlar. İşletim sistemi sayesinde kullanıcılar bilgisayarın diskine, cd sürücüsüne, webcam ve benzeri tüm donanımlara erişip kullanabilirler. Windows, linux ve macOS pc üzerinde çalışan işletim sistemleridir. Akıllı telefonlar da içerisinde bir işletim sistemi ile gelirler. Android telefonlar android isletim sistemi ile iPhone telefonlar ise iOS işletim sistemi ile kurulu gelirler.

Yazılımı Kimler Nasıl Yapar?

Yazılım geliştiricisi, koder, programcı diye isimlendirilen kişiler yazılım yaparlar. Geliştiriciler, programlama dillerini kullanarak yazılım yaparlar.
Örneğin bir geliştirici, C#, Java ya da python dillerini kullanarak yazılım geliştirebilir.

Geliştirme işine kodlama da denir. Geliştiriciler geliştirme sırasında farklı araçlar kullanırlar. Windows üzerinde çalışan bir uygulama için kod yazan bir geliştirici microsoft tarafından geliştirilmiş Visual studio aracı ile yazılım geliştirebilir.

Programlama Dilleri Nelerdir?

Programlama dilleri kod yazmak için kullanılan, yani bilgisayara iş yaptırmak için oluşturulmuş, belli bir söz dizimi ve sözcük kümesine sahip yapıya denir.

Yaygın olarak kullanılan dillere örnek vermek gerekirse:

  • C#
  • Java
  • Python
  • javascript
  • html
  • Swift
  • Objective C

Javascript ve html yaygın olarak web uygulamalarında kullanılır. Java, android uygulamaları yazmak için, Swift ve Objective C iOS sistemlerde çalışan uygulama yazmak için kullanılır.

C# dili ile de windows üzerinde çalışan masaüstü uygulamaları geliştirilir.

Kaynak Kod Nedir

Kaynak kod, geliştiriciler tarafından, bir programlama dili ile yazılmış komut kümeleridir. Kaynak kod insanlar tarafından okunup anlaşılabilir. Kaynak kod, derleyici denen bir program ile bilgisayar üzerinde çalışabilecek bir uygulamaya dönüştürülür.

Açık Kaynak Yazılım (Özgür Yazılım) Nedir?

Açık kaynak yazılım, kaynak kodları herkes tarafından görülebilen, incelenebilen yazılımlara denir. Bazı yazılımların kaynak kodlarına erişemezsiniz. Örneğin excel microsoft tarafından geliştirilmiş bir yazılımdır. Microsoftun kendi geliştiricileri dışında kimse kaynak kodlarına erişemez.

Diğer taraftan apache open office uygulaması açık kaynak bir yazılımdır. İsteyen bir geliştirici yazılımın kaynak kodlarını görüp inceleyebilir.

Açık Kaynak Yazılımlar Farklı Lisans Türlerine Göre Kısıtlamaya Tabi Tutulurlar.

Belli Başlı Açık Kaynak Lisans Türleri

MIT

Hemen hemen her şeye izin veren bir lisans türüdür. Yazılımın kaynak kodlarını istediğiniz gibi değiştirebilir, dağıtabilirsiniz. Hatta satarak para da kazanabilirsiniz. Herhangi bir yasal sıkıntı çıkarmadan her türlü tasarrufta bulunabilirsiniz. 

BSD License (three-clause BSD)

Mit lisansına benziyor. Uygulamanın serbestçe dağıtımına izin veriyor. Mit lisansından farklı olarak, copyright ibaresinin dağıtımda korunması ve bsd lisanslı uygulamadan türetilmiş yazılımlar satılırken, orjinal geliştiricisi tarafından destekleniyor şeklinde lanse edilmemesi.

Apache 2.0

Önceki iki lisans şekline benzer şekilde yazılımın serbestçe dağıtımına ve modifikasyonuna izin veren bir lisans türüdür. Kullanıcılar mevcut yazılımın copyright, marka, patent ibarelerini değiştiremez. Apache 2.0 lisansı yazılım geliştiricisinin haklarını koruyan daha açık yönergelere sahip.

Gpl v3 

Açık kaynak yazılımının dağıtımı ve modifikasyonuyla ilgili bahsetmiş olduğum lisans türlerine göre daha fazla kısıtlama getirmektedir. Kişiler yazılımı kendi yazılımı gibi satamazlar. Kendi yazılımı içerisinden o yazılımı kullanan kişi kendi yazılımını da gpl v3 lisansıyla dağıtmalıdır. Dolayısıyla kaynak kodunu paylaşmalıdır.

Gpl v3 orjinal yazılımı geliştiren kişinin haklarını koruyan bir yapıya sahip. Kaynak kodun modifiye edilmesini önler. Kodun, telif hakları konusunda çalışan uluslararası kurumların direktiflerine uygun olmasını şart koşar. Üçüncüsüde büyük şirketlerin yazılımın patent haklarını çiğneyip fahiş karlar elde etmesini engeller.

Yazılım Geliştirmeyi kendi kendine öğrenmek istiyorsan, onbirkod üzerinde bulunan kapsamlı rehbere göz atabilirsin.

Yorum Gönder

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Scroll to Top