ورود

View Full Version : انتخاب یه فریم ورک



Marjan_pr
پنج شنبه 07 شهریور 1392, 18:57 عصر
آیا برای نوشتن یه اپلیکیشن تحت وب ( ونه یه وب سایت ) ASP.net MVC مناسبه یا نه ؟
آیا قابلیت هایی که میشه در ویندوز اپلیکیشن پیاده کرد و ابزارهای مشابه موجود در اون در ASP.net MVC هم وجود داره ؟؟
کلا مزیت و معایب نوشتن وب اپلیکشن با ASP.net MVCچیه ؟

( یه سوال مهم. برای یه وب اپلیکیشن که سورس صفحات روی سرور برای مشتری در دسترس است چطور باید محدودیت یا همون قفل گداشت ؟‌)

ممنونم

http://intext.nav-links.com/images/spinner-ani48.gif

Marjan_pr
جمعه 08 شهریور 1392, 12:57 عصر
جالبه ! تا الان 63 نفر این تاپیک رو مشاهد کردن . ولی کسی جواب نداده

hakim22
جمعه 08 شهریور 1392, 15:38 عصر
منظور شما از اپلیکشن تحت وب دقیقا چیه !؟
یک Web application دو حالت داره ، یا در اینترنت اجرا میشه تا اینترانت و نیاز به IIS یا Apache که اونو سرویس بده. معمولا هم به یک بانک SQL وصله .
یک Web application دو قسمت داره ، سمت سرور و سمت کاربر (Client) در سمت سرور محدودیت شما به محدودیت تنظیمات IIS برمیگرده و معمولا در اینترنت که سایت شما در یک Host قرار میگیره باید از قوانین و محدودیت های اونها پیروی کنه
اما اگر در یک شبکه ی داخلی قرار میگیره دست شما بازه و میتوانید سرویس های مختلفی ارائه کنید. به سخت افزار و نرم افزارهای مختلفی وصل بشید و خدمات ارائه کنید.

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

الان تکنولوژی جاوا اسکریپت و HTML5 و CSS3 امکان طراحی نرم افزارهای بسیار قدرتمندی رو میده که کاملا در سمت کاربر اجرا میشه و عملا نیازی به مرورگر هم نداره . در مورد Node.js تحقیق کنید. Backbone.js و Knockout که همه فریم ورکهای جاوا اسکریت هستند چنین کارهایی رو ممکن میکنند. این زمینه به Single page web application شهرت داره و کم کم دیگه برای نوشتن برنامه برای اندروید و آیفون هم میشه ازش استفاده کرد.

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


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

برای برنامه نویسی سمت سرور بهترین ASP.MVC هست. مخصوصا برای کسی که با #C کار کرده است.
برای برنامه نویسی سمت کلاینت چند راه دارید. اول اینکه باید جاوا اسکریپت و HTML5 و CSS3 رو بدونید. با وجود اینکه اسمهای گردن کلفتی دارند اما میشه با حد اقب دانش شروع به کد نویسی و طراحی Web Application کنید.

در ادامه باید انتخاب کنید که میخواهید برنامه نویسی شما کاملا با JavaScript انجام بشه یا ترجیه میدید از Adobe Flash یا Silverlight استفاده کنید. این قسمت معروف به RIA هست که برای زیباسازی و طراحی UI از اون استفاده میشه.
بدون یکی از این سه مورد عملا شما هیچ سایتی نمیتوانید استفاده کنید معمولا هم همه از JavaScript استفاده میکنند.

راه دیگه اینه که به سمت Silverlight برید و همه ی سایت رو با این محیط طراحی کنید. این تکونولوژی خیلی پیچیده تر از windows form یا حتی WPF هست و برای حرفه ای شدن در اون باید مدتها وقت بگذارید و اصولا یک برنامه نویسی حرفه ای باشید. اما در نهایت میتوانید یک نرم افزاری تحت وب طراحی کنید که درون مرورگر یا بیرون از اون اجرا میشه و فول اسکرین میشه و به هارد کاربر کاملا دست رسی داره تحت وب هم کار میکنه ! و هیچ محدودیتی در کار با سخت افزار روی رایانه ی کاربر نداره و همه ی کدهاش هم باینری هست و مثل Win form تبدیل میشه به چند dll

برای استفاده از Silverlight شما کافیه یک وب سایت با حداقل یک صفحه بسازید و درون اون اولین صقحه ی سیلورلایت رو قرار بدید. کاربر هروقت وارد سایت شما میشه برنامه ی سیلورلایت اجرا میشه و بعد همه ی صفحات درون سیلورلایت با زبان #C و البته زبان XAML نوشته میشه. اما برای دسترسی به SQL نیاز دارید که در ASP کد نویسی کنید و از طریق سرویس یا WebAPI اونارو به سیلورلایت ببرید.

Marjan_pr
یک شنبه 10 شهریور 1392, 01:49 صبح
ممنونم جناب hakim22 . توضیح شما کاملا مفصل و تقریبا کامل بود .
هدف من طراحی یک نرم افزار حسابداری مالی حدودا بزرگ است . به زبان C#‎ تقریبا مسلط هستم . کندی اجرای برنامه های نوشته شده با Net بعلت Native نبودن باعث شده بفکر انتخاب یه روش دیگه برای پیاده سازی این برنامه باشم . اپلیکیشنی که وقتی یه شرکت اونو تهیه کرد ،کاربرانش بتونن از هرجایی بدون نصب ، تحت Lan یا Internet بهش دسترسی داشته باشن . من سورس اصلی رو باید بهشون تحویل بدم تا روی سرورشون نصب کنن . در این حالت بود که پرسیدم میشه روی سورس های Asp.net محدودیت گذاشت که مثلا یه مشتری نتونه چند تا کپی از روی سرور خودش بگیره و ...

یه سری کامپوننت واسه Net مثل DevExpress هستن که امکانات بسیار زیادی دارن . آیا با HTML5 یا Silverlight یا Javascript ... میشه مشابه امکانات این کامپوننت ها رو داشت ؟؟ اینکار مستلزمه کد نویسی زیادیه ؟!

کلا برای انجام این پروژه چه روشی رو پیشنهاد میکنین؟ ممنونم
http://intext.nav-links.com/images/spinner-ani48.gif
http://intext.nav-links.com/images/dotclear.gif
http://intext.nav-links.com/images/intext-help5.png (http://intext.nav-links.com/help.html)
http://intext.nav-links.com/images/intext-close5.png


⇨ Boost Up Your Download!
http://intext.nav-links.com/images/intext-thdefault3.png Optimize & Boost PC in 1 Click. Fast, Easy, 5 Star User Rated!

click here

SpeedAnalysis.net



http://intext.nav-links.com/images/box-arrow-lb2.png

hakim22
یک شنبه 10 شهریور 1392, 17:22 عصر
اگر به سایت DevExpress سربزنید میبینید که برای Silverlight و JavaScript هم ابزار بسیار زیاد و متنوعی طراحی کرده و در کنار پک اصلی قابل دانلود که تقریبا تمام نیازها رو برطرف میکنه.

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

استفاده از Javascript بهترین گزینه است.ولی پیشنهاد من این است که حجم استفاده از ASP.MVC رو کمتر کنید و از WebAPI و فریم ورکهای سمت کلاینت مثل Node.JS و KnockOut استفاده کنید. لازم است که خیلی جدی وارد مباحث برنامه نویسی جاوا اسکریپت و قابلیت های موجود در HTML5 شوید.

کدهای سمت سرور در محیط ASP تبدیل به چند فایل DLL میشوند. سورس این فایلها کاملا باینری و دور از دسترس خریدار سایت شماست. این کدها قسمت اصلی کار با بانک و کنترل داده هارو انجام میدهند و هر سرویسی اول باید از درون متدهای سمت سرور عبور کنه و بعد به کاربر برسه.

روی نصب میتوانید کنترل زیادی داشته باشید. مثلا اینکه کل سایت فقط برای یک دامنه ی خاص کار کند. یا بعد از اجرا در IIS سخت افزار یا فایل خاصی را چک کند. و ...