Xcode ile Nasıl Memory Leaks Tespit Edilir?

Merhaba arkadaşlar, bu yazımızda Xcode ile projemizde varolan Memory Leaks nasıl tespit edilir bundan bahsedeceğiz. Memory Leaks nedir, nasıl oluşur gibi soruların cevaplarına buradan ulaşabilirsiniz. Yapacağımız örnek senaryoda apartman ve kiracıları ekleyip, listeleyebilen ve silebilen bir uygulama olacak. Uygulamanın 3 ekranı olacak. Bunlar Splash, Kiracı ekleme ve listeleme ekranları olacaktır. Uygulamanın çalışması aşağıdaki gibidir. Apartman […]

Strong – Unowned – Weak Tipleri

Merhaba arkadaşlar, bu yazımızda Swift Memory Management için en çok kullanılına yapılardan bahsedeceğiz. Daha öncesinde ARC’nin nasıl çalıştığından bahsetmiştim. O yazıya buradan ulaşabilirsiniz. Swift programlama dilinde değişken oluştururken 3 farklı tipte değişken oluşturabilirsiniz. Bunlar; Strong, Weak ve Unowned. Strong Bir değişken oluşturduğunuzda varsayılan olarak değişkenin tipi Strong olur. Strong tipli bir değişken Swift’in ARC yapısında […]

Swift ile UIMenu nasıl kullanılır?

Merhaba arkadaşlar, bu yazımızda Swift ile nasıl UIMenu kullanılır bundan bahsedeceğiz. UIMenu hakkında daha fazla detay almak için buradan Apple’ın dökümanına erişebilirsiniz. Bazı ekranlarda özellikle detay ekranlarında birden fazla fonksiyon olabilir ve bunları bir yerde toplamak gerekebilir. Örnek vermek gerekirse bu ekranda paylaşma, şikayet etme, paylaşma, silme, düzenleme gibi butonlar olabilir. UX açısından bu butonları […]

Swift Singleton

Merhaba arkadaşlar, bu yazımızda Singleton nedir ve Swift ile nasıl kullanılır bundan bahsedeceğiz.  Genel olarak statik değişkenler ve fonksiyonlardan kaçınmak için kullanılan bu pattern çok yaygın bir şekilde kullanılır. Geliştirmiş olduğunuz bir Util, Manager veya bir modelde Singleton ile kolayca ulaşabilir ve geliştirmiş olduğumuz yapıyı kullanabiliriz.  Bu yazı için yapacağımız örnekte bir Authentication Util oluşturacağız. Bu Util […]

Github Large File Storage

Merhaba arkadaşlar, bu yazımızda oluşturduğumuz projeleri Github’a atarken yaşanan bir sorunun çözümünden bahsedeceğiz. Geliştirdiğimiz projelerde bazen boyutu yüksek olan dosyaları da kaynak koduna eklemek ve bunu Github’a atmak gerekiyor. atmadığımız durumlarda diğer takım arkadaşlarımız hata alabilir veya CI/CD kullandığımız durumlarda build alamayabilir. Bu da bir sürü sıkıntı çıkartabilir. Kendi senaryom üzerinden gidecek olursam, eklediğim RealmSwift podunda […]

Swift Generic Service

Merhaba arkadaşlar, bu yazımızda Swift ile nasıl generic bir servis oluşturulur bundan bahsedeceğiz. Generic bir servis yapısıyla beraber ileride ekstra bir şey değiştirdiğimizde kolayca değiştirebilir ve yönetebiliriz. Daha az kod ile servis isteklerinde bulunabiliriz. Apple’ın servislerinden müzik, film, uygulama ve kitapları listelediğimiz uygulamada her istek için farklı bir fonksiyon yazmıştık. Az servis isteği atılan uygulamalarda […]

Swift Dispatch Group Nedir?

Merhaba arkadaşlar, bu yazımızda Swift’de Dispatch Group nedir bundan bahsedeceğiz. Dispatch Group, uygulamanızda birden çok işi asenkron bir şekilde yapmanıza olanak sağlar. Örnek olarak Github repomdaki library projesi üzerinden gideceğim. Projeye buradan ulaşabilirsiniz. Projenin genel çalışması aşağıdaki gibidir. Apple’ın servislerine giderek kullanıcının girmiş olduğu kelimeyi gruplara ayırarak aratıyor. Film, müzik, uygulama ve kitap olarak farklı bölümler var. Kullanıcı nerede […]

Swift ile Realm Nasıl Kullanılır?

Merhaba arkadaşlar, bu yazımızda Realm nedir ve nasıl kullanılır bundan bahsedeceğiz. iOS ile mobile uygulama geliştirirken çoğu zaman kullanıcının cihazında bazı verileri saklamamız gerekebilir. Bu bazı zamanlarda çok basit veriler olurken bazı zamanlarda ise veritabanı kurmaya kadar gidebiliyor. Böyle zamanlarda Core Data, SQLite veya Realm kullanabilirsiniz. Realm hakkında daha fazla detay almak istiyorsanız buradan ulaşabilirsiniz. […]

ARKit ile Zemin Algılama

Merhaba arkadaşlar, bu yazımızda ARKit ile nasıl zemini algılarız ve zemini algıladığımızda nasıl model ekleriz bundan bahsedeceğiz. Bildiğiniz gibi ARKit bir çok farklı şekilde ve bir çok farklı amaçta kullanılıyor. Bu amaçlardan biri de kullanıcının bulunduğu, yürüdüğü zemini tespit etmek. Bunun için Swift ARKit ile kolayca tespit edebilir ve burada bir alan ekleyebiliriz. Daha önceki […]

Dependency Injection

Merhaba arkadaşlar, bu yazımızda Dependency Injection nedir bundan bahsedeceğiz. Solid prensiblerinin son prensibi olan Dependency Inversion‘dan gelir. Bu prensip, oluşturduğumuz sınıflar arasındaki bağlılığın olabildiğinde az olmasını önemser. Üst sınıf ve alt sınıflar birbirinden bağımsız olmalıdırlar. Bu yüzden günümüz teknolojilerinde Dependency Injection çok önemli bir noktaya gelmiştir. Bu yazımızda Swift ile geliştirdiğimiz projelerde nasıl kullanırız bundan bahsedeceğiz. Yapacağımız örnekte bir köpek sınıfı […]