# زبان های اسکریپتی > دیگر زبان های اسکریپتی >  مشاوره در مورد پایتون

## 1485159

من میخوام پایتون رو هم یاد بگیرم میخواستم بدونم که تحت وب هست یا برای ویندوز هم کار برد داره؟
در ضمن برای اجرا مثل دات نت به فرم ورک نیاز داره؟
در ضمن امنیتش چطوره؟
اپن سورس هست یعنی چی؟
ممنون میشم توضیح بدید..
در ضمن زبان قدرت مندی هست یا نه؟
ممنون

----------


## pystar

با سلام.
اول اينكه بهتون تبريك ميگم ميخوايد وارد دنياي پايتون شيد و دوم اينكه تو سرچرهاي اينترنتي در مورد پايتون خيلي چيزا هست و داره بيشتر هم ميشه و شما ميتونيد با يه سرچ اطلاعات كافي رو گير بياريد.
اينم ادرس اينترنتي آموزش پايتون به فارسي http://www.pylearn.com/fa/forumدر آخر اميدوارم به خواسته هات برسي

----------


## ilius.gnu

اینم یه کتاب ترجمه شده:
http://ospdev.net/projects/boppt/
لینک مسقیم دانلود:
http://mirror.umoss.org/download.osp...Python_0.2.pdf

----------


## jeson_park

1- هر دو
2- نخیر
3-واضح تر بگید!
4-* یعنی مثل دات نت که توسط یه عده مهندس تو ماکروسافت توسعه داده نمیشه و چندی هزار توابع داره که توسط برنامه نویسا ی سراسر دنیا به کتاب خونش اضافه شده
5- در قدت مندیش شک نکن

----------


## __Genius__

> من میخوام پایتون رو هم یاد بگیرم میخواستم بدونم که تحت وب هست یا برای ویندوز هم کار برد داره؟
> در ضمن برای اجرا مثل دات نت به فرم ورک نیاز داره؟
> در ضمن امنیتش چطوره؟
> اپن سورس هست یعنی چی؟
> ممنون میشم توضیح بدید..
> در ضمن زبان قدرت مندی هست یا نه؟
> ممنون


سلام ،
دوست من Python زبانی هست که توی تمام زمینه ها ، چه تحت وب و چه تحت ویندوز اجرا میشه .
نسخه ای از Python با نام Iron Python موجود هست که به احتمال زیاد در نسخه 2010 از Visual studio نمایان خواهد شد که در واقع زبان پایتون تحت .net framework هست و از مجموعه net. میتونید داخل اون استفاده کنید .
این زبان امنیت به نسبت بالائی داره ، توی هر زمینه ای module ها و Lib های بسیار قدرتمندی رو ارائه کرده و میشه گفت از نظر قدرت شماره 1 هست ، حرفم رو با دلیل میتونم ثابت کنم .
Open Source یا متن باز به معنای این هست که این زبان زبانی هست که تمامی کدهایی که باعث تولید Python شدن به صورت کاملاً Free همراه با خود Python به صورت Free میتونین از اون استفاده کنین و تحت Gnu Public License بر طبق قوانین GPL میتونین اونو گسترش بدین .
python از نسخه 3.0 دچار تغییرات گسترده ای در زمینه Syntax شد ، میتونین در این مورد به وب سایت اصلی پروژه پایتون مراجعه کنین به ادرس http://Python.org ، برای یادگیری پیشنهاد میشه از کتابهایی که Syntax نسخه 3.0 رو معرفی کردن بهره بگیرین .
کتاب programming python از انتشارات O'Reilly Media یکی از بهترین کتابهای آموزشی پایتون هست که میتونین اونو دانلود و یا خریداری نمائید .
از لحاظ قدرتمندی هر چه قدر مورد این زبان بگم کم گفتم ولی تا زمانی که خودتون با 3-4 زبان کار نکرده باشین و سراغش نرین نمیتونین معنی قدرت رو متوجه بشین ، نقطه مقابل قدرت اون سادگی اون در یادگیری هست که بسیار راحت هست ،
مثالی بسیار ساده از قدرت این زبان :
مسئله ای با موضوع فوق را به شما میدهند ، برنامه ای بنویسید که خروجی 2 به توان n را بدهد .
در ابتدا بسیار ساده به نظر میرسد ولی وقتی به برنامه عدد n را 1000 بدهید قضیه کمی فرق خواهد کرد ، در زبان C برای چنین برنامه ای باید لیستهای پیوندی همراه با Stack پیاده سازی نمائید ولی میتوانید در حال حاضر در پایتون بنویسید 
print 2**1000000 ، بیخیال 1000 شدیم و n را 1000000 دادیم ، Enter کنید ، به ثانیه نمیکشد که شما جواب را دریافت کرده اید .  :لبخند:

----------


## 1485159

اون کتابی که گفتین فارسیه یا ......در ضمن برای آشنایی با محیطش هست یا پیشرفته؟

----------


## assadiehsan

دوست عزيز من ميخام پيتون رو ياد بگيرم ولي اين كه هيچ object نداره فقط ميشه كد بنويسي

----------


## saleh.hi.62

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

----------


## Bayazee

ide های پایتون :

http://wiki.python.org/moin/Integrat...ntEnvironments

----------


## saeed.afshari

> بله دوست عزیز متاسفانه میتونم بگم پایتون با تمام قدرتی که داره نمیدونم چرا یک آی دی ای ویژوال که کراس پلتفرم هم باشه نداره.
> همیشه این باعث دلسردی برای من.


خوب نیست بدون مطالعه نظر بدیم.
من توصیه میکنم از   spyder که با Qt نوشته شده و ویژگی هایی از قبیل debugger , python shell , outo complition , ... داره, استفاده کنید
http://code.google.com/p/spyderlib/

برای ironpython هم از sharp develope:
http://www.icsharpcode.net/OpenSource/SD/

----------


## saleh.hi.62

دوست عزیز منظور من یک ide با امکانات ویژوال بود.
مگر نه اگه aptana  رو تست کرده باشی خیلی ide  کاملی برای python و یه ide چند زبانه و کامل.

----------


## saeed.afshari

Aptana RadRails is the leading IDE for Ruby and Rails development.


فکر کنم منظورت Pydev بود که یک افزونه برای Aptana و Eclipse است.

----------


## 1485159

سلام
مگه برنامه هایی که با پایتون نوشته میشن سوروشون به همراه برنامه هست؟! پس چطور میشه برنامه های تجاری نوشت؟ اونوقت همه اون برنامه رو ویرایش میکن.....

----------


## vcldeveloper

> مگه برنامه هایی که با پایتون نوشته میشن سوروشون به همراه برنامه هست؟!


Python یک زبان اسکریپتی هست، و کدهای آن توسط interpreter ترجمه و اجرا میشند. البته Python کدهای شما را قبل از اجرا، به منظور اجرای بهینه تر، تبدیل به Byte code ایی مستقل از پلت فرم میکنه. شما می تونید فایل Byte code تولید شده را منتشر کنید، ولی از روی آن فایل هم می توان به راحتی به سورس اولیه رسید. راه دیگه استفاده از ابزارهایی که کدهای Python را کامپایل می کنند، هست، مثل Py2Exe یا Freeze.




> پس چطور میشه برنامه های تجاری نوشت؟


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

از طرف دیگه، بخش عمده ایی از کدهای پایتون بر روی سرور اجرا میشند. شما می تونید یک ماجول Server-side بنویسید، یک دمو از آن را به مشتری نمایش بدید، و اگر مشتری تمایل به خرید داشت، یک نسخه از اسکریپت خودتان را با مجوز مناسب به مشتری بفروشید. مثلا همین نرم افزار vBulletin که روی این سایت نصب هست، و این انجمن با آن ساخته شده، یک نرم افزار تجاری نوشته شده با PHP هست، که سورس کد آن هم به مشتری تحویل داده میشه. فروش خوبی هم داره.

----------


## 1485159

وقتی که با پایتون یک سایتی طراحی میشه آیا باز سورسش قابل نمایش هست؟
میشه با پایتون یه بازی مثل تراوین درست کرد؟
اگه ممکنه به جز گوگل چنتا سایت که با پایتون طراحی شده معرفی کنید....
ممنون.

----------


## vcldeveloper

> وقتی که با پایتون یک سایتی طراحی میشه آیا باز سورسش قابل نمایش هست؟


خیر.




> میشه با پایتون یه بازی مثل تراوین درست کرد؟


بله.




> اگه ممکنه به جز گوگل چنتا سایت که با پایتون طراحی شده معرفی کنید....


نمیدونم، شاید بتونید در وب سایت مرتبط با برخی فریم ورک های معروف Python برای تولید نرم افزار تحت وب مثل django اطلاعاتی درباره برخی سایت های تولید شده توسط آنها پیدا کنید.

----------


## 1485159

دستتون درد نکنه فقط چنتا سوال دیگه هم دارم:
1- من هیچ چیزی در مورد طراحی وبسایت نمیدونم!! میخوام بدونم که آیا برای یادگیری برای ساخت وبسایت انتخاب پایتون میتونه مناسب باشه؟ در ضمن باید برای آموزشش باید یه سرور هم داشته باشم تا بتونم کد هام رو امتحان کنم؟
2- وقتی میگین که میشه با پایتون یه بازی آنلاین مثل تراوین ساخت آیا از اون بهتر هم میشه؟
3- قدرت php بیشتره یا پایتون؟ فکر کنم پایتون! نه؟

----------


## vcldeveloper

> میخوام بدونم که آیا برای یادگیری برای ساخت وبسایت انتخاب پایتون میتونه  مناسب باشه؟


بستگی به شرایط شما و اهداف شما داره. اگر منظور از نظر منابع موجود و پشتیبانی از آن توسط شرکت های هاستینگ باشه، یا هدف ایجاد فرصت های شغلی بیشتر باشه، وضعیت PHP و ASP.NET خیلی بهتر هست. هم منابع بسیار بیشتری برای برنامه نویسی تحت وب برای آنها موجود هست، هم شرکت های هاستینگ، هم فرصت های شغلی بیشتری برای آنها وجود داره. از نظر IDE و ابزارهای مرتبط هم وضع بهتری دارند.

البته پایتون هم به عنوان یک زبان برنامه نویسی جوان داره رشد خوبی میکنه.




> در ضمن باید برای آموزشش باید یه سرور هم داشته باشم تا بتونم کد هام رو  امتحان کنم؟


باید یک وب سرور داشته باشید، مثلا Apache را روی سیستم خودتان نصب کنید، و ازش به عنوان یک وب سرور استفاده کنید.




> وقتی میگین که میشه با پایتون یه بازی آنلاین مثل تراوین ساخت آیا از اون  بهتر هم میشه؟


محدودیتی از این لحاظ وجود نداره، ولی اینکه میشه با پایتون فلان چیز را ساخت به معنای اون نیست که پایتون حتما در آن کار بهترین هست. هر زبان برنامه نویسی ضعف ها و قوت هایی داره، و برای بعضی کارها نسبت به سایر زبان های برنامه نویسی مناسب تر هست.




> قدرت php بیشتره یا پایتون؟ فکر کنم پایتون! نه؟


همچین مقایسه ایی به این شکل اشتباه هست. شما باید دو زبان را در یک موضوع مشخص با هم مقایسه کنید، نه اینکه به طور کلی فلان زبان بهتر از یک زبان دیگه هست!

----------


## 1485159

> باید یک وب سرور داشته باشید، مثلا Apache را روی سیستم خودتان نصب کنید، و ازش به عنوان یک وب سرور استفاده کنید.


مهمترین قسمت هم همینه! من به عنوان یه دانش آموز توانایی اینو ندارم که یه وب سرور اجرا کنم یا بخرم... کلا در اینمورد هیچی نمیدونم! آیا با اون نرم افزاری که گفتید میشه بخوبی یه سرور رو شبیه سازی کرد و خوب یاد گرفت؟ یا با سرور واقعی فرق داره؟

----------


## مرتضی پیروزی

> مهمترین قسمت هم همینه! من به عنوان یه دانش آموز توانایی اینو ندارم که یه وب سرور اجرا کنم یا بخرم... کلا در اینمورد هیچی نمیدونم! آیا با اون نرم افزاری که گفتید میشه بخوبی یه سرور رو شبیه سازی کرد و خوب یاد گرفت؟ یا با سرور واقعی فرق داره؟


سلام دوست من
نه! این طوری نیست، در واقع اینطوریه که شما برنامه Apache رو نصب میکنی، حالا شما میتونی برنامه هایی که نوشتی مانند یک وب سرور واقعی تست کنی، همین.
شما مثلا میتونی توی ویندوز تیک IIS رو بزنی، در این صورت هم شما یک وب سرور IIS داری.! ولی نه به اون معنایی که شما تصور میکنی! ولی خوب اگر بخوای میتونی ازشون به عنوان یک وب سرور کامل استفاده کنی.
اگر هم نخوای، واسه خودت یک وب سرور کوچیک داری.هیچ هزینه ای هم نداره،
مثلا شما در صورتی میتونی کد های پی اچ پی رو اجرا کنی که وب سرور داشته باشی،
با نصب آپاچی یا IIS میتونی به صورت مجازی بدون نیاز به سرور آنچنانی اجراش کنی.
موفق باشی

----------


## 1485159

> سلام دوست من
> نه! این طوری نیست، در واقع اینطوریه که شما برنامه Apache رو نصب میکنی، حالا شما میتونی برنامه هایی که نوشتی مانند یک وب سرور واقعی تست کنی، همین.
> شما مثلا میتونی توی ویندوز تیک IIS رو بزنی، در این صورت هم شما یک وب سرور IIS داری.! ولی نه به اون معنایی که شما تصور میکنی! ولی خوب اگر بخوای میتونی ازشون به عنوان یک وب سرور کامل استفاده کنی.
> اگر هم نخوای، واسه خودت یک وب سرور کوچیک داری.هیچ هزینه ای هم نداره،
> مثلا شما در صورتی میتونی کد های پی اچ پی رو اجرا کنی که وب سرور داشته باشی،
> با نصب آپاچی یا IIS میتونی به صورت مجازی بدون نیاز به سرور آنچنانی اجراش کنی.
> موفق باشی


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

----------


## vcldeveloper

> من به عنوان یه دانش آموز توانایی اینو ندارم که یه وب سرور اجرا کنم یا  بخرم... کلا در اینمورد هیچی نمیدونم! آیا با اون نرم افزاری که گفتید میشه  بخوبی یه سرور رو شبیه سازی کرد و خوب یاد گرفت؟ یا با سرور واقعی فرق  داره؟


اون نرم افزار خودِ وب سرور هست. یعنی اگر شما یک سرور واقعی هم از یک هاست خریداری یا کرایه کنید، همین آپاچی یا IIS روی آن نصب هست. در واقع سروری که یک هاست به شما میده، به زبان ساده، یک کامپیوتر هست که روی آن یک نرم افزار وب سرور نصب شده باشه. معروفترین و پر کاربردترین وب سرورها هم همین Apache و IIS هستند.

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

----------


## 1485159

آیا این نرم افزار ها که گفتید رایگان هستند؟
در ضمن بعد از این که برنامه رو نوشتیم باید توسط این نرم افزار ها اجرا کنم یا ..... در کل میخوام بدونم که چطور باید زبان برنامه نویسی و این نرم افزار ها رو به هم وصل کرد؟
ممنون.

----------


## vcldeveloper

> آیا این نرم افزار ها که گفتید رایگان هستند؟


بله. Apache به صورت Open-source عرضه میشه. IIS هم روی ویندوزتون هست، فقط باید نصبش کنید.




> در ضمن بعد از این که برنامه رو نوشتیم باید توسط این نرم افزار ها اجرا  کنم یا ..... در کل میخوام بدونم که چطور باید زبان برنامه نویسی و این نرم  افزار ها رو به هم وصل کرد؟


مراحل کار در هر کدومشون فرق میکنه. این رو باید در تالار مربوط به توسعه Web بپرسید.

----------


## مرتضی پیروزی

> خوب پس بنابراین اگه من نوشتن برنامه از اون طریق رو یاد بگیرم میتونی پس از سالها که خوب یاد گرفتم به خوبی از یک وب سرور واقعی استفاده کنم؟
> هزینه یک وب سرور واقعی چقدره؟


 سلام دوست عزیز
بله، شما با یادگیری اونا میتونی به راحتی از یک وب سرور واقعی کار بکشی، البته همین
الان هم واقعیه!
ولی نکته ای که حائز اهمیت هست اینه که شما میخوای برنامه نویسی تحت وب رو یاد بگیری یا خود وب سرور رو؟؟
برای برنامه نویسی تحت وب مثل PHP شما نیازی به تخصص در زمینه وب سرور ندارید، فقط
برنامه رو مینویسید و با وب سرور اجراش میکنی، ولی اگر بخوای در زمینه خود وب سرور
مسلط بشی بحث فرق داره، باید با شبکه ها و پروتکل ها آشنا باشی، با مسائل امنیتی سروکار داری،به خود وب سرور باید مسلط باشی و......
موفق باشی

----------


## 1485159

منظور از یادگیری خود وبسرور چیه؟

----------


## مرتضی پیروزی

> منظور از یادگیری خود وبسرور چیه؟


 سلام دوست من
منظور اینه که بتونی یک وب سرور رو راه اندازی و نصب کنی، مدیریت کنی و.......
ببین همین الان که ما داریم از اینترنت استفاده میکنیم، تمام اطلاعات در واقع به یک وب سرور منتقل میشه، این وب سرور یک مدیر داره. که مدیران اون اصولاً افرادی با تخصص در این
زمینه هستند، که باید کل سرور رو در اختیار داشته و از اون محافظت و پشتیبانی کنند.
برای رسیدن به این مرحله شما باید در این زمینه متخصص باشی، دقیقاً عین یک مدیر شبکه داخلی مثل بانک. اصولاً کار پیچیده ای هم هست مخصوصاً امنیتش. شما فرض کن یک سایتی هک میشه، در اکثر موارد دلیل هک شدن بر میگرده به ضعف عملی و علمی مدیران اون وب سرور. اینو گفتم که متوجه بشی منظورم چیه.
یادگیری اون شامل پیکر بندی، ایمن سازی، عیب یابی و........ میشه. اگر سوالی بود من در خدمتم.
موفق باشی

----------


## HamzehAzad

سلام
یه سایت در مورد python  که ایرانی هم هست واسه دوست خوبم ایرج هست

http://www.python123.org

----------


## 1485159

سلام
آیا پایتون میتونه در آینده با جاوا رقابت کنه؟

----------


## ali32n70

سلام 
من فکر میکنم یه نکاتی لازم باشه برای درک بهتر گفته بشه

1-مدیریت یک وب سرور با مدیریت یک وب سایت فرق میکنه اکثر افرادی که دارای سایت هستند سایتهایشان روی سرورهای دیگران قرار دارند و لزومی نداره در مورد نگهداری وب سرور متخصص باشند البته اطلاعات متوسط خوب هست برای کمک در تامین امنیت سرور و سایت
2-زبان پیتون برای استفاده در وب و ایجاد خروجی وب سایت یک زبان CGI هست در حالی که php از این نوع نیست
3- کاری که ما برای تست برنامه های وب انجام میدیم به دو روش انجام میشه که یکیش در بالا گفته شده استفاده از iis و Apach بر روی همان سیستم و روش دوم هم نصب آنها در یک کامپیوتر دیگر و اتصال شبکه محلی آنها با هم 

موفق باشید

----------

