PDA

View Full Version : گفتگو: آینده برنامه های دسکتاپی؟



R_Rajaee_Rad
یک شنبه 22 بهمن 1391, 12:49 عصر
سلام
با گسترش روز افزون اینترنت و همچنین پهنای باند توی دنیا و عطف به اینکه برنامه ها دارن کم کم جای خودشون رو به سرویس ها میدن(مثل آفیس آنلاین) ...یاد گرفتن معماری ها و تکنولوژی های دات نت یه ریسک نیست؟
آیا فقط ASP.NET MVC میتونه یه برگ برنده در آینده باشه؟

daneshjo90
سه شنبه 24 بهمن 1391, 22:38 عصر
با سلام
با کسب اجازه از اساتید بزرگوار

درسته بنده در اون حدی نیستم که بخوام نظر بدم اما با این وجود آره مثل اینکه فقط باید به سمت طراحی وب بریم

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

ولی با این حرفا نباید ناامید شد و به کار خودمون که برنامه نویسی تحت ویندوز(دسکتاپ) هست ادامه بدیم

با آرزوی موفقیت برای همه برنامه نویس های عزیز

موفق باشی

R_Rajaee_Rad
شنبه 28 بهمن 1391, 14:46 عصر
منتظر پاسخ سایر دوستان و اساتید صاحب نظر نیز هستیم

FreeMagic
شنبه 28 بهمن 1391, 16:39 عصر
حرف شما متین ولی برنامه نویسی سنتی هم باز نیازه
ببینید من الان یه برنامه دارم برای یه شرکت مینویسم. پایگاه داده اون رو سر یه هاست قرار دادم و هر بار که برنامه اجرا میشه در صورت وصل بودن اینترنت با اون هاست ارتباط برقرار کرده و ....
دیگه مهم نیست شخص مورد نظر خونه هست یا شرکت، سطح دسترسی اون چه قدر هست و ... فقط کافیه برنامه رو روی سیستم مورد نظر نصب کنه و خط اینترنت داشته باشه که بتونه کار کنه
خوب این الان نه برنامه دسکتاپ هست (چون دیتابیس نه روی همون سیستم هست و نه روی شبکه محلی) و نه طراحی وب (مثل php یا asp.net )
با وجود گسترش پهنای باند و ... در نهایت همچین برنامه هایی خیلی کاربردی هستن. اگر فرض کنیم همچین برنامه ای رو من میخواستم به صورت سایت ارائه بدم تقریبا دو برابر زمان می برد و همچنین کنترل خوبی روی خطاها نداشتم ولی چون به این صورت عمل کردم علاوه بر اینکه زمانی برای طراحی به هدر نرفت روی خطاها هم کنترل کامل داشتم
با این حال فکر میکنم این روشی که من انجام دادم تا مدت ها قدیمی نمیشه و قابل استفاده هست مگر اینکه بعدا تکنولوژی فراتر از طراحی وب برای این جور کارها بیاد.
هرچند بنده هم تازه کار هستم ولی مشتاقم نظر بقیه دوستان رو هم در این زمینه و کاری که من کردم رو بدونم

the king
شنبه 28 بهمن 1391, 18:09 عصر
غول های نرم افزاری و سخت افزاری با هم همکاری می کنند و به اصطلاح به هم نون قرض می دهند تا بازارشون حفظ بشه. تکنولوژی بهتر
و جدیدتر باید تامین کننده منافع خودشون و شرکای تجاری شون باشه، منفعت شون رو فدای منافع مشتری شون نمی کنند.
اگر قرار باشه در همه نرم افزار ها پردازش سمت کلاینت کاهش پیدا کنه، شرکت های سخت افزاری نمی توانند در بازار کامپیوتر های خانگی
روی پردازشگر های قوی تر و سریعتر مانور بدهند. نیاز کاربر عادی به سخت افزار های قوی تر و سریعتر باید همواره حفظ بشه، چه منطقی و عادلانه
و چه غیر منطقی و ناعادلانه. در نتیجه شرکت های نرم افزاری بزرگ و تاثیر گذار در بازار هم کاری انجام نمی دهند که بازار شرکای سخت افزاری شون
رو با مشکل مواجه کنه و در نتیجه بازار Application software رو هم حفظ خواهند کرد.

vahid2112
شنبه 28 بهمن 1391, 20:35 عصر
سلام
شما چند سال دارید؟
شما فکر میکنید چند سال نیازه تا این تغییر و تحولات در دنیا و ایران رخ بده؟
من و شما چند سال دیگه عمر میکنیم؟
......

برای انتخاب هیچ وقت دیر نیست ولی زمانی که انتخاب میکنید محکم و استوار به راه خود ادامه دهید مگر اینکه نیاز به تغییر باشد!

اینها از یک طرف و از طرفی نکته مهم تر پرورش ذهن است و لذت بردن از یادگیری و البته کسب درآمد که آدمی رو مجبور به تغییر میکند.
پس در دنیای علم بدنبال چیزهای نو و کاربردی برو و اینرا به خاطر بسپار که:
مثل کبوتر به تمامی آسمان پرواز کن ولی یادبگیر که کبوتر یک بام باشی!

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

Arash_janusV3
یک شنبه 29 بهمن 1391, 23:44 عصر
درود بر دوستان
ابتدا یک مقدمه ای راعرض می کنم
در دنیای امروزی و با این پیشرفت تکنولوژی دیگه فرقی نمی کنه یک نفر c یاد می گیره یا C#‎ یا VB یا php و ...
همه اینها روند خودشون را همراه با تکنولوژی طی می کنند
و به نظر من هیچ خطری برای همه زبانها وجود ندارد چون اگر کسی VB را به صورت حرفه ای بلد باشه و مشکلی برای این زبان به وجود بیاد
به راحتی می شه هر آنچه وجود داره را به سی شارپ و ... تبدیل کرد و یاد گیری زبان جدید هم خیلی زمان بر نیست(در حد متوسط)
جدا از این مسئله چیزی که به تازگی از فهمیدنش من را حیرت زده کرده اینه که نرم افزاری ارائه شده که فتوشاپ را به HTML تبدیل می کنه !!!!
پس ببینید هیچ فرقی نمی کنه شما از کجا شروع می کنید ولی مهم اینه که واقعا شروع کنید
برای برنامه های دسکتاپی که بحث اصلی هستش باید بگم روند رو به رشدی را طی کرده و به نظرم هنوز جا داره تا به نهایت برسه
و روزی می رسه که به راحتی بتوان پروژه ها را در وب هم اجرا کرد البته بدون تبدیل به تحت وب
الان هم با تکنیکهایی می توان این کارها را انجام داد ولی به طور غیر مستقیم
به نظرم چیزهایی که خیلی مهم هستند و باید در آنها جدیت به خرج داده بشه اینه که
1_هر چه سریعتر شروع کنیم
2_ما به چه زبانهایی علاقه داریم درست و غلط اون مهم نیست به اندازه کافی ابزار وجود داره برای رهایی از بحران
3_از مقاله های زبان اصلی غافل نباشیم
4_در حد کلی اطلاعات به روزی داشته باشیم در مورد هر چیزی که به تکنولوژی کامپیوتر مربوط می شه

باور کنید همه چیز در شروع کردن خلاصه می شه و در ادامه دادن کامل تر می شه
با سپاس

Mr.Programmer
یک شنبه 29 بهمن 1391, 23:52 عصر
به نظر من برنامه نویسی دستکاپی که تحت شبکه و اینترنت باشه بازار کاره خیلی خوبی داره !!!!
من خودم هم علاقه شدیدی به برنامه نویسی تحت شبکه دارم و تازه میخوام شروع کنم

کامبیز اسدزاده
پنج شنبه 03 اسفند 1391, 22:38 عصر
از نظر من برنامه نویسی تحت دسکتاپ زمانی در خطر خواهد بود که همه چیز در حالت Offline صورت بگیره , برای مثال شما نرم افزاری رو در نظر میگیرید که تحت دسکتاپ بنویسید اگر این نرم افزار فقط و فقط در حالت آفلاین کار کنه و مشتری یا کاربر از این نرم افزار فقط بر روی یک سیستم و به صورت آفلاین استفاده کنه خب این عادیه که اگه فردا یک نرم افزاری تحت وب با همون شرایط بیاد نرم افزار تحت دسکتاپ زیاد قابل استفاده نمیشود زیرا یک برنامه تحت وب آنلاین هر لحظه در دسترس است.

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

شرایط نرم افزار تحت دسکتاپ موفق :

1.قابلیت اتصال به سرور - برای ذخیره سازی اطلاعات در هر لحظه به صورت آنلاین و همچنین استفاده از آن به صورت آفلاین (تا اینجای کار 50% خطر شکست پروژه شما رفع شده / خیالتون راحت)
2.قابلیت ارائه امکانات تحت وب بر روی پروژه شما / برای مثال امکاناتی رو که بر روی یک سیستم تحت وب دارید شما بر روی نرم افزار خود تعبیه نمایید 100% کارآمد خواهد بود.
3.اگر نرم افزار شما امکانات تحت وب رو ارائه بده 100% 1 قدم نه 100 قدم بهتر از نرم افزار تحت وب خواهد بود بنا به دلایل زیر :


نرم افزاری رو تحت وب و دسکتاپ در نظر بگیرید : خب حالا مشکلات امنیتی و. همچنین سرعت / قدرت پردازش / زمان پاسخگویی / محدودیت حافظه ارسال و دریافت و موارد دیگه رو در نظر بگیرید ... خب کاملا مشخص است نرم افزار تحت دسکتاپ خیلی قویتر و سریعتر و همچنین در آرامش و امنیت خیلی بهتر از سیستم تحت وب استفاده میشه.
حالا بحث اینکه اقا ما وب رو پیشنهاد میدیم به خاطر سرویس های وب مثل ارسال اس ام اس / ایمیل و ... نمونه عمومی و رایجش رو مثال میزنم : نرم افزار Microsoft outlook برنامه ای برای ارسال و دریافت ایمیل همانند سیستم های تحت وب / که خیلی کارآمد هست / این نرم افزار رو من شخصا به 100 جور سیستم ایمیل تحت وب مثل Gmail / Yahoo و ... ترجیح میدم / دلیل ؟ خب سرعت / دقت / دسترسی سریع ! دقت داشته باشید هرچقدر پهنای باند بیشتر باشه سرعت استفاده از سرویس تحت وب آنچنان تغییر نمیکنه ! شما به یه نرم افزار میتونیدبا حداقل پهنای باند کلی دیتا ارسال و دریافت کنید درحالی که در تحت وب خود مرورگر دردسرها و مشکلات خودش رو داره.



جا برای توضیح زیاده و بنده هم زیاد وقت توضیح ندارم چون دقیقا همین لحظه حدود 25 ماه هست روی پروژه ای تحت دسکتاپ کار میکنم که تمام شرایط سیستم های تحت وب رو داره ! و ایده ای بسیار نوین هم هست برای مثال یک مثال ساده : سیستم Cloudy این سیستم رو من بر روی نرم افزار خودم تعبیه کردم و خیالم راحته که هر نرم افزاری تحت وب هم بیاد غیرممکنه نرم افزار تحت دسکتاپ رو کنار بزنه ! یا مثلا استفاده از موتور قدرتمند بانک اطلاعاتی MySQL که 100 بهتر از موتور SQL Server هست چون محدودیت سیستم عاملی و سروری ندارد ! شما میتونید فقط و فقط با داشته موتور دیتابیس نرم افزار خود در لینوکس و ویندوز (MySQL) به صورت کاملا حرفه ای استفاده نمایید ولی متاسفانه برنامه نویسان نمیدونم تو این SQL Server چی دیدن که گیر دادن به این ! برای مثال فردا شما نرم افزارتون رو اومدین نصب کردین و سرور شرکت یا سرویس شما لینوکس بود (UNIX) چیکار میکنید ؟ کل برنامرو باید بندازید دور و برید تحت وبش رو کار کنید و یا از اول دیتابیس رو بیخیال شید و MYSQL کار کنید !!! :)) خب اگه شما قشنگ سیستم های تحت وب پیشرفته رو بررسی کنید میتونید با تعبیه نمودن موارد مهم نرم افزار تحت دسکتاپ خودتون رو به بهترین صورت ارائه بدین.


توصیه بندهبرای دوستان گل قلاب : قبل از آغاز برنامه نویسی تمرکز کنید و خودتون رو جای مشتری بذارید و موارد زیر رو در برنامه هاتون یادتون نره !
1.تا جایی که میتونید نرم افزار خود رو مجهز به موتور دیتابیس MySQL بکنید.
2.سیستم اتصال به دیتلابیس رو فقط بر روی لوکال ننویسید امکان اتصال به سرور تحت پورت و سیستم عامل های لینوکس و ویندوز قرار دهید.
3.سیستم اتصال به انواع سرویس های تحت وب مثل / اس ام اس / ایمیل / و ... رو از یاد نبرید مهم هستن !
4.امکان آپدیت به صورت آنلاین حتما تعبیه نمایید.
5.از حالت ابری - Cloudy استفاده کنید / این امکان باعث میشه نرم افزار شما توسط کاربران نامحدود در هر لحظه استفاده بشه دقیقا مثل سیستم های بانکی در داخل شبکه اینترانت ! این خیلی مهمه


این امکانات بر روی پروژه شما باشه امکان نداره پروژتون کم بیاره ... یه سری به نرم افزار های خود ویندوز بزنید میبینید که مخصوصا در ویندوز 8 اکثرا امکانات آنلاین دارند.




موفق باشید.

کامبیز اسدزاده
پنج شنبه 03 اسفند 1391, 22:45 عصر
البته دوستان یک اصل مهم و خیلی مهم یادم افتاد ! اگه پروژه شما حالت CRM باشه دیگه هیچ سیستمی نمیتونه جولودارش باشه.
در رابطه با CRM هم توضیح اگه لازم بود براتون درخواست بدین توضیح میدم.

f.beigirad
پنج شنبه 03 اسفند 1391, 23:49 عصر
با توجه به این که من خیلی خیلی تازه کارم و از این فرمایشات دوستان چی زیادی دستگیرم نشد ولی بلاخره اول راهم و اگر قراره چیزی یاد بگیرم ترجیح میدم زبانی رو یاد بگیرم که رو به پیشرفته حالا حالا ها پیشرفتش متوقف نمیشه.

این CRM چیه ک هیچ سیستمی نمیتونه جلودارش باشه؟؟؟؟؟؟؟؟؟؟؟؟؟

ممنون میشم پاسخ بدین

کامبیز اسدزاده
جمعه 04 اسفند 1391, 01:38 صبح
دوست عزیز منظور از CRM = Customer relationship management

یعنی نرم افزاری که شما مینویسی سعی کنید قابلیت اتصال به صورت مستقیم و پویا رو به سیستم های دیگر داشته باشه برای مثال نرم افزاری تحت دسکتاپ مینویسید که مثلا کار مدیریت ISP رو انجام میده... جالا این ISP اگه بخواهد حساب های ADSL کاربراش رو مدیریت کنه با استفاده از CRM بتونه عملیات موجود بر روی سایت و ارسال ها و داده های درخواستی رو بدون مراجعه مستقیم به وب سایت و سیستم های مبتدی بر وب رو انجام بده ! به این میگن CRM یعنی در کل نرم افزار قادر به یکپارچگی شدن رو داشته باشه در این صورت برنامه خیلی موفق خواهد بود برای مثال : بانک ملت / تمامی سیستم ها بر روی وب سایت هست در حالی که پردازش های اصلی بر روی سیستم CRM میباشد و کارمندان و مشتریان در هرجا و هر مکان میتوانند از طریق سایت و کارمندان از طریق نرم افزار های تحت شبکشون مدیریت رو انجام دهند.


در کل در نتیجه کلی میتونم اینجوربگم : یک دست صدا ندارد!‌ یعنی فقط #C صدا نداره در کنار این زبان های تحت وب رو هم یاد بگیرید و سیستمتون هماهنگ و یکپارچه باشه اونوقته که متحول میشود.

Mehdi Naderi
جمعه 04 اسفند 1391, 09:19 صبح
زیاد نگران بنامه نویسی دسکتاپ نباش دوست عزیز
در کشور ما هنوز سستم عامل غالب ٌWindows XP SP2 است
برنامه دیتایس اغلب برنامه های حسابداری مطرح SQL Server 2000
هنوز خیلی ها نمیدونن ویندوز 64 یتی چیه و یا مثلا پردازنده یک یا چند هسته ای تفاوتش چیه؟
و هنوزم که هنوزه مخابرات پشت قوضش تبلیغات اینترنت Dial Up رو داره