نمایش نتایج 1 تا 6 از 6

نام تاپیک: مناسبترین روش کد نویسی دیتابیس پروگرامینگ کدامست

  1. #1

    مناسبترین روش کد نویسی دیتابیس پروگرامینگ کدامست

    دوستان سلام
    قصد داریم بهترین و مناسبترین تکنیکهای برنامه نویسی دیتابیس با Ado.Net را بررسی کنیم ، و میخواهیم بدانیم چگونه کد نویسی های مربوط به کاربرد Ado.net را انجام دهیم که یک برنامه استاندارد مهندسی سده و با سرعت مناسب ارائه نمائیم .
    به همین خاطر چند تا فرض اولیه را مطرح میکنیم ، تا چهار چوب این طراحی ملموستر شود
    فرض اول: فرض کنید شما مسئول طراحی یک پروژه Win Application هستید و فرض کنید که این پروژه نیمه سنگین حدود 100 فرم را داراست که تک تک این فرمها با دیتابیس نرم افزار ارسال و دریافت اطلاعات می کنند.
    فرض دوم: ضمنا نرم افزار بر روی شبکه نصب و ران شود و روزانه تعداد زیادی کاربر (مثلا 100 نفر) از آن استفاده کرده و Data Entry و یا ویرایش و یا گزارشگیری نمایند .
    فرض سوم: و فرض می کنیم که پلاتفرم شبکه (سرور - سوئیچ و کابلها و ...) در وضعیت ایده ال کار می کنند.
    فرض چهارم: این تاپیک در قسمت Ado ایجاد شد تا این موضوع را مستقل از اینکه زبان برنامه نویسی شما چیست ، بررسی کنیم ، تا چنانچه نمونه کدی ارائه کردید ف به همان زبان مورد نظر خودتان باشد (البته حتما با یکی از زبانهای Visual Studio.net)
    فرض پنجم: اصلا قصد مقایسه انواع دیتابیسها در تناسبشان با این نرم افزار را نداریم (Access یا Sqlserver یا Oracle) اما شما در مورد استفاده کد نویسی مختص این دیتابیسها (مثلا استفاده از Store Proceduer در Sqlserver) و عملکرد مناسبتر نرم افزار صحبت کنید .
    در تک تک فرمهای برنامه مذکور، کلیدهای متفاوتی موجود خواهد بود که همه آنها می خواهند با دیتابیس ارتباط گرفته و عملیات محوله (Insert - Update - Delete - Select) را انجام دهند . به نظر شما نحوه نوشتن کدهای Dataset ، DataAdaptor ، Reader ، Execute ها و Connection ها , و محلهای ایجاد آنها و کانکت شدنهای فراوان در این برنامه را با توجه به مسائل فوق چگونه باید انجام داد .
    آیا صحیح است که برای تک تک کلید ها ، هر بار دیتاست ایجاد کرد و کانکشن باز کنیم و دیتا آداپتور ها را Fill کنیم و آنگاه کانکشن را ببندیم و ... و با این نوع کد نویسی تراکنشهای نرم افزار در محیط شبکه را بالا ببریم و افت سرعت محسوس را شاهد باشیم ؟ اگر جوابتان به این سوال منفی است ، شما بگوئید چگونه اینگونه کدنویسی را پیاده سازی کنیم
    با احترام

  2. #2

    نقل قول: مناسبترین روش کد نویسی دیتابیس پروگرامینگ کدامست

    با سلام

    قبل از هر اظهار نظری باید بگم که هر چیزی اینجا مینویسم نظر شخصی بنده است که البته از رو تجربیات شخصی (هر چند انک) بوده و شاید تعدادی از اساتید مخالف این موارد باشند.

    یکی از مواردی که بین دوستان برنامه نویس زیاد دیدم این هست که برنامه رو اصولی به دیتابیس bind نمیکنن. به عنوان مثال خیلی جاها دیده شده که یک دیتاگریدویو روی فرم گذاشته شده و بجای اینکه به دیتاست بایند بشه , تک تک رکوردها با یک حلقه بصورت دستی بهش اضافه شدند. این موضوع وقتی که تعداد رکوردها زیاد نباشند زیاد ملموس نیست ولی اگه رکوردها زیاد باشند , این روش برنامه رو بسیار کند میکنه , مخصوصاً در حالت شبکه!!

    مورد بعدی هم اینه که فکر میکنم استفاده از کلاسهای ado.net (بطور خالص) در روند اجرا و سرعت برنامه بهتر باشه تا اینکه با کلاسهای کانکشن , کامند و ... یک یا چند کوئری رو به دیتابیس بفرستیم و نتیجه رو بگیریم.

    باز هم میگم اینها همه نظرات شخصی بنده است.
    با تشکر

  3. #3
    کاربر دائمی
    تاریخ عضویت
    آبان 1386
    محل زندگی
    مشهد
    پست
    232

    نقل قول: مناسبترین روش کد نویسی دیتابیس پروگرامینگ کدامست

    سلام دوسته من
    بحث خوبی را شروع کرده اید
    به نظر من اگر از کلاس های داده توکار دات نت استفاده کنید مناسب میباشد و باید این رو هم در نظر گرفت که کلاس ها واسه محصولات مایکروسافتی مثل Sql server بهینه سازی شده اند نه محصولاتی مثل oracle
    اگه بخواهیم پروژه رو خیلی بزرگ تر کنیم باید کلا پلت فرم عوض شه و با java EE و Oracle کار بشه دیگه محصولات مایکروسافتی جواب نمیده (مثل برنامه مورد در اکثر بانک های کشور)
    در هر حال پروژه ای که شما مطرح کردید در سطح متوسطه و همون زبان های .NET و Sql جواب میده
    اما در بحث شبکه و زیاد بودن کاربران باید مباحثی همچون transaction ها ، DRP (Disater recovery plan) و data integrity رو مد نظر داشت. تا مشکلی واسه برنامه پیش نیاد.

  4. #4
    کاربر تازه وارد
    تاریخ عضویت
    تیر 1386
    محل زندگی
    مشهد
    پست
    41

    نقل قول: مناسبترین روش کد نویسی دیتابیس پروگرامینگ کدامست

    به نظر دوستان برای توسعه نرم افزاری با فرضیات فوق کدام روش ارتباط با دیتابیس بهتره ado.net یا linq یا ef

  5. #5
    کاربر دائمی آواتار linux
    تاریخ عضویت
    بهمن 1381
    محل زندگی
    تهران
    پست
    2,313

    نقل قول: مناسبترین روش کد نویسی دیتابیس پروگرامینگ کدامست

    نقل قول نوشته شده توسط ashkan209 مشاهده تاپیک
    دوستان سلام
    قصد داریم بهترین و مناسبترین تکنیکهای برنامه نویسی دیتابیس با Ado.Net را بررسی کنیم ، و میخواهیم بدانیم چگونه کد نویسی های مربوط به کاربرد Ado.net را انجام دهیم که یک برنامه استاندارد مهندسی سده و با سرعت مناسب ارائه نمائیم .
    به همین خاطر چند تا فرض اولیه را مطرح میکنیم ، تا چهار چوب این طراحی ملموستر شود
    فرض اول: فرض کنید شما مسئول طراحی یک پروژه Win Application هستید و فرض کنید که این پروژه نیمه سنگین حدود 100 فرم را داراست که تک تک این فرمها با دیتابیس نرم افزار ارسال و دریافت اطلاعات می کنند.
    فرض دوم: ضمنا نرم افزار بر روی شبکه نصب و ران شود و روزانه تعداد زیادی کاربر (مثلا 100 نفر) از آن استفاده کرده و Data Entry و یا ویرایش و یا گزارشگیری نمایند .
    فرض سوم: و فرض می کنیم که پلاتفرم شبکه (سرور - سوئیچ و کابلها و ...) در وضعیت ایده ال کار می کنند.
    فرض چهارم: این تاپیک در قسمت Ado ایجاد شد تا این موضوع را مستقل از اینکه زبان برنامه نویسی شما چیست ، بررسی کنیم ، تا چنانچه نمونه کدی ارائه کردید ف به همان زبان مورد نظر خودتان باشد (البته حتما با یکی از زبانهای Visual Studio.net)
    فرض پنجم: اصلا قصد مقایسه انواع دیتابیسها در تناسبشان با این نرم افزار را نداریم (Access یا Sqlserver یا Oracle) اما شما در مورد استفاده کد نویسی مختص این دیتابیسها (مثلا استفاده از Store Proceduer در Sqlserver) و عملکرد مناسبتر نرم افزار صحبت کنید .
    در تک تک فرمهای برنامه مذکور، کلیدهای متفاوتی موجود خواهد بود که همه آنها می خواهند با دیتابیس ارتباط گرفته و عملیات محوله (Insert - Update - Delete - Select) را انجام دهند . به نظر شما نحوه نوشتن کدهای Dataset ، DataAdaptor ، Reader ، Execute ها و Connection ها , و محلهای ایجاد آنها و کانکت شدنهای فراوان در این برنامه را با توجه به مسائل فوق چگونه باید انجام داد .
    آیا صحیح است که برای تک تک کلید ها ، هر بار دیتاست ایجاد کرد و کانکشن باز کنیم و دیتا آداپتور ها را Fill کنیم و آنگاه کانکشن را ببندیم و ... و با این نوع کد نویسی تراکنشهای نرم افزار در محیط شبکه را بالا ببریم و افت سرعت محسوس را شاهد باشیم ؟ اگر جوابتان به این سوال منفی است ، شما بگوئید چگونه اینگونه کدنویسی را پیاده سازی کنیم
    با احترام
    مهم نیست که win app هست یا web app با این شرط که تحت شبکه هست و تعداد کاربرها برنامه شما زیاد هست بهتر هست که برنامه شما دو قسمت باشه.
    یک قسمت سرور، یک قسمت کلاینت. قسمت سرور منظور محل ذخیره دیتانیست قسمت سرور باید یک وب سرویس باشه که از یک طرف با دیتابیس ارتباط داره و از طرف دیگر با کلاینتها
    فرض که شما دات نت استفاده می کنید. برای این قسمت از wcf استفاده کنید برای درست کردن وب سرویس‌ها. حالا برای همه ۱۰۰ فرم و ۴ عملیات اصلی شما باید وب سرویس ایجاد کنید. برای این وب سرویس ها و اتصالش به دیتابیس من پیشنهادم EF هست. سرعت توسعه نرم‌افزار به نظر من خیلی مهم هست. ولی کندی سرعت EF به Ado.net کاملا قابل چشم پوشی هست.
    در سمت کلاینت شما اصلا با دیتابیس ارتباط مستقیمی ندارید از طریق وب سرویسها کارتون را انجام می دهید. دوست داشتید پیغام خصوصی بذارید تا بیشتر توضیح بدم.

  6. #6

    نقل قول: مناسبترین روش کد نویسی دیتابیس پروگرامینگ کدامست

    با سلام
    اگه میشه بیشتر توضیح بدید که چگونه می شه با وب سرویس در کلاینتها ارتباط داشت و لی سرعت نرم افزار کم نشه و برای کاربر ملموس نشه که برنامه کنده؟

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •