PDA

View Full Version : شروع برنامه نویسی لینوکس



چهارشنبه 14 آبان 1382, 19:29 عصر
می خواستم در مورد انواع محیط های برنامه نویسی در لینوکس به حصوص ویژوال آن توضیح دهید
با تشکر

hosseinzadeh
چهارشنبه 14 آبان 1382, 21:09 عصر
با سلام
محیطهای برنامه نویسی مختلفی تحت لینوکس وجود دارند.اما چون خود کرنل با سی نوشته شده زبانهای مبتنی بر سی ارجحیت بیشتری دارند.
زبانهای برنامه نویسی معروف:
GCC:(Gnu C Compiler) در حقیقت کامپایلر اصلی لینوکس است.و به طور خود کار با لینوکس نصب می شود.فقط کافی است برنامه خود را در یک فایل متنی نوشته و در خط فرمان دستور کامپایل آن را صادر کنید.
Qt:کتابخانه های C++ هستند که توسط شرکت نروژی TrollTech توسعه داده شده اند.و برای ساخت محیطهای گرافیکی تحت لینوکس و ویندوز به کار می روند.مشخص ترین برنامه ای که با این زبان نوشته شده KDE است.
Kdevelop:محیط توسعه ویژوال KDE است که بر پایه Qt بنا شده است.
Kylix:در مورد این زبان به طور کامل در فروم تخصصی آن توضیح داده شده.
Gtk+:کامپایلر سی که محیط معروف GNOME با آن نوشته شده.از خاصیت شیء گرایی پشتیبانی نمی کند.
Tcl/Tk :یکی از محیطهای توسعه ویژوال بر پایه سی است.
زبانهای دیگر همچون Java ،LISP و پاسکال نیز کامپایلر مخصوص خود را دارند.
از موارد بالا نسخه های تجاری QtوKylix پولی هستند.

پنج شنبه 15 آبان 1382, 13:25 عصر
و پیشنهاد شما؟

hosseinzadeh
جمعه 16 آبان 1382, 11:09 صبح
والا من پیشنهاد خاصی ندارم.ولی مطمپن باشید هر برنامه ای در لینوکس با C و Perl در ارتباط است.پرل یک زبان برنامه نویسی قدرتمند برای وب است.همچنین برای وب PHP هم زبان خوبی است که نمونه آن را در این سایت می بینید.به هر صورت با نسخه لینوکس شما بسته ای به نام Books منتشر می شود که حاوی چند ککتاب مجانی برای لینوکس است.درآن کتابی به نام Programmers Guide وجود دارد می توانید از آن استفاده کنید.من هم سعی می کنم چند نمونه برنامه از هر زبان برایتان بگذارم.
با تشکر

hosseinzadeh
جمعه 16 آبان 1382, 12:40 عصر
این هم نمونه برنامه ها:
GTK:

main (int argc, char *argv[])
{
GtkWidget *window;
GtkWidget *button;
gtk_init (&argc, &argv);

window = gtk_window_new (GTK_WINDOW_TOPLEVEL);

gtk_signal_connect (GTK_OBJECT (window), "delete_event",
GTK_SIGNAL_FUNC (delete_event), NULL);

gtk_signal_connect (GTK_OBJECT (window), "destroy",
GTK_SIGNAL_FUNC (destroy), NULL);

gtk_container_border_width (GTK_CONTAINER (window), 10);

button = gtk_button_new_with_label ("Hello World");

gtk_signal_connect (GTK_OBJECT (button), "clicked",
GTK_SIGNAL_FUNC (hello), NULL);
gtk_signal_connect_object (GTK_OBJECT (button), "clicked",
GTK_SIGNAL_FUNC (gtk_widget_destroy),
GTK_OBJECT (window));
gtk_container_add (GTK_CONTAINER (window), button);

gtk_widget_show (button);

gtk_widget_show (window);

gtk_main ();

return 0;
}
Qt

#include <qapplication.h>
#include <qpushbutton.h>


int main( int argc, char **argv )
{
QApplication a( argc, argv );

QPushButton hello( "Hello world!", 0 );
hello.resize( 100, 30 );

a.setMainWidget( &hello );
hello.show();
return a.exec();
}
Python:


from Tkinter import *

class Application(Frame):
def say_hi(self):
print "hi there, everyone!"

def createWidgets(self):
self.QUIT = Button(self)
self.QUIT["text"] = "QUIT"
self.QUIT["fg"] = "red"
self.QUIT["command"] = self.quit

self.QUIT.pack({"side": "left"})

self.hi_there = Button(self)
self.hi_there["text"] = "Hello",
self.hi_there["command"] = self.say_hi

self.hi_there.pack({"side": "left"})

def __init__(self, master=None):
Frame.__init__(self, master)
self.pack()
self.createWidgets()

app = Application()
app.mainloop()

جمعه 16 آبان 1382, 12:46 عصر
دست شما درد نکنه ردهت 9 هم کتاب داره؟

hosseinzadeh
جمعه 16 آبان 1382, 18:53 عصر
دقیقا نمی دانم.
من از SuSE 8.0 استفاده می کنم.

kia1349
شنبه 17 آبان 1382, 06:49 صبح
بله یک کتاب داره به فارسی(ترجمه شده با cd)
قیمت 35000 ریال
میدان انقلاب دومین مغازه در خیابان اردیبهشت
البته طبق اخبار جدید پلاتفرم linux redhat داره کلا تغییر میکنه
اخبار جدید را از سایتهای www.redhat.com و www.linuxiran.org بگیرید

hosseinzadeh
شنبه 17 آبان 1382, 13:10 عصر
یکی از تغییرات اساسی در RH باز نویسی موتور گرافیکی آن با استفاده از Fedora است.و از این به بعد ردهت به جای SawFish از Fedora استفاده خواهد کرد.
آدرس:fedora.redhat.com

http://www.dark-hill.co.uk/fedora/screenshot-5.html

شنبه 24 آبان 1382, 18:53 عصر
دو سوال
1)اقای کیا کتابه در مورد ردهته یا برنامه نویسیش
2)آقای حسین زاده یکی از دوستانم می گوید کتاب Linux Advanced Programming در اینترنت مجانی موجود است
شما دیده اید؟
در ضمن من لینوکس رو نصب کردم و تا حالا که دیدم از ویندوز راحت تر بوده حالا چرا می گن سخته؟

shaniaki
شنبه 24 آبان 1382, 21:15 عصر
دو سوال
... یکی از دوستانم می گوید کتاب Linux Advanced Programming در اینترنت مجانی موجود است
شما دیده اید؟

http://www.advancedlinuxprogramming.com
یک جمله از من: بسیار کتاب توپی است. 8)



در ضمن من لینوکس رو نصب کردم و تا حالا که دیدم از ویندوز راحت تر بوده حالا چرا می گن سخته؟
اگر نصب نسخه های 6 به قبل را انجام می دادید اینقدر ها هم راحت نبود. :wink:

یه عشق برنامه نویسی خفن

شنبه 24 آبان 1382, 22:41 عصر
خوب کم کم بزرگ شدن دیگه :D

شنبه 24 آبان 1382, 22:48 عصر
ببخشید باید هر فصلش جدا جدا بیاره دان لود نمیشه کرد همشو با هم؟

hosseinzadeh
یک شنبه 25 آبان 1382, 10:07 صبح
در مورد کتابها که آقای Shaniaki فرمودند.اما در مورد لینوکس بعد از شناخته شدن لینوکس به عنوان یک سیستم عامل پایدار تلاشهای زیادی برای آسان سازی مراحل نصب آن شد.شرکت ردهت که از قدیمی ترین تولید کننده های لینوکس است در ابتدا با ارائه نرم افزار DiskDriud گام بلندی برداشت.شرکت SuSE هم بعد از نسخه 7 ابزاری به نام YaST (Yet Another Installer ) عرضه کرد که به وسیله آن نصب لینوکس بسیار آسان شد.مخصوصا این که ابزار AutoPartition در آن گنجانده شد که از آخرین پارتیشن منطقی ویندوز پارتیشنهای Root وswap را جدا می کرد و آنها را فرمت می کرد.همچنین Mandrake هم نصب بسیار ساده ای دارد .البته تمام اینها (همانطور که آقای Shaniaki فرمودند) از نسخه های سال 2001 به بعد انجام شد.و بیشتر تلاشها صرف ساده ساختن پارتیشن بندی بود. :lol:

hosseinzadeh
یک شنبه 25 آبان 1382, 10:18 صبح
کتابهایی که گفتم در سایت Rpmfind موجود است:
http://www.rpmfind.net/linux/rpm2html/search.php?query=books&submit=Search+...&system=&arch=

سه شنبه 27 آبان 1382, 15:21 عصر
آقا ببخشید من جواب سوال قبلیمو نگرفتم
این کتاب linux advanced programming رو باید هر فصلش جدا بگیرم نمیشه با هم دان لودش کرد؟

shaniaki
جمعه 30 آبان 1382, 07:57 صبح
با عرض ادب:
قبلا جدا جدا نبود ولی مثل اینکه الان فقط اینجوریش هست.
اینطوری بهتره نیست؟ همش 10-12 تا فایل هم نمیشه همشونم کوچیک.

یه عشق برنامه نویسی خفن

SSP_Software_team
یک شنبه 09 آذر 1382, 02:43 صبح
آره اینطوری خیلی بهتره :wink:

M0TR!X
سه شنبه 05 مهر 1390, 13:37 عصر
سلام.

فارسی این کتاب موجورد نیست ؟ Linux Advanced Programming

یه کلا کتابی میشناسید که برنامه نویسی در لینوکس باشه ؟ اگه میشناسید انتشارات و نویسیندش رو معرفی کنید ممنون !

vangelis_persian
چهارشنبه 20 مهر 1390, 09:20 صبح
من خودم تا به حال این کتاب رو مطالعه نکردم،

برنامه نویسی پیشرفته در گنو/لینوکس (http://www.adinebook.com/gp/product/6006021058/ref=sr_1_1000_21/516-5452730-5051440)