SCRIPTING LANGUAGES
Hakan ŞUMNULU
[email protected]
SCRIPTING LANGUAGES
Tarihce Ozellikleri Sistem ve Script diller Bazı Script diller VBScript, JAVA, PHP karşılaştırması Sonuc TARİHCE
1960’lardan gunumuze gelmiştir. Ceşitli Platformlara uyumludur. Son 15 yıldaki teknolojik gelişmeden de nasibini almıştır. Ozellikle İnternet Programları script dillersiz duşunulmemeye başlanmıştır. Bircok yazılım ve donanım firması kendilerine ozgu script diller geliştirip kullanmışlardır. Neden Script Dil
Script diller sadece SPD eklenmek icindir Bazı işlemleri daha cabuk yapabilirler Bileşenler arasındaki bağlantıyı sağlamakla yukumludur Hızlı uygulama geliştirme olanağı tanırlar SPD: Sistem Programlama Dilleri Neden Script Dil
SPD daha zorlanarak yapacağı bazı işlemleri, cok daha hızlı bir bicimde onları tamamlamak koşulu ile yapabilirler İnternet’in hızlı gelişiminden dolayı İnternet icin yapılan uygulama geliştirme yazılımlarının hız gerektirmesi Neden Script Dil
Bununla beraber, Son zamanlardaki eğilimler; Daha hızlı makine, Daha iyi script diller, Kullanıcı arayuzunun artan onemi, Bileşen mimarisi İnternet’in gelişimi Script dillerin uygulama alanlarını onemli olcude arttırmıştır SİSTEM PROGRAMLAMA DİLLERİ (S.P.D.)
Sistem Programlama Dilleri (SPD)
HIGH-LEVEL dillerdir Bir cok detay otomatik olarak gercekleşmektedir. Yapılacak aynı tur iş icin daha az kod yazılacaktır COMPILER kullanılmaktadır ( buda bize Hatanın uygulama aşamasına gecilmeden tasarım aşamasında yakalanması sağlar ) Sistem Programlama Dilleri (SPD)
SPD, Assambler gibi makine dillerine alternatif olarak cıkmışlardır SPD, makine dillerinden daha az verimlidirler, fakat daha cabuk uygulama gercekleşmesine olanak tanır Gunumuzde Sistem Programlama dilleri programlarda onemli bir kayıpla karşılaşmadan kolayca ve daha hızlı uygulamalar yaratmak icin tercih edilmektedirler. Tcl,perl.... V.Basic,.... C,..... C++,.... Java,.... Scripting Diller Sistem Programlama Dilleri Assambly YAZIM DERECESİ OĞRENME İFADELER Kuvvetli Yok 10 -- 100 -- 1000 -- Karşılaştırma
SCRIPTING DİLLER
Scripting Diller
Cok farklı programlama stillerini ve platformlarını temsil ederler Bu tip dillerin, kullanılması mevcut kullanışlı bileşenlerin, diğer dillerde yaratılması ile kullanılabilirliği olur Herhangi bir uygulamanın başlangıctan sonuna kadar kullanılması icin duşunulemezler Scripting Diller
Kullanıcı arabirim kontrollerini daha uygun bir sıraya koymak icin kullanılmaktadırlar Bileşenlerin ozelliklerini arttırmada programcıya yardımcı olurlar Veri tipi kullanmazlar Scripting Diller
Coğunlukla string tabanlıdırlar Tum bileşen ve değerler tekdize (uniform) bir tarzda ifade edilirler Bir birlerinin yerine gecebilirler (interchangeable) Scripting Diller
Genellikle yorumlanırlar Derleme zamanını ortadan kaldırarak, programın daha hızlı uretilmesini sağlarlar Kullanıcıya daha esnek uygulamalar yapmalarına izin verirler hash tablolarını kullanırlar Script dillerde tipik ifadeler yuzlerce yada binlerce komut icra ederler C ile Tcl ‘ in karşılaştırılması
4
C ver : 1460 satır Tcl ver : 380 satır Tablo aracları yaratma 4-8
2,5
C ver : 1200 satır,4-8 haftaTcl ver :500 satır, 1 hafta Sorgu Raporları 10
C ver : 3000 satır Tcl ver :300 satır Guvenlik Tarama 8-12
C++ ver:2-3 ay Tcl ver :1 hafta Veritabanı Kutuphanesi 22
47
C test uyg: 272 K lines,120 ay, Tcl/perl 7.7 K lines 8 ay Bilgisayar Sistem Testi ve Kurma 60
C++ version : 2 ay Tcl version : 1 gun Veritabanı Uygulamaları Effort oranı
Kod oranı
Karşılaştırma
Uygulama
Peki SPD ile Script diller arasında secim yaparken;
Uygulamanın esas amacı varolan bileşenleri bir araya getirmek mi? Uygulama Kullanıcı Grafik Arayuzu iceriyor mu? Uygulamanın genişletebilirliğe ihtiyacı var mı? Bunlara cevabınız evetse Script dil kacınılmazdır. Bazı Script Dillere Ornekler
Active Server Page (ASP) :
Microsoft firmasının WEB sayfalarında dinamik uretimi sağlamak amacıyla Server-taraflı calışan bir script dilidir. Programcıların kullandığı yapılandırılabilir 6 objesi bulunur. Application (uygulama) ASPError (hata) Request (istek) Active Server Page (ASP) :
Response (cevap) Server (sunucu) Session (oturum) Dinamik web sayfaları hazırlanırken objeler fonksiyonlarda daha yararlı olmak icin grup halinde hareket edebilirler. Active Server Page (ASP) :
Server taraflı calışmalarında ki neden, veritabanı işlemleri icermelerinden dolayıdır. Tum veritabanı işlemlerini server da yapar ve bu şekilde browser’da gosterir. Client (istemci) taraflı calışması ise; HTML kodlarının icine gomulebilmesidir Active Server Page (ASP) :
Cookie-based dediğimiz oturum objeleriyle bir sayfadan başka bir sayfaya değişkenleri taşıyabilir ASP artık herhangi bir dilin icinde de ( Visual Basic,C# vb.) script dil olarak yerini almaya hazırdır AppleScript Programlama Dili
Applescript Mac Operating System’lerde kullanılmak uzere Apple Computer tarafından script dil olarak tasarlanmıştır Mac OS’de grafik kullanıcı arabirimiyle beraber paralel bir şekilde script arabirimini kullanarak dizayn edilip calışmak uzere tasarlanmışlardır. AppleScript Programlama Dili
Asıl HyperCard projesinde kullanılırken geliştirilerek kullanılmaya başlanmıştır Kavram olarak icice sıfat ve isimlerden oluşan soz obekleri kullanılarak ifadeler yazılır Veri tipi olarak temel olanları kullanır Standart kontrolleri (if/loop) vardır. Uygulamalar runtime’da terminoljiyi tanımlarlar Script objeleri kalıtsal davranış gosterirler AWK Programlama Dili
AWK sade raporlama, veri analiz ve veri işleme de kullanılan pattern/action olarak adlandırılan bilgisayar dilidir. Unix’in 3. versiyonunda eski araclar kullanılarak meydan cıkmıştır. Anlamı yazarlarının soyadından gelmektedir. (Alfred V. Aho, Peter J. Weinberger, Brian W. Kernighan.) Piyasada serbest olarak GNU versiyonu olan GAWK vardır Dylan Programlama Dili
Dylan Apple Bilgisayar grubunun dinamik programlama dilinden meydana gelmiştir. Orijinal olarak Apple’ın Newton bilgisayarlarında kullanılmıştır. Uretiminde yeterli olgunluk yakalanamamıştır. Dylan dili sadece nesneye dayalıdır yani her değer bir obje olarak tasarlanmıştır Euphoria Programlama Dili
Asıl Sadelik, Guc, Guvenlik, Esneklik, Kolay geliştirme, Hız gibi hedefler duşunulerek PC programlama dili olarak tasarlanmıştır. 'End-User Programming with Hierarchical Objects for Robust Interpreted Applications' Dos icin piyasaya cıkmıştır. Sonraki versiyonları Windows ve Linux’u da desteklemektedir. Kullanım alanları oyun programları gibi ceşitli yerlerdir Yukarıda sıraladığımız maddeler duşunulerek yapılandırıldığı icin yapay zeka deneylerine, zor matematik cozumlerine ve bunun gibi programlara destek vermesi binlerce karakter icermesi demektir Imperial Chemical Industries (ICI)
Imperial Chemical Industries, makyaj uretimi ve ozel urunler yapan cok buyuk bir İngiliz Kimya şirketidir. Bu şirket yeni urunler uzerinde onemli roller oynamaktadır. Uretimde ve kendi alanında kullanılmak uzere boyle bir script dil yapmaya zorunlu hale gelmişler ve ICI script dilini tasarlamışlardır. ECMAScript Programlama Dili (JavaScript)
Java Sun firması tarafından Pascal ve Delphi dillerinden esinlenerek yazılmış bir programlama dilidir. Html dosyasının icine gomuludur. Yazılma amacı Html'in sahip olmadığı bazı ozelliklerin web sayfalarında kullanılmak istenmesidir. ECMAScript Programlama Dili (JavaScript)
Netscape firması JavaScript dilini hazırladığında Microsoft firması bu dilin ozelliklerini veya yazılım tarzını tam anlamıyla Internet Explorer'a eklemedi. Kendi yazım kurallarını belirledi. Bu yuzden biz JavaScript kodu yazarken bu iki tarayıcı (IE-NS)ozelliklerini de goz onunde bulundurmalıyız ECMAScript Programlama Dili (JavaScript)
JavaScript kodları Html kodların arasında yer alır. Veya uzantısı js olan dosyalarda saklanarak yine Html icerisinden cağırılır. Java Appletleri gibi Html'den ayrı bir unsur değildir. Nesne ve buna uygulanan olaylar ile ilgili bir takım gorevleri vardır Javascript kullandığı her unsuru nesne olarak algılar MUMPS programlama Dili
Massachusetts General Hospital Utility Multi-Programming System ‘den ismini almıştır. ANSI standart dilini kullanır. Yazımı ise Fortran’dan esinlenilmiştir. Fakat veri modeli olarak LISP ‘e daha yakındır. Hayvan Laboratuarı icin tasarlanıp bircok O.S. bu dili desteklemektedir. (Linux,Dos, Solaris....) Perl Programlama Dili
Perl (Practical Extraction and Report Language) Larry Wall tarafından C, sed, awk, shell script gibi dillerin ozelliklerini alarak 87 yılında tasarlanmıştır. Rapor yaratmak ve text dosyalarından bilgi almak icin cok uygun bir programlama dilidir Bir cok şeye izin veren bir paradigması vardır (prosedursel, fonksiyonel, nesne tabanlı...) Perl Programlama Dili
Perl Script dillere ilk ornek teşkil etmiş bir dildir. CGI (Common Gateaway Interface) dili ile cok populer olmuştur. Bazı programcıların gulunc iddiası ise perl’ un anlamının 'Pathologically Eclectic Rubbish Lister’ olduğudur. PHP Programlama Dili
PHP server taraflı bir script dildir Php yorumcusu Zend-cekirdeği adı verilen bir scripting teknolojisine dayalı olarak tamamen yeniden yazılmış bulunmaktadır. Artık Php ile oyun programlarından tutun, veritabanı yonetimine kadar her turlu programlar yazılabilir duruma gelmiştir Zend tıpkı Windows script host gibi işletim sistemine kendisi ile uyumlu script dilleriyle yazılmış, programları calıştırma imkanı sunan bir teknolojidir PHP Programlama Dili
Php’nin varlık sebeplerinin başında; ticari Unix ve Microsoft Windows işletim sistemlerinden ayrı, ticari olmayan acık sistem ortamlarında calışan bir script dili ile bu dille kullanılabilecek, yine acık sistem urunu bir veritabanı erişim ve yonetim urunu aracına sahip olmak gelir PHP Programlama Dili
PHP internet uzerinde oldukca hızlı yayılan dillerden biri. Yayılma hızı konusunda tek rakibi Java olabilir ki o da artık olgunluk devresini yaşıyor ve PHP ile oldukca farklı platformlarda yarışıyorlar Python Programlama Dili
Guido van Rossum’un yaratığı bu dil interaktif programlama dilidir İsmi televizyonda oynayan bir oyundan (Monty Python's Flying Circus) almıştır Small talk ile benzeşmeyen C++ ile benzeşen coklu paradigmalı bir dildir Nesne tabanlı ve yapısal programlardan destek alan fonksiyonel bir dildir QuakeC
QuakeC ID software’in quake oyununu geliştirmek ve değişiklik yapabilmek icin geliştirilmiş bir script dildir. Bu dilde diğer bircok dil gibi C programlama diline oldukca benzer. Quake oyunundaki bir cok gorunum bu dille yapılmıştır Ruby Programlama Dili
Kusursuz yazılımıyla nesneye yonelik olarak tasarlanmış bir programlama dilidir. Catısını perl oluşturur diyebiliriz. İstisna işliyebilir, Kaynak kodları acıktır, Perl’un fonksiyonları destekler VBScript Programlama Dili
Visual Basic’in alt setini kullanarak ASP’ye benzer script bir dildir. Daha cok Windows’ta bazı olayları gercekleştirmek, Microsoft’un setlerinde bazı işlemleri daha kolay yapabilmek icin tasarlanmıştır. Dos’un toplu işlem dosyaları gibi duşunulebilir. Ornek olarak Windows’un altındaki sample dizinine bakabiliriz. VBScript-JSCRIPT-PHP Html icine nasıl eklenirler ?
--JSCRIPT--
--PHP--
--VBScript--
VBScript-JSCRIPT-PHP Değişkenler:
--JSCRIPT--
var sayi; var sayi1=10; var yazi1="10";
--PHP--
--VBScript--
VBScript-JSCRIPT-PHP Koşul Yapıları
--JSCRIPT--
If ( a= =b ) else
--PHP--
--VBScript--
If şart Then [doğru ise yapılacak işler] Else [doğru değilse yapılacak işler] End If
VBScript-JSCRIPT-PHP Coklu Koşul Yapıları
--JSCRIPT--
switch (param)
--PHP--
switch (param)
--VBScript--
Select Case (param) Case 0 İşlemler
Case 1İşlemler
End Select
VBScript-JSCRIPT-PHP Donguler : While
--JSCRIPT--
while ( Koşul )
--PHP--
while (Koşul):
yapılacak işlemler
endwhile
--VBScript--
While Koşul
// yapılacak işlemler.....
wend
VBScript-JSCRIPT-PHP Donguler : Do.....While
--JSCRIPT--
do
while (koşul)
--PHP--
do
while (Koşul);
--VBScript--
Do Until koşul
yapılacak işlemler....
Loop
VBScript-JSCRIPT-PHP Donguler : For
--JSCRIPT--
for ( sayi=0 ; sayi
Scripting languages
Programlama0 Mesaj
●26 Görüntüleme
- ReadBull.net
- Programlama ve Yazılım
- Programlama
- Scripting languages