PDA

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



once4ever
یک شنبه 19 تیر 1384, 21:13 عصر
میخواستم بدونم بهترین روش برای برنامه نویسی تحت شبکه (مثلا حسابداری تحت شبکه) چه راهی هست؟
من بین vc#.net و ASP.NET دچار شک شدم . البته بخاطر نداشتن اطلاعات کافی راجب ASP.NET . اگه دوستان نظری دارند (البته معقول و با دلیل) ممنون میشم کمک کنند.

Kamran.K
یک شنبه 19 تیر 1384, 23:28 عصر
1. با توجه به کاربردی که دارید تصمیم بگیرید. این بدیهی است که در موردی که برنامه شما قرار است در یک شبکه LAN و با مثلا حداکثر 3 کاربر می‌بایست از VC# تحت پلتفرم Windows تولید گردد.
و اگر قرار است برای کاربرانی نوشته شود که از هم دور هستند بهترین انتخاب وب خواهد بود. البته در این حالت نیز گزینه‌های حرفهای دیگری مثل مدل client/server وجود دارد.
به هر حال آنچه که باعث می‌شود شما محیط و ابزار توسعه خود را انتخاب کنید: الف. نیازهای مشتری ب. توانایی‌های تیم توسعه ج. آینده‌ی پروژه و امکان توسعه آن

2. این سناریو رو در نظر بگیرین:
شما data layer و bussines tiyerتون رو می‌نویسید. (بخش اتصال به بانک اطلاعاتی و کدهای مربوطه و کدهای کلاسهای مربوطه و امثال آن) و سپس این امکان رو دارید که بخش UI (رابط کاربر) را هم برای windows و هم برای web بنویسید.

once4ever
سه شنبه 21 تیر 1384, 15:06 عصر
ممنون از جوابت (اگه بقیه دوستان هم کمک کنند ممنون میشم )
خوب برنامه من قرار در یک شبکه LAN و تحت پلتفرم ویندوز کار کنه و البته تمام قسمتهای برنامه در سمت سرور باشه و حتما بیشتر از 3 کلاینت با سیستم کار میکنند.
میشه لطف کنید دلیل اینکه گفتید باید از vc#.net استفاده کرد چیه؟ و چرا asp.net رو پیشنهاد نکردید چیه؟ تا اونجاییکه بررسی کردم asp.net از امنیت (کدها ) خوبی برخورداره (کدها کامپایل میشن ) و همینطور سمت سرور هستند و کاربر احتیاج نداره که برنامه خاصی رئو روی دستگاهش داشته باشه و همچنین میشه از اون داخل یک محیط وب استفاده کرد (علاوه بر شبکه LAN)

EhsanKhafan
سه شنبه 21 تیر 1384, 17:10 عصر
اول: VC#.NET نداریمC#.NET
دوم: ASP.NET برای طراحی وب سایت استفاده میشه اگه میخواهید یک ویندوز اپپلیکیشن داشته یاشید که تحت شبکه کار کند بهتره یک WEB service طراحی کنید. در ضمن C# یک زبان برای کد نوشتن ASp.NET نیز هست لذا مقایسه این دو تا با هم به نظرم غیر قابل قبوله چون از هم جدا نیستن.
سوم:اگر بین WEB service و یک Web Application(همون سایت خودمون) یکی رو بخواهی انتخاب کنی من فکر میکنم WEB Application(که با ASP.NET) میسازنش بهتره چرا که گفتی نمیخوای هیچ کدی سمت کلاینت ها نصب بشه.برای وب سرویس نیاز داری یک برنامه(مثل Yahoo Messanger) بر روی همه کلاینت ها نصب شده باشد.


برنامه نویسم خفن شده ها (ببینید چه شکلکایی میذاره. . .)
فعلا .

sh
سه شنبه 21 تیر 1384, 21:54 عصر
once4ever نوشته که :
دلیل اینکه گفتید باید از vc#.net استفاده کرد چیه؟

دوست عزیز هیچ فرقی نمیکنه که شما با Csharp کار کنی یا VB.NET نه در سرعت و نه در امکانات

هزاران بار در سایتهای مختلف راجب این موضع بحث شده این دو زبان صرفا از دوراه یکسان به مقصد می رسند میتونی در سایت IranASP.NET یه مقاله رو از برنامه نویسان خود ماکروسافت در این مورد بخونی

شما زبانی رو انتخاب کن که با اون آشنائی داری

once4ever
چهارشنبه 22 تیر 1384, 13:12 عصر
دوست عزیز هیچ فرقی نمیکنه که شما با Csharp کار کنی یا VB.NET نه در سرعت و نه در امکانات

هزاران بار در سایتهای مختلف راجب این موضع بحث شده این دو زبان صرفا از دوراه یکسان به مقصد می رسند میتونی در سایت IranASP.NET یه مقاله رو از برنامه نویسان خود ماکروسافت در این مورد بخونی

شما زبانی رو انتخاب کن که با اون آشنائی داری

دوست عزیز اگه یکم دقت میکردید به اصل سوال من اونوقت شاید احتیاج نبود این موضوع رو عنوان بکنید.


من بین vc#.net و ASP.NET دچار شک شدم




اول: VC#.NET نداریمC#.NET
دوم: ASP.NET برای طراحی وب سایت استفاده میشه اگه میخواهید یک ویندوز اپپلیکیشن داشته یاشید که تحت شبکه کار کند بهتره یک WEB service طراحی کنید.
دوست عزیز چجوری به این نتیجه رسیدی؟! یعنی نمیشه یک win-application نوشت که تحت شبکه هم کار کنه؟ ;)


در ضمن C# یک زبان برای کد نوشتن ASp.NET نیز هست لذا مقایسه این دو تا با هم به نظرم غیر قابل قبوله چون از هم جدا نیستن.
محیط c#.net یک محیطی برای طراحی ASP.NET هست و لی آیا این دو باهم یکی هستند؟! در توانایی و موقعیتهای مختلف یکسان عمل میکنند؟! بنظرم بهتر یکم تخصصی تر و با تفکر بیشتر نظرهامونو بگیم.


سوم:اگر بین WEB service و یک Web Application(همون سایت خودمون) یکی رو بخواهی انتخاب کنی من فکر میکنم WEB Application(که با ASP.NET) میسازنش بهتره چرا که گفتی نمیخوای هیچ کدی سمت کلاینت ها نصب بشه.برای وب سرویس نیاز داری یک برنامه(مثل Yahoo Messanger) بر روی همه کلاینت ها نصب شده باشد.
ببین حالا دیگه اومدی واسه خودت سوال درست میکنی! ;) قطعا سوال من انتخاب بین یک web application یعنی asp.net و win application یعنی c#.net هست.
ممنون میشم اگه پیشنهاداتونو با دلیل تخصصی تر بیان کنید و درضمن اصل سوال یادتون نره
بازم متشکرم

Inprise
چهارشنبه 22 تیر 1384, 15:19 عصر
میخواستم بدونم بهترین روش برای برنامه نویسی تحت شبکه (مثلا حسابداری تحت شبکه) چه راهی هست؟
من بین vc#.net و ASP.NET دچار شک شدم . البته بخاطر نداشتن اطلاعات کافی راجب ASP.NET . اگه دوستان نظری دارند (البته معقول و با دلیل) ممنون میشم کمک کنند.

وقتی سوالت رو ناقص و غیر صحیح مطرح میکنی قاعدتا" باید منتظر جوابهائی در خور هم باشی ؛ "بهترین" روش همیشه تابع نیاز و شرایط و منابع و محدودیتها و امکانات است . با سوال کردن در مورد سی شارپ و وب سرویس و ASP .NET ، هر جوابی که در مورد یک سیستم حسابداری تحت شبکه بگیری ، ارزش فنی نخواهد داشت . میشه با سی شارپ یک برنامه مبتنی بر شبکه نوشت ، میشه توش از وب سرویس هم استفاده کرد یا میشه یک برنامه وب ASP .NET مبتنی بر سی شارپ نوشت و میشه ... ؛ "بهترین" روش وقتی مشخص میشه که مولفه های نیاز و محدودیتها و شرایط و امکانات موجود و غیره مشخص باشن .

once4ever
چهارشنبه 22 تیر 1384, 17:27 عصر
وقتی سوالت رو ناقص و غیر صحیح مطرح میکنی قاعدتا" باید منتظر جوابهائی در خور هم باشی ؛ "بهترین" روش همیشه تابع نیاز و شرایط و منابع و محدودیتها و امکانات است . با سوال کردن در مورد سی شارپ و وب سرویس و ASP .NET ، هر جوابی که در مورد یک سیستم حسابداری تحت شبکه بگیری ، ارزش فنی نخواهد داشت . میشه با سی شارپ یک برنامه مبتنی بر شبکه نوشت ، میشه توش از وب سرویس هم استفاده کرد یا میشه یک برنامه وب ASP .NET مبتنی بر سی شارپ نوشت و میشه ... ؛ "بهترین" روش وقتی مشخص میشه که مولفه های نیاز و محدودیتها و شرایط و امکانات موجود و غیره مشخص باشن .
خیلی ممنون از جوابت.

خوب هنوز من منتظرمو

Delphi-Clinic
چهارشنبه 22 تیر 1384, 17:31 عصر
سلام

فکر کنم اگر یکبار دیگه جواب کامران عزیز رو بخونی کفایت می کنه.

once4ever
چهارشنبه 22 تیر 1384, 23:04 عصر
سلام

فکر کنم اگر یکبار دیگه جواب کامران عزیز رو بخونی کفایت می کنه.

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

Kamran.K
پنج شنبه 23 تیر 1384, 00:11 صبح
دوست عزیز، همه دارن راهنماییت میکنن!
ببین یه مثال: واسه بازکردن یک پیچ دقیقا از چه اچاری استفاده میکنی؟ جواب: بستگی داره به نوع پیچ (ممکنه با دست هم باز بشه)
به همین سادگی! ببین چی نیاز داری، چی باید بسازی، چی داری (از تجربه گرفته، تا ابزار و یا کارمندان مربوطه و ...) و ووو

مثالی در ارتباط با بانک‌های اطلاعاتی: حالتهای زیر رو در نظر بگیر:
- برنامه بسیار کوچک در حد نگهداری 10 هزار رکورد، استفاده تک کاربره و desktop: بانکی که میشود انتخاب کرد مثلا DBISAM.
- برنامه در حد نگهدار و پردازش 100 هزار رکورد، چند کاربره و تحت شبکه: Microsoft SQL Server
- برنامه سازمانی و میلیونها رکورد، توزیع گسترده، هزاران کاربر: Oracle

پس صرفا گفتن اینکه من عمو بیلی رو دوست دارم پس همه جا، همه کس، SQL Server درست نیست!

همونطور که اینپرایز گفت "بهترین" روش همیشه تابع نیاز و شرایط و منابع و محدودیتها و امکانات است.

پاسخ دقیق در صورتی مشخص میشه که یک لیست کامل از وظایف و نیازمندهی‌های پروژه و همچنین سایر مواردی که ذکر شد ارائه بدی.

dot_net_lover2
پنج شنبه 23 تیر 1384, 01:04 صبح
دوست عزیز به نظر من بزرگترین دلیل که میتونه تو را به سمت Web App ببره ، تبدیل Linux به سیستم عامل ملی در سالهای آینده است ، البته من یک چیزهایی راجع به ارائه Framework تحت Linux توسط Microsoft شنیدم که دوست دارم بدونم تا چه حد حقیقت داره.
ولی با شرایط موجود من Web App را پیشنهاد میکنم بخاطر اینکه در صورت عوض شدن OS ها فقط کافی است که یک سرور با سیستم عامل ویندوز داشته باشی.

Kamran.K
پنج شنبه 23 تیر 1384, 01:33 صبح
اگه قرار برنامه تحت شبکه کار کنه، Web app شما تنها در صورتی در سرور لینوکس و سیستم عامل تخیلی ملی کار خواهد کرد که فریم ورک دات نت تحت لینوکس پیاده سازی بشه (که یه خبری هایی هم هست). و در این صورت دیگه اهمیتی نداره که پروژه شما web app.net باشه یا win app.net. (البته اگر بخواهید در شبکه محلی اونو اجرا کنید و سرورتون هم لینوکس باشه).

dot_net_lover2
پنج شنبه 23 تیر 1384, 01:42 صبح
ولی تا اونجا که من میدونم وقتی Web App باشد و سرور ویندوزی باشد کلاینت نیاز به Framework و هرچیز دیگر ندارد .

Kamran.K
پنج شنبه 23 تیر 1384, 01:54 صبح
. . . تنها در صورتی در سرور لینوکس و . . . کار خواهد کرد که . . .

فرمایش شما متین

EhsanKhafan
پنج شنبه 23 تیر 1384, 10:19 صبح
نمیدونم once4ever چجوری این نتایج رو از حرفای من گرفتن ؟!! فارسی نوشتم؟!
دوست عزیز ار وب سرویس ها در ویندوز اپلیکیشن ها استفاده میشه، که البته را های دیگه هم برای تحت شبکه کردن یک win ap وجود داره(مثل استفاده از COM+ یا . . .)

به هر حال مقایسه شما بین ASP.NET و C#.NET نه تنها مبهمه بلکه غیر منطقی است. . .

once4ever
چهارشنبه 29 تیر 1384, 13:41 عصر
ممنون از جوابهاتون.
تا اونجایی که من متوجه شدم چون میخوام تمام قسمتهای برنامه سمت سرور باشه و کلاینت احتیاج به برنامه خاصی نداشته باشه از یک web application یعنی asp.net استفاده میکنم (حداقل در قسمت UI ) و برای قسمتهای داخلی برنامه (تماس با بانک و بیس برنامه ) هم میشه از vc#.net استفاده کرد هم از asp.net چون فکر کنم به خوبی این دوتا برنامه در کنار هم میتونند قرار بگیرندو باهم تبادل اطلاعات کنند!
خوب اگه نظری دارید ممنون میشم

Delphi-Clinic
پنج شنبه 30 تیر 1384, 08:29 صبح
من نمی دونم چطور توجه شما رو به یک نکته جلب کنم:

ASP.NET یک تکنولوژی توسعه وب رو دات نت است.
اما سی شارپ یک زبان برنامه نویسی از مجموعه زبانهای برنامه نویسی دات نت است.

برای استفاده و توسعه ASP.NET راهی بجز استفاده از زبانهای برنامه نویسی دات نت وجود ندارد.

undergroundcoder
جمعه 07 مرداد 1384, 01:11 صبح
Dige ehsan karo tamom kard raft