PDA

View Full Version : سوال: مشورت:یک برنامه بزرگ



mazaher5723
پنج شنبه 12 اردیبهشت 1392, 06:32 صبح
سلام دوستان و اساتید
دارم یک برنامه بازرگانی می نویسم.که باید رو 7 تا سیستم نصب بشه و یکیم سرور میشه 8تا.
بنظرتون چه راهای واسه شبکه کردنشون پیشنهاد می کنید؟
آیا نیاز به یادگیری برنامه نویسی سوکت هست؟

کامبیز اسدزاده
پنج شنبه 12 اردیبهشت 1392, 10:57 صبح
دوست عزیز برای اینکه شما رو پیاده سازی همچین سیستمی مشکلی نداشته باشین من توصیه میکنم بیخیال سوکت نویسی بشید...
ساده ترین روش استفاده از دیتابیس نویسی بر روی شبکه و ایجاد امکان دسترسی اطلاعات از طرف نرم افزار بر روی شبکه است برای این کار خیلی راحت میتونید با تعریف دیتابیس خودتون در شبکه و شناسایی دیتابیس بر اساس Connection String خاص خودش به راحتی تحت شبکه و با برنامه نویسی البته دسترسی ها و مجوز های لازم برای مدیران و کارمندان برنامه خودتون رو به بهترین صورت ارائه بدین.

مبین رنجبر
پنج شنبه 12 اردیبهشت 1392, 11:05 صبح
این نکته رو باید یادآوری کنم که طراحی شبکه کار برنامه نویس نیست.یعنی در حوزه وظایف اون قرار نمیگیرد.حتی در برنامه نویسی سوکت هم شما با این پیشفرض شروع به نوشتن میکنید که شبکه با استفاده از IP در حال کار است و مشکلی هم ندارد.

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

mazaher5723
پنج شنبه 12 اردیبهشت 1392, 11:13 صبح
نه دوست عزیز منظورم طرح شبکشون نیست منظورم اینه که دیتابیسی که طراحی کردمو چطو پیاده ازی کنم بهتره؟آیا نکته؟چیزی هست بهم بگید ممنون میشم

کامبیز اسدزاده
پنج شنبه 12 اردیبهشت 1392, 11:13 صبح
و علیک سلام...دوست عزیز

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

استفاده از سوکت نویسی پیشنهاد نمیشه چون شما با سوکت نویسی اصلا نمیتونید چیزایی رو که لازم دارین در مدیریت سیستم بازرگانیتون ارائه بدین.

سوالات رو در پست بپرسید تا مفید برای همه دوستانی که این سوال تو ذهنشون هست مفید باشد...

در این زمینه من تجربه خوبی دارم نمونه پروژم تو امضامم هستش که امکان دسترسی اطلاعات رو در انواع سیستم های شبکه / اینترانت / اینترنت و حتی ... Cloudy را دارد.
در رابطه با این موضوع میتونم راهنماییتون کنم.

mazaher5723
پنج شنبه 12 اردیبهشت 1392, 11:18 صبح
ببینید این نوع مدیریتی که شما میگید در خود sql وجود داره نیاز نیست ما کد نویسیشو کنیم.

کامبیز اسدزاده
پنج شنبه 12 اردیبهشت 1392, 11:23 صبح
ببینید این نوع مدیریتی که شما میگید در خود sql وجود داره نیاز نیست ما کد نویسیشو کنیم.

استفاده از سیستم های WIZARD که خود SQL در اختیار شما در حین طراحی میده روشی کاملا ساده و مختص برنامه نویسان مبتدی هست !!! اینگونه سبک مناسب برای برنامه نویسی نرم افزاری که قرار هست تو شبکه کار کنه مناسب نبوده و پیشنهاد نمیشود دوست عزیز‌ :لبخندساده:

mazaher5723
پنج شنبه 12 اردیبهشت 1392, 11:36 صبح
منظورم Login ها و مجوز دسترسی استفاده کنیم.من همیشه از راهی که شما می گید استفاده میکردم بنظرم باید از طریق Sql مدیریت شه.

کامبیز اسدزاده
پنج شنبه 12 اردیبهشت 1392, 11:41 صبح
منظورم Login ها و مجوز دسترسی استفاده کنیم.من همیشه از راهی که شما می گید استفاده میکردم بنظرم باید از طریق Sql مدیریت شه.

ببینید برای تک تک مواردی که در ذهن شما هست باید با دیتابیس کار کنید...

برای مثال : فرض کنید همین قضیه Login ... کاربر قبل از ورود به سیستم باید دسترسی های لازم رو داشته باشه این دسترسی ها از کجا فراخوانی و بررسی میشوند ؟ خب شما باید در دیتابیس از قبل دسترسی هایی رو اعمال کنید مثلا یک جدولی به نام Permissions قبل از ورود با استفاده از دستورات SQL شما مواردی مثل مثلا : full_access رو از داخل Permissions فراخوانی میکنید بعد از این عمل با دستورات خاصی مثلا یک IF مشخص میکنید که اگر مقدار بازگشت داده شده برابر مثلا ۱ بود خب اجازه ورود LOGIN به این کاربر یا مدیر داده شود...

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