Python kullanarak hesaplama planlaması ve programlamasını vurgulanır. Algoritmik düşünme ve yapılandırılmış programlama konusunda sağlam bir temel kazanma ve basit, yaygın hesaplama işlemlerini kolay ve verimli bir şekilde yapma yetileri kazandırır. Veri depolama, veri girişi ve çıktısı, kontrol yapıları, fonksiyonlar, diziler ve listeler, dosyalama, grafikler ve nesnelerin temelleri incelenir.
Python kullanarak hesaplama planlaması ve programlamasını vurgulanır. Algoritmik düşünme ve yapılandırılmış programlama konusunda sağlam bir temel kazanma ve basit, yaygın hesaplama işlemlerini kolay ve verimli bir şekilde yapma yetileri kazandırır. Veri depolama, veri girişi ve çıktısı, kontrol yapıları, fonksiyonlar, diziler ve listeler, dosyalama, grafikler ve nesnelerin temelleri incelenir.
Python kullanarak hesaplama planlaması ve programlamasını vurgulanır. Algoritmik düşünme ve yapılandırılmış programlama konusunda sağlam bir temel kazanma ve basit, yaygın hesaplama işlemlerini kolay ve verimli bir şekilde yapma yetileri kazandırır. Veri depolama, veri girişi ve çıktısı, kontrol yapıları, fonksiyonlar, diziler ve listeler, dosyalama, grafikler ve nesnelerin temelleri incelenir.
Java dili kullanarak nesne yönelimli programlama. Veri türleri, ifadeler, denetim deyimleri, dizeler, diziler. Sınıflar, nesneler, yöntemler, aşırı yükleme, değişken kapsamı, bellek. Özyineleme. Kalıtım, çok biçimlilik, soyut sınıflar, arayüzler, gömülü sınıflar, isimsiz sınıflar. Kural dışı durum işleme. Dizeler ve düzenli ifadeler. Dosya G/Ç. Üreysel koleksiyonlar. Üreysel sınıflar ve yöntemler. Lambdalar ve akışlar. Olay güdümlü programlama. Çoklu kullanım.
Java dili kullanarak nesne yönelimli programlama. Veri türleri, ifadeler, denetim deyimleri, dizeler, diziler. Sınıflar, nesneler, yöntemler, aşırı yükleme, değişken kapsamı, bellek. Özyineleme. Kalıtım, çok biçimlilik, soyut sınıflar, arayüzler, gömülü sınıflar, isimsiz sınıflar. Kural dışı durum işleme. Dizeler ve düzenli ifadeler. Dosya G/Ç. Üreysel koleksiyonlar. Üreysel sınıflar ve yöntemler. Lambdalar ve akışlar. Olay güdümlü programlama. Çoklu kullanım.
Dersin amacı nitelikli mühendislik öğrencilerine lisans eğitimlerinin bir parçası olarak kendilerinin eğitim vereceği bir deneyim kazandırmaktır. Dersin öğrencileri COMP130 Programlamaya Giriş dersinin “section”larında öğretmenlik yapmaktadırlar. Öğrenciler Java programlama dili kullanarak; fonksiyonel ayrıştırma, kontrol komutları, metotlar, özyineleme, dizgiler, dizilimler, soyut veri tipleri, kural dışı durumlar ve görsel kullanıcı ara yüzleri gibi modern programlamanın temel konularını öğretirler.
Dersin amacı nitelikli mühendislik öğrencilerine lisans eğitimlerinin bir parçası olarak kendilerinin eğitim vereceği bir deneyim kazandırmaktır. Dersin öğrencileri COMP130 Programlamaya Giriş dersinin “section”larında öğretmenlik yapmaktadırlar. Öğrenciler Java programlama dili kullanarak; fonksiyonel ayrıştırma, kontrol komutları, metotlar, özyineleme, dizgiler, dizilimler, soyut veri tipleri, kural dışı durumlar ve görsel kullanıcı ara yüzleri gibi modern programlamanın temel konularını öğretirler.
Dersin amacı nitelikli mühendislik öğrencilerine lisans eğitimlerinin bir parçası olarak kendilerinin eğitim vereceği bir deneyim kazandırmaktır. Dersin öğrencileri COMP130 Programlamaya Giriş dersinin “section”larında öğretmenlik yapmaktadırlar. Öğrenciler Java programlama dili kullanarak; fonksiyonel ayrıştırma, kontrol komutları, metotlar, özyineleme, dizgiler, dizilimler, soyut veri tipleri, kural dışı durumlar ve görsel kullanıcı ara yüzleri gibi modern programlamanın temel konularını öğretirler.
Dersin amacı nitelikli mühendislik öğrencilerine lisans eğitimlerinin bir parçası olarak kendilerinin eğitim vereceği bir deneyim kazandırmaktır. Dersin öğrencileri COMP130 Programlamaya Giriş dersinin “section”larında öğretmenlik yapmaktadırlar. Öğrenciler Java programlama dili kullanarak; fonksiyonel ayrıştırma, kontrol komutları, metotlar, özyineleme, dizgiler, dizilimler, soyut veri tipleri, kural dışı durumlar ve görsel kullanıcı ara yüzleri gibi modern programlamanın temel konularını öğretirler.
Dersin amacı nitelikli mühendislik öğrencilerine lisans eğitimlerinin bir parçası olarak kendilerinin eğitim vereceği bir deneyim kazandırmaktır. Dersin öğrencileri COMP130 Programlamaya Giriş dersinin “section”larında öğretmenlik yapmaktadırlar. Öğrenciler Java programlama dili kullanarak; fonksiyonel ayrıştırma, kontrol komutları, metotlar, özyineleme, dizgiler, dizilimler, soyut veri tipleri, kural dışı durumlar ve görsel kullanıcı ara yüzleri gibi modern programlamanın temel konularını öğretirler.
Dersin amacı nitelikli mühendislik öğrencilerine lisans eğitimlerinin bir parçası olarak kendilerinin eğitim vereceği bir deneyim kazandırmaktır. Dersin öğrencileri COMP130 Programlamaya Giriş dersinin “section”larında öğretmenlik yapmaktadırlar. Öğrenciler Java programlama dili kullanarak; fonksiyonel ayrıştırma, kontrol komutları, metotlar, özyineleme, dizgiler, dizilimler, soyut veri tipleri, kural dışı durumlar ve görsel kullanıcı ara yüzleri gibi modern programlamanın temel konularını öğretirler.
Dersin amacı nitelikli mühendislik öğrencilerine lisans eğitimlerinin bir parçası olarak kendilerinin eğitim vereceği bir deneyim kazandırmaktır. Dersin öğrencileri COMP130 Programlamaya Giriş dersinin “section”larında öğretmenlik yapmaktadırlar. Öğrenciler Java programlama dili kullanarak; fonksiyonel ayrıştırma, kontrol komutları, metotlar, özyineleme, dizgiler, dizilimler, soyut veri tipleri, kural dışı durumlar ve görsel kullanıcı ara yüzleri gibi modern programlamanın temel konularını öğretirler.
Bu ders, C'yi kullanarak bilgisayar sistemlerinde ve makine programlarında kullanılan ilkelerin ve sağlam bir şekilde anlaşılmasını sağlar. Bu amaca yönelik olarak, öğrencilere C dilinin temel konuları ve programların mikroişlemci düzeyinde nasıl oluşturulduğu ve yürütüldüğü hakkında derinlemesine bir bakış açısı ve programlama deneyimi sağlayan çok çeşitli konuları kapsar. Ele alınan konular: Bit işlemleri. Tamsayı gösterimleri, Tam sayı aritmetiği. Kayan nokta. Dizgiler, İşaretçiler ve Diziler. Fonksiyonlar, Yığıt ve Yığın. Yapılar. Programların makine düzeyinde gösterimleri., Bellek sıradüzeni, önbellekler, diskler ve yerel özellik. Kod eniyileme, ayıklama ve profilleme. Dinamik Bellek Atama. Statik bağlama. Nesne dosyaları, simgeler ve simge tabloları. Ortak kütüphaneler ile dinamik bağlama.
Basit veri yapıları, algoritmalar ve onların karmaşıklık incelemesi. Liste, yığın, kuyruk, öncelikli kuyruk, harita, ağaç, dengeli ağaç, anahtarlı tablo, bellek yığını, atlamalı liste, önekli ağaç. Basit arama, seçme, sıramala ve çizge algoritmaları. Özyineleme.
Programlama dilleri kavramları. Fonksiyonel programlama, soyut temsil, kapsülleme, tip sistemleri, değişken değeri, parametre geçirme, veri saklama, çalışma-zamanı depolama, bellek, yığıt, yığın, yorumlayıcılar. Yorumlayıcı gerçekleme. Veri temsilleri, kümeler, sözdizimi, anlam, davranış tanımlama ve gerçekleme.
Yazılım geliştirmede kullanılan metodların ve araçların gözden geçirilmesi. Nesneye yönelik tasarım ve açık yazılım mimarileri. Gereksinim analizi, tasarım, gerçekleştirim, sınama, bakım ve yönetim. Mühendislik uygulamaları.
İşletim sistemleri kavramlarına giriş, süreç yönetimi, bellek yönetimi, görüntü bellek, giriş-çıkış ve aygıt yönetimi, dosya sistemleri, iş planlama, iş parçacığı, süreç senkronizasyonu, kilitlenme, kesinti yapıları, işletim sistemleri örnekleri.
İleri algoritma konuları ve ilgili hesaplama karmaşıklıkları. Amortize edilmiş karmaşıklık analizi. Rasgele algoritmalar. Fırsatçı algoritmalar. Eniyileme algoritmaları. Dinamik programlama. Doğrusal programlama. giriş. NP-completeness kavramına giriş. İleri çizge algoritmaları. Turing makineleri ve hesaplama modelleri NP-complete indirgeme.
Veritabanı ve veritabanı yönetim sistemlerinin kavramsal ve pratik yönleri. Öğeler ve öğeler arası ilişkilerin modellenmesi, ilişkisel model, ilişkisel cebir, Yapılandırılmış Sorgu Dili (SQL), normal formlar ve normalleştirme, işlem yönetimi, çizelgeleme ve serileştirilebilme, koşut zamanlılığın denetimi ve kilitleme, dizinleme, veritabanlarında güncel eğilimler ve NoSQL.
Dersin açıldığı dönemde içeriği açıklanacaktır.
Üç boyutlu bilgisayar grafiği kuramı ve uygulamaları. Grafik sistemleri ve modelleri; geometrik gösterimler ve dönüşümler; grafik programlama; girdi ve etkileşim; bakma ve izdüşüm; bileştirme ve karıştırma; ışıklandırma ve renk modelleri; tonlama; doku yapıştırma; canlandırma; görsel gerçekleme; sıradüzensel ve nesne yönelimli modelleme; sahne çizgeleri; 3B geriçatım ve modelleme.
Otonom sürüş için bilgisayarla görme alanında ana problemler, yaklaşımlar, veri kümelerini değerlendirme ölçütleri, derinlik / hareket tahmini, yerelleştirme, haritalama, boş alan tahmini, nesne algılama / izleme, semantik / örnek bölümleme ve uçtan uca sürüş öğrenimi.
Hesaplamalı görüntülemedeki temel kavramlar ve son gelişmeler: imge oluşumu, pozlandırma ve yüksek dinamik aralıklı görüntüleme, gürültü ve renkli imge süzgeçleme, gradyan alanında imge işleme, odak istifleri ve odak(sızlık)tan derinlik, ışık alanları, ters evrişim, kodlanmış görüntüleme, evrişimsel sinir ağları and görme transformatörleri, derin üretici modeller ve uygulamaları.
Bilgisayar güvenliği teknikleri, geleneksel şifreleme, açık anahtarlı şifreleme sistemi, anahtar yönetimi, ileti doğrulama, kıyım fonksiyonu ve algoritmaları, sayısal imza, doğrulama protokolleri, erişim denetim mekanizmaları, ağ güvenlik pratiği, TCP/IP güvenliği, Web güvenliği, SSL, hizmeti-engelleme saldırıları, izinsiz giriş sezme, virüsler.