6
BEST OF LANGUAGES ANDROİD UYGULAMASI *Dr. Öğr. Üyesi Fatih ÖZKAYNAK *Abdulkadir ŞEN *Fırat Üniversitesi, Teknoloji Fakültesi Yazılım Mühendisliği –ELAZIĞ *Fırat Üniversitesi, Teknoloji Fakültesi Yazılım Mühendisliği –ELAZIĞ [email protected] [email protected] Özet: Günümüzde mobil cihazlar; haberleşme, bilgi paylaşımı, eğitim ve eğlence amaçlı kullanılmaktadır. Android işletim sistemi mobil cihazlar için geliştirilmiş ve günümüz dünyasında en çok kullanıma sahip mobil işletim sistemlerinden birisidir. Bu çalışmada öncelikle Fırat Üniversitesi Teknoloji Fakültesi Yazılım Mühendisliği öğrencileri yönelik Android cihazlarda kullanılmak üzere birden fazla programlama dilini kolaylıkla öğrenmeleri amacıyla bir uygulama geliştirilmiştir. Bu uygulama sadece Fırat Üniversitesi öğrencilerini yönelik değil, bir programlama dilini kolay ve eğlenerek öğrenmek isteyen Android işletim sistemi kullanıcılarına da yönelik olarak geliştirilmiştir. Anahtar Kelimeler: Mobil Cihazlar, Android, Mobil Öğrenme, Mobil Platformlar , Best Of Languages Android Application Abstract: Today, mobile devices; communication, information sharing, education and entertainment. The Android operating system was developed for mobile devices and is one of the most popular mobile operating systems in the world today. In this study, firstly, an application has been developed in order to easily learn the programming language of the phalanx to be used in the Android devices for students of Fırat University of Technology Technology Software Engineering. This application was developed not only for Firat University students, but also for users of Android operating system who want to learn a programming language with ease and amusement. Keywords: Mobile Devices, Android, Mobile Learning, Mobile Platforms 1.GİRİŞ Hızla gelişen teknoloji ile zaman ve mekan kavramı olmadan her zaman eğitim olanağı sağlanmaktadır. Mobil öğrenme, mobil uygulama ve e-öğrenme alanlarını birleştiren güçlü bir ortamdır. Bu nedenle gelecekte kullanılacak öğrenme süreçlerinde önemli bir paya sahip olması beklenmektedir. Ayrıca henüz yeni bir alan olmasına rağmen, eğitim ve öğretim süreçleri üzerine yapılan araştırmaların çok hızlı ilerlediği görülmektedir. İnsanlar mobil cihazların daha iyi bir eğitim sağlamak için nasıl kullanılacağını anlamaya çalışmaktadırlar (hili Mohamed, 2016) Vinci ve Cucchi’nin yaptıkları araştırmaya göre mobil öğrenme ile öğrenciler günlük hayatın içinde öğrenmeyi daha cazip, motive edici ve ilginç şekilde gerçekleştirirler. Bilgisayar ve internet destekli öğrenmeden mobil öğrenmeye geçişin nedenlerini kavramak için dünyadaki mobil cihaz kullanım rakamlarını incelemek fikir oluşturmada yardımcı olacaktır. (Maria Luisa Vinci, 2011) Bireyin istediği zaman ve istediği yerde öğrenme sürecini başlatıp, istediği anda öğrenme sürecine müdahale edebiliyor olması büyük bir ayrıcalıktır. Yakın zaman önceye kadar sabit telefon hatlarıyla sağlanan internet bağlantısı, yer ve zaman bağımsızlığı anlamında bireye tam bir özgürlük sağlamıyordu. Günümüz dünyasında bireyler mobil cihazlardan 3G/4G/WİFİ teknolojileri sayesinde yer ve zamandan bağımsız olarak internete girerek mobil öğrenmeden faydalanabilmektedirler.

BEST OF LANGUAGES ANDROİD UYGULAMASIyazilimcigenclik.com/wp-content/uploads/2018/09/... · öğrencilerini yönelik değil, bir programlama dilini kolay ve eğlenerek öğrenmek

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: BEST OF LANGUAGES ANDROİD UYGULAMASIyazilimcigenclik.com/wp-content/uploads/2018/09/... · öğrencilerini yönelik değil, bir programlama dilini kolay ve eğlenerek öğrenmek

BEST OF LANGUAGES ANDROİD UYGULAMASI

*Dr. Öğr. Üyesi Fatih ÖZKAYNAK

*Abdulkadir ŞEN

*Fırat Üniversitesi, Teknoloji Fakültesi Yazılım Mühendisliği –ELAZIĞ

*Fırat Üniversitesi, Teknoloji Fakültesi Yazılım Mühendisliği –ELAZIĞ

[email protected]

[email protected]

Özet: Günümüzde mobil cihazlar; haberleşme, bilgi paylaşımı, eğitim ve eğlence amaçlı kullanılmaktadır.

Android işletim sistemi mobil cihazlar için geliştirilmiş ve günümüz dünyasında en çok kullanıma sahip mobil

işletim sistemlerinden birisidir. Bu çalışmada öncelikle Fırat Üniversitesi Teknoloji Fakültesi Yazılım

Mühendisliği öğrencileri yönelik Android cihazlarda kullanılmak üzere birden fazla programlama dilini

kolaylıkla öğrenmeleri amacıyla bir uygulama geliştirilmiştir. Bu uygulama sadece Fırat Üniversitesi

öğrencilerini yönelik değil, bir programlama dilini kolay ve eğlenerek öğrenmek isteyen Android işletim

sistemi kullanıcılarına da yönelik olarak geliştirilmiştir.

Anahtar Kelimeler: Mobil Cihazlar, Android, Mobil Öğrenme, Mobil Platformlar,

Best Of Languages Android Application

Abstract: Today, mobile devices; communication, information sharing, education and entertainment. The

Android operating system was developed for mobile devices and is one of the most popular mobile operating

systems in the world today. In this study, firstly, an application has been developed in order to easily learn the

programming language of the phalanx to be used in the Android devices for students of Fırat University of

Technology Technology Software Engineering. This application was developed not only for Firat University

students, but also for users of Android operating system who want to learn a programming language with ease

and amusement.

Keywords: Mobile Devices, Android, Mobile Learning, Mobile Platforms

1.GİRİŞ

Hızla gelişen teknoloji ile zaman ve mekan

kavramı olmadan her zaman eğitim olanağı

sağlanmaktadır.

Mobil öğrenme, mobil uygulama ve e-öğrenme

alanlarını birleştiren güçlü bir ortamdır. Bu

nedenle gelecekte kullanılacak öğrenme

süreçlerinde önemli bir paya sahip olması

beklenmektedir. Ayrıca henüz yeni bir alan

olmasına rağmen, eğitim ve öğretim süreçleri

üzerine yapılan araştırmaların çok hızlı ilerlediği

görülmektedir. İnsanlar mobil cihazların daha iyi

bir eğitim sağlamak için nasıl kullanılacağını

anlamaya çalışmaktadırlar (hili Mohamed, 2016)

Vinci ve Cucchi’nin yaptıkları araştırmaya göre

mobil öğrenme ile öğrenciler günlük hayatın içinde

öğrenmeyi daha cazip, motive edici ve ilginç

şekilde gerçekleştirirler. Bilgisayar ve internet

destekli öğrenmeden mobil öğrenmeye geçişin

nedenlerini kavramak için dünyadaki mobil cihaz

kullanım rakamlarını incelemek fikir oluşturmada

yardımcı olacaktır. (Maria Luisa Vinci, 2011)

Bireyin istediği zaman ve istediği yerde öğrenme

sürecini başlatıp, istediği anda öğrenme sürecine

müdahale edebiliyor olması büyük bir ayrıcalıktır.

Yakın zaman önceye kadar sabit telefon hatlarıyla

sağlanan internet bağlantısı, yer ve zaman

bağımsızlığı anlamında bireye tam bir özgürlük

sağlamıyordu. Günümüz dünyasında bireyler

mobil cihazlardan 3G/4G/WİFİ teknolojileri

sayesinde yer ve zamandan bağımsız olarak

internete girerek mobil öğrenmeden

faydalanabilmektedirler.

Page 2: BEST OF LANGUAGES ANDROİD UYGULAMASIyazilimcigenclik.com/wp-content/uploads/2018/09/... · öğrencilerini yönelik değil, bir programlama dilini kolay ve eğlenerek öğrenmek

Günümüzde en yaygın olarak kullanılan mobil

cihazlara yönelik işletim sistemleri, Google

tarafından geliştirilen Android, Apple tarafından

geliştirilen iOS ve Microsoft tarafından geliştirilen

Windows Mobile işletim sistemleridir. (Lee,

2011). Android projelerin açık kaynak kodlu

olması, uygulama geliştiricilerinin sayısının

oldukça fazla olması ve buna bağlı olarak Goole

Play’de yüz binlerce uygulamanın olması, Android

işletim sisteminin diğer mobil işletim sistemlerine

karşı öne geçmesini sağlamıştır. Android şu anda

dünya üzerinde 190 ülkede yüz milyonlarca mobil

cihaz üzerinde kurulu olan mobil bir işletim

sistemi olmakla beraber her gün binlerce yeni

Android uygulaması Google Play'a

yüklenmektedir.. Google Play'dan aylık ortalama

indirilen uygulama sayısı 1.5 milyar civarındadır.

(Developers, 2017)

Android, Linux'ın 2.6 versiyonunun güvenlik,

bellek yönetimi, proses yönetimi ve sürücü modeli

gibi çekirdek servislerini taban olarak alan,

Google, Open Handset Alliance ve özgür yazılım

topluluğu işbirliği ile geliştirilen açık kaynak kodlu

bir mobil işletim sistemidir. Ayrıca Android

sadece bir işletim sistemi değil, içinde ara

yazılımlar (middleware), anahtar uygulamalar (key

applications) ve işletim sistemi bulunduran bir

yazılım yığınıdır. Android SDK (Software

Development Kid), Java programlama dili ile

Android platformu üzerinde uygulama geliştirmek

için araçlar ve API' ler sunan bir geliştirme

aracıdır. (Bing, Hunan/China (2012))

Bu çalışmada “Best Of Languages” adı altında

mobil öğrenmeyi desteklemek amacıyla Android

uygulaması geliştirilmiştir. Bu uygulama sadece

Fırat Üniversitesi Teknoloji Fakültesi Yazılım

Mühendisliği öğrencilerine yönelik olarak

geliştirilmemiştir. Java, Python, C programlama

dilleri hakkında bilgi sahibi olmak isteyen Android

telefon kullanıcılarına da yöneliktir. Uygulamanın

içerisinde genel olarak üç programlama dili

bulunmaktadır. Her hangi bir programlama dilini

seçen kullanıcının karşısına o seviye için 1.

seviyesi açık geri kalan 14 seviye kapalı

gelmektedir. Kullanıcı soruları çözdükçe başarılı

oldukça kendisi diğer seviyeleri de aktif hale

getirmektedir.

2. GELİŞTİRME ORTAMI

Android uygulama Windows 10 64 Bit işletim

sistemine sahip bir bilgisayar üzerinde Android

Studio editörü kullanılarak Java programlama

dilinde geliştirilmiştir. Android sürümü olarak

Android 3.0.1 işletim sistemi ve API 21 seviyesi

kullanılmıştır. Ayrıca bu uygulama Android 4.3

işletim sistemi ve üzeri bütün işletim sistemi

sürümlerinde başarıyla çalışmaktadır. 4.3 sürümü

öncesi sürümlerde uygulama çalışmamaktadır.

Şubat 2018 verilerine göre piyasadaki Android

sürümlerinin %95.6'sı 4.3 ve üzeri sürümleri

kullanmaktadır (Ertunç, 2018).

Şekil 1. Nisan 2018 tarihine göre Android sürümlerinin kullanım oranları

Uygulamanın web servisleri Windows 10 64 Bit

işletim sistemine sahip bir bilgisayar üzerinde

Visual Studio editörü kullanılarak Asp.net

programlama dilinde geliştirilmiştir.

Uygulamanın veri tabanı Windows 10 64 Bit

işletim sistemine sahip bir bilgisayar üzerinde

Microsoft SQL Server Menagement Studio 2017

editörü kullanılarak MySql dilinde geliştirilmiştir.

3. UYGULAMA

Geliştirilen Best Of Languages uygulaması temel

olarak üç programlama dilinden meydana

gelmektedir.

Bu programlama dilleri:

Java Programlama Dili

Python Programlama Dili

C Programlama Dil

3.1 Kayıt Olma Sayfası

Page 3: BEST OF LANGUAGES ANDROİD UYGULAMASIyazilimcigenclik.com/wp-content/uploads/2018/09/... · öğrencilerini yönelik değil, bir programlama dilini kolay ve eğlenerek öğrenmek

Şekil 2. Kullanıcı Kayıt Sayfası

Uygulamaya ilk defa giren ve kullanmak isteyen

kullanıcı Şekil 2 de bulunan sayfadan sisteme kayıt

olmalıdır. Kullanıcın parola bilgileri veri tabanında

‘Hash Fonksiyonu’ ile şifrelendikten sonra

kaydedilmektedir.

3.2 Giriş Sayfası

Şekil 3. Kullanıcı Giriş Sayfası

Sisteme başarılı bir şekilde kayıt olan kullanıcı

‘Giriş’ sayfasına yönlendirilir. Bu sayfada

kullanıcı sisteme kayıt olduğu mail adresi ve

parolasıyla sisteme giriş yapar. Eğer giriş

bilgilerinde bir hata varsa uyarı mesajıyla

karşılaşır. Kullanıcı ‘ Beni Hatırla ’ butonunu

aktif ederse kullanıcıya bir daha giriş bilgileri

sorulmaz.

3.3 Parolamı Unuttum Sayfası

Şekil 4. Parolamı Unuttum Sayfası

Sisteme daha önceden üye olmuş kullanıcı eğer

parolasını unutmuş ise bu saydan mail adresini

girerek parola talebinde bulunabilmektedir.

Kullanıcının parolası güvenli bir şekilde mail

adresine gönderilir.

3.4 Ana Ekran

Page 4: BEST OF LANGUAGES ANDROİD UYGULAMASIyazilimcigenclik.com/wp-content/uploads/2018/09/... · öğrencilerini yönelik değil, bir programlama dilini kolay ve eğlenerek öğrenmek

Şekil 5. Ana Ekran

Kullanıcı sisteme başarı ile giriş yaptığı zaman bu

sayfa ile karşılaşmaktadır. Bu sayfada kullanıcıya

profil ayarları ve üç farklı programlama dili

sunulmaktadır. Kullanıcı çözmek istediği

programlama dilini seçerek soru çözümüne

başlamaktadır. Ekranda görünen ilerleme

çubuğundan kendisinin ne kadar soru çözdüğünü

takip edebilmektedir.

3.5 Profil Ekranı

Şekil 6. Kullanıcı Profil Ekranı

Sisteme kayıt olmuş kullanıcı bu sayfadan kayıt

bilgilerini güvenli bir şekilde değiştirebilmektedir.

3.6 Soru Seviye Sayfası

Şekil 7. Soru Seviye Sayfası

İstediği bir programlama dilini seçen kullanıcını bu

sayfayla karşılaşmaktadır. İlk defa giriş yapan

kullanıcı için sadece ‘Temel1’ seviyesi aktif

olmaktadır. Kullanıcı temel bir seviyesine girer ve

başarılı olursa ‘Temel2’ seviyesini aktif eder.

Toplamda 15 temel seviye bulunmaktadır. İsterse

kullanıcı ‘3 Seviyeyi Testle Atla’ butonuna

basarak karşısına karışık gelen soruları çözerek

seviyeleri hızlı bir şekilde geçebilmektedir. Bu

işlem 7 ve 15 seviye içinde yapılabilmektedir.

3.7 Soru Çözüm Sayfası

Uygulama içerisinde iki farklı soru tipi

bulunmaktadır. Bunlardan 1.si düz yazı biçiminde

olan ve programla dilinin mantığının sorulduğu

sorulardır.

Page 5: BEST OF LANGUAGES ANDROİD UYGULAMASIyazilimcigenclik.com/wp-content/uploads/2018/09/... · öğrencilerini yönelik değil, bir programlama dilini kolay ve eğlenerek öğrenmek

Şekil 8. Soru Tipi 1

Diğer bir soru tipi olan resimli sorularda ise kod

yorumlama soruları bulunmaktadır.

Şekil 9. Soru Tipi 2

Kullanıcı karşısına çıkan bu iki soru tipindeki

soruları okuduktan sonra bir seçenek seçer ve şekil

8 deki gibi ‘Kontrol Et’ butonunu görür. Eğer

verdiği cevap doğru ise ‘Şekil 10’ da ki mesajla

karşılaşmaktadır. Eğer kullanıcının verdiği cevap

yanlış ise ‘Şekil 11’ ile karşılaşır.

Şekil 10. Doğru Cevap

Şekil 11. Yanlış Cevap

Kullanıcı eğer hatalı bir cevap verirse bu soru

kullanıcının bilgisiyle beraber veri tabanına kayıt

edilir. Kullanıcı bir sonraki seviyeye geçtiği zaman

hatalı cevap vermiş oluğu sorular kullanıcının

haberi olmadan tekrar kullanıcıya sorulmaktadır.

Tekrar sorulan soruya kullanıcı yeniden yanlış

cevap verirse bu sorunun ağırlığı arttırılır ve

kullanıcı bu soruyu daha fazla görmeye başlar.

Kullanıcı bu soruya doğru cevap verdikçe sorunun

ağırlığı azaltılır ve kullanıcının karşısına daha az

çıkar.

Page 6: BEST OF LANGUAGES ANDROİD UYGULAMASIyazilimcigenclik.com/wp-content/uploads/2018/09/... · öğrencilerini yönelik değil, bir programlama dilini kolay ve eğlenerek öğrenmek

4. SONUÇ

Temel düzeyde java, python, c programlama dili

bilenler kendilerini geliştirmek için her seferinde

kitap veya bilgisayar imkânına sahip olmaya

bilirler. Bu durumda Android cihazlara sahip

mobil cihaz kullanıcıları mekân ve zamandan

bağımsız bir şekilde istedikleri zaman

programlama bilgilerini eğlenerek

geliştirebileceklerdir.

Geliştirilen bu uygulama başta Fırat

Üniversitesi’nin öğrencilerini ve diğer kullanıcıları

mobil öğrenme alanında bir adım ileriye

taşıyacaktır. Kullanıcılar eğlenerek ve araştırarak

yeni bir programlama dili öğrenebileceklerdir.

5.KAYNAKÇA

Bing. (Hunan/China (2012)). Analysis and

Research of System Security Based

on Android . Fifth International

Conference on Intelligent

Computation Technology and

Automation, 581-584.

Developers, A. (2017). Android Developers.

http:// developer.android.com

adresinden alındı

Ertunç, M. A. (2018, 04 17). En çok kullanılan

Android sürümü hangisi? Shift

Delete:

https://shiftdelete.net/android-

surumlerinin-kullanim-oranlari-

aciklandi adresinden alındı

hili Mohamed, M. C. (2016). Pervasive

Mobile Learning System in the New

Millennium. American Journal of

Educational Research, 4-18.

Lee, J. J. (2011). Android programming

techniques for improving

performance. Awareness Science

and Technology (iCAST) , 386-389 .

Maria Luisa Vinci, D. C. (2011, 10 20).

Possibilities of application of e-tools

in education: mobile learning.

leonardo: http://www.leonardo-

lets.net/ict/common/download/Mar

iaLuisaVinci.pdf adresinden alındı