Merhaba sevgili THT ailesi birden fazla yazılım dili kullanıyorum bu yüzden de hangi dilin hangi komut ile derleniceğini yeni başlarken sık sık karıştırıyordum sonrasında aşağıdaki gibi bir kod yazmıştım.
Koddan bahsetmek gerkirse python ile yazılımış bir koddur, kullanımı python3 derleyici.py -c <yazılım dili> -f <dosya adı> şeklide çalışmaktadır, her yazılım dili içinde yoktur python golang c c++ php desteklemektedir ayrıca çalıştırmak için yazılım dillerininzin bilgisayarda yüklü olması gerekmektedir.
Kodu önceden yazdığım için profösyonel değil ancak yeni başlayan arkadaşlarımın işine yarıyacağını düşünrek atıyorum.
Python:
import sys
import os
import subprocess
def show_help():
help_text = """
Kullanım: derleyici.py -c <yazılım dili> -f <dosya.uzantı>
Desteklenen diller ve işlemler:
py - Python dosyası çalıştırır
go - Go dosyası çalıştırır
c - C dosyasını derler ve çalıştırır
cpp - C++ dosyasını derler ve çalıştırır
php - PHP dosyasını çalıştırır
Örnekler:
derleyici -c py -f dosya.py
derleyici -c cpp -f dosya.cpp
derleyici -c c -f dosya.c
"""
print(help_text)
def main():
# Komut satırı argümanlarını kontrol et
if len(sys.argv) < 2:
show_help()
return
# Eğer '--help' yazıldıysa yardım mesajını göster
if '--help' in sys.argv:
show_help()
return
if len(sys.argv) < 5:
print("Hatalı giriş. Kullanım: derleyici.py -c <yazılım dili> -f <dosya.uzantı>")
return
# Argümanları al
command = sys.argv[1]
language = sys.argv[2]
file_flag = sys.argv[3]
file_name = sys.argv[4]
# Argümanları kontrol et
if command == "-c" and file_flag == "-f":
if language == "py":
print(f"{file_name} Python dosyası çalıştırılıyor...")
os.system(f"python {file_name}")
elif language == "go":
print(f"{file_name} Go dosyası çalıştırılıyor...")
os.system(f"go run {file_name}")
elif language == "c":
print(f"{file_name} C dosyası derleniyor ve çalıştırılıyor...")
executable = file_name.split('.')[0] + ".exe"
os.system(f"gcc {file_name} -o {executable} && {executable}")
elif language == "cpp":
print(f"{file_name} C++ dosyası derleniyor ve çalıştırılıyor...")
executable = file_name.split('.')[0] + ".exe"
os.system(f"g++ {file_name} -o {executable} && {executable}")
elif language == "php":
print(f"{file_name} PHP dosyası çalıştırılıyor...")
os.system(f"php {file_name}")
else:
print(f"Desteklenmeyen dil: {language}")
else:
print("Hatalı giriş. Kullanım: derleyici.py -c <yazılım dili> -f <dosya.uzantı>")
if __name__ == "__main__":
main()
Koddan bahsetmek gerkirse python ile yazılımış bir koddur, kullanımı python3 derleyici.py -c <yazılım dili> -f <dosya adı> şeklide çalışmaktadır, her yazılım dili içinde yoktur python golang c c++ php desteklemektedir ayrıca çalıştırmak için yazılım dillerininzin bilgisayarda yüklü olması gerekmektedir.
Kodu önceden yazdığım için profösyonel değil ancak yeni başlayan arkadaşlarımın işine yarıyacağını düşünrek atıyorum.


