Nesne yönelimli programlama dersinin geliştirilmesi üzerine bir eylem araştırması
An action research study on the development of object-oriented programming course
Yazar: OSMAN GAZİ YILDIRIM
Danışman: PROF. DR. NESRİN ÖZDENER DÖNMEZ
Marmara Üniversitesi / Eğitim Bilimleri Enstitüsü / Bilgisayar ve Öğretim Teknolojileri Eğitimi Ana Bilim Dalı / Bilgisayar ve Öğretim Teknolojileri Öğretmenliği Bilim Dalı
Derece: Doktora, 2022
Konu: Bilim ve Teknoloji = Science and Technology ; Eğitim ve Öğretim = Education and Training
Dizin: Bilgisayar destekli eğitim = Computer assisted education ; Bilişim teknolojileri ve yazılım dersi = Information technology and software course ; Ders programları = Curriculum ; Eğitim teknolojisi = Education technology ; Nesne yönelimli modelleme = Object orientation modelling ; Oyun geliştirme = Game development ; Program geliştirme = Program development ; Programlama = Programming ; Programlama öğretimi = Programming instruction ; Öğretim teknolojileri = Instructional technologies

Özet:
Oyun geliştirmeye dayalı öğrenme stratejisi, öğrencilerin oyunlara karşı olan ilgilerini sıfırdan bir oyun geliştirmeye veya mevcut bir oyuna eklentiler yapmaya yönlendirerek programlamayı öğrenmelerini sağlamayı amaçlamaktadır. Bu stratejide öğrenciler yazılım mühendisliği yöntem ve tekniklerini oyun geliştirme projeleri vasıtasıyla deneyimlemektedir. Bu tez çalışmasında araştırmacının kendisinin vermekte olduğu Nesne Yönelimli Programlama dersinde yaşanan sorunları en aza indirebilmek ve dersin verimliliğini artırabilmek için oyun geliştirmeye dayalı programlama öğretiminin mevcut derse bütünleşmiş edildiği bir eylem araştırması yürütülmüştür. Bu bağlamda araştırmanın amacı; mevcut Nesne Yönelimli Programlama dersinin sorunlarının tespit edilmesi; mezun öğrencilerin, uzmanların ve alanyazındaki çalışmaların önerileri ışığında mevcut dersin oyun geliştirmeye dayalı öğretim stratejisini temel alarak yeniden tasarlanması; geliştirilen dersin uygulanması ve bu süreçte yaşanan deneyimlerin raporlanması olarak belirlenmiştir.
Belirlenen amaç ve hedefler doğrultusunda bu tez çalışması, iki araştırma döngüsünü kapsayacak şekilde tasarlanmış ve uygulanmıştır. Birinci döngü analiz, tasarım, uygulama ve değerlendirme basamaklarını içerirken ikinci döngü tasarım, uygulama ve değerlendirme basamaklarını içermiştir. Birinci döngünün analiz aşamasında daha önce nesne yönelimli programlama dersini almış ve okullarından mezun olmuş 59 katılımcı ile nesne yönelimli programlama dersini vermekte olan altı öğretim elemanından veriler toplanarak mevcut dersin sorunlarının detaylı bir şekilde tespit edilmesi sağlanmıştır. İlave olarak analiz aşamasında öğrencilerin derste geliştirmek istedikleri yazılım projesi ve oyun türleri nedenleriyle incelenmiştir. Tasarım aşamasında; analiz aşamasından elde edilen verilerin çözümlenmesinden ve alanyazından yararlanılarak mevcut nesne yönelimli programlama dersi Morrison, Ross ve Kemp öğretim tasarım modeli ışığında oyun geliştirmeye dayalı öğretim stratejisini temel alacak şekilde yeniden tasarlanmıştır. Birinci döngünün uygulama aşaması sekiz hafta sürecek şekilde Türkiye'deki bir meslek yüksekokulunun bilgisayar teknolojisi programında öğrenim görmekte olan 29 önlisans öğrencisi ile yürütülmüştür. Birinci döngünün uygulama aşamasından sonra uygulanan eylem planının etkinliği değerlendirilmiş ve birinci döngüde karşılaşılan sorunların giderilmesi amacıyla ikinci döngünün tasarım aşamasında bazı revizyonlar gerçekleştirilmiştir. Revize edilen nesne yönelimli programlama dersi acil uzaktan öğretim yöntemi kullanılarak 15 hafta sürecek şekilde Türkiye'deki bir meslek yüksekokulunun bilgisayar teknolojisi programında öğrenim görmekte olan 30 önlisans öğrencisi ile yürütülmüştür. Bu aşamadan sonra uygulanan eylem planının değerlendirilmesine yönelik yansıtma yapılmıştır. Araştırmada hem nitel hem de nicel araştırma tekniklerine uygun olarak toplam 14 adet veri toplama aracı kullanılmıştır.
Araştırmanın birinci döngü bulgularına göre oyun geliştirmeye dayalı stratejisi temel alınarak sunulan öğretimin katılımcıların nesne yönelimli programlama bilgi ve becerilerini anlamlı şekilde geliştirdiği tespit edilmiştir. Bunun yanında katılımcıların en çok çokbiçimlilik, kurucu metot ve kapsülleme konularında zorlandıkları da ortaya çıkmıştır. İkinci döngüde gerçekleştirilen revizyonlarla birlikte bu konularda gelişim sağlanmıştır. Araştırmanın diğer sonuçlarına göre oyun geliştirmeye dayalı programlama öğretiminin her iki döngüde de katılımcıların çoğunun programlama dersine yönelik motivasyonlarını ve programlama öz yeterlilik algılarını olumlu etkilediği görülmüştür. Ancak programlama kaygısı bağlamında değerlendirildiğinde, katılımcıların programlama kaygılarının çalışmanın başlarında arttığı ancak süreç içinde azaldığı; yine de programlama kaygılarının devam ettiği sonucuna varılmıştır.
Bu çalışma kapsamında gerçekleştirilen öğretim tasarımın ve uygulama sonucunda elde edilen deneyimlerin, geliştirilen "Programlama Kaygı Ölçeğinin" alanyazına katkı sunması açısından önemli görülmektedir. Oyun geliştirmeye dayalı öğretim stratejisinin nesne yönelimli programlama dersine entegrasyonu açısından değerlendirildiğinde, mevcut çalışmanın öğrencilerin nesne yönelimli programlama dersinde karşılaştıkları sorunları en aza indirmeye çalışması; öğrencilerin programlamaya yönelik ilgi ve motivasyonlarını artırarak programlama öz yeterlilik algılarında olumlu değişimler yaratmayı amaçlaması bakımından güncel, işlevsel ve özgündür.

Anahtar Kelimeler: Nesne Yönelimli Programlama, Oyun Geliştirmeye Dayalı Programlama Öğretimi, Oyun Programlama, Programlama Dersine Yönelik Motivasyon, Programlama Öz Yeterliliği, Programlama Kaygısı.

Abstract:
The game development-based learning strategy seeks to assist students in learning programming by directing their interest in games towards creating games from scratch or adding features to existing games. Students gain exposure to software engineering principles and techniques through game development projects in this strategy. This participatory action research aims to redesign the Object-Oriented Programming course in which the first author is both the instructor and researcher by integrating game development-based programming instruction to make it more effective and efficient.
In line with the determined goals and objectives, this dissertation was designed and implemented to cover two research cycles. While the first cycle included the analysis, design, implementation, and evaluation stages, the second cycle comprised the design, implementation, and evaluation steps. In the analysis phase of the first cycle, data were collected from 59 participants who had previously taken the object-oriented programming course and graduated from their schools, and six instructors teaching the object-oriented programming course, and the problems of the current course were determined in detail. In addition, the software project and game genres that the students desired to develop in the course were investigated during the analysis phase. The present object-oriented programming course was redesigned in light of the Morrison, Ross, and Kemp instructional design model, based on the study of the data obtained from the analysis phase and the literature. The implementation phase of the first cycle was carried out with 29 associate degree students studying in the computer technology program of a vocational school in Turkey, for eight weeks. The effectiveness of the action plan adopted after the first cycle's implementation phase was assessed, and some adjustments were conducted during the second cycle's design stage to address the issues that emerged during the first cycle. For 15 weeks, the revised object-oriented programming course was taught to 30 associate degree students in a vocational school's computer technology program in Turkey, utilizing the emergency remote learning technique. Following this stage, an evaluation of the action plan was carried out. The study employed a total of 14 data collection tools, which included both qualitative and quantitative research methods.
According to the first cycle findings of the research, it was determined that the instruction based on the game-development-based strategy significantly improved the object-oriented programming knowledge and skills of the participants. In addition, it was revealed that the participants had the most difficulties in polymorphism, constructor methods, and encapsulation. Progress has been made in these areas as a result of the adjustments made in the second cycle. According to the research's other findings, game-based programming education had a good impact on the motivation of the majority of the participants toward the programming course and their perceptions of programming self-efficacy in both cycles. However, when the participants' programming anxiety was assessed in the context of the study, it was discovered that their programming anxiety increased at the start of the study but decreased over time; however, it was established that programming concerns persisted.
The instructional design employed in this study, as well as the experience gained as a result of the implementation, are regarded as significant contributions to the literature. Regarding the endeavor to integrate a game development-based teaching technique into an object-oriented programming course, the current study is up-to-date, functional, and distinctive. It aims to reduce the problems schools encounter in the object-oriented programming course and to increase students' interest and motivation for programming by increasing their programming self-efficacy perceptions. In addition, the Programming Anxiety Scale was developed as part of the research. 

Keywords: Object-Oriented Programming, Game Development Based Learning, Game Programming, Motivation for Programming, Programming Self-Efficacy, Programming Anxiety.