Development of Programming Learning Environment With Compiler Techniques


ARAS S., GEDİKLİ E.

Journal of Investigations on Engineering Technology, cilt.1, sa.2, ss.14-18, 2018 (Hakemli Dergi)

  • Yayın Türü: Makale / Tam Makale
  • Cilt numarası: 1 Sayı: 2
  • Basım Tarihi: 2018
  • Dergi Adı: Journal of Investigations on Engineering Technology
  • Derginin Tarandığı İndeksler: International Index to Film Periodicals, DIALNET
  • Sayfa Sayıları: ss.14-18
  • Karadeniz Teknik Üniversitesi Adresli: Evet

Özet

Bu çalışmada, basit sözdizimi olan görev tabanlı programlama öğrenme ortamı geliştirilmiştir. Mevcut ortamlar, daha çok görsel bileşenlerle programlama yapılan, geliştirilmesi zor ve gerçek programlama dillerine geçişe katkısı olan uygulamalardır. Geliştirilen ortam içinde, gerçek programlama dillerine yakın olan yeni bir programlama dili tanımlanmıştır. Programlama öğrenme ortamı, bilgisayar bilimi ve mühendislik teknikleri kullanılarak açık kaynak olarak geliştirilmiştir ve böyle bir ortamı geliştirmek isteyen araştırmacılar için bir çerçeve niteliği taşımaktadır. Programlama öğrenme ortamındaki dil, sözcüksel ve sözdizim analiz adımları ile doğrulanmaktadır. Sonlu durum makineleri, görevin başarısını kontrol etmektedir. Düzenli ifadeler, kullanıcıların kullanıcı tarafından yazılan kodu ayrıştırmasına ve kod üzerinde gerekli analizi yapmasına izin vermektedir.

In this study, a task-based programming learning environment with simple syntax was developed. Existing environments are systems that are more difficult to systematically develop, with more visual components being used, less contribution to the programming transition process. Within the developed environment, a new programming language has been defined, which is close to the actual programming languages. The programming learning environment has been developed as open source using computer science and engineering techniques, and is a framework for researchers seeking to develop such an environment. The language in the programming learning environment is verified by lexical and syntax analysis steps. Finite state machines control the success of the task. Regular expressions allow users to parse the code written by the user and make the necessary analysis on the code.