TDK Sözlük uygulaması, TDK'nın verilerini kullanarak güncel Android teknolojileri ile geliştirilen açık kaynak bir sözlük uygulamasıdır.
Projeyi geliştirme fikri, TDK'nın yeni web sitesinde verileri json olarak işlediğini farkettiğimde başladı. Gerek Play Store'da güzel bir sözlük uygulamasının olmaması gerekse de kendimi geliştirmek amaçlı bu projeyi geliştirmeye başladım. Elimden geldiğince Android caimasında kullanılan son teknolojiler ile uygulamayı geliştirip, kendini geliştirmek isteyenlere de güzel bir kaynak olması açısından açık kaynak olarak paylaştım.
Uygulamayı tamamen Kotlin dili ile geliştirdim.
-
Mimari
-
3.Parti Kütüphaneler
Veriler için sozluk.gov.tr adresi kullanıldı.
- Ana Sayfa İçeriği
http://sozluk.gov.tr/icerik
- Arama İçeriği
http://sozluk.gov.tr/gts?ara=
- Kelimeler Listesi
http://sozluk.gov.tr/autocomplete.json
- Kelime tahminlerini kullanabilmek için Splash ekranında tek seferlik olarak "Kelimeler Listesi" adresinden kelimeleri çekip bunları Room ile veritabanına kaydediyoruz.
- Main Fragment'ta "Ana Sayfa İçeriği" kısmındaki verileri alıp işleyip ekranda gösteriyoruz.
- Search Fragment'ta bir search kütüphanesi kullanarak aratılan kelimeyi Room ve LiveData yardımı ile Recycler View'da gösteriyoruz. Her yapılan arama sonrasında yine Room ile aratılan kelimeleyi veritabanında table_history'e ekliyoruz.
- Search Detail Fragment'ta "Arama İçeriği" adresine kelimeyi parametre olarak gönderip dönen verileri işleyerek Recycler View'da gösteriyoruz.
Açık kaynağın en güzel yanlarından biri isteyen herkesin projeye destek sağlayabilmesi. Projeye katkı sağlamak, hata çözmek istiyorsanız aşağıdaki adımı izleyebilirsiniz.
- Projeyi forkla
- Yaptıklarını commit'le
- Branch'e pushla
- Pull Request talebi aç
Copyright (C) 2021 Mücahid KAMBUR
Bu program özgür yazılımdır: Özgür Yazılım Vakfı tarafından yayımlanan GNU Genel Kamu Lisansı’nın sürüm 3 ya da (isteğinize bağlı olarak) daha sonraki sürümlerinin hükümleri altında yeniden dağıtabilir ve/veya değiştirebilirsiniz.
Bu program, yararlı olması umuduyla dağıtılmış olup, programın BİR TEMİNATI YOKTUR; TİCARETİNİN YAPILABİLİRLİĞİNE VE ÖZEL BİR AMAÇ İÇİN UYGUNLUĞUNA dair bir teminat da vermez. Ayrıntılar için GNU Genel Kamu Lisansı’na göz atınız.
Bu programla birlikte GNU Genel Kamu Lisansı’nın bir kopyasını elde etmiş olmanız gerekir. Eğer elinize ulaşmadıysa http://www.gnu.org/licenses/ adresine bakınız.
Mail - mucahidkambur@gmail.com
Portfolio: https://mucahidkambur.github.io/
Twitter: @mucahidkambur
LinkedIn: mucahidkambur