انجمن کاربران لینوکس ایران - تکنوتاکس سابق

نسخه ي کامل: کتابی برای یادگیری برنامه های کاربردی
شما در حال مشاهده نسخه ي متني اين صفحه هستيد. مشاهده نسخه کامل تر با قالب بندي صحيح
با سلام
مدتی است که من برای آموزش برنامه نویسی تحت لینوکس به دنبال کتاب می گردم. البته چند وقتی است که شروع به مطالعه کتاب Wiley Beginning Linux Programming, 3rd Ed کرده ام ولی فکر می کنم که در این کتاب و همه ی کتاب هایی که من تا به حال دیده ام، بیش تر از برنامه نویسی حرفه ای مثل ماژول نویسی کرنل و Shell Programming و موضوعاتی از این قبیل وجود دارد تا برنامه نویسی کاربردی.
حالا به دنبال کتاب یا هر چیز دیگری هستم که بتوانم با آن برنامه نویسی کاربردی را یاد بگیرم.البته در اینجا منظورم از برنامه های کاربردی مثلا برنامه هایی شبیه به XFarDic یا یک نرم افزار مدیریت کتابخانه تحت لینوکس (به زبان С++ ) و از این قبیل نرم افزار ها است. (و به طور کلی نرم افزار هایی که دارای واسط گرافیکی کاربر هستند)
البته امیدوارم اگر سوالم پیش پا افتاده و ناشیانه است، من را ببخشید و راهنمایی کنید.
متشکرم
سلام
فکر کنم بهتر باشه اول بان برنامه نویسی مورد نظرتون رو انتخاب کنین بعد برین سراغ Platform. برای لینوکس توصیه میکنم مستندات GCC رو نگاه کنین.

مهمان

saLAm

bebin C/C++ zaadeye Unix hastan,
pas dar marhaleye avaL hamoon C//C++ ro yaad begir

dar morede graphic bayad GTK+ yaa QT yaad begiri ke too hamoon C/C++ ghabele piyaade saaazi hastan
dar zemn ageh yaade API e windoowsi ham mitooni hamoono too Linux be kaar bebari

ZEMNAN
ageh JAVA baladi diGEH moshkeli nist Big Grin
jaVA benevis

Hamin
by3
با سلام و تشکر از همه پاسخ های شما
آقا نوید محترم من زبان برنامه نویسی خودم رو انتخاب کردم که C++ هست.
حالا می خواهم برمامه ای بنویسم که واسط گرافیکی داشته باشه و برای این کار یه محیط ویژوالی لازم دارم البته باید بگم که چون دوست دارم در محیط گنوم کار کنم +GTK رو انخاب کرده ام ولی حالا نمی دانم دقیقا باید از چه نرم افزاری استفاده کنم؟ آیا همچین نرم افزاری در بسته های موجود در دبیان هست؟ اگر هست نامش چیست؟
لطفا اگر کتاب خوبی برای رسیدن من به هدفی که گفتم سراغ دارید (چه فارسی و چه انگلیسی) نامش را بگویید؟ اگر کتاب نشد لطفا و خواهشا یک منبع دیگر را به طور دقیق نام ببرید و طریقه ی پیدا کردن و استفاده از آن را نیز بگویید.
پیشاپیش از پاسخ های خوب شما متشکرم
از اساتید می خوام اگه می تونن زودتر جواب بدن.
بسیار متشکرم
سلام
برای یادگیری اولیه از این کتاب استفاده کنین. یه نظر من هر 4 تاش برای یادگیری اولیه بسیار عالی هستن. در مورد محیط هم فکر کنم بد نباشه یه نگاهی به کل گزینه های ممکن بندازین. اونهایی که به ذهن من میرسه : GTK+ ، Qt ، wxGTK. همه رو نگاه کنین. برای IDE هم چون به Gnome علاقه دارین فکر کنم Anjuta بهترین گزینه است که فکر کنم برای GUI از Galde استفاده میکنه که فقط برای GTK جواب میده. باز هم توصیه میکنم در مورد GCC بخونین چون برای لینوکس جدا لازمه.

مهمان

سلام.

خب معلومه که میخوای با c++ برنامه بنویسی و احتمالا با زبان های دیگر یه حد کافی آشنا هستی که اینطوری قاطعانه تصمیم به نوشتن برنامه با c++ گرقتی با وجود آنکه در مقوله ای که به آن اشاره کردی:
نقل قول :و به طور کلی نرم افزار هایی که دارای واسط گرافیکی کاربر هستند

امکان نوشتن برنامه خصوصا بوسیله کتابخانه هایی که نویدجون معرفی کردند با زبان های دیگری هم در بسیاری از شرایط بهتر از c++ وجود دارد. (اشاره به زبان پیتون)

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

اینم یه لینک که شاید به مفید بودن پست من کمک کنه گر چه که یکم قدیمیه Tongue
Developing with Gnome
In C, C++, Perl, and Python
<!-- m --><a class="postlink" href="http://www.gnome.org/~newren/tutorials/developing-with-gnome/">http://www.gnome.org/~newren/tutorials/ ... ith-gnome/</a><!-- m -->
با سلامی دوباره به زیبایی پیتون
آقا ما حاضریم به حرفتون گوش کنیم و از پیوتن استفاده کنیم البته اگه در کار با واسط گرافیکی کاربر بهتره و شما هم ما رو کمک کنید.
حالا می خواهم ازتون خاهش کنم که بگید اگه یخوام کار رو با پیتون شروع کنم باید:
1- چه کتابی بخوانم یا چه کار دیگری انجام دهم تا با سرعت نسبتا خوبی بتونم برنامه ای با داشتن یک واسطه کابر خوب بنویسم؟
2- برای برنامه نویسی پیتون از چه نرم افزاری می توانم استفاده کنم که هم امکان برنامه نویسی راحت و خوب و هم امکان ایجاد فرم و گذاشتن اجزا در آن را به صورت ویژوالی داشته باشد؟
3- با توجه به این که من از توزیع دبیان استفاده می کنم باید چه بسته هایی را بر روی سیستم نصب کنم؟

با تشکر بسیار بسیار ... فراوان و امید به پاسخ خوب شما
سلام
مقاله چرا پیتون در بخش مقالات سایت میتونه شروع خوبی باشه.

مهمان

از لینک زیر هم می تونین استفاده کنین

<!-- m --><a class="postlink" href="http://www.tux-world.com/index.php/board,84.0.html">http://www.tux-world.com/index.php/board,84.0.html</a><!-- m -->

مهمان

سلام.

خب شروع خوبیه. اگر همچنان مشتاق یادگیری این زبان هستی پس:
سایت اصلی پیتون یادت نره. گرچه که یه بار که داکیومنتشو بگیری دیگه بهش سر نمیزنی:
<!-- m --><a class="postlink" href="http://www.python.org/doc/">http://www.python.org/doc/</a><!-- m -->
به نظر من از همون پیتون ۲.۴ شروع کن:
بسته deb:
apt-get install python2.4
اگر تو برنامه synaptic نام python2.4 یا python رو تایپ کنی میتونی بسته های مربوط به این زبان رو مشاهده کنی.

برای شروع به نظر من کتاب How to Think Like a Computer Scientist کتاب بسیار خوبی است:
<!-- m --><a class="postlink" href="http://www.ibiblio.org/obp/thinkCSpy/">http://www.ibiblio.org/obp/thinkCSpy/</a><!-- m -->

بعد از اون به کتاب Dive Into Python مراجعه کن که سطحش بالاتر هست:
<!-- m --><a class="postlink" href="http://diveintopython.org/">http://diveintopython.org/</a><!-- m -->
یا
apt-get install diveintopython

در ضمن مستندات اصلی پیتون موجود در سایت اصلیش رو هم مطالعه کن یعنی همون tutorial که البته بیشتر به مانند مرجع ماژول های اصلی پیتون میباشد.
با دستور زیر تو دبیان هم میتونی نصبش کنی:
apt-get install python2.4-doc

<!-- m --><a class="postlink" href="http://wiki.python.org/">http://wiki.python.org/</a><!-- m --> هم هرگز یادتون نره.
منابع زیاد دیگه ای هم هست که به موفعش معرفی میکنم.
و
<!-- w --><a class="postlink" href="http://www.google.com">www.google.com</a><!-- w -->

خب از مقدمات بگذریم.
اما مبحثی که شما به دنبالش هستید:
اتفاقا بنده هم مثل شما علاقه زیادی به GTK و Gnome دارم. برای شروع به سایت زیر و دو راهنمای اصلیش مراجعه کن:
<!-- w --><a class="postlink" href="http://www.pygtk.org">www.pygtk.org</a><!-- w -->

برای نصبش هم:
apt-get install python2.4-gtk2 python2.4-gnome2 python2.4-glade2 python2.4-gnome2-extras
رو وارد کنید.

البته کتابخانه دیگری به نام <!-- m --><a class="postlink" href="http://www.wxpython.org/">http://www.wxpython.org/</a><!-- m --> هم وجود داره که به مستقل از سکو بودن مشهوره (گرچه که gtk همینطوره) چون که در هر سکو (سیستم عامل - محیط) از api موجود در همان سکو بهره میبرد. مثلا برایWindows از api رابط گرافیکی خود ویندوز استفاده میکند اما برای لینوکس از GTK. به هر حال من همان gtk دوست داشتنی رو ترجیح میدم Smile
برای نصبش هم:
apt-get install python-wxgtk2.6

اما IDE برای پیتون:
خوشبختانه ide های خوبی برای این این زبان وجود داره. بعضی از IDE ها برای زبان های زیادی کاربرد دارند مثل : bluefish , eclipse
دوستانی که علاقه مند به برنامه نویسی در محیط GTK Based هستند به لینک زیر مراجعه کنند:
<!-- m --><a class="postlink" href="http://www.gnomefiles.org/category.php?cat_id=8">http://www.gnomefiles.org/category.php?cat_id=8</a><!-- m -->

بعضی هم فقط برای یک زبان خاص: که برای پیتون:
IDLE:
apt-get install idle-python2.4
من علاقه ای بهش ندارم.

eric :
apt-get install eric
محیط بسیار خوب و میشه گفت حرفه ای که دارای امکانات جالب و اکثرا کاربردی که با کتابخونه QT نوشته شده. من نمره بالایی رو به این برنامه میدم.

DrPython :
apt-get install drpython
در حال حاضر IDE محبوب من که امکانات جالبی همانند eric داره که پلاگین های اضافه هم میتونی براش نصب کنی. (نوشته شده باwxpython(

SPE (Stani's Python Editor):
میشه گفت یک IDE بسیار کامل و حرفه ای که با wxpython نوشته شده و قابلیت های بسیاری داره.

Wing IDE:
که به نظر من کاملترین IDE موجود برای این زبان که البته تجاری میباشد و باید اونو بخرید. البته من نسخه trial شو گرفتم و امتحان که کردم به نظرم بسیار عالی اومد. بسیار روش کار شده و امکانات خیلی خوبی داره. با pygtk هم نوشته شده.

و ...
البته پیتون یک زبان اسکریپتی است و شما با یک برنامه text editor ساده مثل gedit هم میتونید برنامه بنویسید. و با دستور زیر اجراش کنید:
python Helloworld.py
خیلی ها با vim و یا emacs حال میکنند. بستگی به این داره که شما چه انتظاراتی از محیطی که درش میخواهید برنامه بنویسید داشته باشید. مثلا یکی نیاز به integrated debugging feature داره یا ...

روال برنامه نویسی با GTK معمولا به دو رو ش است:
۱.ساخت فرم ها و اجزا به صورت دستی یعنی همان کد نویسی.
۲.ساخت رابط گرافیکی(همان فرم ها) با برنامه interface designer مثل glade برای GTK و wxglade برای wxwidget یا مثلا QT designer و ادغام آنها (وارد کردن) با کد برنامه و دسترسی به اجزاء آن.

هر دو روش کاملا مرسوم هستند و کاربردی. تا جایی که بشود از روش دوم بهره ببرید.
بعضی از IDE ها این دو روش رو ادغام کردند.(البته در اینها هم قادر به نوشتن به هر دو راه هستید)

زیبایی زبان پیتون به حدیست که بعد از مدتی برنامه نویسی با آن هرگز حاضر به تعویض آن با زبان دیگری نمیشی و به جرات میتونم بگم بی نظیر هست. (برای من که از Ruby هم زیباتره)

تو هر زمینه ای که بخوای میتونی کد بزنی.
String processing
Operating system interfaces
Networking
Web
Threads
GUI
Database
Language services
Security
XML
Numeric Processing
Plotting/Graphics
و ...
میبینی؟ پیتون همه جا هست.

گر چه که نیازی نیست با برنامه نویسی در همه این مقوله ها آشنا بشی. خوبی پیتون + pygtk به اینه که با کمترین دانش قادر به نوشتن برنامه های کاربردی هستی.

بله xFarDic رو با پیتون هم میتونی بنویسی Smile
سوالی داشتی بپرس اگه یتونم پاسخ میدم.

یکی نیست به ما بگه کله گنجیشک خوردی که این همه حرف میزنی؟ Big Grin

پانویس:
دو کتاب به زبان فارسی هم موجوده:
۱.اولین گام در دنیای برنامه نویسی با PYTHON انتشارات ناقوس.
که برای من اصلا جالب نبود.

۲.از این پس پایتون اتشارات کوشامهر که بد نیست. از همون منابع انگلیسی مثل دو کتاب اولی که معرفی کردم استفاده کرده.

اگر هم اشتباهی بود ببخشید.
سلام
بسیار ممنون از مهمان عزیز. توضیحات بسیار کامل و جامعی بود. خود من که خیلی استفاده کردم. برای منابع بعدی در مورد برنامه‌های مختلف هم توصیه می‌کنم از ASPN یا همون ActiveStat Python Network استفاده کنین. نمونه‌های خیلی جالبی داره. این هم بی‌شک بزرگترین محل گردهم‌ایی بزرگان این زبانه.
با سلامی به زیبایی پیتون
آقا ما رو شرمنده کردید خیلی عالی بو هرچی بگم بازم کمه ....
جدا از شما مهمان عزیز بسیار بسیار ... متشکرم از راهنماییتون بسیار بسیار ... استفاده کردم.
بازم ممنون
سلام!
حالا اگر کسی به KDE و QT علاقه داشته باشه چطور؟؟
من با زبان پاسکال آشنا هستم و PHP هم بلدم، با KDevelop و QT-Designer هم ور رفتم اما کلا چیزی ازشون حالیم نیست!
سلام
مشکل چیه؟ با همون PyQt کار کنین. اتفاقا KDE شدیدا مدیون Python ه. نمونه ساده اش SuperKaramba.
اولا که برادر عزیز شما اول باید به یه زبان برنامه نویسی به طور کامل آشنا باشی بعد بری دنبال شاخه های دیگه زبان مثل برنامه نویسی برای رابط گرافیکی کاربر. در مورد پیتون هم فکر نمیکنم چیزی لازم باشه نصب کنی مخصوصا توی گنوم چون تمام بسته های مورد نیاز به حالت پیش فرض نصب هستش. من الان خودم دارم دارم یه برنامه مینویسم با پیتون که بتونه دیکشنری های xfardic که همون فایل های xml خودمون هستند رو به صورت gui بسازه و اون ها رو ویرایش کنه(برای محیط گنوم). حالا نمیدونم قبلا یه همچین برنامه ای بوده یا نه و اگه تموم بشه حداقل به درد خودم یه نفر زیاد میخوره چون دیگه راحت میتونم واسه خودم دیکشنری بسازم. حدودا تا چند هفته دیگه هم میذارمش برای دانلود!
مهان جان دست درد نکنه لینک های خیلی کمک کرد
امیل تو هم باید این kde رو بندازی سطل آشغال Tongue

می گم کسی نمی خواد جلوی این اسپم ها رو بگیره ؟ دارند زیاد می شند ها !!!