Programlama Modeli
Bilgisayar programlamanın ilk günlerinde, her program goto deyimleriyle dolu büyük bir monolitik öbek olarak yazılmıştır. Her programın farklı donanım cihazlarına kendi giriş ve çıkışını yönetmesi gerekiyordu. Programlama disiplini olgunlaştıkça, bu monolitik kod yordamlar halinde düzenlenmiştir ve en yaygın kullanılan yordamlar paylaşım ve yeniden kullanım için kitaplıklarda paketlenmiştir.
C programlama dili, yordam odaklı programlamayı destekler. C'de, ana fonksiyon tüm diğer prosedürlerle kara kutu olarak ele alınır. Örneğin, ana yordam A, B ve X yordamlarının işlerini nasıl yapacağını bulamaz. Ana yordam yalnızca başka bir yordamı çağırır; bu yordamın nasıl uygulandığı hakkında hiçbir bilgi yoktur.
Dış prosedürlerde gerçekleştirilen etkinliklerin
Yordam odaklı programlama dilleri, yordamları belirtmek ve yazmak için basit mekanizmalar sağlar. Örneğin, ANSI standart C işlevi prototipi bir yordamın adını, döndürdüğü sonucun türünü (varsa) ve parametrelerinin sayısını, sırasını ve türünü belirtmek için kullanılan bir yapıdır. İşlev prototipini kullanmak, yordamlar arasında bir arabirim belirtmenin resmi bir yoludur.
Microsoft RPC, arabirimlerde birlikte gruplandırılmış yordamların çağırandan farklı işlemlerde bulunmasına izin vererek bu programlama modelini kullanır. Microsoft RPC ayrıca, çağıranın ve çağrılan yordamın uzaktan veri alışverişi ve çağırma işlevselliği için bir sözleşme benimsemesine olanak tanıyan yordam tanımına daha resmi bir yaklaşım ekler. Microsoft RPC programlama modelinde geleneksel işlev çağrıları iki ek öğeyle desteklenir.
- İlk öğe, çağıran ile yordam olarak adlandırılan arasında veri değişimini ve parametre geçirme mekanizmasını tam olarak açıklayan bir .idl/.acf dosyasıdır.
- İkinci öğe, geliştiricilere güvenlik özellikleri, sunucudaki durumu yönetme, sunucuyla hangi istemcilerin konuşabileceğini belirtme gibi uzak yordam çağrısı üzerinde ayrıntılı denetim sağlayan bir çalışma zamanı API'leri kümesidir.