KDE.org News feed Persian Planet IRC Channel Submit KDE feed
FAQ Policy

شروع برنامه‌نویسی در چهارچوب Qt ( کتاب فارسی – مهرداد مومنی )

سلام

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

اما خبر خوب اینه که مهرداد مؤمنی که البته برای گنو/لینوکسی‌ها نیاز به معرفی نداره اما برای ویندوزی‌ها بگم که برنامه‌نویسی حرفه‌ای و با تجربه‌ی Qt و Cpp که چندین برنامه‌ی Choqok ( کلاینت میکروبلاگینگ ) ، Blogilo ( کلاینت بلاگینگ – همین کلاینتی که باهاش دارم این مطلب رو می‌نویسم ) و MDic ( دیکشنری چندزبانه ) که همگی تحت پلتفرم کیوت ویا KDE SC نوشته شده‌اند، چندی پیش یک کتاب فارسی بسیار خوب برای شروع ( و چه عرض کنم ادامه‌ی ! ) برنامه‌نویسی کیوت منتشر کردند و از لحاظ کیفیت بسیار عالی هست.

متن توضیح انتشار این کتاب رو از وبلاگ ایشون می‌تونید در اینجا ببینید. ( با عنوان « شروع برنامه‌نویسی در چهارچوب Qt » )

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

این متن هم از پست وبلاگ خودش که توضیحی در مورد کتاب هست :

کتاب مذکور در ۶۷ صفحه و مشتمل بر ۸ فصل به شرح زیر در اختیار برنامه‌نویسان علاقه‌مند قرار می‌گیرد.

  1. راه و روش Qt
  2. سیگنال‌ها و اسلات‌ها در Qt
  3. Containers and Iterators
  4. استفاده از QMake
  5. آشنایی با برنامه طراح کیوت (Qt Designer)
  6. کار با پایگاه‌داده‌ها در Qt
  7. بررسی چند تکنولوژی دیگر Qt
  8. استفاده از مستندات مرجع Qt

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

کاری ارزشمند که ارزش آن به هیچ‌وجه فقط با پول و مسائل مادی قابل جبران نیست.

آرزوی موفقیت برای همه‌ی کسانی که در راه آزادی نرم‌افزار و گسترش GNU تلاش می‌کنند.

بهرام بیگی جمعه , ۱۲ شهریور , ۱۳۸۹ http://blog.itnotes.info

نسخه نهایی OpenSUSE 11.3 منتشر شد

خوب دوستان عزیز پس از ۶ ماه انتظار نسخه‌ی نهایی OpenSUSE یعنی ۱۱.۳ هم منتشر شد.

از مهم‌ترین ویژگی‌های این نسخه می‌توان به پشتیبانی از NetBook ( البته قبلا هم وجود داشت ! ) با استفاده از KDE 4.4.4 و پشتیبانی از گوشی‌های هوشمند موجود مثل iPhone و Android و BlackBerry و پردازش ابری قوی و سریعتر اشاره کرد. برای دیدن کامل ویژگی‌ها به اینجا مراجعه کنید.

و توصیه می‌کنم حتما نسخه‌ی DVD را دانلود کنید ( و یا سفارش دهید ) چون همزمان هر ۴ محیط گرافیکی دسکتاپ رو خواهید داشت ( GNOME, KDE, Xfce, LXDE )

و من در انتظار آماده شدن DVD ها در فروشگاه‌های گنو/لینوکس فارسی …. ;)

بهرام بیگی پنجشنبه , ۲۴ تیر , ۱۳۸۹ http://blog.itnotes.info

معرفی کتاب رسمی آموزش برنامه‌نویسی کیوت (Qt) با سی‌پلاس‌پلاس

وقتی صحبت از فریم‌ورکی با این قدرت و عظمت می‌شود بنده و امثال بنده توانایی گفتن حتی قسمتی از اون رو نخواهیم داشت. اما کسانی که علاقه به KDE داشته باشن امکان نداره که با Qt ( بخوانید کیوت ) آشنا نباشند. کیوت یکی از چندین فریم‌ورک قدرتمندی است که محصول دنیای گنو/لینوکس ( و قبلا یونیکس) هستند. ( محصولات دیگری مانند +GTK و wxWidgets و چیزای دیگه که نمی‌دونم ! )

QtLogo

تعطیلات امسال خیلی برام مفید بود. چون کتاب بسیار قوی به‌نام «C++ GUI Programming Using Qt» رو در پشته‌ی (!) مطالعات آزادم داشتم و عید امسال وقتش رسیده بود. باور کنید حتی وقتی که فقط ۸-۷ فصل این کتاب رو بخونید از این ملت تعجب خواهید کرد که چرا این ملت به سراغ چیزهایی مثل محصولات ویژیوال مایکروسافت میرن ؟!

Qt علاوه بر اینکه وابسته به محیطی که در اون برنامه‌نویسی می‌کنید نیست بلکه به شما امکان استفاده از کتابخانه‌های بسیار وسیعی رو میده که حتی به فکرتون هم خطور نمی‌کنه. به خصوص اینکه با پشتیبانی خوب شرکت نوکیا از Qt هم اکنون محیط مجتمع برنامه‌نویسی کیوت برای هرسه سیستم‌عامل محبوب ویندوز ، گنو/لینوکس و مک‌او‌اس از محیط‌های ویژوال مایکروسافت خیلی خیلی بهتره.

در طول این تعطیلات هم برنامه‌های فصل‌های ۱ تا ۵ رو تک به تک نوشتم و از لحظه-لحظه‌ی نوشتن کدهام لذت می‌بردم. به خصوص اینکه کدها رو با بدون تغییرات روی کامپیوتر دیگه‌ای که نزدیکم بود و روی ویندوزش تست می‌کردم. البته شروع یه مقدار سخته چون در این کتاب از SDK استفاده نشده و فقط از Qt Designer استفاده شده و ارتباط بین فایل‌های UI و کدهای CPP به صورت دستی برقرار شده.

در این کتاب به صورت کامل کامپایل و استفاده از برنامه‌های نوشته شده برای هرکدام از سیستم‌عامل‌های محبوب رو توضیح داده و تنها به یک OS تکیه نکرده.

البته این کتاب تنها کتاب آموزشی کیوت نیست بلکه چندین کتاب آموزشی دیگر مربوط به کیوت رو از این آدرس رسمی می‌تونید پیدا کنید که البته پولی هستن و برای ما ایرانیان زیاد کاربرد نداره. همچنین در این آدرس آخرین نسخه‌ی این کتاب وجود داره ( ویرایش دوم که کتابی که براتون قرار داده‌ام ویرایش اول هست )

این مطلب از صفحه‌ی کیوت ویکیپدیای فارسی که وسعت قابلیت انتقال کیوت رو نشان می‌دهد :

۱٫ Qt/X11 – Qt برای خانواده x (Unix / Linux)

2. Qt/Mac – Qt for برای MacOSX

3. Qt/Windows – Qt برای ویندوز

۴٫ Qt/Embedded – Qt وسائل همراه (PDA, Smartphone و غیره)

۵٫ Qt/WinCE – Qt برای Windows CE[3]

6. Qt Jambi – Qt برای Java

7. Qt Extended – Qt برای سیستم عامل لینوکس نسخه وسائل همراه

شاید براتون جالب باشه که مرورگر محبوب Opera با Qt خالص نوشته شده ( منظور این هست که از کتابخانه‌های KDE استفاده نشده ) و همچنین هستند برنامه‌های مشهور دیگری مثل VLC ، VirtualBox و خیلی برنامه‌های دیگر.

البته اگر جسارت به پلتفرم بزرگ و قوی KDE SC نباشه و اون رو در رده‌ی سایر برنامه‌ها قرار بدیم ، اون هم بر مبنای Qt هست.

کاملا مسلم هست که Qt وابسته به یک زبان برنامه‌نویسی خاص نباشد و Bindingهایی به اغلب زبان‌های برنامه‌نویسی رایج انجام شده باشه. مثلا برای جاوا Jambi رو داریم که شرکت Adobe در بسیاری از محصولاتش از اون استفاده می‌کنه. همچنین برای زبان محبوب Python هم PyQt رو داریم که خیلی هم داره توی گنو/لینوکس کاربرد پیدا می‌کنه. و بسیاری از زبان‌های دیگر …

و در نهایت اینکه بحث مجوز کیوت داستان جالبی داره که گفتنش فکر کنم خیلی تکراری میشه و اینکه دلیل پیدایش محیط دسکتاپ GNOME شده که امروزه کمتر توزیعی رو میشه بدون اون پیدا کرد. البته بعد از این تهدید Qt در لایسنس LGPL ارائه شد …

و بفرمایید کتاب (با حجم ۵۰ مگابایت) :

C++ GUI Programming Using Qt

=-=-=-=-=
Powered by Blogilo

بهرام بیگی سه شنبه , ۲۴ فروردین , ۱۳۸۹ http://blog.itnotes.info

هماهنگ‌سازی بهتر Firefox با تم Oxygen محیط KDE4

نسخه‌ی ۱.۹ قالب Oxygen KDE برای هماهنگی بهتر و زیباتر تم Oxygen در محیط دسکتاپ KDE4 منتشر شده است. برای کسانی که از این قالب اطلاع ندارند ، بگم که بدلیل اینکه فایرفاکس بر مبنای کتابخانه‌ی +GTK نوشته شده ولی KDE بر مبنای کتابخانه‌ی Qt طبعا نمیشه قالب‌های دقیقا یکسانی برای برنامه‌هایی که بوسیله‌ی جی.تی.کا نوشته شده‌اند در محیط KDE ارائه کرد. البته یک قالب عمومی برای تطبیق قالب این برنامه‌ها در KDE به نام QtCurve ارائه شده که زیبایی برنامه‌های Native در KDE4 رو اصلا نداره.

از اونجایی که Firefox جزء جدایی ناپذیر زندگی خیلی از افراد ( از جمله خودم ! ) هست، زیبا نبودن قالب فایرفاکس ( البته بیشتر هماهنگ نبودن اون ) واقعا آزار دهنده هست.

برای این منظور شما می‌توانید در صورتی که از Firefox در KDE4 استفاده می‌کنید با نصب قالب Oxygen KDE تجربه‌ی استفاده از Qt Firefox رو داشته باشید. ( چنین پروژه‌ای هنوز در مراحل ابتدایی هست پس فعلا انتظار استفاده از اون رو نداشته باشید. برای اطلاع بیشتر اینجا رو ببینید )

Oxygen KDE

برای دانلود :

در صورتی که از فایرفاکس ۳.۵ استفاده می‌کنید

در صورتی که از فایرفاکس ۳.۶ استفاده می‌کنید

و اگه می‌خواید که آیکون‌های تم Oxygen رو هم به‌جای آیکون‌های فایرفاکس داشته باشید ( یه چیزی شبیه آیکون‌های کانکر ) می‌تونید Oxygen for Firefox رو هم از اینجا دانلود کنید.

نسخه‌ی ۱.۹ از Oxygen KDE برای فایرفاکس ۳.۶ جدیدا منتشر شده و ویژگی‌هایی که خودم بیشتر به چشمم اومد ، بهتر شدن قالب تب‌ها ( قبلا خیلی بزرگ بودن ) ، کم‌تر شدن حاشیه‌ی اضافی لیست‌های پایین رونده ، یه سری انیمیشن برای دکمه‌ها ( مثل new tab ) و کوچکتر شدن دکمه‌ها.

البته برای هماهنگ‌سازی بیشتر فایرفاکس با KDE می‌تونید افزونه‌های دیگری مثل Plasma Notify و Xclear و … را نصب کنید.

ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ

پ‌.ن۱: فایل‌ها رو خودم شخصا براتون توی ۴Shared آپلود کردم.

پ.ن۲: به امید روزی که فایرفاکس رو واقعا با Qt تجربه کنیم !!

پ.ن۳: در صورتی که قبلا این قالب رو نصب کرده باشید به راحتی می‌تونید از سایت موزیلا آپدیت کنید.

=-=-=-=-=
Powered by Blogilo

بهرام بیگی پنجشنبه , ۱۲ فروردین , ۱۳۸۹ http://blog.itnotes.info

من ، لپ‌تاپ VAIO و یک توزیع بی‌نظیر به نام openSUSE 11.2 amd64

تا حالا فکر می‌کردم که ابونتو بهترین توزیع برای من تا آخر عمرم خواهد بود. اما با خرید یک لپ‌تاپ سونی فهمیدم که واقعا حتی یک بار هم توزیع ۶۴ بیتی ابونتو رو با VAIO تست نزدن ( چون با هر روشی که شما بشناسید رفتم اما وسط نصب مشکل داشت و نمی‌شد که نصب بشه )

اما قبلا هم openSUSE رو به عنوان یک گزینه‌ی جایگزین عالی در نظر داشتم ( چون ۳۲ بیتیش رو داشتم و تست کرده بودم ) و وقتی سفارش دادم و بدستم رسید واقعا عالی نصب شد و همه‌چیز تموم بود.فقط یه مشکل کوچیک بود و اونم نصب کارت گرافیک nVidia بود. البته نه خود نصبش بلکه تنظیماتش. چون به راحتی نصب می‌شد ولی وقتی سیستم رو Restart می‌کردم روی مانیتور هیچ خروجی‌ای نداشتم.

با یک سری جستجوی نه‌چندان حرفه‌ای (!! :D ) فهمیدم که این یه مشکل رایچ در لپ‌تاپ‌های VAIO هستش. به همین دلیل راه حل رو براتون اینجا می‌نویسم تا کسانی که مثل بنده مشکل دارن ، دیگه نداشته باشن :

۱- قبل از هر چیز بایستی آخرین درایور nVidia که از این آدرس قابل دانلود هست رو دانلود کنید. برای نصب این درایور باید یه سری بسته‌های اضافی رو از طریق YaST ( که واقعا عالیه ) نصب کنید ( مثل make ، autoconf, kernel-source-devel, gcc, )

۲- بعد از ریست کردن سیستم در صورتی که صدای ورود به سیستم رو شنیدید و هیچ خروجی نداشتید ، مراحل زیر رو انجام بدید.

۳- این نرم افزار را دانلود کنید. اون رو اجرا کنید (در ویندوز البته !! ) . حال باید EDID خودتون که در ویندوز قابل شناسایی هست رو ذخیره کنید ( file -> Save EDID as ). اسم فایل زیاد مهم نیست ولی میتونید اون رو با اسم edid.bin ذخیره کنید.

( بقیه در ادامه نوشته )

۴- سیستم رو ریست کنید و به جای محیط اصلی وارد Fail Safe بشید. حالا اگه به سیستم Login کرده‌اید Logout کنید و از Session گزینه‌ی Console Login رو انتخاب کنید ( و یا به راحتی Ctrl+Alt+F1 رو بزنید )

۵- فایل edid.bin رو به مسیر /etc/X11 کپی و یا انتقال بدید. (mv /path/to/your/edid.bin /etc/X11)

۶- از فایل xorg.conf در همین مسیر بکاپ بگیرید. (sudo cp xorg.conf xorg.conf_backup)

۷- حالا xorg.conf رو ویرایش کنید ( قبلا nano رو نصب کنید اگه نصب نیست )

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

Section “Device”
Identifier     “Device0″
Driver         “nvidia”
VendorName     “NVIDIA Corporation”
EndSection

حالا این دو خط رو به شکل زیر بهش اضافه کنید :

Section “Device”
Identifier     “Device0″
Driver         “nvidia”
VendorName     “NVIDIA Corporation”
Option    ”ConnectedMonitor”    ”DFP-0″
Option    ”CustomEDID”    ”DFP-0:/etc/X11/edid.bin”

EndSection

بعد فایل رو ذخیره کنید. و کار تمومه ! بعد از ریست باید لوگوی nVidia رو قبل از ورود به محیط گرافیکی ببینید.

__________________________________________________________________

پ.ن۱: این کار ها رو در همون محیط گرافیکی Fail Safe میتونید انجام بدید ( البته با Dolphin Super User که توی قسمت System از Application در KDE وجود داره.

پ.ن۲: DFP مخفف Default Flat Panel هست که مثل اینکه فعلا این توزیع‌ها نمی‌تونن کامل شناساییش کنند برای همین ما خودمون دستی بهش شناسوندیم.

پ.ن۳: لینک منبع این آموزش رو یادم رفته ( پاک شده ! ) اگه پیداش کردم حتما اضافه می‌کنم.

بهرام بیگی یکشنبه , ۱۶ اسفند , ۱۳۸۸ http://blog.itnotes.info

محیط گرافیکی دسکتاپ آینده را همین الان تجربه کنید !

واقعا KDE4 یکی از بدیع‌ترین محیط‌های گرافیکی تا کنون بوده و این ویژگی‌ها خودشو در KDE4.4 به اوج رسونده. kde-logo

آقای حسن‌زاده در وبلاگ خودش در مورد ویژگی‌های KDE SC 4.4 beta 1 به طور کامل مطلبی نوشته‌اند.

همچنین در انتها دو فیلم جالب از ویژگی‌های این نسخه آمده که YouTube جزو مشترکان گرامی هست و بنده براتون توی ۴shared آپلود کردم ومی‌تونید دانلود کنید.

KDE SC4.4 Preview Movie :           Part1 –    Part2

(قسمت اول با حجم ۱۷ مگابایت و زمان ۷ دقیقه)

(قسمت دوم با حجم ۱۱.۶ مگابایت و زمان ۵ دقیقه)

ــــــــــــــــــــــــــــــــــــــــــــــــ

لینک فیلم‌ها رو که با کیفیت بالاتر می‌توانید در سایت یوتیوب مشاهده کنید به صورت زیر هست :

قسمت اول -     قسمت دوم

بهرام بیگی پنجشنبه , ۱۹ آذر , ۱۳۸۸ http://blog.itnotes.info

کوبونتوی ۹.۱۰ یا معجزه‌ای در نسل سیستم‌عامل‌ها !

بالاخره پس از ماه‌ها انتظار نسخه‌ی شگفت انگیز اوبونتوی ۹.۱۰ منتشر شد! البته بنده به طور اختصاصی از کوبونتو استفاده می‌کنم و کمتر خود Ubutnu با محیط گرافیکی Gnome رو دنبال می‌کنم. به خاطر اینکه بیشتر با KDE آشنا هستم تا Gnome. ( به هر حال اکثرا عقیده دارند که این مطلب سلیقه‌ای هست ولی بنده علاوه بر سلیقه‌ای بودن مطلب به حرفه‌ای تر بودن KDE اذعان دارم ! )

این نسخه با اسم رمز Karmic Koala ( عکس این کوالای نازنین رو در شکل روبرو می‌بینید ) منتشر شده است. برای دیدن ویژگی‌های جدید این نسخه از کوبونتوی ۹.۱۰ به این صفحه مراجعه کنید.

ویژگی‌های جدیدی که برام جالب بود اینکه تقریبا تمامی برنامه‌ها اکنون بر روی Qt 4 پیاده شده‌اند ( قبلا برنامه‌هایی همچون K3b ، Kaffeine ، Kpnvc و دیگر برنامه‌ها از Qt3 استفاده می‌کردند و با قالب Oxygen در KDE4 هماهنگ نبودند ) حالا اکثریت برنامه‌ها با یک قالب واحد دیده می‌شوند. نکته‌ی جالب دیگر کار بر روی قالب‌های GTK+ و هماهنگ سازی برنامه‌های پرکاربرد ( مثل Firefox ) با قالب KDE4 هست. حتی یک Installer هم تیم کوبونتو برای نصب Firefox در قسمت Internet قرار داده‌اند.

نکته‌ی جالب دیگر این نسخه سرعت بوت فوق العاده زیاد این نسخه هست. به طوری که در کمتر از چند ثانیه کل سیستم‌عامل به همراه KDE ( که شاید سنگین‌ترین محیط گرافیکی تلقی شود ) بالا میاد. اصلا سرعت بوت با نسخه‌ی قبلی یعنی ( ۹.۰۴ ) قابل مقایسه نیست ! همچنین از یک شتاب دهنده‌ی گرافیکی استفاده شده که سرعت اجرای KDE را بسیار بالا برده است.

تنها مشکلی که ممکن است با این نسخه داشته باشید ، مشکل با ALSA است. چون اوبونتو از ALSA 1.0.20 استفاده می‌کند ولی هم اکنون آخرین نسخه ALSA 1.0.21 هست که می‌توانید از طریق اسکریپت ALSA Upgrade از این آدرس آن را دانلود ، کامپایل و نصب کنید. یا اینکه می‌توانید از PPA بوسیله‌ی این راهنما عمل کنید. ( بعد از نصب یک راه‌اندازی لازم است ) بعد از ارتقای ALSA پشنهاد می‌کنم که PulseAudio رو هم آپگرید کنید. ( آخرین نسخه را از سایت آن دانلود و کامپایل کنید . از کامپایل نترسید فقط چند بسته‌ی اضافی لازم دارید که نصب کنید بعد از زدن ./configure برنامه بهتون میگه که چه بسته‌هایی نیاز دارید. )

همیشه آزادی ، همیشه اوبونتو

بهرام بیگی دوشنبه , ۱۱ آبان , ۱۳۸۸ http://blog.itnotes.info