Introduction to Kotlin Coroutines


Geliştirme yaptığımız platform hangisi olursa olsun ister backend, desktop, mobile applications etc her zaman istediğimiz aslında istediğimiz şey hep kullanıcımıza kesintisiz bir akış sunmak, uygulamamızı düzgün scale etmek. Bunu birçok farklı dilde farklı şekillerde yapabiliriz. Kotlin’in bize sunduğu çözüm ise Coroutine’ler.

Continue reading

Android Slices


https://developer.android.com/guide/slices

Slices, Google search app’inde ve umarız ki ileride de daha fazla yerde uygulamadan içerik sunan ui templateleridir. UI templateleridir diyoruz çünkü belli formatda, belli templateler kullanılarak sunulabiliyor. Basitçe widget’lara benzer de denilebilir. Şimdi App Action‘ların da developerlara açılmasıyla beraber daha fazla senaryo sağlanabilir. Slices Android 4.4’e kadar uyumlu. Bu da Android Studio’da uygulamayı create ederken görebileceğimiz gibi piyasadaki cihazların ortalama %95’i anlamına geliyor. Slices live-data, scroll edebilen içerik, inline actions, ve uygulamamıza deep link sağlamış oluyor.

Continue reading

Google I/O 2019 for Android Developers


*You can read the article in English from here.

Daha çok son kullanıcıyı ilgilendiren Google I/O güncellemeleriyle ilgili paylaştığım yazıya linkten erişebilirsiniz. Bu yazıda yazılımcılara ilgilendiren başlıkları paylaşacağım.

2 yıl önce Google I/O’da Kotlin‘in artık 2. dil olarak destekleneceğinin açıklanmasının ardından Kotlin’den zaman geçtikçe daha da çok söz edilir oldu. Konferanslarda daha çok Kotlin spesifik konuşmalar görmeye, blog yazılarındaki kod örnekleri, internetde herhangi bir şeyi nasıl yapacağımızı aratırken önümüze ilk çıkan örneklerin Kotlin olması, Google’ın developer.android’deki örneklerinde ilk tabda Kotlin’in çıkması, Kotlin codelab’lerin sayısının artması, Udacity’deki free kurslar ve Kotlin için ayrı bir expert’lik kategorisinin olması gibi örnekleri rahatça sayabiliriz sanırım. Tüm bunları düşününce de bu sene Developer Keynote‘da ise artık Android’in yeni çıkacak Jetpack API’larında tanıtılacak ilk dil olacağının ve Android’in Kotlin – First ilerleyecek olmasının açıklanması en azından beni şaşırtmadı. Tabi şaşırtmamasının ardında açıklanması da bir bakıma iyi oldu. Hem bireysel olarak ilerleme-gelişim noktasında nereye daha fazla yönleneceğimizi görebilmemiz hem de her konferansta en az bir kere sorulan şirketimi Kotlin yazmaya nasıl ikna edebilirim soruları kesin bir şekilde cevap almış oldu. Bir de sanırım şunu söylemekte fayda var ki Kotlin aslında artık böyle olacak açıklaması yapılmadan önce de yazılıcıların sempatisini basitliği, boilerplate kodu kısaltması, kolay öğrenebilirliği, hızlı gelişimi, Java’yla %100 uyumu gibi özellikleriyle çoktan kazanmıştı.

Continue reading

Google I/O 2019


*Makaleyi Türkçe olarak okuyabilmek için linke tıklayabilirsiniz.

I had the opportunity to participate Google I / O for the 4th time this year and if I’m not wrong, it was the 12th I/O conference. It is a developer festival, which is organized by Google once a year in May, sharing new updates for developers. This year’s I/O was held on 7-8-9 May at the Shoreline Amphitheater as usual. The area is about 2 hours away by train from SF. Both SF and also San Jose airport can be used to land. Mountain View, SunnyVale cities will be easy for transportation to stay during the conference.

Let’s go to the announcements of this year’s. The conference starts with keynote, followed by the Developer keynote and What’s new in Android session as well as parallel sessions in specific areas. If a person like me is more interested in the Android part, then the first 3 sessions will actually tell you the summary of the entire conference, which sessions you want to enter. Keynote is more soft and slightly more user-centric updates. But of course it’s important for developers, too because we can see in which direction we should go and what we should use while developing. Nevertheless, I would like to state that this article contains more announcements that are of interest to the end user and I will write a more technical second article.

Continue reading

Google I/O 2019


*To be able to read the post in English, please click the link.

Bu yıl 4.’ye katılma fırsatı bulduğum ve karıştırmıyorsam 12. kere düzenlenen Google I/O; Google tarafından yılda bi kere Mayıs ayında düzenlenen, yazılımcılar için yeni updateleri paylaştıkları bir Developer festivalidir. Bu sene 7-8-9 Mayıs tarihlerinde Shoreline Amfi Tiyatrosu‘nda gerçekleşti. Bölge trenle SF’e yaklaşık 2 saat mesafededir. Havaalanı olarak SF’e de San Jose’ye de inen uçaklarla gidilebilir. Konferans süresince Mountain View, SunnyVale şehirlerinde kalmak ulaşım için kolay olacaktır.

Gelelim bu seneki konferansın duyurularına. Konferans keynote’la başlıyor, ardından Developer keynote ve What’s new in Android session’ı ve de spesifik alanlardaki paralel oturumlarla devam ediyor. Benim gibi daha çok Android kısmıyla ilgilenen bir kişiyse bu ilk 3 oturum aslında tüm konferansın özetini, hangi konuşmalara girmek istediğinizi aktarıyor olacak. Keynote diğer tüm oturumlara göre daha soft ve biraz da kullanıcı açısından değerli olan özelliklerin tanıtıldığı kısım. Ama tabi biz developerlar için de önemli, çünkü geliştirme yaparken hangi yöne gideceğimizi, neleri kullanmamız gerektiğiniz görmüş oluyoruz. Yine de bu yazının daha çok son kullanıcıyı ilgilendiren duyuruları içerdiğini ve daha teknik bir ikinci yazı yazacağımı belirtmek isterim.

Continue reading

Kotlin Cheat-Sheet


Sonunda benim de Kotlin üzerine konuşmamın zamanı geldi 🙂 Kotlin son birkaç yıldır inanılmaz popüler olmuş durumda, benim içinse yazılan kodları okumaktan aktif olarak kotlin yazmaya geçişim biraz daha yeni. Bu yüzden üzerine bir de konuşma hazırladım. Slaytlara linkten erişebilirsiniz.
Şimdi eğer hala Java ve Kotlin arasında seçim noktasındaysanız ki olabilir çünkü Java çok eski bir dil. Genelde herkesin en iyi bildiği dil 😀 Kotlin’e geçmeli mi yoksa bildiğimiz gibi devam mı etmeli. Tabi burada farklı stratejilerle ilerlenebilir. Tamamen Kotlin’e geçme, Java ve Kotlin’i beraber destekleme ya da hiç geçmeme gibi 😀
Aslında Kotlin’in official dil olarak kabul edilmesinin sebebi popüler olması değil, komunitenin Kotlin’in avantajlarından dolayı Kotlin’e geçmesi sonucuydu. Hepsinin değil ama en çok kullanılan özelliklerin yazıda üzerinden geçeceğim. Umarım güzel bir cheat-sheet olmuş olur herkes için. Continue reading

Android Fundamentals Codelabs Part – 2


Hi all,

You can reach the Turkish version of this post from here and the first post from here.

After reviewing codelabs, maybe the first post was meaningful but for the following posts, I think only the code samples will be enough. If you noticed my blog post while preparing to codelabs and have questions, please do not hesitate to ask. The the projects below include samples for Unit 1.

Projects:

Android fundamentals 01.2 Part A: Your first interactive UI

Android fundamentals 01.2 Part B: The layout editor

Continue reading

Android Fundamentals Codelabs Part – 2


Selam,

İlk codelab’le ilgili yazıya buradan ( Android fundamentals 01.1: Android Studio and Hello World ) erişebilirsiniz. Devam edelim.

Codelab’leri biraz inceledikten sonra belki bir giriş yazısı anlamlıydı ama devamı için şimdilik sadece kod örneklerinin Kotlin versiyonunun yeterli olacağı kanısındayım. Codelableri yaparken yazıma denk geldiyseniz ve sorunuz varsa, bloga yorum olarak gönderebilirsiniz. Aşağıdaki projeler Unit 1 için örnekleri içermektedir.

İyi çalışmalar.

Projeler:

Android fundamentals 01.2 Part A: Your first interactive UI

Continue reading

Android Fundamentals Codelabs Part – 1


Google’ın Codelab’lerini incelerken farkettim ki yeni codelabler eklenmiş ancak bunlar standart olarak https://codelabs.developers.google.com/ sayfasında yer almıyor ve de çok yeni tarihliler. Google’ın sertifikalarından herkes haberdardır sanırım. Bu yeni codelabler, Associate Android Developer sertifika sınavının hazırlık codelableriymiş ve zannedersem son yıllarda Android Development’ın neredeyse tamamen değişmesiyle beraber burası da yenilenmiş. Ben de hem kendim için bilgi tazeleme hem de codelab’ler üzerinden sınava hazırlanacak olan varsa codelab dışında da takıldığı bi yer olursa referans olması açısıyla bu seriyi yazmaya karar verdim. Elimden geldiğince düzenli aralıklarla devamını yazmaya çalışacağım. Codelab’ler dışında da linkinde ilgili her bir alt başlık için slide’lar ve de şurada da daha detaylı açıklamalar yer alıyor. Her ikisini de incelemenizi tavsiye ederim. Continue reading

What’s new in Android @IO’18: Android App Bundle


Merhaba,

IO sonrası bir dizi detaylı teknik yazılar yazacağımı söylemiştim. Geçen hafta IO’da tanıtılan Instant App’lerdeki farklıkları ve yenilikleri içeren bir yazı yazmıştım. Şimdi sıra App Bundle‘da. Bu yazı developer.android, Google Developers kanalındaki videolar ve codelablerin birleştirilmesiyle oluşturulmuş özet bir yazıdır. Daha detaylı bilgi için orjinal kaynakları inceleyebilirsiniz. App Bundle’ı detaylarda kaybolmadan bir kere daha özetlersek, uygulamanın abi, resource bazlı farklı olarak publishing formatın çeşitlenmesi, sadece ilgili kısmın download edilip download size’ın düşmesi diyebiliriz. App Bundle, bir publish format. App Bundle kullanımı sonucu IO’da söylendiğine göre %30 oranında size’da azalma olan app’ler olmuş. Temel faydası ise farklı cihazları desteklemek için bizim değil Google Play’in görevi üstlenmesi ve optimized apk’lar üretilmesi. Yine cihaza inen, apk olmuş olacak.

Bir diğer önemli nokta da App Bundle’dan Google Play’in uygulama üretmesini sağlayan teknoloji open source. Yani App Bundle’ımız ileride başka store’lar tarafından da uygulama üretmek için kullanılabilir.

Bundles tüm cihazlar için çalışmakla beraber Lolipop ve sonrası cihazlarda optimizasyon daha fazlayken, Lolipop öncesinde multi-apk style apk’i yine Google Play tarafından generate edilerek alabilecekmiş.

Continue reading