View Full Version : پایگاه داده با QT
pswin.pooya
چهارشنبه 17 خرداد 1391, 13:04 عصر
سلام
نمی دونم چقدر به نظر عاقلانه میرسه اما اگر به ناپایدار بودن ویندوز+SQL Serverو سی شارپ و دردسرهاش مثل کند بودن و سیستم خوب و ... فکر کنید. امکان داره مثل من بخوایین که با QT+لینوکس کار کنید که حداقل اگر پدر خودتون هم در بیاد کاربر راحت باشه.
از اونجا که تجربه خاصی در مورد QT ندارم. این مساله واقعا برام سوال شده که درسته برنامه پایگاه داده رو با QT طراحی کرد؟ اصلا QT ابزارهای کاملی مثل سی شارپ داره؟ مثلا یه ابزار گزارش، و یا پنجرهای کاملا سازگار با فارسی و ... مشکل دیگه ای که ذهنم رو مشفول کرده garbage collection هست. (حالا این مشکل رو میشه حل کرد.)
اما واقعا انعطاف و ابزارهای آماده برام سوال شده. تا حالا کسی تجربه اینکار رو داشته و اگر داشته تا چه حد موفق بوده. یعنی مثلا تونسته یه محصول تجاری قابل قبول به بازار بده یا نه؟
اگر ابزارهای آماده در سطح دات نت براش وجود داشته باشه مطمئنا با توجه به قابلیتهای C++ و برنامه نویسی ناتیو میشه کارهای خیلی بزرگ و قابل قبولی باهاش انجام داد.
weox__
چهارشنبه 17 خرداد 1391, 13:46 عصر
سلام دوست عزیز
شخصا زیاد با کار با پایگاه داده آشنا نیستم .
ولی این سری ویدیو ها بنظرم جواب کلی سوال شما باشه :
http://www.youtube.com/playlist?list=PL2D1942A4688E9D63&feature=plcp
از شماره 51 تا 57 در ارتباط با موضوع پایگاه داده است .(بقیه ویدیو هاش هم عالی هست اگه وقت داشتید ببینید . می تونه یه پیش زمینه عالی برای شروع برنامه نویسی حرفه ای با Qt باشه )
(در مورد سازگاری با فارسی هم هیچ مشکلی نداره )
یک مسئله دیگه : شخصا تجربه کمی با Qt دارم . ولی فکر نمی کنم از نظر ابزار به محیط های آماده ی ماکروسافت برای سرویس های خودش برسه . ولی نکات مثبت بسیار بسیار زیاد دیگه ای داره .
حامد مصافی
چهارشنبه 17 خرداد 1391, 20:55 عصر
اصلا QT ابزارهای کاملی مثل سی شارپ داره؟
خیر، یه هیچ وجه!
مثلا یه ابزار گزارش
فقط NCReport هست که اونم چنگی به دل نمیزنه!
یا پنجرهای کاملا سازگار با فارسی و ... مشکل دیگه ای که ذهنم رو مشفول کرده garbage collection هست. (حالا این مشکل رو میشه حل کرد.)
فارسی مه مشکلی نیست. اما درمورد جمع کننده زباله، خب در سیپلاسپلاس همه کار رو خودت باید انجام بدی. پس چنین چیزی هم نداریم!
اما واقعا انعطاف و ابزارهای آماده برام سوال شده. تا حالا کسی تجربه اینکار رو داشته و اگر داشته تا چه حد موفق بوده. یعنی مثلا تونسته یه محصول تجاری قابل قبول به بازار بده یا نه؟
فکر نمیکنم کسی قبل این کار رو کرده باشه. یعنی بیاد یک پروژه تجاری دستکم متوسط رو با ++C و Qt پیادهسازی کنه.
...درسته برنامه پایگاه داده رو با QT طراحی کرد؟
من میگم خیر!
در حال حاضر برای توسعه برنامههای تجاری بهترین انتخاب داتنت هست و تا مدتها خواهد بود.
pswin.pooya
چهارشنبه 17 خرداد 1391, 22:24 عصر
فارسی مه مشکلی نیست. اما درمورد جمع کننده زباله، خب در سیپلاسپلاس همه کار رو خودت باید انجام بدی. پس چنین چیزی هم نداریم!
اينها رو ميشه با كتابخونه ها و يا برنامه نويسي داخل سي پلاس پلاس هم كنترل كرد.
در حال حاضر برای توسعه برنامههای تجاری بهترین انتخاب داتنت هست و تا مدتها خواهد بود.
از بعضي جهات حق رو به شما ميدم. اما مشكل اصلي دات نت موارد زير هست:
راحت برنامه ها كرك ميشه
براي نصب و ... مشكلات زيادي داره. مخصوصا اگر كامپوننت كرك شده و ... داشته باشي.
بشدت كند هست.
روي ويندوز غير استيبل هست.
اما مزاياي زير رو داره:
كامپوننت براش زياده. ( سرعت برنامه نويسي رو زياد ميكنه)
سرعت برنامه نويسي بالايي رو عرضه ميكنه.
سازگاري خوبي با فارسي داره.
اگر بشه در حد دات نت يا نزديك به اون از qt و بقيه كتابخونه ها كار كشيد. بطور يقيين ميشه برنامه هاي تجاري خيلي خوبي رو داخل لينوكس عرضه كرد. كه واقعا مشتري رو راضي نگه داره. منتهاي كار ما ايراني ها مشكل زبون فارسي داريم كه تا دست از نوشتار عربي نكشيم نمي تونيم حلش كنيم.
حامد مصافی
چهارشنبه 17 خرداد 1391, 23:04 عصر
اينها رو ميشه با كتابخونه ها و يا برنامه نويسي داخل سي پلاس پلاس هم كنترل كرد.
بله، صددرصد.
نکتههایی که فرمودید درست هستند. زبان فارسی هم مشکلی در کیوت نداره. در پست پیش هم گفتم این نکتهای نیست که نگرانش باشید.
حالا با کنار هم گذاشتن برهانهایی که فرمودید و در نظر گرفتن این نکته که چه فاکتوری برای ما ارزش داره میتونیم یکی رو انتخاب کنید.
تولید خروجی بومی و سرعت فایل اجرایی
راحتی محیط توسعه
داشتن کامپوننتهای فراوان
چند سکویی
...
هر پارامتری رو که در نظر بگیریم بدون بحث یکی از دو کاندید برنده خواهند شد. پس بهتره شما تصمیم بگیرید که کدامیک از فاکتورها ارزش بیشتری در نزد شما دارند.
کامپوننتهای زیاد رو میخوای کنترل بیشتر
سرعت بالای توسعه یا سرعت بالای اجرا
... یا ...
...
dr.b4ne
سه شنبه 01 بهمن 1392, 15:17 عصر
خیر، یه هیچ وجه!
فقط NCReport هست که اونم چنگی به دل نمیزنه!
فارسی مه مشکلی نیست. اما درمورد جمع کننده زباله، خب در سیپلاسپلاس همه کار رو خودت باید انجام بدی. پس چنین چیزی هم نداریم!
فکر نمیکنم کسی قبل این کار رو کرده باشه. یعنی بیاد یک پروژه تجاری دستکم متوسط رو با ++C و Qt پیادهسازی کنه.
من میگم خیر!
در حال حاضر برای توسعه برنامههای تجاری بهترین انتخاب داتنت هست و تا مدتها خواهد بود.
با کمال احترام و ادب . شدیدا با بعضی گفته های این نظر (کامنت) مخالفم .
از اونجا که کاملا با سی شارپ آشنا نیستم جزییات تمام ابزار های سی شارپ رو نمیدونم که بخام مقایسه کنم اما تا حالا که چند سال از کار کردنم با کیوت میگذره هیچ نیازی احساس نکردم که کیوت نتونسته باشه بهش پاسخ بده
در مورد جمع آوری زباله ها کیوت خیلی وقته این مشکل رو حل کرده . کافیه که تمام اشیا رو روی هیپ بسازید .
درباره محصول تجاری موفق من فقط چند تا نرم افزار نام میبرم شما خودت قضاوت کن . مرورگر اپرا / نرم افزار ویرچوال باکس / نرم افزار گیتار پرو / میز کار KDE / اتودسک مایا / قسمت اعظمی از سیستم عامل بلک بری / google earth / google drive / vlc / skype / . . . اما اگر قصد دارید برای شرکت های ایرانی برنامه نویس دسکتاپ بشید به نظر بنده همون سی شارپ نون در بیار تره .
امیدوارم عرایضم مفید واقع بشه .
alireza_s_84
سه شنبه 01 بهمن 1392, 17:21 عصر
سلام
نمی دونم چقدر به نظر عاقلانه میرسه اما اگر به ناپایدار بودن ویندوز+SQL Serverو سی شارپ و دردسرهاش مثل کند بودن و سیستم خوب و ... فکر کنید. امکان داره مثل من بخوایین که با QT+لینوکس کار کنید که حداقل اگر پدر خودتون هم در بیاد کاربر راحت باشه.
از اونجا که تجربه خاصی در مورد QT ندارم. این مساله واقعا برام سوال شده که درسته برنامه پایگاه داده رو با QT طراحی کرد؟ اصلا QT ابزارهای کاملی مثل سی شارپ داره؟ مثلا یه ابزار گزارش، و یا پنجرهای کاملا سازگار با فارسی و ... مشکل دیگه ای که ذهنم رو مشفول کرده garbage collection هست. (حالا این مشکل رو میشه حل کرد.)
اما واقعا انعطاف و ابزارهای آماده برام سوال شده. تا حالا کسی تجربه اینکار رو داشته و اگر داشته تا چه حد موفق بوده. یعنی مثلا تونسته یه محصول تجاری قابل قبول به بازار بده یا نه؟
اگر ابزارهای آماده در سطح دات نت براش وجود داشته باشه مطمئنا با توجه به قابلیتهای C++ و برنامه نویسی ناتیو میشه کارهای خیلی بزرگ و قابل قبولی باهاش انجام داد.
برنامه ی جامع مدیریت گیم نت و کافی نت با #C پیاده سازی کرده بودم و 5 سال توی بازار فعالیت کرد. مشکل خاصی نداشت و خوشبختانه در طول کار کردن و فروش نزدیک به 100 نسخه حتی یکبار هم برنامه به خاطر باگ دچار مشکل نشد.
برنامه رو در 6 ماه نوشتم (البته با احتساب روزی 3 ساعت کار مفید ، طراحی اولیه ، مطالعات اولیه ، تغییر در معماری تا زمان رسیدن به معماری دلخواه و ...) و از همه نظر هم قابل قبول و کامل بود.
اما بعدها این برنامه توی یک فروشگاهی نصب شد که نزدیک به 30 کلاینت داشت و همزمان بار زیادی به سرور وارد میشد. اینجا بود که دات نت زایید و نشون داد که چقدر افت سرعت میتونه برنامه رو ناپایدار کنه. البته کاربر قانع شد که مشکل از برنامه نیست ولی واقعیت چیز دیگه ای بود.
3 ماه پیش برنامه رو با Qt پیاده سازی کردم (به عنوان اولین تجربه) در زمان توسعه که فقط 2 ماه طول کشید هیچ فرقی با دات نت ندیدم. به همون راحتی و با همون سرعت و امکانات پیاده سازی کردم و جایگزین نسخه دات نت کردم و خوشبختانه از لحاظ سرعت اصلا قابل مقایسه نبود.
برای مثال از آموزشی که در اینجا (http://barnamenevis.org/showthread.php?t=210549)گذاشتم برای فرمهای خودم استفاده کرده بودم که متاسفانه در دات نت برنامه خیلی سنگین بود و وقتی بارگذاری میشد کنترلها کند بارگزاری میشدن ولی پیاده سازی اون با Qt هم راحتتر بود و هم خیلی سبکتر اصلا تفاوت خیلی چشمگیری داشت.
برای دینابیس من از SQlExpress استفاده کردم و مشکلی هم نداشتم ولی فکر نمیکنم Qt به راحتی کارکردن در دات نت بتونه با دیتابیس ارتباط برقرار کنه ولی به زحمتش می ارزه
حامد مصافی
چهارشنبه 02 بهمن 1392, 23:08 عصر
با کمال احترام و ادب . شدیدا با بعضی گفته های این نظر (کامنت) مخالفم .
از اونجا که کاملا با سی شارپ آشنا نیستم جزییات تمام ابزار های سی شارپ رو نمیدونم که بخام مقایسه کنم اما تا حالا که چند سال از کار کردنم با کیوت میگذره هیچ نیازی احساس نکردم که کیوت نتونسته باشه بهش پاسخ بده
در مورد جمع آوری زباله ها کیوت خیلی وقته این مشکل رو حل کرده . کافیه که تمام اشیا رو روی هیپ بسازید .
درباره محصول تجاری موفق من فقط چند تا نرم افزار نام میبرم شما خودت قضاوت کن . مرورگر اپرا / نرم افزار ویرچوال باکس / نرم افزار گیتار پرو / میز کار KDE / اتودسک مایا / قسمت اعظمی از سیستم عامل بلک بری / google earth / google drive / vlc / skype / . . . اما اگر قصد دارید برای شرکت های ایرانی برنامه نویس دسکتاپ بشید به نظر بنده همون سی شارپ نون در بیار تره .
امیدوارم عرایضم مفید واقع بشه .
خب، توصیه میکنم با سیشارپ آشنا بشی!
این ممکنه به خاطر نیاز شما باشه. مثال: یک نرمافزار حسابداری رو در نظر بگیر. این این نرمافزار نیاز به ویرایش و نمایش اطلاعات، پشتیبانی از تراکنشهای دیتابیس، گزارش گیری از اطلاعات و ... داریم. کیوت چقدر میتونه به ما کمک کنه؟ در مقابل داتنت چقدر کمک میکنه؟
ساخت اشیا روی هیپ ربطی به جمعآوری اتوماتیک نداره. برای حذف اتوماتیک کل کلاسهای شما باید از QObject مشتق شده باشند و همه اشیا دارای parent باشند.
هیچیک از برنامههایی که نام بردید تجاری نیستند. همگی کاربردی و آزاد هستند. میتونید یک نمونه نرمافزار سازمانی (Enterprise) نام ببرید که با ++Qt/C نوشده شده باشد؟
ربطی به ایرانی بودن یا نبودن شرکت نداره. در حال حاصر برای نرمافزارهای سازمانی که عمدتاً از دیتابیس که مسیر اصلی این تاپیک هست، استفاده میکنند، گزینههای موجود جاوا و داتنت هست. این موضوع در هیچ کجای جهان (نه ایران و نه خارج از ایران) جای بحث نداره!
dr.b4ne
جمعه 04 بهمن 1392, 10:28 صبح
خب، توصیه میکنم با سیشارپ آشنا بشی!
این ممکنه به خاطر نیاز شما باشه. مثال: یک نرمافزار حسابداری رو در نظر بگیر. این این نرمافزار نیاز به ویرایش و نمایش اطلاعات، پشتیبانی از تراکنشهای دیتابیس، گزارش گیری از اطلاعات و ... داریم. کیوت چقدر میتونه به ما کمک کنه؟ در مقابل داتنت چقدر کمک میکنه؟
ساخت اشیا روی هیپ ربطی به جمعآوری اتوماتیک نداره. برای حذف اتوماتیک کل کلاسهای شما باید از QObject مشتق شده باشند و همه اشیا دارای parent باشند.
هیچیک از برنامههایی که نام بردید تجاری نیستند. همگی کاربردی و آزاد هستند. میتونید یک نمونه نرمافزار سازمانی (Enterprise) نام ببرید که با ++Qt/C نوشده شده باشد؟
ربطی به ایرانی بودن یا نبودن شرکت نداره. در حال حاصر برای نرمافزارهای سازمانی که عمدتاً از دیتابیس که مسیر اصلی این تاپیک هست، استفاده میکنند، گزینههای موجود جاوا و داتنت هست. این موضوع در هیچ کجای جهان (نه ایران و نه خارج از ایران) جای بحث نداره!
بنده عرض کردم با سی شارپ آشنا هستم . اما نه به اندازه کیوت که بخام مقایسه انجام بدم ...
تمام کارهای مدیریت و پشتیبانی از پایگاه داده و گزارش گیری به سادگی هرچه تمام تر در کیوت قابل انجامه .
نرم افزار تجاری با سازمانی فرق داره .نرم افزار هایی که ام بردم ترکیبی از طیف های مختلفه .فکر نکنم کسی از سی پلاس برای نرم افزار های سازمانی استفاده کنه برای این مورد سی شارپ یا جاوا رو بهتر میدونم . اما برای مثال گیتار پرو کاملا تجاریه ...
موفق باشید دوستان ... این بحث ها نتیجه ای نداره زیاد ...
در ضمن اشیا qobject اگه از هم به ارث برن روی هیپ ساخته میشن . حرف شما درسته اما گویا از ساخته شدن رو هیپ خبر ندارید .
کامبیز اسدزاده
جمعه 04 بهمن 1392, 11:13 صبح
در رابطه با قابلیت ها و دسترسی سریع برنامه نویس در .NET بحثی نیست حال اینکه زبان نوشتن اونم VB یا C# باشه بازم حرفی نیست ولی وقتی یه چهارچوب درست حسابی و چند سکویی مثل Qt وجود داره چرا دات نت استفاده کنیم ؟ من خودم شخصا ترجیح میدم برنامه ای که تولید میکنم رو در اختیار تمام کاربرا قرار بدم نه فقط ویندوز ! حال اینکه زبان برنامه نویسیش هم یک زبان Native هست چه بهتر...
برای مثال یه نرم افزار حسابداری مینویسید که کلا از دات نت تبعیت کرده کجا و یه نرم افزاری بنویسید که از C++ تبعیت کرده این کجا !؟ زمینو آسمون فرق دارن از لحاظ Performance که اصلا بحث رو نکنیم.
ذاتا وقتی Performance بالا و مخصوصا قابلیت چند سکوئی میاد وسط دات نت باید بره کنار چون تنها چیزی که بنده تو اینهمه سال از دات نت دیدم فقط و فقط سرعت و راحتی برنامه نویس در تولید طراحی بوده همین ! که اینم در Qt رفع شده.
من که شخصا از تولید نرم افزار های وابسته به سیستم عامل حمایت نمیکنم اگه قراره یه چیزی بنویسیم باید رو همه سیستم عامل ها اجرا بشه نه فقط ویندوز وسلام :عصبانی++: مخصوصا با این بخش نامه هایی که جدیدا دادن سیستم های اداری و ...
در ضمن در رابطه با اینکه در کجا از Qt استفاده شده یا دات نت فقط کافیه پاتونو خارج از کشور بزارید و ببینید :) من خودم شخصا مشتری های خارج از کشور هم دارم که در ایران هم فعالیت میکنند ولی با این حال از ویندوز استفاده نمی کنند در کل خارج از کشور سیستم عامل های یونیکسی مورد حمایت قرار میگیرند باور نمیکنید ؟ پاتونو بزارید اونور آب ببینید چه خبره.
و نکته کلی : بر اساس نیاز و زمان و سلیقه از دات نت و Qt میشه استفاده کرد همش بستگی به هدف برنامه نویس داره و اگرنا مشتری نمیفهمه دات نت چیه یا کیوت چیه برای مشتری فقط محصول نهایی و خروجی با کیفیت عالی مهمه.
ayub_coder
جمعه 04 بهمن 1392, 11:56 صبح
شاید ربطی به موضوع کیوتی نداشته باشه ولی دلفی رو هم جا نندازید دوستان. تولید کدهای Native + ابزارهای فوق العاده.محیط کدنویسی واقعا RAD . الان هم که چند سکویی شده ... فقط خواستم یاد آوری کنم :-)
ghadam_kheyr
سه شنبه 15 بهمن 1392, 20:19 عصر
کسانی که میگن برای دیتا بیس نویسی و برنامه های تجاری کیوت ضعیف تر از سی شارپ هست گویا حتی یک برنامه کوچک با کیوت برای دیتابیس ننوشتند چون در اینصورت متوجه می شدند که کیوت چقدر دارای متدها و انعطاف پذیری بیشتری از سی شارپ هست درضمن از نمونه برنا مه های تجاری open source نوشته شده با کیوت که درسطح جهان هم موفق بوده میشه x-tuple رو نام برد که یک ERP کامل هست .
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.