­čĹĘÔÇŹ­čĺ╗ Scripting Languages

Scripting diller hakk─▒nda ald─▒─č─▒m notlar ÔťŹ

Terimler

Terim

A├ž─▒klama

Executable

Daha ├Ânceden olu┼čturulmu┼č ve i┼čletim sistemin direkt olarak ├žal─▒┼čt─▒rabilir uygulamalar

Byte Code

Daha sonradan yorumlanmak i├žin haz─▒rlanm─▒┼č kodlard─▒r, direkt olarak i┼čletim sistemi ├žal─▒┼čt─▒ramaz

Compiler

Derleyici. Kodlardan executable veya byte code olu┼čturur

Interpreter

Yorumlay─▒c─▒. Kodlar─▒ direkt olarak ├žal─▒┼čt─▒r─▒r . Her seferinden yorumlanmas─▒ gerekir

Dillerinin ├çal─▒┼čma Yap─▒s─▒

  • Java, Python gibi diller byte code yap─▒s─▒n─▒ kullan─▒r

  • C, C# gibi diller executable (.exe) yap─▒s─▒n─▒ kullan─▒r

Dillerin ├žal─▒┼čma yap─▒s─▒

Scripting ├ľzellikleri

Terim

A├ž─▒klama

Extending

Di─čer programlar─▒n k├╝t├╝phanelerini de kullanma ve ├žal─▒┼čt─▒rma (?)

Dynamic Typing

De─či┼čken tiplerini belirtmeye gerek yoktur. (int, str vs gibi)

Data Structures

Kendilerine ├Âzg├╝ veri yap─▒lar─▒ vard─▒r (├Ârn dictionary, hash tables, list

Dynamic Typing

  • De─či┼čken tiplerine otomatik karar verilir

    • ─░ste─če ba─čl─▒ tiplerin belirtilmesini de kabul eder

  • Scripting i┼člemlerinde sorun olu┼čturmasa da programlama dilleirnde sorunlara sebeb oldu─čundan tercih edilmez

    • De─či┼čkenlerin ├Ânceden tan─▒mlanmas─▒ gerekmedi─činden yaz─▒m hatalar─▒ durumunda program yanl─▒┼č ├žal─▒┼č─▒r ama hata vermez

  • Baz─▒ scripting dillerinde t├╝m verileri string olarak tutulur, kulland─▒klar─▒ zaman uygun tiplere ├ževrilerek kullan─▒rl─▒r. Bu i┼člem verilerin optimize tutulmas─▒n─▒ sa─člar

Scripting Dillerinde Haf─▒za Y├Ânetimi Sorunlar─▒

  • De─či┼čkenlerin kontrol├╝ scripting dillerinde zordur

  • Belli bir s├╝re sonras─▒nda kullan─▒lmayan veriler haf─▒zada ┼či┼čkinli─če sebep olur

  • Garbage Collector gibi kullan─▒lmayacak de─či┼čkenleri temizleyen yap─▒lara ihtiya├ž duyulur

Dynamic Code Creation (Dinamik Kod Olu┼čturma)

  • Kod i├žerisinde kod olu┼čturulup derlenebilmesini m├╝mk├╝n k─▒lar

    • Baz─▒ programlama dillerinde bu m├╝mk├╝n de─čil veya zordur (├Ârn C)

a = 10
x = "print a"
exec(x)

­čöŚ Kaynaklar