Women Techmakers 2016 Zirvesi


Bugün Women Techmakers konferansı Istanbul'da 3.kez Bahçeşehir Üniversitesi Beşiktaş kampüsünde gerçekleşti. Hem ilk defa WTM İstanbul'da konuşmacı olarak yer aldığım hem de bu sefer WTM'de organizasyonda görev aldığım için ise benim için çok daha anlamlı ve özel bir etkinlikti. Komünitinin bir parçası olmak, daha fazla insana dokunmak, seninle aynı şekilde hisseden, düşünen insanlarla beraber olabilmek çok... Continue Reading →

Android Performance: Lint


Performansla ilgili en büyük sorun, uygulamayı kullanıcıya açıp, kullanmaya başladıktan sonra alınan feedback'lerle fark edilmesidir. Lint, static bir code analiz tool'u olarak, olası problemler hakkında bilgi sahibi olmamızı sağlar. Kodumuzu check edip, correctness, usability, security, accessibility, performance ve internationalization hakkında bilgi verir.   Mesela, onDraw içerisinde obje allocate edersek, ki bu memory churn olmuş olur, satır... Continue Reading →

Android Performance: Optimizing Network Request Frequencies


Uygulamanın sosyal medya haberlerini, hava raporlarını, social feedbackleri verebilmesi için, up to date kalması gereklidir. Ancak çok sık sync olmak da performans için en kötü fikirlerden biridir. Peki o zaman nasıl handle edilmeli? Oversync bataryayı öldürür. Batarya sadece çipi başlatmak için değil sınrasında 2060 sn ek olarak awake tutmak için de tüketilir. Çok fazla sync... Continue Reading →

Application Performance: Caching For Networking


Bir diğer konu da datayı nasıl alacağımız. Her seferinde servera gidilmeli mi, cachelenmeli mi? Eğer cache'lenmeliyse nasıl cachelenmeli? Datayı cache'den okumak her seferinde servis çağırmaktan tabi ki daha performanslıdır. Eğer sürekli kullanılacak bir dataysa bu datayı cihaza cachelemek çok daha hızlı okunmasını sağlayabilir. Network'den bir dosya çektiğimizi ve bunu sonrasında da kullandığımızı düşünürsek cachelemek çok... Continue Reading →

Application Performance: Adapting to Latency


En önemli performans konularından biri de uygulamamızın kötü bir network connection'dan iyi olana geçerken ya da tam tersi durumda nasıl davranacağıdır. Request; cihazımından local bir baz istasyonuna ulaşmak için yapılır ki o da service provider'ın serverına route eder. Sonrasında o da bu provider için local bir data proxy'ye gidebilir. İnternete gitmeden ve ana data serverına... Continue Reading →

Hierarchy Viewer : How to gain insight!


Android Uygulama Performasını anlatmaya başladığımda linkteki yazımda kullanılabilecek toolları ve nasıl kullanabileceğimizi anlatmıştım. Biraz daha derine inip, elde ettiğimiz veriyi nasıl kullanacağımızı anlatmanın zamanı geldi. Github'da sample bir proje hazırladım. İndirip hatalı ve doğru olan kodları inceleyebilirsiniz. Mesela aşağıdaki gibi bir ekran yaratmak istediğimizi düşünelim. Bu kadar basit bir arayüzde önemli olan recylerview'in row'larında kullandığımız... Continue Reading →

Android: Nasıl Dinamik ve Unique Id Generate Ederiz?


Başınıza gelmemesi neredeyse imkansız bir sorun için birkaç küçük not! Herşeyin xml'lerde olduğu bir dünya kesinlikle daha kolay olurdu. View'ler sayfaya daha hızlı yüklenirdi, tüm attribute'ler xml'den verilirdi. Ama bazen view'lerimizi koşullara bağlı olarak dinamik olarak oluşturmamız gerekir. Peki bu durumda ayırt edici olmasını sağlayan id'lerimizi unique olarak nasıl generate ederiz? Bir yol tag kullanmak... Continue Reading →

Optimizing Apps for Better Performance – DevFest15


DevFest İstanbul 2015'te yaptığım sunumun slaytları: GDG Team'e Teşekkürler 😉

Android Uygulama Performansı – Step 4: Battery


Uygulama performansı serisine Battery'yle devam ediyorum. Battery aslında bu seride anlatacağım son adım. Çünkü bu serinin genel olarak kapsamı android performans iyileştirmesi hakkında ve performans analizi yapabileceğimiz tool'lar hakkında genel bir bilgi sahibi olmak olarak başlanmıştı. Mobil cihazınızın donanımı, görevleri çalıştırırken ya da kedinizin fotoğraflarını yüklerken, bu işleri gerçekleştirebilmek için bataryadan enerji çeker. Tabi buna bağlı olarak da... Continue Reading →

Android Uygulama Performansı – Step 3: Memory


Seriye Memory'le devam ediyorum. Rendering ve Compute yazılarına ilgili linklerden erişebilirsiniz. Hardware'e yakın olarak bilinen programlama dillerinde, C, C++, Fortran gibi, genellikle yazılımcılar bellek yönetimini kendileri yaparlar. Allocating memory ve iş tamamlandığında de-allocating tamamen yazılımcılara aittir. Böyle bir durumda, tüm bellek yönetimi size kalmış olduğu için ne kadar doğru kullanıldığı da aslında tamamen yazılımcının bilgisi... Continue Reading →

Blog at WordPress.com.

Up ↑