تبلیغات :
ماهان سرور
آکوستیک ، فوم شانه تخم مرغی ، پنل صداگیر ، یونولیت
فروش آنلاین لباس کودک
خرید فالوور ایرانی
خرید فالوور اینستاگرام
خرید ممبر تلگرام

[ + افزودن آگهی متنی جدید ]




صفحه 2 از 3 اولاول 123 آخرآخر
نمايش نتايج 11 به 20 از 24

نام تاپيک: تفاوت یک صفحه وب با وب سرویس

  1. #11
    در آغاز فعالیت ra928's Avatar
    تاريخ عضويت
    Feb 2006
    محل سكونت
    fucking Iran
    پست ها
    10

    پيش فرض

    سلام !
    با اجازه می خواهم این قضیه رو از یه زاویه دیگه نشون بدم .
    همانطور که احتمالا همه می دونند برای تولید یک نرم افزار ، در یک معماری درست ، از معماری چند لایه استفاده می کنند .
    متداول ترین و شاید بهترین این معماری ها ، معماری سه لایه ای برنامه می باشد .
    در معماری سه لایه ، این سه لایه را داریم : لایه کاربر یا presentation layer که همون واسط گرافیکی کاربر است و کاربر نهایی یا end user با این واسط گرافیکی کار می کنه و همه تعاملاتش با برنامه از طریق همین لایه انجام می گیرد.
    لایه بعدی ، لایه منطق برنامه یا هسته برنامه یا همان Bussiness Layer است که کارش همون کنترل برنامه است و اصولا تمام علتی که یه برنامه نوشته میشه ، در این قسمت است .
    لایه بعدی لایه داده ها می باشد یا همون Data Layer است که کار ذخیره و بازیابی اطلاعات برنامه رو دارد و در یک برنامه تحت وب معمولا یک دیتابیس است .

    حالا با توجه به توضیحات بالا یه web page توی لایه اول یا همون لایه واسط گرافیکی کاربر قرار دارد در حالیکه یک web service در لایه دوم قرار می گیرد و اصولا این دو ، دو تا چیز مجزا هستند که هر کدوم کار خودش رو انجام میده و جایگاه خودش رو داره .

    امیدوارم موفق باشی .

  2. #12
    ناظر انجمن .NET Framework _H2_'s Avatar
    تاريخ عضويت
    Feb 2007
    محل سكونت
    یک جایی بین Framework و نارمک!
    پست ها
    4,746

    پيش فرض

    سلام
    شما میتوانید تا هر وقت خواستید به بحث ادامه بدهید.

    شما می تونید منابع دیگری به من معرفی کنید؟
    منابع خود من اغلب کتابهای برنامه نویسی است (vb.net و c#.net و asp.net و ado.net و...) و یک سایت اینترنتی مشخص فارسی نیست که لینک بدم.

    =====

    پست آخر شما را میتوان به سه بخش تقسیم کرد
    بخش اول از یک سایت
    بخش دوم از یک سایت دیگر
    بخش سوم هم نتیجه گیری شما.

    به نظر من مطالب بخش اول بهتر بیان شده بودند ولی مطالب بخش دوم چندان خوب بیان نشده بود و احتمالاً این تفکر اشتباه را تدائی میکند که xml نسخه جدید و جایگزین html است که همانطور که در بخش اول نوشتید، اینها دو هدف مختلف را نشانه روی کرده اند.


    پس می شه به این نتیجه رسید که وب سرویسی که از XML استفاده می کنه ، کارش نمایش اطلاعات نیست، کارش رد و بدل کردن اطلاعات است
    بله تقریباً صحیح است.

    فرمت xml در واقع یک فرمت خاص متنی جهت ذخیره اطلاعات است، شاید بتوان ان را مشابه یک فایل mdb (نرم افزار access) و یا mdf (نرم افزار sqlserver) به حساب آورد، با این تفاوت که xml در یک notepad ساده قابل دیدن و ویرایش است و چون متنی است، میتواند یک استاندارد خوب در سیستم های سخت افزاری و سیستم عامل و نرم افزارهای مختلف باشد.

    همانطور که برای خواندن و نوشتن اطلاعات در mdb شما مجبور به دسترسی مستقیم به فایل نیستید و به راحتی از کلاسس ها و کامپونت های آماده استفاده میکنید.

    در xml هم با وجودی که امکان دسترسی مستقیم وجود دارد، ولی parser های قدرتمند و سریعی برایش ساخته شده که بار پرداش و کدنویسی را از دوش برنامه شما برمیدارد.
    دات نت هم در جاهای مختلف ان را به خوبی ساپورت میکند.

    مثلاً DataSet از جمله پیچیده ترین و سنگین و کاملترین اشیای موجود در دات نت است که عملاً میتوانید یک بانک اطلاعاتی کامل در RAM باشد و میتواند شامل چندین جدول باشد که هر جدول فیلدهای خاص خود را داشته باشد و حاوی تعداد زیادی سطر باشد...
    همچین شی پیچیده و کاملی با یک دستور به xml سریالی میشود.
    ("datasetname.WriteXml("c:\file.xml

    منظورم این است که پشتیبانی خوبی از تبدیلات به/از xml وجود دارد.
    علاوه بر این که در دات نت در مبحث وب سرویسها شما حتی نیاز به همین دستور هم ندارید!
    در واقع دیتاها دور از چشم شما به xml تبدیل شده و ارسال میشوند و در مقصد از xml به دیتاهای اولیه مجداً تبدیل شده و دیتای خالص تحویل کد شما میشود.

    نتیجتا شما خیلی راحت میتوانید با وب سرویس ها اطلاعات را بین دو نرم افزار جابه جا کنید، و در دات نت این کار را بدون درگیر xml شدن هم انجام میدهد.

    =====

    صفحه وب می تونه داده رو ذخیره کنه واگر داده(مثلا متن یک پست مثل ویرایشی که ما برای پستهامون انجام می دهیم) تغییر کنه ، باید متنی که بین تگ پاراگراف قرار داره ، دستی تغییر کنه. تا اینجا درسته؟ ولی اگر XML باشه ، مگه نباید داده تغییر کنه ؟ آین تغییر چگونه است؟ دینامیک است یا باید دستی تغییر کنه؟
    فکر کنم درست متوجه نشدید.
    همانطور که قبلاً گفتم کلاسس های و امکانات اماده خوبی برای خواندن و نوشتن و ویرایش xml وجود دارد
    ولی ...

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

    همین سایت اطلاعاتش در بانک mysql ذخیره و ویرایش میشود و هیچ دیتای استاتیک html ندارد!
    یعنی وقتی من درخواستی به صفحه کد showthread.php با پارامتر t=276267 میدهم، این کد میرود و از دیتابیس دیتاها را استخراج کرده و انها و خروجی فرمت html را در همان لحظه و مخصوص درخواست من تولید میکند و برای دانلود به مرورگر من میفرستد و در نهایت مرورگر آنها را به صورت تصویری نمایش میدهد.
    هر تغییری در هر لحظه فقط روی بانک اطلاعاتی اصلی اعمال میشود که نه html است و نه xml.

    در واقع در خیلی از موارد فایل فیزیکی html و xml اصلاً وجود ندارد!
    مثل یک نوار نقاله کارخانه (stream) کد یک سر xml را تولید کرده و حتی در حین تولید خط به خط میتواند ارسال کند و کد سر دیگر xml را دریافت کرده و پردازش و تبدیل میکند و در خیلی از موارد شاید اصلاً چیزی روی هارد قرار نگیرد.

    البته فقط برای دیتاهای کم حجم مثل تنطیمات یک ذخیره کار نهایی یک برنامه (save و open) برای نگه داری اطلاعات هم از xml استفاده میشود.
    مثلاً فایل web.config که شامل تنظیمات محیط asp.net است.
    یا فایل sln و vbproj و csproj خود vs که شامل تنظیمات و محل نسبی فایلهای کد است و... و... و... و... و...
    و...

    xml و html را میتوان تغییر داد ولی برای دیتاهای پرحجم و با ساختار مشخص و جدولی و بانکی باید از بانک های اطلاعاتی رابطه ای استفاده کرد.

    به نظر شما حالا دنبال چی بگردم؟
    من نمیدانم! اگر چیزی گم کرده اید، پیشنهاد میکنم کمی فکر کنید تا یادتان بیاید !!!!
    از شوخی گذشته، نمیدانم منظورتان دقیقاً چیست؟ شاید بد نباشد کمی عملاً کد نویسی کنید!

  3. #13
    آخر فروم باز قله بلند's Avatar
    تاريخ عضويت
    Mar 2008
    پست ها
    1,471

    پيش فرض

    با عرض سلام و تشکر فراوان
    یه web page توی لایه اول یا همون لایه واسط گرافیکی کاربر قرار دارد در حالیکه یک web service در لایه دوم قرار می گیرد .

    .
    مطلبی که جناب ra928 به ان اشاره کردند نیز جالب است. می شه بیشتر توضیح دهید.

    بله. در فرستادن مثلاً جدولی از پایگاه داده برای مشتری ، سرویس گیرنده با دستور زیر به راحتی می تواند محتوای جدول ارسالی را روی دیتا گرید یا دیتاگرید ویو ببیند:
    datagrid1.datasource=mywebservice.show();

    شما به سریال شدن XML اشاره کرده اید. در نقل و انتقال ساده و بدون فشرده سازی ، از این کدهای پیچیده استفاده نمی شود .من در مبحث فشرده سازی از این کدهای پیچیده ، هم در سمت سرویس دهنده و هم سمت مشتری ، دیده ام. شاید برای کارهایی از این دست مجبور به استفاده از کدهای پیچیده تر نیاز است.

    "در واقع در خیلی از موارد فایل فیزیکی html و xml اصلاً وجود ندارد!"
    منظورتان را نفهمیدم. پس نمایشی که ما از html می بینیم وجود ندارد؟!

    "نمیدانم منظورتان دقیقاً چیست؟ شاید بد نباشد کمی عملاً کد نویسی کنید!"

    راستش منظورم این بود :

    حالا که فرق میان HTML و XML را تاحدودی دانستم ، راجع به کدام قسمت از وب سرویسها تحققات کنم تا جنبه دیگری از این تفاوت ها آشکار شود؟ مسلماً همه تفاوت های بین این دو فقط در تفاوت HTML و XML نباید باشد؟!

    اگر قدم به قدم پیش روی کنم حتما زودتر به جواب خواهم رسید

    باز هم از شما تشکر می کنم.

  4. #14
    ناظر انجمن .NET Framework _H2_'s Avatar
    تاريخ عضويت
    Feb 2007
    محل سكونت
    یک جایی بین Framework و نارمک!
    پست ها
    4,746

    پيش فرض

    سلام
    در واقع در خیلی از موارد فایل فیزیکی html و xml اصلاً وجود ندارد!
    منظورتان را نفهمیدم. پس نمایشی که ما از html می بینیم وجود ندارد؟!
    خروجی صفحات php و asp و aspx و... که در مرورگر خود مشاهده میکنید html است ولی یک stream است و فایل html ای در سرور وجود ندارد.

    در واقع کد سمت سرور با توجه به درخواست شما، در همان لحظه و برای شما html را ساخته و ارسال میکند.
    در واقع کد سرور و اطلاعات اصلی دیتابیس واقعاً بر روی هارد قرار دارد و با درخواست شما کد با کمک اطلاعات دیتابیس در همان لحظه html را در RAM میسازد و برای مشا ارسال میکند.

    مثلاً در asp.net شاید بنویسم.
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    و با توجه به لوگین شدن شما و شرایط امنیتی و برای شما، صفحه فوق چنین خروجی html نهایی پیدا کند.
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    و مرور گر شما آن را چنین برایتان نمایش دهد
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    =====

    حالا که فرق میان HTML و XML را تاحدودی دانستم ، راجع به کدام قسمت از وب سرویسها تحققات کنم تا جنبه دیگری از این تفاوت ها آشکار شود؟ مسلماً همه تفاوت های بین این دو فقط در تفاوت HTML و XML نباید باشد؟!
    شما هنوز در درک تفاوت مشکل دارید.!
    درک تفاوت این دو خیلی ساده است و من دیگر نمیدانم چه چیزی اضافه کنم.

    همانطور که خودتان گفتید:

    صفحات وب برای ارتباط مستقیم با انسانها هستند و وب سرویسها برای ارتباط مستقیم با نرم افزارها.
    (کل تاپیک در یک خط فوق خلاصه و zip میشود!)

    html فرمتی برای چگونگی دیدن محتویات توسط انسانها است (رنگ و فونت و چپ چین و راست چین افکت و... و... و xml فرمتی برا انتقال دیتای خام.

    ======

    اگر سوال مشخص تری بپرسید شاید بتوانم کمک کنم و گرنه پیشنهادی جز کدنویسی ندارم.

  5. #15
    آخر فروم باز قله بلند's Avatar
    تاريخ عضويت
    Mar 2008
    پست ها
    1,471

    پيش فرض

    سلام
    اگر سوال مشخص تری بپرسید شاید بتوانم کمک کنم و گرنه پیشنهادی جز کدنویسی ندارم.
    سلام. من رو ببخشید. راستش خودم هم کلافه شدم و خجالت می کشم.
    می دونم که همش به خاطر کمبود علم است و دلم می خواهد این کمبود رو جبران کنم و به همین خاطر به مشاوری احتیاج دارم که من رو راهنمایی کند. به همین خاطر خواهش می کنم به من بگویید که چگونه شروع کنم که در عین حالی که با دوق وشوق یاد می گیریم فشار زیادی هم به من وارد نشود.
    راستش اینقدر در دانشگاهم فشار به من وارد شده که خسته ام شده ام. دوست دارم با شوق یاد بگیرم ، مثل پیدا کردن همین تفاوت ها بین HTMl و XML که کلی امیدم رو بیشتر کرد.

  6. #16
    ناظر انجمن .NET Framework _H2_'s Avatar
    تاريخ عضويت
    Feb 2007
    محل سكونت
    یک جایی بین Framework و نارمک!
    پست ها
    4,746

    پيش فرض

    سلام
    سلام. من رو ببخشید. راستش خودم هم کلافه شدم و خجالت می کشم
    همانطور که قبلاً در تاپیکهای دیگر هم گفتم: خیالتان راحت در بین آدمیزادها عالم مادرراد نداریم. به مرور یادخواهیم گرفت.

    به همین خاطر خواهش می کنم به من بگویید که چگونه شروع کنم که در عین حالی که با دوق وشوق یاد می گیریم فشار زیادی هم به من وارد نشود.
    اگر به این مبحث علاقه مند هستید، به نظر من خوب کد نویسی کنید !
    عملا:
    - یک webpage ساده درست کنید
    - یک webservice ساده درست کنید
    - از webservice تان در یک exe یا webpage استفاده کنید.
    و...

    ضمناً معمولاً کار عملی و وقتی نتیجه را مشاهده میکنید که خودتان ساخته اید لذت و انرژی برای ادامه کار بیشتر میشود.
    (یک اپسیلونی از لذت خالق بودن به انسان دست میدهد!)

    انشا ا... VS2008 یا حداقل VS2005 روی رایانه تان نصب است ؟
    VB.Net یا C#.Net ؟

  7. #17
    آخر فروم باز قله بلند's Avatar
    تاريخ عضويت
    Mar 2008
    پست ها
    1,471

    پيش فرض

    سلام. من VS2005 و بالتبع C# را نصب دارم. برنامه های وب سرویس را هم نوشته ام و از آنها استفاده کرده ام ولی این ظریف کاری ها رو نمی دونم. حالا برای نوشتن یک وب سایت ساده باید به جای تولید web service از web site استفاده کنم.نحوه نوشتن کدها و ... را از کجا گیر بیارم؟

  8. #18
    در آغاز فعالیت
    تاريخ عضويت
    May 2015
    پست ها
    12

    پيش فرض

    سلام
    گفتگوی جالبی داشتین .من می خوام طراحی وب سرویس رو یاد بگیرم .چکارباید انجام بدم.لطفا راهنمایم کن.

  9. #19
    ناظر انجمن .NET Framework _H2_'s Avatar
    تاريخ عضويت
    Feb 2007
    محل سكونت
    یک جایی بین Framework و نارمک!
    پست ها
    4,746

    پيش فرض

    سلام
    من می خوام طراحی وب سرویس رو یاد بگیرم .چکارباید انجام بدم...
    میبخشید کمی مشکلات داشتم نتوانستم زودتر پاسخ دهم...

    بطور معمول چیزی که ما با نام وب سرویس استاندارد می شناسیم را شما میتوانید با ایجاد یک پروژه وب سایت تحت ASP.Net و سپس افزودن (Project>Add New Item) فایل یا فایل های WebService.asmx به پروژه تان اضافه کنید.
    این فایل با کد پیش فرضی مانند:
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    ساخته میشود و متد یا متدهایی مانند HelloWorld را میتوان بسادگی از برنامه های دیگر خود (وبی یا ویندوزی) فراخوانی کرد و پاسخش را دریافت کرد....

    ==============

    اللبته اگر هدف ارتباط نرم افزار با کدی روی سایت باشد میتوانید از WCFService.svc و یا حتی WebAPI ها هم استفاده کنید.
    موفق باشید.

  10. این کاربر از _H2_ بخاطر این مطلب مفید تشکر کرده است


  11. #20
    در آغاز فعالیت
    تاريخ عضويت
    May 2015
    پست ها
    12

    پيش فرض

    سلام
    ممنون از راهنمایتون.
    دو تا سوال دارم:
    1.من هیچی راجب طراحی سایت و وب سرویس نمی دانم.از کجا شروع کنم؟
    2.مقاله ای درباره وب سرویس و طراحیش دارین؟
    من گشتم مقاله درباره طراحی وب سرویس پیدا نکردم .

Thread Information

Users Browsing this Thread

هم اکنون 1 کاربر در حال مشاهده این تاپیک میباشد. (0 کاربر عضو شده و 1 مهمان)

User Tag List

قوانين ايجاد تاپيک در انجمن

  • شما نمی توانید تاپیک ایحاد کنید
  • شما نمی توانید پاسخی ارسال کنید
  • شما نمی توانید فایل پیوست کنید
  • شما نمی توانید پاسخ خود را ویرایش کنید
  •