• Yapay zekadan makale özeti

    • Bu video, yazılım geliştirme alanında eğitici içerikler üreten bir YouTube kanalında yayınlanan bir eğitim içeriğidir. Eğitmen, Flutter ile mesajlaşma uygulaması geliştirme sürecini adım adım göstermektedir.
    • Video, mesajlaşma uygulamasına iki ana özellik eklemek üzerine odaklanmaktadır. İlk bölümde, conversation sayfasındaki textfield açıldığında sohbetin aşağı yukarı kayma sorununu çözmek için FocusNode ve ScrollController sınıflarının kullanımı anlatılmaktadır. İkinci bölümde ise filtrelenmiş kişiler arasındaki sohbeti başlatma özelliği için Firebase ile sohbet başlatma işlemi ve Rx Dart kütüphanesi kullanılarak stream'lerin birleştirilmesi gösterilmektedir.
    • Eğitimde ayrıca profil bilgilerinin doğru şekilde gösterilmesi için mapping işlemi, profaz içinde olmayan kullanıcıları da ekleyerek profil bilgilerini dinamik olarak gösterme yöntemi ve sohbet başlatma butonundan gelen bilgileri doğru şekilde ekrana yazdırmak için gerekli kod değişiklikleri de detaylı olarak anlatılmaktadır.
    Mesajlaşma Uygulamasına Filtrelenmiş Kişiler Arasındaki Sohbet Başlatma Özelliği
    • Bu videoda geliştirilen mesajlaşma uygulamasına filtrelenmiş kişiler arasındaki sohbeti başlatma özelliği tamamlanacak.
    • Focus node ve scroll controller nasıl kullanılacağı gösterilecek.
    • Textfield açıldığında sohbetin aşağı yukarı kayma sorunu çözülecek ve textfield alanının dışına tıklandığında klavyenin kapanma işlemi yapılacak.
    00:45Focus Node ve Scroll Controller Kullanımı
    • Focus node class kullanılarak textfield'ın üzerine tıklandığında ve başka bir alana tıklandığında focustan çıktığını takip edebiliriz.
    • Scroll controller, listview kaydırma işlemini kontrol edebileceğimiz bir class olup, listview'in ne kadar kaydırıldığını takip edebilir ve listemizi istediğimiz pozisyona getirebiliriz.
    • Focus node textfield'a, scroll controller ise listview controller'a tanımlanacak.
    03:44Send Butonu ve Listeyi Kaydırma
    • Send butonuna basıldığında scroll controller'ın animate to metodunu çağırarak listeyi kaydırabiliriz.
    • Offset değeri, listenin en sonuna gitmek için max scroll extend değerini alarak dinamik olarak belirlenebilir.
    • Bu şekilde listemiz ne kadar uzarsa uzasın en sonuna kaydırma işlemini yapabiliriz.
    05:35Klavyeyi Kapatma İşlemi
    • Textfield alanının dışına tıklandığında klavyeyi kapatmak için StreamBuilder ve Detector widget'ı kullanılır.
    • Detector on top parametresinin clo'da focus notumuzu an focus olarak işaretlediğimizde herhangi bir alana tıkladığımızda klavyeyi kapatacak.
    06:18Filtre Edilen Kişiler Arasındaki Sohbet Başlatma
    • Contact page'da listeyle widget'ın onta parametresinin clo'da modelde start conversation metodu oluşturulur.
    • Chat serviste start conversation metodu oluşturulur ve user ve profili alır.
    • Fire store referansından conversation collection'a dökümanın ekleme işlemi yapılır ve iki kişi arasında sohbet başlatılır.
    11:55Chat Sayfasında Kullanıcı Bilgilerini Gösterme
    • Listede sadece kendi adımımızın gözükme sorunu çözmek için Rx Dart kütüphanesinin içindeki combine lates iki isimli metodu kullanılır.
    • Bu metot ile iki stream birleştirilip tek bir stream olarak döndürülür.
    • Chat serviste get contact metodunu çağırarak future'dan stream'e çevirme işlemi yapılır ve iki stream birleştirilir.
    14:56Sohbet Uygulamasında Profil Bilgilerini Gösterme
    • Uygulama içinde conversation dokümana mapping işlemi yapılarak iki kere yazma işlemi gerçekleştirildi.
    • İlk aşamada uygulama içinde hiçbir değişiklik olmadan, profazın içinde olmayan kişiyi eklemek için değişiklikler yapıldı.
    • Members içindeki user'lardan bana ait olmayan user'ı çekip from snapshot metoduna göndermek için list of string oluşturuldu.
    16:26Profil Bilgilerini Dinamik Gösterme
    • Profaz first ver metodunda listenin içinde arama işlemi yapılarak, element id eşittir members'ın içindeki aynı şekilde first ver metodunu çağırarak element eşit değil user id şeklinde arama yapıldı.
    • Bulunan user lokal profil isimli değişkene tanımlandı ve from snapshot metoduna gönderildi.
    • Profil libre import edilerek profil resmi ve ismi dinamik olarak gösterilmeye başlandı.
    17:56Sohbet Detay Sayfasında İsim Düzeltme
    • Sohbet detay sayfasında isim yanlış gözükmesi sorunu için conversation page dosyasında conversation id yerine conversation objesi gönderilmeye başlandı.
    • Chat page'de conversation id yerine dökümanı olduğu gibi gönderilmeye başlandı.
    • Contact modula eklenen start conversation metodunda conversation id yerine conversation objesi gönderilmeye başlandı.
    19:30Uygulamanın Tamamlanması
    • Uygulama yeniden başlatıldığında doğru kişilerin gösterildiği bir yapıya ulaşıldı.
    • Karşısındaki uygulamada da benim adım gözükecek şekilde uygulama tamamlandı.

    Yanıtı değerlendir

  • Yazeka sinir ağı makaleleri veya videoları özetliyor