Posts Tagged ‘Qt’
شروع برنامهنویسی در چارچوب Qt
Posted آگوست 31, 2010
on:- In: اخبار | برنامه نویسی
- 21 Comments
امروز محصول جدیدی برای شما داریم، اما این بار ماهی نیست! آموزش ماهیگیریست lol
پروژهای که چند ماهی به طول انجامید، و امروز نتیجه آن آمادهی انتشار است، البته نسخهی اول.
امید است با توجه به بازخورد استفادهکنندگان و وضعیت مولف و همکاری علاقهمندان، این کتاب بزرگتر و تکمیلتر گردد.
بله! درست فهمیدید. یک کتاب برای شروع برنامهنویسی در چارچوب دوستداشتنی Qt.
از اولین پیشنیازهای این کتاب که برنامهنویسان ++C را هدف گرفته، آشنایی با زبان ++C که زبان اصلی پیادهسازی و پشتیبانی Qt است، میباشد.
کتاب مذکور در ۶۷ صفحه و مشتمل بر ۸ فصل به شرح زیر در اختیار برنامهنویسان علاقهمند قرار میگیرد.
- راه و روش Qt
- سیگنالها و اسلاتها در Qt
- Containers and Iterators
- استفاده از QMake
- آشنایی با برنامه طراح کیوت (Qt Designer)
- کار با پایگاهدادهها در Qt
- بررسی چند تکنولوژی دیگر Qt
- استفاده از مستندات مرجع Qt
همانطور که از نام فصول مشخص است، بیشتر یک آشنایی اولیه با ابزارها و توانمندیهای کیوت در سمت دسکتاپ است.
این کتاب با همکاری و پشتیبانی دوست خوبم فرید احمدیان و با جمعآوری و ترجمهی مطالب مفید از کتابها و مستندات کیوت تولید شده است.
جا دارد از دوستان خوبم، مجید رمضانپور و گلناز نیلیه که بعنوان برنامهنویسان Qt این کتاب را مورد بررسی و بازبینی فنی قرار داده و اشکالات آنرا گوشزد نمودند، تشکر نمایم. (البته به خواست خودشان نامی از آنها در کتاب نیامده است.)
این کتاب بصورت رایگان منتشر و در اختیار برنامهنویسان قرار میگیرد. استفادهکنندگان میتوانند در صورت علاقهمندی مبالغی را به مولف کتاب اهدا نمایند.
امید است در آستانهی روز آزادی نرمافزار گامی هر چند کوچک در جهت پیشبرد اهداف بزرگ جنبش نرمافزار آزاد برداشته باشیم.
کتاب مذکور را میتوانید از اینجا دریافت نمایید.
=-=-=-=-=
Powered by Blogilo
یک تاریخچهی کوتاه از کیوت(Qt)
Posted جون 26, 2010
on:- In: KDE | برنامه نویسی
- 6 Comments
چارچوب کیوت برای اولین بار در ماه می ۱۹۹۵ بصورت عمومی منتشر شد. توسعهی اولیهی این کتابخانه توسط Haavard Nord و Eirik Chambe-Eng انجام شد که بعدها مدیران ارشد شرکت Trolltech بودند (قبل از اینکه نوکیا کیوت رو بخره) هاوارد و اریک در انستیتوی تکنولوژی نروژ با هم آشنا شدند، زمانی که هر دو در رشته علوم کامپیوتر تحصیل میکردند.
علاقهمندی هاوارد به برنامهنویسی واسط کاربری (GUI) از سال ۱۹۸۸ شروع شد، زمانی که در یک شرکت سوئدی برای توسعهی یک چارچوب برنامهنویسی واسط کاربری برای ++C استخدام شد. دو سال بعد در ۱۹۹۰ هاوارد و اریک با هم روی یک برنامهی پایگاه دادهای ++C کار میکردند. سیستم لازم بود که با یک واسط کاربری در یونیکس، مکینتاش و ویندوز اجرا گردد. یک روز تابستانی که هاوارد و اریک برای تفریح بیرون رفته بودند و روی صندلی پارک نشسته بودن. هاوارد گفت: «ما به یک سیستم نمایشی (Display System) شیئ گرا نیازمندیم.» و نتیجهی این بحث به بنیاد فکری برای چارچوب برنامهنویسی واسط کاربری که وابستگی به پلت فورم نداشته باشد و شیئ گرا نیز باشد منجر شد که به زودی توسعهی آنرا شروع خواهند کرد.
در ۱۹۹۱ هاوارد نوشتن کلاسهایی را شروع کرد که با همکاری اریک در طراحی چارچوب، سرانجام Qt شدند. همان سال اریک با ایدهی «سیگنالها و اسلاتها» آمد، یک نمونهی ساده اما قدرتمند برنامهنویسی واسط(GUI) که امروزه توسط چندین ابزار برنامهنویسی دیگر نیز استفاده میشود. هاوارد ایده را برداشت و یک پیادهسازی دستی برای آن آماده کرد. در ۱۹۹۳ هاوارد و اریک اولین هستهی گرافیکی Qt را آماده کرده بودند و میتوانستند برای آن ویجت بسازند. در انتهای سال هاوارد پیشنهاد کرد که با هم وارد این حرفه گردند تا «بهترین چارچوب GUI برای ++C در جهان» را بسازند.
سال ۱۹۹۴ برای دو برنامهنویس جوان ما بدیمن شروع شد، وارد تجارت شدند، هیچ مشتری نداشتند، یک محصول ناتمام، و بی پولی. خوشبختانه همسر هردوی آنها استخدام شدهبودند و میتوانستند شوهرانشان را برای دو سال که آنها پیش بینی میکردند توسعهی چارچوب طول بکشد پشتیبانی کنند.
کاراکتر Q بعنوان پیشوند اسم کلاسها انتخاب شد، چون در emacs هاوارد خیلی خوشکل بود. و t اضافه شد تا بجای کلمهی toolkit بنشیند. از Xt الهام گرفته شد. (X Toolkit) شرکت آنها در ۴ مارس ۱۹۹۴ به نام Quasar Technologies به ثبت رسید. بعدها Troll Tech و Trolltech شد و در نهایت هم که در سال ۲۰۰۸ نوکیا شرکت ترولتک را خرید.
در آوریل ۱۹۹۵ با تشکر از ارتباطی که یکی از اساتید دانشگاه هاوارد برقرار کرد، شرکت نروژی Metis قراردادی با آنها پیرامون ساختن برنامهای با Qt بست. در این زمان Trolltech جناب Arnt Gulbrandsen را استخدام کرد که در همکاری ۶ سالهی خود با ترولتک یک سیستم زیرکانه و زیبا برای مستندات کیوت ابداع و پیادهسازی کرد البته در کنار کمکی که به کد کیوت میکرد.
در ۲۰ می ۱۹۹۵ Qt 0.90 روی sunsite.unc.edu آپلود شد. شش روز بعد این انتشار اعلام شد. این اولین انتشار عمومی Qt بود. کیوت قابل استفاده در برنامهنویسی یونیکس و ویندوز بود. که یک واسط برنامهنویسی(API) یکسان برای هر دو ارائه میداد. کیوت از ابتدای انتشار تحت دو مجوز منتشر میشد، یک مجوز برای برنامهنویسی غیرآزاد و بستن کد و دیگری مخصوص برنامهنویسی آزاد و متنباز.
در مارس ۱۹۹۶ نمایندگی فضایی اروپا دومین مشتری کیوت شد. با خرید ۱۰ مجوز تجاری(غیرآزاد) پس با اطمینان کامل، اریک و هاوارد یک نفر دیگر را نیز استخدام کردند. Qt 0.97 در پایان ماه می منتشر شد. و در ۲۴ سپتامبر ۱۹۹۶ Qt 1.0 منتشر شد. در این سال همچنین پروژهی KDE توسط Matthias Ettrich کلید خورد.
Qt 1.2 در آوریل ۱۹۹۷ منتشر شد. تصمیم متیو در استفاده از Qt برای ساختن KDE باعث شد که Qt استاندارد کاملی برای توسعهی برنامههای با واسط گرافیکی در لینوکس شود. Qt 1.3 در سپتامبر ۱۹۹۷ منتشر شد.
متیو هم در آوریل ۱۹۹۷ به ترولتک پیوست. و آخرین انتشار Qt 1 یعنی Qt 1.40 در ماه سپتامبر این سال آمادهی استفاده شد. Qt 2.0 در ماه ژوئن ۱۹۹۹ منتشر شد. Qt 2 یک مجوز آزاد جدید بنام QPL داشت که براساس تعریف متنباز ایجاد شده بود. در آگوست ۱۹۹۹ کیوت جایزهی بهترین کتابخانه/ابزار را در LinuxWorld برنده شد.
و خوب ماجراها ادامه پیدا کرد، بعدها Qtopia که راهحل کیوت برای موبایلها و دستگاههای از این قبیل بود منتشر شد، جایزههای زیادی Qt برنده شد، مثلا در دو سال پیاپی جایزهی بهترین چاره(solution) برای لینوکسهای توکار را برنده شد.
در حال حاضر نیز کیوت در سکوهای لینوکس، ویندوز، مک و دستگاههای موبایل و PDAی مختلف قابل استفاده است، و استفاده از آن در حال افزایش میباشد، که اخباری پیرامون استفاده Sony Ericsson و Samsung در موبایلهای جدیدشان منتشر شد.
و البته خریداری Qt توسط شرکت Nokia که بعضا از نتیجهی این عمل ترس داشتند، تا بحال به نفع کیوت بوده از جمله انتشار آن تحت مجوز LGPL که باعث استفاده بیشتر شد و …
—-
منابع: ویکپدیا و مقدمه کتاب C++ GUI Programming with Qt 4
****
پانویس: یکی از مهمترین دلایلی که من کاربر KDE شدم Qt بود! در واقع اول چارچوب برنامهنویسی رو انتخاب کردیم، بعد دسکتاپ رو lol
Qt و Gitorous یک گام بزرگ به جلو
Posted مِی 11, 2009
on:- In: KDE | اخبار | برنامه نویسی
- 1 Comment
دیروز متوجه شدم که سایت Gitorious تغییر کرده! اینجا در یک پست در بلاگ این پروژه توضیح داده شده! بهینه شده، و امکانات جدیدی از جمله امکان تعریف گروه اضافه شده!
Gitorious چیست؟
Gitorious is a great way of collaborating on distributed open source projects.
Gitorious یک سرویس برای هاستینگ سورس کد + امکان داشتن ویکی برای پروژههای آزاد/متنباز است! البته پروژههایی که سورسشون رو با استفاده از نرمافزار مدیریت سورس Git مدیریت میکنن!
Git چیه؟
Git is a free & open source, distributed version control system designed to handle everything from small to very large projects with speed and efficiency.
فیالواقع اگر از Subversion استفاده میکنین! و پروژهتون نسبتا بزرگه! یا تعداد توسعهدهندهها زیادن! یا حتی اینا نیستن! نمیدونم بهتون چی بگم! =)) اما هروقت با گیت آشنا شدین خودتون یه چیزی میگین lol
آقا از ماجرا جدا شدیم 😦
برمیگردیم:
خوب چند دقیقه پیش دوستی خبر داد که تغییرات Gitorious به درخواست Qt Software یا همون Nokia که هم اکنون مدیریت پروژهی Qt دستشه انجام شده!
طوری که اینجا و اینجا نوشته شده، Nokia تصمیم میگیره سورس Qt رو روی یک مخزن عمومی که همه دسترسی داشته باشن ببره! و خوب از برنامهای که برای سایت Gitorious نوشته شده بود، خوششون میاد، و در عین حال که این برنامه یک نرمافزار آزاد بوده، و میتونستن خودشون روی یه سرور نصب کنن، تصمیم میگیرن به توسعهدهنده و مدیر این سایت کمک مالی کنن، و ازش بخوان نیازهایی که دارن رو ایجاد کنه، و تغییراتی به دلخواه اونا بده! تا کار برای نوکیا و بروبچ ساده بشه، و سورس Qt رو ببرن روی خود Gitorious نتیجه میشه چیزی که اینجا میبینین! (شاید یکی از جالبترین فایدههای اینکار اینه که حالا ما هم از نتیجهی این حرکت استفاده میکنیم!)
و خلاصه بله! سورس Qt الان در یک مخزن عمومی هست! هر کسی میتونه از اون یک کپی بگیره، تغییرات/رفع نقص/… انجام بده، و به توسعهدهندهها بده! تا استفاده کنن! و Qt هرچه سریعتر و بهتر! و با کمک جامعه توسعه پیدا کنه! و خدا بشه lol (و تا همین لحظه ۲۸ کپی ازش گرفته شده!)
و اگر تصمیم دارین به Qt کمک کنین! اول اینو بخونین. 😉
حالا میرسیم به تعریف Gitorious که گفته بود، یک راه برای همکاری در پروژههای آزاد است! که هر کسی میتونه یه مخزن کپی از هر پروژهای که روی این سایت هست بسازه، و روش کار کنه، و درخواست ادغام با سورس اصلی رو بده، و در توسعهی اون سهیم بشه 😉 و زندگی چقدر زیباست و نرمافزار آزاد چقدر خوب است و از این چیزا دیگه…
راستی! ما هم سورس Bilbo رو روی Gitorious مدیریت میکنیم! 😉
Viva Free Software, Viva Nokia, Viva Qt
—————————————-
پ.ن: این روزها همهی پروژههای بزرگ به Git مهاجرت میکنن! دست لینوس درد نکنه! برای دوستانی که از KDE میپرسن:
چندی پیش این لیست پستی رو راه اندازی کردن، تا بحث کنن سر اینکه به چه برنامهای مهاجرت کنن، یا اصلا بکنن!؟ و خوب در نهایت Git انتخاب شده!(یعنی کیلویی انتخاب نشده =)) ) اما مشکلی که وجود داره ربات KDE هست! که برای Subversion نوشته شده، و هنوز به Git مهاجرت داده نشده 😦 و منتظریم تا اون درست بشه! که KDE هم بشه 😉 فکر کنم با perl نوشته شده!
=-=-=-=-=
Powered by Bilbo Blogger
- In: KDE | برنامه نویسی | دنیای من
- 2 Comments
طبق خبری که ساعتی پیش منتشر شد، نسخهی بعدی Qt که 4.5 هست! سه مجوزه خواهد بود!
و از اون موقع Qt هم مثل GTK تحت مجوز LGPL در دسترس خواهد بود! پس تا حالا شد، تحت مجوزهای GPL v2 & v3 ، LGPL v2.1 و همون مجوز تجاری/پولی
طبق گفتهی خودشون، این تصمیم براساس شعار «Qt در همهجا» هست!
اما تبعات این تصمیم:
خوب معلومه، تا حالا خیلی از توسعهدهندهها و شرکتها که میخواستند نرمافزارهای غیر آزاد برای همهی سیستمها بنویسن، یا مجبور بودن پول بدن بابات Qt یا اینکه برن دنبال کتابخانههای دیگه که تحت LGPL بودن! مثل GTK اما حالا دیگه میتونن بیان به این سمت! کتابخانهی KDE هم که تحت LGPL هست! دیگه نونشون توی روغنه!
دلیل این تصمیم هم مشخصه، تا دیروز Trolltech پشت این Qt بود! و برای نون خوردن به فروشش نیاز داشت! ولی امروز که Nokia اون پشته! نیازی به این پول نداره! در واقع نوکیا درآمدش رو از راههای دیگه داره و نیازی به این نداره، در عوض نیاز به خود برنامه داره!
و یکی دیگه اینکه توسعهی این کیوت رو هم باز تر میکنن، و سرعت پیشرفتش که تا حالا خیلی زیاد بوده، احتمالا میره دور و بر سرعت نور :)))
درضمن نسخهی جدید Qt هم تا جایی که ما شنیدیم، بیشتر روی بهینهسازیش کار کردن! پس فکر کنم خیلی دمش گرم باشه 😛
بیشتر؟ برین اینجا بخونین، من باید برم جلسهی مشهدلاگ، الان وقت ندارم 😉
—————————-
پ.ن: نمیدونم باید خوشحال باشم، یا ناراحت!
خوشحال از اینکه کاربرد و توسعه و پیشرفت جامعه بهتر خواهد شد، و ناراحت از اینکه همچین ابزار توپپی رو افرادی که توی جامعه نیستن هم میتونن استفاده کنن! و ما به توصیههای رهبر کبیر توجه نکردیم! 😦 عاقبتش چه خواهد شد، خدا میدونه!
منتظر عکسالعمل رهبر میشیم 🙂
مدتی قبل توسعهدهندگان Qt که قبلا اسمشون Trolltech بود، و از زمانی که نوکیا این شرکت رو خرید تحت نام Qt Software به فعالیت ادامه میدن، اعلام کردن که روی یک IDE برای Qt کار میکنن.
خبر رسیده که یک نسخهی اولیه، مخصوص بررسی تکنیکی از این IDE که اسم رمزش Greenhouse (به فارسی شاید بشه گفت «گلخانه» (محلی برای پرورش و توسعه) ) است، آماده شده، که بصورت باینری (یعنی بدون سورس کد) تحت مجوز Qt preview license منتشر شده. البته اعلام کردن که نسخهی نهایی تحت یک مجوز همخوان با GPL منتشر خواهد شد.
به نظر من مهمترین نکتهی خوبی که این IDE خواهد داشت، قابلیت اجرا بر روی پلتفورمهای مختلف از جمله Windows و Mac OS است، چرا که در حال حاضر برای لینوکس IDE ی قدرتمندی ،که کاملا با Qt همخوان است، بنام KDevelop داریم! والبته این برنامه قابلیتهای توپی هم داره، و خواهد داشت، که بیشتر بخونین!
IDE رو از اینجا میتونین بگیرین و تست کنین!
منبع خبر و اطلاعات کاملتر: http://dot.kde.org/1225455418/
نوکیا، موزیلا و Qt
Posted آگوست 12, 2008
on:- In: فایرفاکس | تراوشات ذهن من
- 1 Comment
چند وقت پیش خبر خریدن شرکت trolltech توسط کمپانی Nokia رو شنیدیم.
و حالا از KDE Akademy 2008 اخبار جالبی درز میکنه!
خوب Nokia رو که همه میشناسیم، بزرگترین و مهمترین کارش تولید گوشی موبایل است!
در جدیدترین حرکت، خبر از پورت کردن پروژهی Mozilla Firefox و تولید یک مرورگر برپایهی Qt میشنویم، که قراره در محصولات جدید Nokia ازش استفاده بشه. (فکر کنم Nokia N810)
البته قرار نیست این جایگزین فایرفاکس بشه! اما به گفتهی این دوستمون Kubuntu احتمالا از این مرورگر استفاده کنه!
و جالبترش اینه که این کار خیلی سریع انجام شده، البته هنوز کامل نیستا!
اینجا مصاحبهی سایت KDEdotNews با توسعهدهندهی این محصول رو بخونید.
اولین خروجی این پروژه هم آمادهاس، اینم عکسش:
خوب به نمایندگی از جامعهی متنباز به نوکیا هم خوشآمد میگم! ( 😀 )
—————————————————
اینم عکس گروهی جدیدی از KDE Akademy 2008
😦 هِ منم میخوام
- In: لینوکس | برنامه نویسی
- 7 Comments
اولین بحثی که اصولا دوستان علاقه مند به برنامه نویسی در محیط گنو/لینوکس می پرسند اینه که برای نوشتن برنامه های گرافیکی چه چیزی رو باید یاد بگیریم ؟
حالا اگه طرف یکم فعال تر باشه و یک جستجوی کوچیک تو google زده باشه حداقل اسم دو تا کتابخانه گرافیکی تو محیط گنو/لینوکس رو شنیده : +GTK و Qt.
خب من شخصا برنامه نویسی ++C کار میکنم و موقع شروع به برنامه نویسی در لینوکس دقیقا همین سوالات برام پیش اومده بود که البته خوشبختانه ! کسی رو پیدا نکردم که ازش بپرسم و خودم رفتم دنبالش .
اولین بحثی که برای برنامه نویسی باید در نظر بگیرین اینه که مستقل از platform کار کنید.
به قول اریک ریموند :
یاد گیری کد نویسی تحت پلتفورم ویندوز مانند یاد گیری رقص است وقتی زره به تن کردهاید، من چندان خوشم نمیآید. به آن جا نروید. آن بخش بینهایت کثیف است و از کثافت باید پرهیز کرد.
- In: MDic | کاربران لینوکس یزد | اخبار | تراوشات ذهن من
- 3 Comments
جلسهی دهم گروه کاربران لینوکس یزد با هر سختیای 😉 بود برگزار شد!
توی این جلسه در ادامهی بحث جلسهی قبل که در مورد Qt صحبت کرده بودم درباره برنامهنویسی با استفاده از Qt صحبت کردم!
الان هم نشستم یه چیزایی در موردش توی گزارش این جلسه نوشتم، سعی کردم یه چیز کلی بشه، حالا فکر میکنم برای کسی که بخواد خیلی سریع یه سری اطلاعات در موردش بگیره بد نیست! ( آخه خودم هم هنگام شروع یه همچین چیزی نیاز داشتم، دلیل اصلی این صحبتم هم همین بود! 😛 )
حالا اگه کسی خواست مطالعه کنه یه سر اینجا بزنه! 😉
——————————————————————
MDic:
برنامهی ktranslator یه ابزاری داشت به نام dictconv برای تبدیل دیکشنری های StarDict و Babylon و بقیهی دوستان به هم دیگه! پریروز نشستم و ساخت دیکشنریهای MDic رو هم بهش اضافه کردم!
MDic هم به علت کدی که کاراکترهای اضافه رو حذف میکرد، قابلیت پشتیبانی از فارسی توی کلمهی ورودی نداشت! اینو هم حل کردم! و الان کلی باحال شده!(چیزی که خودم و خیلی از ایرانیها نیاز داشتیم، یک دیکشنری فارسی به انگلیسی بود! البته نه مثل xfardic بصورت reverse search، خوب حالا یه دیکشنری فارسی به انگلیسی از بابیلون بگیرین و تبدیل کنین و حالشو ببرین 😉 )
آخرین تغییرات MDic رو از سرور svn بگیرید، (اگه نمیدونین چطوری، اینجا نوشته) این برنامه رو هم تا شب توی بستههای MDic روی SourceForge.net میگذارم!
موید باشید…
—————————————————————-
پ.ن. : به چند نفر آدم باحال و با حوصله نیاز داریم که اینا رو بگیرن و تست کنن و نتیجه رو بگن، ( قبل از انتشار این برنامه یه تستیش بکنیم بد نیست 😉 )