Script Tabanlı Dillerin Önemi ve Geleceği

Preview:

Citation preview

Script Tabanlı Dillerin Önemi ve Geleceği

Burak Selim Şenyurtwww.buraksenyurt.com

ING Bank – Kıdemli Yazılım Danışmanı

Scripting

• Yorumlayıcı eşliğinde, özel çalışma ortamlarında işletilebilen betik temelli programlama biçimi.

OS shellEmbedded

Devices

Web Pages

SoftwareApplications

DSL

GameSystems

Read EvalPrintLoop

using System;namespace HelloWorld{

class Program{

static void Main(string[] args){

Console.WriteLine( "Hello" );}

}}

puts ‘Hello World’

Farklı Bir Senaryo

public int getNumFromFile () {return Integer.parseInt(BufferedReader.readLine());

}public String executeSQL (int c ) {

return SQL(“select ... “);}public void executeCommand (string cmd) {

Runtime.exec(cmd);}

read –r var1 < commands.txtwhile $var1 –ne “”do

echo “select cmd from table where cmd=“$var1 > query.txtmysql < query.txt > cmdread –r var2 < cmdexec $var2read –r var1 < commands.txt

done

Temel Özellikleri

ÖğrenilmesiKolay Karmaşık

Görevlerde BasitlikDynamic

Types

Interpretted

MetaProgramming

DSL

PlatformBağımsızlık

Glue

JobControl

GUI

AppSpecific

ExtensionEmbeded

Ruby

Python

PerlPhp

VbScript

Earlang

JScript

Javascript

WindowsPowershell

XSLT

AppleScript

IBM’s JCL

Macros

QuakeC

EMACS LispECMAScript

Adobe ActionScript

MEL(AutodeskMaya 3D)

Lua

AngelScript

Squirrel

Python

JavascriptRuby

PHP

http://spectrum.ieee.org/static/interactive-the-top-programming-languages-2016

Perl

Kaynak : Görkem Özdoğan’ın

Data Vinci serisinden

Script

Diller

Derlemeli

Diller

Eksiler

Tip güvenliği

Performans

Eş Zamanlılık

Ölçeklenebilirlik

Bakım

Eksiler

Aşırı Kurumsallık

Ağır geliştirme süreleri

Çok fazla özellik

Muhammed Cuma Tahiroğlu’nun Damdan Düşenleryazısında belirttiği üzere,

“İnsanlar script dillerinin basitliğini seviyor ama kodun

artmasıyla ortaya çıkan cehennem ateşinden endişeliler.”

Gelecek Tahmini(m)

• Gençlerin/çocukların programlama eğitimlerinde,

• Endüstüri 4.0’ın göz bebeklerinden IoT alanında,

• Cloud çözümlerde(Azure-Powershell)

• Microservice geliştirilmesinde

• Makine öğrenmesi algoritmalarında

• legacy sistemlerde

• Yeni istemci/sunucu framework’ lerde

Sorusu olan yoksa…

Recommended