10 Mart 2022 Perşembe

EmrApp

 📌 EmrApp Software Kimdir ?


⚡ Merhaba, Ben Emre Kaptan. Eskişehir Anadolu Üniversitesi Yönetim Bilişim Sistemleri 3. Sınıf Öğrencisiyim. Kendimi Mobil Programlama sektöründe geliştirmek istiyorum. Bu Sitede yaptığım uygulamaları, geliştirmekte olduğum projeleri, işime yarayan programları ve başıma gelen olayları sizlerle paylaşmak istiyorum.


📌 EmrApp Software Hedefleri Nelerdir ?


⚡ Yakın vadeli hedeflerimizde en az bir dilde yetkin seviyeye gelip, temel ve orta düzey programları kodlayıp geliştirebilecek seviyeye gelmek var.
⚡ Orta vadeli hedeflerimizde 3+ dilde yetkin seviyeye gelip, ekip kurarak veya bir ekibe dahil olarak ortak projelerde katkı sağlamak var.
⚡ Uzun vadeli hedeflerimizde ise alanıma ait bütün dillerde belli bir seviyeye gelip, kendi şirketimi kurmuş olduğumu, genç ve deneyimli insanlarla istihdam sağladığımı görmek var. 
⚡ Tüm bu hedeflerim dışında hem imam hatip, hem programlama öğrencisi olarak kar amacı gütmediğim, insanlara fayda sağlayacağını düşündüğüm bazı dini projeler üzerinde de çalışmak var.


📌Sosyal Medya Hesaplarınız Var Mı ?


⚡ Aşağıda bulunan bağlantı linklerine tıklayarak sosyal medya hesaplarımıza ulaşabilirsiniz.





📌Hangi geliştirme ortamını kullanıyorsunuz ?

⚡ Geliştirme ortamı olarak flutter kullanıyoruz. Flutter, Google tarafından sağlanan açık kaynaklı bir mobil uygulama geliştirme çerçevesidir. Bu çerçeve, tek bir kod veritabanı üzerinden hem iOS hem de Android için yüksek verimli, güzel ve kullanıcı dostu gezinmeyi sağlar. Flutter, Dart programlama yöntemleri kullanır ve gelişmiş bir Widget yapısına sahiptir. Bu yazı, Flutter'ın temel dağıtım özellikleri, sunucular, kullanım alanları ve ağ geçidi verileri hakkında detaylı bir açıklama sunacağız.

Flutter'ın Temelleri: Flutter, 2017 yılında Google tarafından piyasaya sürüldü ve hızla popüler bir mobil uygulama geliştirme aracı haline geldi. Flutter'ın temeli, gelişmiş bir Widget temeli yapı oluşturur. Widgetlar, çalıştırma herhangi bir parça temsil eder ve kullanıcı arayüzü, düğmeler, metin alanları, resimler ve daha fazlası gibi yüklemeyi sağlar. Flutter'ın Widget yönetimi, karmaşıklığını azaltan ve yeniden kullanılabilir, esnek ve özel görüntüleyici düzenlemesini kolaylaştıran.

Dart Programlama Dili: Flutter, Google tarafından verilen sonuçlar Dart programlamayı kullanır. Dart, nesne algılamalı ve sade bir dil olup, JavaScript gibi yaygın kullanılan diğer dillerle de kısıtlama gösterir. Dart'ın kolay öğrenilebilir ve anlaşılır yapısı, Flutter geliştiricilerinin hızlı bir şekilde uygulama oluşturmaya yardımcı olur.

Tek Kod Tabanı ve Platform Bağımsızlık: Flutter, elde ettikleri hem iOS hem de Android platformlarında çalışabilmesini sağlayan tek bir kod veritabanına dayanmaktadır. Geleneksel kullanımda, aynı uygulamanın farklı platformlar için ayrı kodlarla yazılması gerekiyordu. Ancak Flutter'da, bir kez yazma kodu, çalıştırma hem iOS hem de Android işletim sisteminde işlemcisel bir şekilde çalıştırma sağlar. Bu, uygulama geliştirme işlemlerinin büyük ölçüde süreleri ve maliyetlerinin düşürülmesi.

Hız ve Performans: Flutter'ın en dikkat çekici özelliklerinden biri, yüksek verimli uygulamalar oluşturabilmesidir. Flutter, uygulamalar doğrudan cihaz donanımına erişim sağlayan bir grafik motoru olan Skia ile çalışır. Bu sayede, uygulamalar yüksek verimli çalışır ve akıcı bir deneyim sunar.

Zengin Widget Kütüphanesi: Flutter, zengin ve geniş bir Widget kütüphanesi sunar. Bu kütüphane, geliştiricilerin kullanımlarının hazır tüketimini içerir. Ayrıca, topluluklar tarafından barındırılan ve ücretsiz olarak barındırılan widgetlar da mevcuttur. Bu, geliştiricilerin uygulamalarında kendi saklamalarını oluşturmasını ve kullanmayı kolaylaştırır.

Hot Reload Özelliği: Flutter'ın geliştirme sürecini hızlandıran önemli bir özellik, "Hot Reload"tır. Bu özellik sayesinde, uygulama kodu üzerinde yapılan değişiklikler anında görüntülenebilir. Bu, geliştiricilerin hızlı bir şekilde güvenilir bir şekilde test süreleri ve hataların düzeltilmesini sağlar.

Zengin Ekosistem: Flutter, geniş bir topluluk tarafından desteklenmektedir. Bu, geliştiricilerin sorularını sormak, yardım istemek ve kaynakları paylaşmak için birçok platforma erişebileceği anlamında gelir. Ayrıca, Flutter'ın hızla büyüyen ekosistemi, sürekli olarak yeni ve güncellenmiş hayvanların yayılmasınıne olanak tanıyor.

Uygulama Yayınlama ve Dağıtım: Flutter ile kullanım uygulamaları, geleneksel olarak kullanım uygulamalarıyla aynı şekilde dağıtılabilir. Uygulamalar, App Store ve Google Play gibi platformlara kolayca yüklenip yayınlanabilir.

Kullanım Alanları: Flutter, çeşitli kullanım alanları için uygundur. Mobil uygulamalardan oyunlara, e-ticaretten sosyal medya platformlarına kadar pek çok farklı türde uygulama geliştirmek için kullanılabilir. Ayrıca, Flutter web ve Masaüstü uygulamaları için de geliştirme mekanizmalarını destekler.

Gelecekteki Potansiyel: Flutter'ın verileri oldukça büyük. Google'ın ve geniş bir geliştirici kuruluşunun desteğiyle, çerçevenin sürekli olarak geliştirileceği ve güncelleneceği öngörülmektedir. Ayrıca, Flutter'ın web, Bilgisayar ve gömülü cihazları için kullanılabilirliğin, çerçevenin daha geniş bir kullanıcı kitlesine ulaşmasını isteyenler.

Sonuç olarak, Flutter, kullanıcı dostu, hızlı ve bağımsız platform uygulamaları oluşturmak isteyen geliştiriciler için mükemmel bir seçenektir.

📌Projeleriniz Nelerdir ?


⚡ Proje alanımızda tamamlanan ve geliştirilmekte olan uygulamalarımızı bulabileceksiniz.




  • Interactive Football ⏳


  • Vize-Final Hesaplama ✅

  • Soru Çöz ⏳

  • Bomb Time 2 ✅

  • Puan Hesapla ⏳

  • Kıyava! ⏳



📌Projeleri Nereden İndirebiliriz ?

⚡ Google Play Store Hesabımız üzerinden projelerimizi indirebilirsiniz.



📌Projelerin Detayları Nelerdir ?


Zikirmatik Sayacı, butona basıldığında sayıyı +1 arttıran, sıfırla butonuna basıldığında sayıyı sıfırlayan, temel seviyede herkesin yapabileceği basit bir uygulamadır. Daha önce uygulama yapmamış iseniz mutlaka tavsiye edebileceğim bir program. Kısa sürede bitirebileceğiniz için ekstra motivasyon sağlayacaktır. Programlama için küçük benim için büyük bir adımdı İlk uygulamam olması sebebiyle de ben de yeri ayrıdır :) 




⚡ EmrApp Kronometre, Başlat Durdur ve Sıfırla butonlarının bulunduğu yine basit bir çalışma olduğunu söyleyebilirim... Beni en çok zorlayan kısım sayaç başladığında 01 şeklinde artmasını beklerken sayacın 1 şeklinde artması, görüntü açısından hoş olmuyordu. Onu da sol tarafta bulunan sıfırları sürekli mevcut kalacak şekilde ayarladım. Fakat bu sefer de 2 basamaklı sayılara geldiğimizde benim eklediğim sıfır ile 3 basamaklı bir görüntü ortaya çıktı. Bu sorunu da çözmenin yolu if metodu ile oldu. Eğer sayaç 10 u geçerse benim sol tarafa eklediğim sıfırın görünürlüğünü devre dışı kalmasını sağladım. Bu sayede tek basamaklı sayılar varken sıfır görünür, 2 basamaklı sayılarda da görünmez olup tam istediğim görüntü oluştu. Evet çok basit bir uygulama olabilir ama bana bu tarz problemlerin çıkarması ile çok şey öğrendiğimi düşünüyorum. Size de tavsiyem uygulama geliştirme sürecinde karşınıza çıkan problemlerden dolayı kesinlikle karamsarlığa düşmeyin. Çıkan her problem, bize yeni bilgiler öğrenmenizi, yeni yollar keşfetmemizi, farklı bakış açıları görmemizi sağlıyor. Belki süreç uzuyor olabilir ama kesinlikle bizlerin yararına olduğunu söyleyebilirim. 


Bomb Time!, yaptığım ilk oyun olduğunu söyleyebilirim. Kurallar basit...1 dakika içerisinde patlayacak bir bombanın, 4 basamaklı şifresini tahmin etmeniz gerekiyor. Nasıl çalıştığı hakkında konuşmak gerekirse, herkesin bildiği sayı tahmin oyunu altyapısına sahip. Bilmeyenler için 4 basamaklı sayı tahmin ederek başlıyorsunuz. Bilgisayar 1000 ile 9999 arasında bir sayı belirliyor ve bulunduğunuz tahminler, belirlenen sayıdan farklı ise daha büyük veya daha küçük şeklinde sizleri yönlendirme sağlıyor. En sonunda verdiğiniz tahmin ile bilgisayarın belirlediği sayı aynı ise "Tebrikler ! Bombayı Çözdünüz." şeklinde oyunu kazanmış oluyorsunuz. Bunun dışında size verilen 1 dakika süre içerisinde doğru tahmini yapmak zorundasınız. Aksi takdirde bomba patlamış oluyor ve yeniden başlamanız gerekiyor. En açıklayıcı şekilde oyun bu şekilde... Şimdi gelelim oyunun geliştirme aşamasına. Beni en çok zorlayan kısım, oyunun yeniden başlatılması için gereken buton oldu. Kullandığım altyapı uygulamanın yeniden başlatılması konusunda sorunlar çıkarıyordu. O sebepten alternatif bir yol haritası çizmem gerekiyordu. Bu kısımda konudan ayrılmam gerekiyor. Çünkü uygulama geliştirme sürecinde başında olan benim gibi arkadaşlara verebileceğim ve çok önemli olduğunu düşündüğüm bir tavsiyem var. Herkeste olduğu gibi ben de bu tarz sorunlarla karşılaştığımda canı sıkılmış, morali bozulmuş bir hale düştüm. Herşeyin kusursuz olmasını, ilerlemesini bekliyordum ama süreç bu şekilde ilerlemiyor maalesef. Verebileceğim tavsiye ise tam olarak burada başlıyor. Karşımıza çıkan problemler, o an farketmiyoruz ama bizi geliştiren kısım aslında burası. Çıkan problemler bize yeni bilgiler öğrenmenizi, yeni yollar keşfetmemizi, farklı bakış açıları görmemizi sağlıyor. Belki süreç uzuyor olabilir ama kesinlikle bizlerin yararına olduğunu söyleyebilirim... Bana göre çok önemli olan bu tavsiyelerden sonra konumuza geri dönebiliriz. Hatırlatmak gerekirse beni en çok zorlayan kısmın oyunu yeniden başlatma olduğunu daha önce söylemiştim. Altyapısını kullandığım kodular platformu yeniden başlatma ile alakalı bir kaç özellik sunmuş ama hiç biri sağlıklı çalışmıyordu. Bu kadar yolu geldikten sonra bu sorunu da çözmem gerekiyordu. Son geldiğim aşamada yeniden başlat butonuna basıldığında uygulama kendini kapatıyor ve yeniden başlatmaya çalışıyordu. Bu durum sağlıklı çalışmamakla birlikte, kötü bir görüntü ortaya koyuyordu.



Interactive Football, Yüksek seviyede senaryo içinde barındıran, verdiğiniz kararların senaryoya etkisi olacak şekilde kariyerinizin her zaman yükseliş ve düşüşe geçebilme ihtimalini göz önünde bulundurmanız gereken bir futbolcu kariyer oyunudur. Maç içinden, maç dışına size bir hayat senaryosu aktarılır ve size en uygun yaşam şekli ile alakalı kararlar vermenizi ister. Verdiğiniz kararlar sonucunda mükafat veya bedeller ödemeniz gerekebilir. Seçim yaparken iki kez düşünmenizi tavsiye ederiz :) 

Kelime Deposu, içinde başta ingilizce olmak üzere istediğiniz kelime veya açıklamaları ekleyerek ezber yapmayı kolaylaştıracak bir dil uygulamasıdır. Öncelikle "Kelime Ekle" butonuna tıklayarak, kelimenin kendisi ve manasını ilgili boşluğa doldurun. Ardından "Soru Çöz" butonuna tıklayarak, Random (Rastgele) şekilde soruların size sorulmasını sağlayın. Her gün kelime eklemesi ve soru çözümü yaparak bol tekrarlı, verimli bir çalışma gerçekleştirebilirsiniz.

Vize ve Final Hesaplama, %40 vize puanı %60 final puanı olmak üzere notları bir araya getiren ve total bir sonuç elde etmenizi sağlayan bir programdır. Sürekli final sınavından kaç almanız gerektiğini hesaplayan biri iseniz bu uygulama tam size göre :) 




Soru Çöz, Soru sorup, sorularınıza cevap bulabileceğiniz; çeşitli kategorilerde arama yaparak soru pratiği kazanabileceğiniz bir ders uygulamasıdır. Uygulama içinde edindiğiniz paralarla da çeşitli kırtasiye alışverişlerinizi yapabilmenizi hedefliyoruz. 


⚡ Bomb Time 2, yaptığım ilk oyunun 2. versiyonu olduğunu söyleyebilirim. İlk oyunu bildiğiniz üzere kod bilgisi olmadan temel algoritma mantığı ile geliştirmiştim. Fakat bu sefer dart dilini kullanarak (flutter) ilk kodlama oyunumu tamamlamış oldum. Oyuna gelecek olursak kurallar basit...1 dakika içerisinde patlayacak bir bombanın, 4 basamaklı şifresini tahmin etmeniz gerekiyor.


Puan Hesapla, Tüm eğitim - öğretim hayatı boyunca karşınıza gelecek olacak sınav ve denemelerinizde elde ettiğiniz sonuçları hesaplayabilmeniz için bir mobil uygulaması geliştiriyorum. Şuan için TYT, AYT, DGS, KPSS, ALES sınavları için uygun bölümler oluşturdum. Fakat ilerleyen dönemlerde daha çok sınavı uygulamamıza entegre etmeyi hedefliyorum. 

Kıyava, Proje olarak ismini “Kıyafet” ve “Hava” kelimelerinden alan bir giyim-asistan uygulaması üzerinde çalışıyorum. Hava’nın sıcak mı, soğuk mu veya güneşli mi yağmurlu mu hepimiz bu bilgileri hava durumu uygulamalarından öğrenebiliriz. Fakat hepimiz havanın durumunu bilsek bile kıyafet tercihlerinde bazen yanılabiliyoruz. Kimimiz fazla giyinip gün içinde bunalma yaşarız, kimimiz de az giyinip üşüyebiliriz. Kıyava uygulamamız sayesinde bu tür durumların önüne geçmeyi hedefliyoruz. Önümüze çıkan başka bir durum ise havanın sıcak veya soğuk olması insandan insana değişiklik gösteren bir yapıda olması… Bu sorun için de kullanıcıların günleri puanlaması ve yapay zekamızın sizlerin hangi günlere ne tepki verdiğinizi öğrenerek en doğru tercihleri sunmasını amaçlıyoruz.

Developers Life, yazılımcı bir kişinin hayatını konu alan yazı tabanlı bir simülasyon oyunudur. Oyundaki hedefiniz kariyer basamaklarını birer birer tırmanarak zirveye ulaşmanız olacaktır. Dikkatli olun kariyerinize odaklanıp kendinizi yıpratmayın. En değerli varlığınız sağlığınız olduğunu unutmayın. 




Kendimizi yeni projelerle geliştirmeye devam ediyoruz. Verdiğiniz desteklerden ötürü teşekkür ediyor iyi günler dileriz.

EmrApp

 📌  EmrApp Software Kimdir ? ⚡ Merhaba, Ben Emre Kaptan. Eskişehir Anadolu Üniversitesi Yönetim Bilişim Sistemleri 3. Sınıf Öğrencisiyim. K...