PDA

View Full Version : با چه زبانی نرم افزارم رو بسازم؟



hsgpro
شنبه 08 آذر 1393, 19:57 عصر
سلام دوستان

من یه نرم افزار خوب به ذهنم آمده که برای اینکه کارش بگیره حتماً باید چندسکویی(Cross-Platform) باشه.زبان #C و VB.Net و PHP رو بلدم.
حالا می خوام بدونم چطوری و با چه زبانی می تونم برنامه Cross-Platform بنویسم که برخلاف جاوا سرعت اجرای بالایی هم داشته باشه؟ آیا میشه با زبان #C هم تو Qt کار کرد؟ اگر میشه چطوری و باید از کجا شروع کنم؟ آیا چیز بیشتری از خود زبان #C برای Qt باید یاد بگیرم؟ امکانات Net. مایکروسافت نیاز نیست نرم افزاری که می خوام بسازم نیاز به این امکانات نداره فقط سرعت بالا داشته باشه و Cross-Platform باشه.

Abbas Naghdi
سه شنبه 18 آذر 1393, 21:35 عصر
اول نرم افزارت برای چه دیوایس هایی هست ؟ موبایل یا تلت یا کامپیوتر یا وب یا ... ؟بعد چرا باید سرعت بالا باشه ؟ مثلا آنتی ویروسه یا نرم افزار تجاریه یا ... بعد از این ها جاوا سرعت اجراییش بالاست ... بستگی داره شما چی میخواین بسازینو بعد تر از اون اگه نرم افزارتون سرعت و کارایی بالا میخواد که C# و Qt به دردتون نمیخوره ... مثل بازی یا آنتی ویروس و یستم عامل و ... و بعد بعد بعد بعد Qt یه سکو و کتابخانه ی جداست که زبان استفاده کردن ازش C++ هست و C# یه فریمورک داره به اسم .net و اساسا زبان برنامه نویسی یا توسعه هست ... پس به Qt ربطی نداره ... و در آخر با این چیزی که من دیدم از صحبت های شما (البته کامل توضیح ندادین) برین سراغ زبان C چون هر چیزی که بخواین داره

pswin.pooya
پنج شنبه 20 آذر 1393, 11:06 صبح
بعد تر از اون اگه نرم افزارتون سرعت و کارایی بالا میخواد که C#‎ و Qt به دردتون نمیخوره

لطفا بدون مطالعه در مورد هیچی نظر ندید.

Qt از نظر سرعت فوقالعاده است. و نرم افزارهای زیادی امروزه داره باهاش نوشته میشه. از جمله اونها میشه به Viber برای دسکتاپ و کروم اشاره کرد.



و در آخر با این چیزی که من دیدم از صحبت های شما (البته کامل توضیح ندادین) برین سراغ زبان C چون هر چیزی که بخواین داره

البته من پیشنهادم C++ هستش. چون خیلی از کتابخونه های جدید برای C موجود نیستند. میشه به Qt و یا PhsyX و ... اشاره کرد.


بعد از این ها جاوا سرعت اجراییش بالاست
از جمله سرعتهای اجرایی بالای جاوا میشه به اندروید اشاره کرد. :لبخند: فرق سرعت جاوا و خانواده C فرق سرعت گوشی های اندروید با IOS هست. بیچاره سامسونگ یه پردازنده هشت هسته ای میذاره اما بازم از پردازنده 2 هسته ای اپل کم میاره.



امکانات Net. مایکروسافت نیاز نیست نرم افزاری که می خوام بسازم نیاز به این امکانات نداره فقط سرعت بالا داشته باشه و Cross-Platform باشه.

اگر سرعت بالا لازم داری و برنامه ای که میخوای بسازی UI لازم داره می تونی یا Qt یا دلفی رو امتحان کنی که البته Qt هم مدرنتر هست (من ورژهای حدید دلفی رو ندیدم) و هم اینکه کلا خانواده C توی سرعت حرف اول رو میزنن.


اما اگر UI لازم نداری و نمی دونم برنامه فقط الگوریتم یا ویروس هست و .... می تونید تنها از خود C/C++ استفاده کنی.

Abbas Naghdi
پنج شنبه 20 آذر 1393, 15:43 عصر
لطفا بدون مطالعه در مورد هیچی نظر ندید.

Qt از نظر سرعت فوقالعاده است. و نرم افزارهای زیادی امروزه داره باهاش نوشته میشه. از جمله اونها میشه به Viber برای دسکتاپ و کروم اشاره کرد.


با تشکر من مطالعه که هیچ خودم برنامه نویسی Qt در سطح حرفه ای انجام میدم و برای شرکسی که کار میکنم هم C#‎‎‎‎‎ کار میکنم
من نمیگم Qt سرعتش پایینه اما در مقایسه با C++‎‎‎‎‎ استاندارد یا VC++‎‎‎‎‎ یا C سرعتش کمتره ...
شما لطفا اول ببینید مضمون سوال چیه بعد جواب بدین




البته من پیشنهادم C++‎‎‎‎‎‎ هستش. چون خیلی از کتابخونه های جدید برای C موجود نیستند. میشه به Qt و یا PhsyX و ... اشاره کرد.

مدیر عزیز دوستمون اصلا معلوم نیست چه چیزی نیاز دارن بعد شما بر چه اساس C++‎‎‎‎‎ رو معرفی مکینید ... آیا C++‎‎‎ قابلیت پیاده سازی روی همه Device ها رو داره ... کاملا(No C++‎‎‎ Standard )
شاید این دوستمون ویروس میخواد بنویسه ... اصلا هم معلوم نیست روی چه Device قراره اجرا بشه پس بهترین گزینه C هست نه C++‎‎‎‎‎ ....





از جمله سرعتهای اجرایی بالای جاوا میشه به اندروید اشاره کرد.
:لبخند:
فرق سرعت جاوا و خانواده C فرق سرعت گوشی های اندروید با IOS هست. بیچاره سامسونگ یه پردازنده هشت هسته ای میذاره اما بازم از پردازنده 2 هسته ای اپل کم میاره.



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

و بعد از این همه Java بعد از C رو من پیشنهاد میکنم چون هم شی گراست هم از آخرین تکنولوژی های دنیا استفاده میکنه و آپدیت شده هست و هم روی هر Device اجرا میشه
اما قابلیت های C رو روی سخت افزار شاید نداشته باشه و ...

با سپاس

pswin.pooya
جمعه 21 آذر 1393, 00:36 صبح
من نمیگم Qt سرعتش پایینه اما در مقایسه با C++‎‎‎‎‎‎ استاندارد یا VC++‎‎‎‎‎‎ یا C سرعتش کمتره ...

اگه نرم افزارتون سرعت و کارایی بالا میخواد که C#‎ و Qt به دردتون نمیخوره

چند تا نکته اینجا مطرحه؟
1. شما کدوم قسمت Qt رو با چیه C++ مقایسه می کنید؟
2. کامپایلر شما در Qt چیه؟ (داخل ویندوز؟)



مدیر عزیز دوستمون اصلا معلوم نیست چه چیزی نیاز دارن بعد شما بر چه اساس C++‎‎‎‎‎‎ رو معرفی مکینید ... آیا C++‎‎‎‎ قابلیت پیاده سازی روی همه Device ها رو داره ... کاملا(No C++‎‎‎‎ Standard )
شاید این دوستمون ویروس میخواد بنویسه ... اصلا هم معلوم نیست روی چه Device قراره اجرا بشه پس بهترین گزینه C هست نه C++‎‎‎‎‎‎ ....

تا اونجا که من میدونم آره. و چه دلیلی باید وجود داشته باشه که ساپورت نکنه؟! (دلیلش برای من میتونه جالب باشه)

لازمه اضافه کنم که شما نمی تونید با زبانهای مثل جاوا برای خیلی از دیوایسها مخصوصا میکروکنترلر ها و ... کد بزنید. اما لازمه یازم اضافه کنم که حتی با خانواده سی میتونید با زبانهای مثل SystemC برای FPGA هم که یه پیاده سازی سخت افزاری بیشتر هست هم کد بزنید ( بهتر بگم سخت افزار بسازید یا توصیف کنید)



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

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



و بعد از این همه Java بعد از C رو من پیشنهاد میکنم چون هم شی گراست هم از آخرین تکنولوژی های دنیا استفاده میکنه و آپدیت شده هست و هم روی هر Device اجرا میشه
اما قابلیت های C رو روی سخت افزار شاید نداشته باشه و ...

آره جاوا فقط شی گرا هست در نتیجه نمی نونه ساختار یافته، data orientated , یا aspect oriented باشه. فقط روی دیوایسهایی اجرا میشه JVM دارن....