Tablo programlama nedir?


34

Falcon programlama dili tablo programlama destekleyen kendisini tanıtır:

Falcon altı entegre programlama paradigması sunar: prosedürel, nesneye yönelik, prototip odaklı, işlevsel, sekmeli ve mesaj odaklı. Ve hepsine hakim olmak zorunda değilsiniz; sadece tercih ettiğiniz malzemeleri seçmeniz ve kodun ilhamınızı takip etmesine izin vermeniz yeterlidir.

Dokümantasyon (basit örneklerden aşikar olanlar ders hariç) tablo programlama dilin lezzet nasıl çalıştığına dair biraz genişletir, ancak dilin kendi yapılarına ve söz dizimi odaklanmış ve gerçekten paradigma yararlarını açıklamıyor .

Her şeyin dahili olarak nasıl çalıştığı konusunda biraz kafam karıştı, Falcon'un anladığım kadarıyla Tablebir ilişkisel tablo olarak az çok çalışan ve ilişkisel sorgulama özelliklerine sahip (OO yerelinde) yerel bir Kayıt Kümesi olarak tanımlanabilen doğal bir yapı olduğunu . Korkunç bir tanım, biliyorum (OO köklerimi ve yıllarca tekila kötüye kullanıyorum).

Hangi sekmeli programlamanın ne hakkında olduğu ve dahili olarak nasıl çalıştığı hakkında daha iyi bir fikir edinmeme yardım eder misiniz?

Açıklama: Ben am değil soran Tabular Modeli Programlama .


11
Bununla ilgili bir makale var: Tabloya Yönelik Programlama . (tl; dr) Sanırım bu, nesnelerin dizileri (sınıftaki örneklerde olduğu gibi), veritabanları ve elektronik tablolar arasında bir karışım olduğunu sanıyorum.
moouviciel

3
"Tablo-yönelimli programlama" ibaresi Lua'yı düşündürdü. Lua, tabloları birinci sınıf bir veri yapısı olarak kullanır , ancak dilin kendisi de Metatables kullanılarak genişletilebilir .
Robert Harvey,

5
Robert, Lua'nın tabloları, listede zaten belirtilen "prototip tabanlı" demenin başka bir yoludur.
Jess Telford

Yanıtlar:


2

Tablo programlama, Tablo Odaklı Programlama paradigmasının (TOP) takma adıdır. TOP için anahtar kavram Nesneye Yönelik Programlama (OOP) için bir tablodur, anahtar kavram bir nesnedir.

Genel olarak, TOP dili, araç, programlama vb. Tablolarla ilgilenir ve bunlara odaklanır. Bununla birlikte, bir programcı doğal olarak bu paradigmayı desteklemeyen dillerde bile bazı paradigmaları kullanabilir. Örneğin, sınıfları tanımlamak için anahtar kelimeleri olmayan ve örnekler üzerinde çalışmak için sözdizimini desteklemeyen diller, nesneye yönelik kod yazmak için kullanılabilir. Örneğin, C dilinde bir yapı tanımlayabilir ve bu işaretçiyi ve yöntem çağrısını simüle etmek için o yapıya bir referans koyabiliriz . Bununla birlikte, C ++ veya C # ile yazılmış olan OO kodu çok daha sezgisel, kompakt, okunaklı, esnek ve daha az hata eğilimli olacaktır.

Falcon, tablolarla başa çıkmayı kolaylaştırmak için yerleşik programlama yapıları içerdiği yönündeki TOP'u doğal olarak destekleyen bir dildir. Falcon'un TOP'u oluşturduğunu söylemeye rağmen, C ++ 'nın OOP'yi oluşturduğunu söylemek gibi. Aslında, belirli programlama stilini kolaylaştıran ve hatta uygulayan bir araçtır.

Sanırım, ama belki yanılıyorum, özellikle masalarda çalışmak için yaratılmış TOP fikirlerini de aramalıyız. SQL Server ve Analiz Hizmetleri , sekmeli veri odaklı işlemlerin gerçekleştirildiği bir arenadır. Özellikle yeni Tabular Model Programlama , ele alınması gereken temel unsurlar olarak tabloları kullanır. Gelecekte tablo programlama için daha sezgisel API desteği sağlanacağına inanıyorum. Bu yüzden Falcon'un yanında TOP'un başka bir yönü olarak Tabular Model Programlama bağlamında TOP hakkında konuşmama izin verdim .

Tablo Modelleme Programlama , SQL Server Teknolojilerine ait olan Analiz Hizmetlerinde kullanılır, böylece ilişkisel veritabanları ve iş zekası ile yakından ilişkilidir. Tablo modu, çok boyutlu moda alternatif olarak bir iş zekası semantik modeli oluşturmak için yeni bir yaklaşımdır, bu nedenle ikincisi ile karşılaştırılmalıdır. Her çözüm, nasıl yaratıldıkları, kullanıldıkları ve konuşlandırıldıklarına göre farklılık gösterir. Tablo modu, tasarım, test ve dağıtım için daha hızlıdır. İlişkisel veritabanları, Excel veya Access ile çalışan izleyicilere de aşinadır. Daha fazla ayrıntı ve iç kısım için, bkz. Tablo ve Çok Boyutlu Çözümlerin Karşılaştırılması .

Tablo Modelleme Programlaması'nın ne olduğunu anlamanın en iyi yolunun pratikte kullanmak olduğunu düşünüyorum. Geçecekmiş Tabular Modelleme (Adventure Works Öğreticisi) ve bunu hissediyorum.


1
Bunların Falcon ile ne ilgisi var?
yannis

@YannisRizos Ben soru olduğunu düşündüm Tabular programlama nedir? Bunu nasıl anlayacağınız konusunda bir örnek olarak Falcon'u verdiniz. Sorunuzu değiştirmeyi düşünün, Falcon'u tablo programlama dili olarak nasıl anlarsınız?
05

Tabular model programlamanın, tabular programlamayla ne alakası olduğunu açıklamak için lütfen cevabınızı genişletebilir misiniz? Çünkü isimlerdeki benzerlikten başka, tamamen farklı şeyler gibi görünüyorlar.
yannis,
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.