Computer Fundamentals and Introduction to Programming

Undergraduate, Giresun University, Electrical Electronics Engineering, 2026

computer and programming Modern computing encompasses a vast ecosystem of interconnected technologies and tools that have become integral to our daily lives. Computers are sophisticated electronic devices managed by operating systems, which serve as the interface between hardware and software. The Internet has transformed these individual machines into a global network, enabling instantaneous communication and access to unlimited information and services. In our professional lives, we regularly interact with office programs such as word processors, spreadsheets, and presentation software, which have digitized and streamlined workplace tasks. Behind all these tools lies the art of programming - the fundamental skill of creating software by writing instructions in various programming languages.


Başlangıç Kaynakları


Kısım I: Bilgisayar ve Bilgi Teknolojileri

Bölüm 1: Bilgisayar Temelleri ve Hesaplamalı Düşünme

Bilgisayar, veriyi kesin talimatlarla işleyerek problem çözen bir makinedir. Bölüm beş sunumdan oluşur. Temel Kavramlar verinin bitlerle nasıl temsil edildiğini ve bilgisayarın temel çalışma döngüsünü anlatır. Donanım işlemci, bellek hiyerarşisi, depolama, giriş ve çıkış birimlerini tanıtır. Bilgisayarlar ikiye tümleyen, kayan noktalı sayılar, karakter kodlamaları, mantık kapıları ve getir–çöz–yürüt döngüsüyle bilgisayar mimarisini ele alır. İnternet sunumu IP adresi, DNS, HTTP/HTTPS ve güvenli kullanımı; Hesaplama sunumu ise hesaplama kavramını, Turing makinesini ve hesaplamalı düşünmeyi anlatır.


Bölüm 2: İşletim Sistemleri

İşletim sistemi donanım kaynaklarını yönetir ve uygulamalara hizmet sunar. İlk sunum yazılım türleri ve lisans modelleriyle başlar; önyükleme, çekirdek ve sistem çağrıları, süreç ve iş parçacığı, zaman paylaşımı, bellek yönetimi ve sanal bellek, dosya sistemleri, aygıt sürücüleri ve kullanıcı yetkilerini ele alır. İkinci sunum Windows üzerinde masaüstü, pencere ve dosya yönetimini, mutlak ve göreli dosya yollarını, ayarları, güvenliği ve sistem bakımını uygulamalı olarak gösterir.


Bölüm 3: Ofis Uygulamaları

Ofis uygulamaları belge hazırlamayı, veri çözümlemeyi ve bilgi sunmayı kolaylaştırır. Word sunumu stilleri, sayfa düzenini, bölüm sonlarını, içindekiler tablosunu, kaynakçayı ve adres mektup birleştirmeyi anlatır. Excel sunumu hücre başvurularını, formül ve işlevleri, sıralama ve filtrelemeyi, özet tabloyu ve grafikleri ele alır. PowerPoint sunumu ise sunu planlamayı, asıl slaytı, görsel tasarımı, geçiş ve animasyonları ve etkili sunum yapmayı gösterir.


Kısım II: Algoritmadan Programa

Bölüm 4: Algoritmalar ve Programlamaya Giriş

Programlama, problem çözme adımlarını bilgisayarın yürütebileceği talimatlara dönüştürmektir. Algoritmalar sunumu problem tanımını, sözde kodu, iyi bir algoritmanın özelliklerini, faktöriyel, Fibonacci ve asal sayı gibi örnekleri, doğrusal ve ikili aramayı, seçimli, kabarcık ve eklemeli sıralamayı izleme tablolarıyla anlatır. Akış Diyagramları sıralı, koşullu ve tekrarlı akışı, sayaç ve biriktiriciyi gösterir. Programlamaya Giriş ise programlama dillerini, derleyici ve yorumlayıcıyı, programlama paradigmalarını, yazılım geliştirme sürecini ve hata ayıklamayı tanıtır.


Bölüm 5: Java’ya Giriş ve İlk Program

Java programı düz metin kaynak kod olarak yazılır, bytecode’a derlenir ve JVM üzerinde çalışır. Bu bölüm geliştirme araçlarını, Java kaynak dosyasının yapısını, ilk programın derlenip çalıştırılmasını, main metodunu, print, println ve kaçış dizilerini, ifade, deyim ve blok kavramlarını, açıklamaları ve derleme, çalışma ve mantık hatalarını ele alır.


Kısım III: Java ile Programlama

Bölüm 6: Değişkenler, Veri Tipleri ve Operatörler

Değişkenler programın kullandığı ve değiştirdiği değerleri saklar. Bölümde Java’nın ilkel veri tipleri, bildirim ve atama, taşma, tip dönüşümü, aritmetik, karşılaştırma ve mantıksal operatörler, işlem önceliği ve kısa devre değerlendirme anlatılır. Scanner ile girdi okuma ve printf ile biçimli çıktı küçük örneklerle gösterilir.


Bölüm 7: Koşullu İfadeler

Koşullu ifadeler programın farklı eylemler arasında seçim yapmasını sağlar. Bölüm boolean koşulları, if, else if ve else yapılarını, iç içe kararları ve sarkan else sorununu, mantıksal operatörleri ve De Morgan kurallarını, koşul operatörünü, String karşılaştırmasını ve switch ifadesini kısa örneklerle anlatır.


Bölüm 8: Döngüler

Döngüler bir kod bloğunu koşul doğru kaldığı sürece ya da belirli sayıda tekrarlar. Bölümde for, while ve do-while döngüleri, break ve continue, sayaç ve biriktirici, sınır hataları ve döngü değişmezi, iç içe döngüler ile basamak sayısı, asal sayı, Fibonacci ve desen yazdırma gibi örnekler yer alır.


Bölüm 9: Metotlar

Metotlar programı yeniden kullanılabilir işlemlere böler. Bölüm metot tanımını ve çağrısını, çağrı yığınını, değer ile parametre aktarımını, dönüş değerlerini, aşırı yüklemeyi, değişken sayıda argümanı, kapsamı ve iyi metot tasarımını küçük metot örnekleriyle anlatır.


Bölüm 10: Diziler

Dizi, aynı tipte sabit sayıda değeri saklar ve her öğeye indisle erişim sağlar. Bölümde dizi oluşturma ve gezinme, toplam, en büyük ve en küçük gibi temel işlemler, dizi kopyalama ve Arrays yardımcıları, arama ve sıralama algoritmalarının Java kodu, iki boyutlu diziler ve matris işlemleri ile sınır dışı erişim hataları ele alınır.


Bölüm 11: Dizgiler

Dizgiler karakter dizilerini temsil eder ve metin işlemede kullanılır. Bölüm String oluşturmayı, değiştirilemezliği, indislemeyi, sık kullanılan String metotlarını, içerik karşılaştırmasını ve Türkçe karakterlerdeki tuzakları, dizgi havuzunu, StringBuilder ile verimli birleştirmeyi ve biçimli çıktıyı uygulamalarla anlatır.


Bölüm 12: Özyineleme

Özyinelemeli bir metot, problemi daha küçük bir girdiyle kendini çağırarak çözer. Bölüm taban durumunu ve özyinelemeli adımı, çağrı yığınının davranışını, özyinelemeli çalışmaların izlenmesini, faktöriyel, EBOB, Hanoi kuleleri ve ikili arama gibi örnekleri, özyineleme ile döngünün karşılaştırılmasını ve belleklemeyi ele alır.