ورود

View Full Version : آیا میتوان در صورت استفاده از php هم از web serviceها استفاده نمود؟...



sajad_3dmax
یک شنبه 12 تیر 1390, 10:37 صبح
با عرض سلام.
قرار است به همراه تعدادی از دوستان یک سایت مذهبی راه اندازی کنیم.برای شروع و انتخاب زبان و تکنولوژی مورد استفاده،تعدادی سوال دارم.
آیا میتوان در صورت استفاده از php هم از web serviceها استفاده نمود؟در صورت استفاده از cmsها چطور؟
اگر از تمام امکاناتی که در net. میتوان قابل استفاده است بتوان در cmsها نیز استفاده کرد ، پس net. را در چه جاهایی باید استفاده نمود.
آیا کدهای زیارت آنلاین حرم امام رضا(ع) که توسط سایت ها برای قرار دادن در وبلاگ های شخصی عرضه میشوند و یا پرداخت الکترونیکی توسط کارت فلان بانک در سایت های مختلف ویا قالب های وبلاگ ها هم نوعی وب سرویس هستند؟
با تشکر فراوان

eshpilen
یک شنبه 12 تیر 1390, 11:55 صبح
تاجاییکه میدونم web service در اساس یک یا چند پروتکل سطح بالا هست (یعنی در سطح اپلیکیشن) برای ارتباط و تبادل دیتا و فراخوانی عملیات راه دور و دریافت نتایجش. و معمولا از فرمت های مبتنی بر XML برای انتقال دیتا و فرامین استفاده میشه، اما فرمتهای دیگه یا حتی فرمتهای خیلی ساده و بدوی دیگری هم وجود دارن.
چیزی که بدیهی بنظر میرسه اینه که محدودیتی در زبان مورد استفاده وجود نداره و با هر زبان تحت سرور که امکانات پایه ای رو داشته باشه میشه وب سرویس ایجاد کرد یا با وب سرویس ها ارتباط برقرار کرد. تنها نکتهء قابل توجهی که این وسط وجود داره اینه که بعضی فریمورک ها ممکنه امکانات آماده و خودکارسازی برای پیاده سازی و استفاده از وب سرویسها داشته باشن، مثل دات نت، و بعضیا ممکنه نداشته باشن. اونایی که این امکانات رو ندارن میشه دستی کدهای لازم رو نوشت، یا اینکه کتابخانه/اکستنشن/کد آماده ای در این زمینه پیدا کرد و ازش استفاده کرد. اینکه این کارها چقدر دشوار و حجیم هست ممکنه موضوعی باشه که شما بخواید بدونید. و البته شاید بستگی به وب سرویسهایی هم که شما میخواید استفاده کنید و اهمیت کارتون داشته باشه.
دات نت در زمینهء وب سرویسها پایه ای کار کرده و امکانات وسیعی داره و حتی نوآوری ها و بهینه سازیهایی هم خودش ایجاد کرده. مثلا WCF واقعا چیز جالبیه. موقعی که دات نت با دات نت صحبت میکنه از فرمت باینری خاص خودش برای ارتباط استفاده میکنه که کم حجم تره و امکانات و سرعت بیشتری داره، و موقعی که با یک وب سرویس که زبان دات نت رو نمیشناسه صحبت میکنه از فرمتی که اون وب سرویس ساپورت میکنه استفاده میکنه.
البته همهء اینها هم باعث نمیشه که نشه از PHP برای پیاده سازی یا ارتباط با وب سرویسها استفاده کرد و به مشکل خاصی برخورد کنید. بهرحال بقیش بستگی به منابع انسانی و مالی و خود پروژه داره که تا چه حد گسترده باشه.


آیا کدهای زیارت آنلاین حرم امام رضا(ع) که توسط سایت ها برای قرار دادن در وبلاگ های شخصی عرضه میشوندالبته بنده اونا رو ندیدم و بررسی نکردم، اما فکر نکنم وب سرویس باشن. مبنای وب سرویس یک پروتکل هست که میگه شما با چه زبانی میتونید از این سرویس استفاده کنید. بعد یه برنامه میاد با اون زبان و فرمت داده ای مخصوصش با سرویس مورد نظر ارتباط برقرار میکنه. اما اون کدهایی که توی سورس صفحه بذارید و خودکار کاری انجام بدن احتمالا چیز خیلی ساده تر و مستقیم تری هستن. مثلا یک فایل جاوااسکریپت یا صفحه ای که مستقیما از سایت هدف در سایت دیگه ای در قالب یک فریم داخلی باز و اجرا میشه و خلاصه از اینجور ترفندها.


و یا پرداخت الکترونیکی توسط کارت فلان بانک در سایت های مختلف ویا قالب های وبلاگ ها هم نوعی وب سرویس هستند؟بنظرم باشن. چون اونا هم دقیقا یک سرویس هستن که با زبان و فرمت استاندارد خودشون استفاده میشن. حالا باید دید آیا اونا رو مطابق استانداردهای جهانی جدید درست کردن یا استانداردهای قدیمی و بدوی و یا اینکه اصلا از فرمت و زبانی که خودشون طراحی میکنن استفاده میکنن. البته اصولیش معمولا اینه که از استانداردهای جهانی جدید استفاده بشه (خصوصا برای سرویسهایی که میخوان در اختیار عموم قرار بگیرن). چون طراحی یک فرمت و زبان اختصاصی معمولا مزیت خاصی نداره جز ایجاد ناسازگاری و باگ و معمولا بخاطر راحتی و سرعت کار برنامه نویسی انجام میشه و یه چیزی با امکانات و ساختار محدودتر و با انعطاف کمتر از آب درمیاد. دیگران نیاز دارن فرمت و پروتکل اختصاصی شما رو مطالعه کنن و یاد بگیرن و نمیتونن براش از کتابخانه ها و امکانات آمادهء زبانها و فریمورک ها کمک بگیرن.
شباهت در این زمینه مثل AJAX هست که شما میتونید برای تبادل اطلاعات و فرامین در اون از JSON یا XML یا اصلا یک فرمت اختصاصی که خودتون طراحی میکنید و میتونه خیلی محدودتر اما در عوض خیلی ساده تر و راحتتر و سریعتر باشه برای برنامه نویسی (مثلا برگرداندن کاراکتر صفر یا یک برای پاسخ منفی یا مثبت به یک کوئری) استفاده کنید؛ معمولا وقتی برنامه نیاز به امکانات و انعطاف و حالتهای خیلی کمی داشته باشه از اینطور ترفندها استفاده میشه چون برای چنتا کار ساده و محدود یه پروژهء شخصی یا نسخهء آزمایشی/اولیه صرف نمیکنه وقت و انرژی زیادی روی پیاده سازی و استفاده از پروتکل های وسیع و پیچیده گذاشت.

sajad_3dmax
یک شنبه 12 تیر 1390, 12:40 عصر
با تشکر فراوان از جناب eshpilen.
پیشنهاد شما برای ایجاد یک سایت فرهنگی چیه؟البته میخوایم سایتمون تقلیدی نباشه یا صرفا محتوا نداشته باشه.سایتی با ایده های جدید.البته خودمون هم هنوز دقیقا امکانات رو ریز نکردیم.مثلا فرستادن پیامک مراسمات
آیا از cmsها استفاده کنیم یا از اول با net. خودمون کار کنیم؟

eshpilen
یک شنبه 12 تیر 1390, 13:52 عصر
والا درمورد بقیش تجربه و نظر خاصی ندارم.
اطلاعات بنده در زمینهء وب سرویس بود از نظر تئوریک و تاحدی که قبلا خوندم (هم در دات نت و هم در منابعی مثل ویکیپدیا).
بجز چند مثال و نمونه کد برنامه نویسی هم چیزی رو در این زمینه عملا تست نکردم. بنابراین صحبتهای بنده رو حد اطلاعات پایه تئوریک فرض کنید.